public static MarketMLDataSet GrabData(string newfileLoad) { IMarketLoader loader = new CSVFileLoader();//CSVLoader(); loader.GetFile(newfileLoad); var result = new MarketMLDataSet(loader, Config.INPUT_WINDOW, Config.PREDICT_WINDOW); // var desc = new MarketDataDescription(Config.TICKER, // MarketDataType.Close, true, true); var desc = new MarketDataDescription(Config.TICKER, MarketDataType.Close, TemporalDataDescription.Type.PercentChange, true, true); result.AddDescription(desc); var begin = DateTime.ParseExact("29.05.2005", "dd.MM.yyyy", CultureInfo.CurrentCulture); // begin 30 days ago var end = DateTime.ParseExact("22.07.2005", "dd.MM.yyyy", CultureInfo.CurrentCulture); // begin 30 days ago begin = begin.AddDays(Config.DAYS_OFFSET).AddDays(Config.TEST_OFFSET); end = end.AddDays(Config.DAYS_OFFSET).AddDays(Config.TEST_OFFSET).AddDays(Config.TEST_STRATCH); result.Load(begin, end); result.Generate(); return(result); }
public static void Generate(FileInfo dataDir) { IMarketLoader loader = new CSVFileLoader(); CSVFileLoader.LoadedFile = "D:\\losev\\test\\1.csv"; var market = new MarketMLDataSet(loader, Config.INPUT_WINDOW, Config.PREDICT_WINDOW); var desc = new MarketDataDescription( Config.TICKER, MarketDataType.Close, true, true); market.AddDescription(desc); var end = new DateTime(2006, 4, 13); // end today var begin = end.AddYears(-2); // begin 30 days ago // Gather training data for the last 2 years, stopping 60 days short of today. // The 60 days will be used to evaluate prediction. //begin = begin.AddDays(-460); //end = end.AddDays(-60); //begin = begin.AddYears(-2); market.Load(begin, end); market.Generate(); EncogUtility.SaveEGB(FileUtil.CombinePath(dataDir, Config.TRAINING_FILE), market); // create a network BasicNetwork network = EncogUtility.SimpleFeedForward( market.InputSize, Config.HIDDEN1_COUNT, Config.HIDDEN2_COUNT, market.IdealSize, true); // save the network and the training EncogDirectoryPersistence.SaveObject(FileUtil.CombinePath(dataDir, Config.NETWORK_FILE), network); }