private static void OnInitialisationStatus(object sender, EventArgs <bool> eventArgs) { Console.WriteLine("OnInitialisationStatus: {0}", eventArgs); if (eventArgs.Args) { _bloomberg.ToObservable(new[] { new SubscriptionRequest("VOD LN Equity", new[] { "BID", "ASK" }) }) .ObserveOn(TaskPoolScheduler.Default) .Subscribe( response => { Console.WriteLine("Subscription Received."); Console.WriteLine("{0} - [{1}]", response.Ticker, string.Join(",", response.Data.Select(x => string.Format("{0}: {1}", x.Key, x.Value)))); }, error => Console.WriteLine("Subscription Error: {0}", error), () => Console.WriteLine("Subscription Completed.")); _bloomberg.ToObservable(ReferenceDataRequest.Create(new[] { "VOD LN Equity", "TSCO LN Equity" }, new[] { "PX_LAST" })) .Subscribe( response => { Console.WriteLine("Reference Data Received."); foreach (var item in response) { if (item.Value.IsLeft) { Console.WriteLine("Ticker={0}, Error={1}", item.Key, item.Value.Left); } else { Console.WriteLine("{0} - [{1}]", item.Key, string.Join(",", item.Value.Right.Select(x => string.Format("{0}: {1}", x.Key, x.Value)))); } } }, error => Console.WriteLine("Reference Data Error: {0}", error), () => Console.WriteLine("Reference Data Completed.")); _bloomberg.ToObservable(new SecurityEntitlementsRequest(new[] { "VOD LN Equity", "IBM US Equity" })) .Subscribe( response => { Console.WriteLine("Security Entitlements Received."); foreach (var item in response) { Console.WriteLine("Ticker={0}, Entitlements=[{1}]", item.Key, string.Join(",", item.Value.EntitlementIds)); } }, error => Console.WriteLine("Security Entitlements Error={0}", error), () => Console.WriteLine("Security Entitlements Completed.")); _bloomberg.ToObservable(IntradayTickRequest.Create("VOD LN Equity", new[] { EventType.BID, EventType.ASK, EventType.TRADE }, new DateTime(2015, 10, 16, 9, 0, 0), new DateTime(2015, 10, 16, 9, 10, 0))) .Subscribe(response => { Console.WriteLine("Intraday Ticks Received."); Console.WriteLine("Ticker: {0}", response.Ticker); foreach (var intradayTick in response.IntraDayTicks) { Console.WriteLine(" {0:yyyy-MM-dd HH:mm:ss.fff} - {1}: {2}", intradayTick.Time, intradayTick.EventType, intradayTick.Value); } }, error => Console.WriteLine("Intraday Tick Error: {0}", error), () => Console.WriteLine("Intraday Tick Completed.")); _bloomberg.ToObservable(IntradayBarRequest.Create("VOD LN Equity", new DateTime(2015, 10, 16, 9, 0, 0), new DateTime(2015, 10, 16, 12, 00, 0), EventType.BID, 60)) .Subscribe( intradayBarResponse => { Console.WriteLine("Intraday Bar Received."); Console.WriteLine("{0}: [{1}]", intradayBarResponse.Ticker, string.Join(",", intradayBarResponse.IntradayBars.Select(intradayBar => string.Format("Open={0}, High={1}, Low={2}, Close={3}, Volume={4}, NumEvents={5}", intradayBar.Open, intradayBar.High, intradayBar.Low, intradayBar.Close, intradayBar.Volume, intradayBar.NumEvents)))); }, error => Console.WriteLine("Intraday Bar Error: {0}", error), () => Console.WriteLine("Intraday Bars complete")); _bloomberg.ToObservable(HistoricalDataRequest.Create(new[] { "VOD LN Equity", "TSCO LN Equity" }, new[] { "PX_LAST" }, DateTime.Today.AddMonths(-2), DateTime.Today, PeriodicitySelection.DAILY)) .Subscribe( response => { Console.WriteLine("Historical Data Received"); foreach (var item in response) { if (item.Value.IsLeft) { Console.WriteLine("Ticker={0}, SecurityError={1}", item.Key, item.Value.Left); } else { Console.WriteLine("Ticker={0}", item.Key); foreach (var dateAndFields in item.Value.Right) { Console.WriteLine(" Date: {0}", dateAndFields.Key); foreach (var nameAndValue in dateAndFields.Value) { Console.WriteLine(" {0}: {1}", nameAndValue.Key, nameAndValue.Value); } } } } }, error => Console.WriteLine("Historical Data Error: {0}", error), () => Console.WriteLine("Historical Data Completed.")); _bloomberg.RequestToken().Done(token => Console.WriteLine("Token={0}", token)); Console.WriteLine("It's asynchronous"); } }
public IObservable <IntradayTickResponse> ToObservable(IntradayTickRequest request) { return(_intradayTickManager.ToObservable(request)); }