示例#1
0
        static void Main(string[] args)
        {
            List <Ticker> trainingTickers = GetLastTickersFromEventstore(tickersToFetch: 4000);

            #region Train prediction network

            var predictionConfig = new PredictionConfig()
            {
                NumberOfPreviousTickers = 10,                                   //input nodes
                PredictedColumnName     = "last_price",                         //output node
                InputColumnNames        = trainingTickers.First().Keys.ToList() //input columns
            };

            var factory = new PredictionMachineFactory(predictionConfig, trainingTickers);

            var predictionMachine = factory.CreateAndTrainMachine();

            #endregion

            TestPredictionsInSimulator(predictionMachine, trainingTickers);

            #region Save predictionMachine in Eventstore

            var serializedPredictionMachine = SerializationHelper.SerializeBot(predictionMachine);

            using (var eventStoreHandler = new EventStoreHandler(GlobalConfig.EventstoreEndpoint))
            {
                eventStoreHandler.Connect();
                eventStoreHandler.WriteBytes(
                    streamId: GlobalConfig.PredictionMachinesStreamName,
                    data: serializedPredictionMachine, datatype: predictionMachine.GetType().FullName,
                    metadata: Encoding.UTF8.GetBytes(""),
                    isJson: false
                    ).Wait();
            }

            #endregion

            OutputWriter.WriteLine();
            OutputWriter.WriteLine("Press enter to exit");
            Console.ReadLine();
        }
 public PredictionMachine(IMLRegression neuralNet, NormalizationHelper normalizationHelper, PredictionConfig config)
 {
     NeuralNet            = neuralNet;
     _normalizationHelper = normalizationHelper;
     Config = config;
 }
 public PredictionMachineFactory(PredictionConfig predictionConfig, List <Ticker> trainingTickers)
 {
     _predictionConfig = predictionConfig;
     CsvFileHelper.CreateCsvFile(trainingTickers, GlobalConfig.CsvTickersFilename);
 }