lshaton
|
Дата: 17.10.2011
lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды this.ReRegisterOrder(TargetOrder1, TargetOrder111); не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
И CancelActiveOrders()тоже не работает this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); показывает увеличение количества заявок,игнорируя снятие старых.
|
|
Спасибо:
|
|
|
|
|
Mikhail Sukhov
|
Дата: 20.10.2011
lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды this.ReRegisterOrder(TargetOrder1, TargetOrder111); не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
А как проверяли? Смотрю код, там первой же строчкой: Код
order.State = OrderStates.Done;
|
|
|
|
|
lshaton
|
Дата: 24.10.2011
Mikhail Sukhov lshaton В RealTimeEmulationTrader<QuikTrader> Исполнение команды this.ReRegisterOrder(TargetOrder1, TargetOrder111); не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.
А как проверяли? Смотрю код, там первой же строчкой: Код
order.State = OrderStates.Done;
Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.
|
|
Спасибо:
|
|
|
|
|
Mikhail Sukhov
|
Дата: 24.10.2011
lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются?
|
|
Спасибо:
|
|
|
|
|
lshaton
|
Дата: 24.10.2011
Mikhail Sukhov lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются? this.ReRegisterOrder(TargetOrder1, TargetOrder111); потом в окошке выводилась величина this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); (this - стратегия) и это число постоянно увеличивалось с итерациями. Я неделю назад с этим куском работал, потом переделал так, чтобы избежать ReRegisterOrder. Попробую восстановать ситуацию и если повторится, сделаю пост сюда еще раз. Спасибо.
|
|
Спасибо:
|
|
|
|
|
Mikhail Sukhov
|
Дата: 24.10.2011
lshaton this.ReRegisterOrder(TargetOrder1, TargetOrder111); потом в окошке выводилась величина this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); (this - стратегия) и это число постоянно увеличивалось с итерациями.
Заявка не сразу снимается и не сразу регистрируется. По TargetOrder1 OrdersChanged приходит?
|
|
Спасибо:
|
|
|
|
|
lshaton
|
Дата: 31.10.2011
Mikhail Sukhov lshaton this.ReRegisterOrder(TargetOrder1, TargetOrder111); потом в окошке выводилась величина this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); (this - стратегия) и это число постоянно увеличивалось с итерациями.
Заявка не сразу снимается и не сразу регистрируется. По TargetOrder1 OrdersChanged приходит? Событие _trader.OrdersChanged подымается каждый раз при выставлении новой заявки и при изменении заявки ReRegisterOrder(...). Вопрос- почему исполненные заявки подсчитываются как активные this.Orders.Select(ord => ord.State == OrderStates.Active).Count()); ??? Исполненная заявка должна получить OrderStates.Done
|
|
Спасибо:
|
|
|
|
|
lshaton
|
Дата: 31.10.2011
Mikhail Sukhov lshaton Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен. Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются? В моем последнем тесте заявки отменялись. Наверное в моей программе как-то дублировалось выставление заявок.
|
|
Спасибо:
|
|
|
|
|
Mikhail Sukhov
|
Дата: 31.10.2011
lshaton Вопрос- почему исполненные заявки подсчитываются как активные Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете?
|
|
Спасибо:
|
|
|
|
|
lshaton
|
Дата: 31.10.2011
Mikhail Sukhov lshaton Вопрос- почему исполненные заявки подсчитываются как активные Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете? Поднималось событие Код
_trader.NewMyTrades += myTrades => this.GuiAsync(() =>
{
foreach (MyTrade myTrade in myTrades)
{
WriteToTextBox(trade.OrderDirection.ToString() + String.Format(" Сделка {0} по цене {1} тек.позиция= {2} по объему {3} P&L={4} myP&L={5}", trade.Id, trade.Price, iVolume, trade.Volume, myTrades.GetPnL(), dPL + iVolume * trade.Price));
}});
После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.
|
|
Спасибо:
|
|
|
|