Beispiel #1
0
        public void ignore_OrderMoveSucceeded_if_request_already_confirmed_test()
        {
            Signal signal = new Signal(this.strategyHeader, BrokerDateTime.Make(DateTime.Now), TradeAction.Buy, OrderType.Limit, 150000, 0, 150000);

            this.tradingData.Get <ICollection <Signal> >().Add(signal);

            Order order = new Order(signal);

            this.tradingData.Get <ICollection <Order> >().Add(order);

            OrderMoveRequest request = new OrderMoveRequest(order, 151000, 0, "Move order");

            this.tradingData.Get <ICollection <OrderMoveRequest> >().Add(request);

            Assert.IsFalse(request.IsDelivered);

            OrderMoveSucceeded confirmation = new OrderMoveSucceeded(request.OrderId, "588");

            this.rawData.GetData <OrderMoveSucceeded>().Add(confirmation);

            Assert.IsTrue(request.IsDelivered);

            OrderMoveSucceeded duplicate = new OrderMoveSucceeded(request.OrderId, "588");

            duplicate.DateTime = duplicate.DateTime.AddMilliseconds(1);
            this.rawData.GetData <OrderMoveSucceeded>().Add(duplicate);

            Assert.AreNotEqual(request.DeliveryDate, duplicate.DateTime);
            Assert.AreEqual(request.DeliveryDate, confirmation.DateTime);
        }
Beispiel #2
0
        public void OrderMoveSucceeded_constructor_test()
        {
            OrderMoveSucceeded os = new OrderMoveSucceeded(35, "9028347");

            Assert.AreEqual(35, os.Cookie);
            Assert.AreEqual("9028347", os.OrderId);
            Assert.AreEqual(BrokerDateTime.Make(DateTime.Now).Date, os.DateTime.Date);
        }
Beispiel #3
0
        public void ConfirmMoveRequest_on_OrderMoveSucceeded_test()
        {
            Signal signal = new Signal(this.strategyHeader, BrokerDateTime.Make(DateTime.Now), TradeAction.Buy, OrderType.Limit, 150000, 0, 150000);

            this.tradingData.Get <ICollection <Signal> >().Add(signal);

            Order order = new Order(signal);

            this.tradingData.Get <ICollection <Order> >().Add(order);

            OrderMoveRequest request = new OrderMoveRequest(order, 151000, 0, "Move order");

            this.tradingData.Get <ICollection <OrderMoveRequest> >().Add(request);

            Assert.IsFalse(request.IsDelivered);

            OrderMoveSucceeded confirmation = new OrderMoveSucceeded(request.OrderId, "588");

            this.rawData.GetData <OrderMoveSucceeded>().Add(confirmation);

            Assert.IsTrue(request.IsDelivered);
        }