ReRegisterOrder RealTimeEmulationTrader QuikTrader

ReRegisterOrder RealTimeEmulationTrader QuikTrader
Atom
10/17/2011
lshaton



В RealTimeEmulationTrader<QuikTrader> Исполнение команды
this.ReRegisterOrder(TargetOrder1, TargetOrder111);
не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.



Thanks:


1 2  >
lshaton

Avatar
Date: 10/17/2011
Reply


lshaton

В RealTimeEmulationTrader<QuikTrader> Исполнение команды
this.ReRegisterOrder(TargetOrder1, TargetOrder111);
не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.

И CancelActiveOrders()тоже не работает
this.Orders.Select(ord => ord.State == OrderStates.Active).Count());
показывает увеличение количества заявок,игнорируя снятие старых.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/20/2011
Reply


lshaton

В RealTimeEmulationTrader<QuikTrader> Исполнение команды
this.ReRegisterOrder(TargetOrder1, TargetOrder111);
не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.


А как проверяли? Смотрю код, там первой же строчкой:

Code
order.State = OrderStates.Done;
Thanks: lshaton

lshaton

Avatar
Date: 10/24/2011
Reply


Mikhail Sukhov
lshaton

В RealTimeEmulationTrader<QuikTrader> Исполнение команды
this.ReRegisterOrder(TargetOrder1, TargetOrder111);
не приводит к снятию заявок. TargetOrder1 остается активной и добавляется TargetOrder111.


А как проверяли? Смотрю код, там первой же строчкой:

Code
order.State = OrderStates.Done;

Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/24/2011
Reply


lshaton
Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.


Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются?
Thanks:

lshaton

Avatar
Date: 10/24/2011
Reply


Mikhail Sukhov
lshaton
Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.


Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются?

this.ReRegisterOrder(TargetOrder1, TargetOrder111);
потом в окошке выводилась величина
this.Orders.Select(ord => ord.State == OrderStates.Active).Count());
(this - стратегия) и это число постоянно увеличивалось с итерациями.
Я неделю назад с этим куском работал, потом переделал так, чтобы избежать ReRegisterOrder.
Попробую восстановать ситуацию и если повторится, сделаю пост сюда еще раз. Спасибо.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/24/2011
Reply


lshaton

this.ReRegisterOrder(TargetOrder1, TargetOrder111);
потом в окошке выводилась величина
this.Orders.Select(ord => ord.State == OrderStates.Active).Count());
(this - стратегия) и это число постоянно увеличивалось с итерациями.


Заявка не сразу снимается и не сразу регистрируется. По TargetOrder1 OrdersChanged приходит?
Thanks:

lshaton

Avatar
Date: 10/31/2011
Reply


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
Thanks:

lshaton

Avatar
Date: 10/31/2011
Reply


Mikhail Sukhov
lshaton
Да просто исполнялись заявки,которые были изменены и те на которые были изменены. Кроме того order.Count растет,хотя не должен.


Можно чуть по подробнее, как именно вы проверяли, что заявки не отменяются?

В моем последнем тесте заявки отменялись. Наверное в моей программе как-то дублировалось выставление заявок.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/31/2011
Reply


lshaton
Вопрос- почему исполненные заявки подсчитываются как активные


Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете?
Thanks:

lshaton

Avatar
Date: 10/31/2011
Reply


Mikhail Sukhov
lshaton
Вопрос- почему исполненные заявки подсчитываются как активные

Мы ходим вокруг да около... Почему вы считаете, что заявки исполнились? Как вы это проверяете?

Поднималось событие
Code

            _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));
}});

После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.
Thanks:
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy