private void OnOrderReply(OrderProcessor.Capital.ReplyType ReplyType, OrderProcessor.Capital.Order Ord) { if (Ord.ComID != OrderPID) { return; } if (Ord.Price > MaxTick || Ord.Price < MinTick) { if (Ord.BuySell == OrderProcessor.Side.B) { cStatistics_Buy.SetValue(Core.Instance.OrderStatus(OrderPID, OrderProcessor.Side.B, MaxTick, MinTick)); } else { cStatistics_Sell.SetValue(Core.Instance.OrderStatus(OrderPID, OrderProcessor.Side.S, MaxTick, MinTick)); } } else { foreach (var cell in m_OrderCell.Keys) { //if ((double)cell.Value != Ord.Price) { continue; } //m_OrderCell[cell][Ord.BuySell].SetValue(Core.Instance.OrderStatus(OrderPID, Ord.BuySell, Ord.Price)); foreach (double price in Core.Instance.Order.PriceByOrderNo(Ord.ComID, Ord.OrdNo)) { if (((double)cell.Value) == price) { m_OrderCell[cell][Ord.BuySell].SetValue(Core.Instance.OrderStatus(OrderPID, Ord.BuySell, price)); } } } } //UpdateAllStatus(); }
private void OnMatchReply(OrderProcessor.Capital.ReplyType ReplyType, OrderProcessor.Capital.Order ord) { Utility.Log(this, "MatchToSQL", ord.ToString()); Match2SQL(ord); }