Esempio n. 1
0
        private void MarketGatewayOnMarketDataUpdated(object sender, ApiMarketDataUpdateEventArgs apiMarketDataUpdateEventArgs)
        {
            // Adapts the external API feed format to the SOR domain format
            var marketDataUpdatedArgs = new MarketDataUpdatedArgs(apiMarketDataUpdateEventArgs.OriginMarketName, apiMarketDataUpdateEventArgs.MarketPrice, apiMarketDataUpdateEventArgs.QuantityOnTheMarket);

            this.RaiseMarketDataUpdate(marketDataUpdatedArgs);
        }
Esempio n. 2
0
        private void RaiseMarketDataUpdate(MarketDataUpdatedArgs args)
        {
            var onInstrumentMarketDataUpdated = this.InstrumentMarketDataUpdated;

            if (onInstrumentMarketDataUpdated != null)
            {
                onInstrumentMarketDataUpdated(this, args);
            }
        }
Esempio n. 3
0
        public void Subscribe(string marketName)
        {
            var internalMarket = this.gateways.First(m => m.Key == marketName).Value;

            // Raise the first event
            var marketDataUpdatedArgs = new MarketDataUpdatedArgs(internalMarket.MarketName, internalMarket.SellPrice, internalMarket.SellQuantity);

            this.RaiseMarketDataUpdate(marketDataUpdatedArgs);
        }
 private void InstrumentMarketDataUpdated(object sender, MarketDataUpdatedArgs marketDataUpdatedArgs)
 {
     this.lastMarketUpdates[marketDataUpdatedArgs.MarketName] = new MarketInfo(marketDataUpdatedArgs.MarketName, marketDataUpdatedArgs.Quantity, marketDataUpdatedArgs.Price);
 }