private void Handle(MarketBestBidOfferUpdateMessage msg) { if (msg.Tick is null) { return; } _logger.LogInformation( $"Market best bid/offer update {msg.ParseSymbolFromTopic()} | [symbol={msg.Tick.Symbol}] [quoteTime={msg.Tick.QuoteTime}] [bid={msg.Tick.Bid}] [bidSize={msg.Tick.BidSize}] [ask={msg.Tick.Ask}] [askSize={msg.Tick.AskSize}] [seqId={msg.Tick.SeqId}]"); }
private bool TryHandleUpdateMessages(string message) { if (MarketCandlestickUpdateMessage.TryParse(Serializer, message, out var marketCandlestick)) { Streams.CandlestickUpdateSubject.OnNext(marketCandlestick); return(true); } if (MarketDepthUpdateMessage.TryParse(Serializer, message, out var marketDepth)) { Streams.DepthUpdateSubject.OnNext(marketDepth); return(true); } if (MarketByPriceRefreshUpdateMessage.TryParse(Serializer, message, out var marketByPriceRefresh)) { Streams.MarketByPriceRefreshUpdateSubject.OnNext(marketByPriceRefresh); return(true); } if (MarketBestBidOfferUpdateMessage.TryParse(Serializer, message, out var marketBestBidOffer)) { Streams.BestBidOfferUpdateSubject.OnNext(marketBestBidOffer); return(true); } if (MarketTradeDetailUpdateMessage.TryParse(Serializer, message, out var marketTradeDetail)) { Streams.TradeDetailUpdateSubject.OnNext(marketTradeDetail); return(true); } if (MarketDetailsUpdateMessage.TryParse(Serializer, message, out var marketDetails)) { Streams.MarketDetailsUpdateSubject.OnNext(marketDetails); return(true); } return(false); }