Beispiel #1
0
        /// <summary>
        /// Extracts Market Data Providers Info from received response from MDE
        /// </summary>
        /// <param name="inquiryResponse">TradeHub InquiryResponse object containing Market Data Provivder Info</param>
        private void OnMarketDataInfoReceived(InquiryResponse inquiryResponse)
        {
            try
            {
                MarketDataProviderInfo marketDataProviderInfo = new MarketDataProviderInfo();

                marketDataProviderInfo.DataProviderName = inquiryResponse.MarketDataProvider;

                // Set Market Data Provider information received
                if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(ILiveTickDataProvider)))
                {
                    marketDataProviderInfo.ProvidesTickData = true;
                }
                if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(ILiveBarDataProvider)))
                {
                    marketDataProviderInfo.ProvidesLiveBarData = true;
                }
                if (inquiryResponse.MarketDataProviderInfo.Contains(typeof(IHistoricBarDataProvider)))
                {
                    marketDataProviderInfo.ProvidesHistoricalBarData = true;
                }

                // Raise Event to notify listeners
                if (_inquiryResponseArrived != null)
                {
                    _inquiryResponseArrived(marketDataProviderInfo);
                }
            }
            catch (Exception exception)
            {
                _asyncClassLogger.Error(exception, _type.FullName, "OnMarketDataInfoReceived");
            }
        }
Beispiel #2
0
        /// <summary>
        /// Called when MDE-Client receives inquiry response from MDE-Server
        /// </summary>
        private void OnInquiryResponseArrived(MarketDataProviderInfo marketDataProviderInfo)
        {
            try
            {
                if (_asyncClassLogger.IsDebugEnabled)
                {
                    _asyncClassLogger.Debug("New bar received from: " + marketDataProviderInfo.DataProviderName, _type.FullName,
                                            "OnLiveBarArrived");
                }

                if (_inquiryResponseArrived != null)
                {
                    _inquiryResponseArrived(marketDataProviderInfo);
                }
            }
            catch (Exception exception)
            {
                _asyncClassLogger.Error(exception, _type.FullName, "OnLiveBarArrived");
            }
        }