public List <IFutureData> GatherFutureFundamentals(string month, bool showErrors) { var fundamentals = new FundamentalRepository(); string[] fileArray = Directory.GetFiles(@"..\..\..\Files\FutureFundamentals\", $"{month}.csv", SearchOption.AllDirectories); //gets months fundamentals if (fileArray.Length != 0) { return(RetrieveFutureFundamentals(month)); } else { stockCount = _fundList.Count(); fundCount = 0; foreach (var stock in _fundList) { stock.Price = fundamentals.GetPrice(stock.Symbol, month, showErrors); stock.ADX = Math.Round(fundamentals.GetADX(stock.Symbol, month, showErrors), 4); stock.BBANDS = Math.Round(fundamentals.GetBBANDS(stock.Symbol, month, stock.Price, showErrors), 4); stock.BOP = Math.Round(fundamentals.GetBOP(stock.Symbol, month, showErrors), 4); stock.MACD = Math.Round(fundamentals.GetMACD(stock.Symbol, month, showErrors), 4); stock.MOM = Math.Round(fundamentals.GetMOM(stock.Symbol, month, stock.Price, showErrors), 4); stock.RSI = Math.Round(fundamentals.GetRSI(stock.Symbol, month, showErrors), 4); fundCount++; } ClearEmptyStockData(ref _stockData); ClearEmptyFutureData(ref _fundList); fundamentals.SaveFutureFundamentals(_fundList, month); return(_fundList); } }
public List <IStockData> GatherFundamentals(string month, bool showErrors) { var fundamentals = new FundamentalRepository(); var fundList = new List <IFundamental>(); string[] fileArray = Directory.GetFiles(@"..\..\..\Files\Fundamentals", $"{month}.csv", SearchOption.AllDirectories); //gets months fundamentals if (fileArray.Length != 0) { return(RetrieveFundamentals(month)); } else { var stockData = _stockData; stockCount = stockData.Count(); foreach (var stock in stockData) { fundCount = fundList.Count(); var price = Math.Round(fundamentals.GetPrice(stock.Symbol, month, showErrors), 4); stock.ADX = Math.Round(fundamentals.GetADX(stock.Symbol, month, showErrors), 4); stock.BBANDS = Math.Round(fundamentals.GetBBANDS(stock.Symbol, month, price, showErrors), 4); stock.BOP = Math.Round(fundamentals.GetBOP(stock.Symbol, month, showErrors), 4); stock.MACD = Math.Round(fundamentals.GetMACD(stock.Symbol, month, showErrors), 4); stock.MOM = Math.Round(fundamentals.GetMOM(stock.Symbol, month, price, showErrors), 4); stock.RSI = Math.Round(fundamentals.GetRSI(stock.Symbol, month, showErrors), 4); stock.Gain = Math.Round(fundamentals.GetGain(stock.Symbol, month, showErrors), 4); fundList.Add(new Fundamental() { Symbol = stock.Symbol, ADX = stock.ADX, BBANDS = stock.BBANDS, BOP = stock.BOP, MACD = stock.MACD, MOM = stock.MOM, RSI = stock.RSI, Gain = stock.Gain }); } ClearEmptyStockData(ref _stockData); ClearEmptyFundData(ref fundList); fundamentals.SaveFundamentals(fundList, month); return(_stockData); } }