public void BroadCastMarketOrderBookData(MarketOrderBookData eventData)
 {
     if (eventData != null)
     {
         Task.Run(() => Messenger.Default.Send(eventData, MessengerToken.BROADCASTMARKETORDERBOOK));
     }
 }
Exemplo n.º 2
0
 private void UpdateOrderBook(MarketOrderBookData obj)
 {
     DispatcherHelper.CheckBeginInvokeOnUI(() =>
     {
         MarketOrderDataList.Clear();
         UpdateBuyOrderBook(obj);
         UpdateSellOrderBook(obj);
     });
 }
Exemplo n.º 3
0
 public void BroadCastMarketOrderBookData(MarketOrderBookData data,
                                          IReadOnlyDictionary <int, IBroadcastorCallBack> clients)
 {
     foreach (var client in clients)
     {
         try
         {
             client.Value.BroadCastMarketOrderBookData(data);
         }
         catch
         {
             ObjFactory.Instance.CreateLogger()
             .Log("BroadCastMarketOrderBookData =" + client, this.GetType().Name);
         }
     }
 }
Exemplo n.º 4
0
 public void BroadCastMarketOrderBookDataToSingleClient(MarketOrderBookData data,
                                                        IReadOnlyDictionary <int, IBroadcastorCallBack> clients, int clientId)
 {
     try
     {
         var value = clients[clientId];
         if (value != null)
         {
             value.BroadCastMarketOrderBookData(data);
         }
     }
     catch
     {
         ObjFactory.Instance.CreateLogger()
         .Log("BroadCastMarketOrderBookDataToSingleClient =" + clientId, this.GetType().Name);
     }
 }
Exemplo n.º 5
0
        private void UpdateSellOrderBook(MarketOrderBookData obj)
        {
            if (obj.SellPendingOrders?.Count() > 0)
            {
                var list = obj.SellPendingOrders.OrderBy(x => x.Price).ToList();
                foreach (var item in list)
                {
                    var marketData = ObjFactory.Instance.CreateMarketOrderData();

                    if (MarketOrderDataList.Any(x => x.Price == item.Price))
                    {
                        marketData = MarketOrderDataList.Where(x => x.Price == item.Price).FirstOrDefault();
                        AddAskMrktQuantity(item, marketData);
                    }
                    else
                    {
                        marketData.Price = item.Price;
                        AddAskMrktQuantity(item, marketData);
                        MarketOrderDataList.Add(marketData);
                    }
                }
            }
        }