private void initializeDataHandler() { _markets = new MarketAggregator(); //const string dsPath = "TickData.qbd"; //_histFeed = new HistoricalDataHandler(dsPath); //_histFeed.AddDataInterval(new DateTime(2013, 3, 4, 23, 59, 50), new DateTime(2013, 3, 5, 0, 1, 0)); //_histFeed.AddDataInterval(new DateTime(2013, 3, 5, 23, 59, 44), new DateTime(2013, 3, 6, 0, 1, 0)); //var NKH3 = new DataFactory(new Security("NKM3 Index", 13, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(NKH3); //_markets.AddSecurity(NKH3); //NKH3.AddReferenceToMarkets(_markets); //var NOH3 = new DataFactory(new Security("NOH3 Index", 17, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(NOH3); //_markets.AddSecurity(NOH3); //NOH3.AddReferenceToMarkets(_markets); //var NIH3 = new DataFactory(new Security("NIH3 Index", 21, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(NIH3); //_markets.AddSecurity(NIH3); //NIH3.AddReferenceToMarkets(_markets); //NIH3.LogEachTick = true; //var TPH3 = new DataFactory(new Security("TPH3 Index", 26, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(TPH3); //_markets.AddSecurity(TPH3); //TPH3.AddReferenceToMarkets(_markets); //var JBH3 = new DataFactory(new Security("JBH3 Comdty", 31, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(JBH3); //_markets.AddSecurity(JBH3); //JBH3.AddReferenceToMarkets(_markets); //var JPY = new DataFactory(new Security("JPY Curncy", 9, Security.SecurityType.IndexFuture)); //_histFeed.AddSecurity(JPY); //_markets.AddSecurity(JPY); //JPY.AddReferenceToMarkets(_markets); //_histFeed.LoadHistoricalData(); //DateTime start = DateTime.Now; //_histFeed.PlayBackData(); //TimeSpan time = DateTime.Now - start; //Console.WriteLine("Playback time {0} seconds", time.Seconds.ToString()); //const string filePath = @"C:\Users\Andre\Documents\BBDataSource\Market Aggregator OutPut\"; //_markets.BatchWriteOutData(MarketAggregator.OutPutType.FlatFile, MarketAggregator.OutPutMktMode.BothMkts, filePath, 11); var NKM3 = new DataFactory(new Security("NKM3 Index", 13, Security.SecurityType.IndexFuture)); _markets.AddSecurity(NKM3); _blbgFeed.AddSecurity(NKM3, NKM3.SecurityName); NKM3.SubscribeToDataFeedEvents(_blbgFeed); NKM3.AddReferenceToMarkets(_markets); NKM3.LogEachTick = true; //var NOM3 = new DataFactory(new Security("NOM3 Index", 18, Security.SecurityType.IndexFuture)); //_markets.AddSecurity(NOM3); //_blbgFeed.AddSecurity(NOM3); //NOM3.SubscribeToDataFeedEvents(_blbgFeed); //NOM3.AddReferenceToMarkets(_markets); //NOM3.LogEachTick = true; //var JPY = new DataFactory(new Security("JPY Curncy", 9, Security.SecurityType.Curncy)); //_markets.AddSecurity(JPY); //_blbgFeed.AddSecurity(JPY.Security, JPY); //JPY.SubscribeToDataFeedEvents(_blbgFeed); //JPY.AddReferenceToMarkets(_markets); //JPY.LogEachTick = true; ////var NIM3 = new DataFactory(new Security("NIM3 Index", 22, Security.SecurityType.IndexFuture)); ////_markets.AddSecurity(NIM3); ////_blbgFeed.AddSecurity(NIM3); ////NIM3.SubscribeToDataFeedEvents(_blbgFeed); ////NIM3.AddReferenceToMarkets(_markets); ////NIM3.LogEachTick = true; //var JBM3 = new DataFactory(new Security("JBM3 Comdty", 32, Security.SecurityType.IndexFuture)); //_markets.AddSecurity(JBM3); //_blbgFeed.AddSecurity(JBM3); //JBM3.SubscribeToDataFeedEvents(_blbgFeed); //JBM3.AddReferenceToMarkets(_markets); //JBM3.LogEachTick = true; _blbgFeed.Subscribe(); }
private void setUpInsturment(DateTime start, DateTime end, string security, Security.SecurityType secType) { var sec = new DataFactory(new Security(security, 0, secType)); _factories.Add(sec); _markets.AddSecurity(sec); sec.AddReferenceToMarkets(_markets); sec.AddReferenceToDatafeed((ITickDataFeed)_histFeed); var query = new TickDataQuery() { Security = sec.SecurityName, CorrelationIdObj = sec, StartDate = start, EndDate = end, IncludeConditionCode = true, IncludeExchangeCode = true }; var queryGenerator = new TickDataQueries(); var queries = queryGenerator.GetTickDataQueries(query); var queriesPM = new List <ITickDataQuery>(); foreach (var q in queries) { queriesPM.Add(new TickDataQuery() { Security = q.Security, StartDate = new DateTime(q.EndDate.Year, q.EndDate.Month, q.EndDate.Day, 7, 15, 00), EndDate = new DateTime(q.EndDate.Year, q.EndDate.Month, q.EndDate.Day, 18, 20, 00), Fields = q.Fields, CorrelationIdObj = q.CorrelationIdObj, IncludeConditionCode = q.IncludeConditionCode, IncludeExchangeCode = q.IncludeExchangeCode, }); //q.StartDate = q.StartDate.AddHours(-1); q.EndDate = new DateTime(q.EndDate.Year, q.EndDate.Month, q.EndDate.Day, 6, 20, 00); } if (useBB) { // Historical playback From Bloomberg var histBBTickData = new BloombergHistTickDataHandler(); histBBTickData.BBHTDUpdate += histTickData_Update; histBBTickData.AddDataQueries(queries); histBBTickData.AddDataQueries(queriesPM); histBBTickData.DataHandler = _histFeed; _histFeed.AddHistoricalAdapter(histBBTickData); } else { // Historical playback from SQL DB const string dsPath = "TickData.qbd"; var histTickData = new HistoricalData.HistoricalAdapterSqlDB(dsPath); histTickData.HistTDUpdate += histTickData_Update; histTickData.AddDataQueries(queries); //histTickData.AddDataQueries(queriesPM); histTickData.DataHandler = _histFeed; _histFeed.AddHistoricalAdapter(histTickData); } responded.Add(security, false); }