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); }
private void RaiseMarketDataUpdate(MarketDataUpdatedArgs args) { var onInstrumentMarketDataUpdated = this.InstrumentMarketDataUpdated; if (onInstrumentMarketDataUpdated != null) { onInstrumentMarketDataUpdated(this, args); } }
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); }