public void TestUpdateMarketPositionMultipleOrders() { var orderCreator = new OrderCreator(); var manager = new StrategyManager(orderCreator); orderCreator.MarketThisBar( new SOrderParameters(EOrderAction.Buy)).Send(); orderCreator.MarketThisBar( new SOrderParameters(EOrderAction.Buy)).Send(); orderCreator.MarketThisBar( new SOrderParameters( Contracts.Default, EOrderAction.Sell, OrderExit.FromAll)).Send(); Assert.Equal(0, manager.StrategyInfo.MarketPosition); }
public void TestUpdateMarketPosition() { var orderCreator = new OrderCreator(); var manager = new StrategyManager(orderCreator); var order = orderCreator.MarketThisBar( new SOrderParameters(EOrderAction.Buy)); order.Send(); Assert.Equal(100, manager.StrategyInfo.MarketPosition); }
public void TestMarketThisBar() { var orderCreator = new OrderCreator(); using var monitoredOrderCreator = orderCreator.Monitor(); var order = orderCreator.MarketThisBar( new SOrderParameters(Contracts.CreateUserSpecified(10), EOrderAction.Buy)); order.Send(99); monitoredOrderCreator .Should().Raise("OrderSent") .WithArgs <OrderInfo>(info => info.Order == order) .WithArgs <OrderInfo>(info => info.OrderAction == EOrderAction.Buy) .WithArgs <OrderInfo>(info => info.Size == 99); }