/* // The IncomeStatement sources from Yahoo Finance private static List GetIncomeStatementYahoo(String symbol,IncomeStatement.PeriodType periodType) { List incomeStatements = new List(); HttpNetResponse httpNetResponse=null; try { StringBuilder sb = new StringBuilder(); String strRequest; sb.Append("http://finance.yahoo.com/q/is?s=").Append(symbol.ToUpper()).Append("+Income+Statement"); sb.Append(periodType.Equals(IncomeStatement.PeriodType.Quarterly)?"&quarterly":"&annual"); strRequest = sb.ToString(); httpNetResponse=HttpNetRequest.GetRequestNoEncoding(strRequest); if(!httpNetResponse.Success)return incomeStatements; // No currency conversion ability so only pull USD String currency=Utility.KeepAfterLast(httpNetResponse.ResponseString,"Currency in"); if(null!=currency) { currency=Utility.BetweenString(currency,"","."); if(null!=currency)currency=currency.ToUpper().Trim(); if(null!=currency &&!"USD".Equals(currency)) { MDTrace.WriteLine(String.Format("No currency conversion from {0} to {1}",currency,"USD")); return null; } } List strItems=null; strItems=MarketDataHelper.LocateItems(httpNetResponse.ResponseString,">Revenue<",4,4); if(null==strItems||0==strItems.Count)return incomeStatements; for(int index=0;indexTotal Revenue<"); if(null!=strItems) { for(int index=0;indexCost of Revenue<"); if(null!=strItems) { for(int index=0;indexIncome Tax Expense<"); if(null!=strItems) { for(int index=0;indexGross Profit<"); if(null!=strItems) { for(int index=0;indexNet Income<"); if(null!=strItems) { for(int index=0;indexSelling General and Administrative<"); if(null!=strItems) { for(int index=0;indexNet Income Applicable To Common Shares<"); if(null!=strItems) { for(int index=0;indexEarnings Before Interest and Taxes<"); if(null!=strItems) { for(int index=0;indexOperating Expenses<"); if(null!=strItems) { for(int index=0;indexResearch Development<"); if(null!=strItems) { for(int index=0;indexInterest Expense<"); if(null!=strItems) { for(int index=0;index