コード例 #1
0
        private void OnMessage(OrderModified @event)
        {
            this.EventCount++;
            this.Logger.LogInformation(LogId.Trading, $"{Received}{Event} {@event}.");

            var order = this.ProcessOrderEvent(@event);

            if (order != null)
            {
                this.ProcessModifyBuffer(order);
            }

            this.SendToEventPublisher(@event);
        }
コード例 #2
0
        internal void CanSerializeAndDeserialize_OrderModifiedEvents()
        {
            // Arrange
            var order    = new StubOrderBuilder().BuildStopLimitOrder();
            var modified = new OrderModified(
                AccountId.FromString("FXCM-02851908-DEMO"),
                order.Id,
                new OrderIdBroker("B" + order.Id.Value),
                order.Quantity,
                Price.Create(2m, 1),
                StubZonedDateTime.UnixEpoch(),
                Guid.NewGuid(),
                StubZonedDateTime.UnixEpoch());

            // Act
            var packed   = this.serializer.Serialize(modified);
            var unpacked = (OrderModified)this.serializer.Deserialize(packed);

            // Assert
            Assert.Equal(modified, unpacked);
            this.Output.WriteLine(Convert.ToBase64String(packed));
        }
コード例 #3
0
ファイル: Order.cs プロジェクト: w1r2p1/Nautilus
 private void When(OrderModified @event)
 {
     this.Quantity = @event.ModifiedQuantity;
     this.Price    = @event.ModifiedPrice;
 }
コード例 #4
0
 private void OnMessage(OrderModified @event)
 {
     this.ReceivedObjects.Add(@event);
 }
コード例 #5
0
 private void OnMessage(OrderModified @event)
 {
     this.SendToBus(@event);
 }