Пример #1
0
        public void OrderExpired()
        {
            var sec = new Security()
            {
                Id = 1, Type = SecurityType.Future, Group = "GC", Product = "GC", Contract = "GCZ6"
            };
            var book = new OrderBook(sec);

            book.SetStatus(SecurityTradingStatus.Open);

            OrderExpiredEventArgs args = null;

            book.OrderExpired += (sender, e) => { args = e; };

            book.CreateLimitOrder(2, TimeInForce.Day, null, Side.Buy, 100, 3);
            book.SetStatus(SecurityTradingStatus.Close);

            Debug.Assert(args != null);
            Debug.Assert(args.Order.Status == OrderStatus.Expired);
            Debug.Assert(args.Order.Id == 2);
            Debug.Assert(args.Order.Price == 100);
            Debug.Assert(args.Order.FilledQuantity == 0);
            Debug.Assert(args.Order.RemainingQuantity == 0);
        }
Пример #2
0
 private void HandleOrderExpired(object sender, OrderExpiredEventArgs args)
 {
     ordersToClients[args.Order.Id].Send(new Expire(args.Order, orderInfos[args.Order.Id]));
     SendBookUpdates(args.Order.Security);
 }