ReRegisterOrder RealTimeEmulationTrader QuikTrader
Atom Ответить
17.10.2011



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



Спасибо:




15 Ответов
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

Фотография
Автор статей Программист Трейдер
Дата: 19.10.2011
Ответить


lshaton Перейти

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


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

Код
order.State = OrderStates.Done;
Спасибо: lshaton

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

После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 31.10.2011
Ответить


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


Заявка каким была объемом? Весь объем удовлетворялся? Версия последняя из КодеПлекса?
Спасибо:

lshaton

Фотография
Программист
Дата: 03.11.2011
Ответить


Mikhail Sukhov Перейти
lshaton Перейти
После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.


Заявка каким была объемом? Весь объем удовлетворялся? Версия последняя из КодеПлекса?

Заявки на один лот (один фьючерс) полностью удовлетворены. Версия S# 4.0.1
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 03.11.2011
Ответить


lshaton Перейти
Mikhail Sukhov Перейти
lshaton Перейти
После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.


Заявка каким была объемом? Весь объем удовлетворялся? Версия последняя из КодеПлекса?

Заявки на один лот (один фьючерс) полностью удовлетворены. Версия S# 4.0.1


Событие ITrader.OrdersChanged вызывается для заявок, по которым идет сделка?
Спасибо:

lshaton

Фотография
Программист
Дата: 03.11.2011
Ответить


Mikhail Sukhov Перейти
lshaton Перейти
Mikhail Sukhov Перейти
lshaton Перейти
После выставления каждой заявки поисходил трейд,потому,что все заявки по маркету.


Заявка каким была объемом? Весь объем удовлетворялся? Версия последняя из КодеПлекса?

Заявки на один лот (один фьючерс) полностью удовлетворены. Версия S# 4.0.1


Событие ITrader.OrdersChanged вызывается для заявок, по которым идет сделка?

Да вызывается.
Автор топика
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 03.11.2011
Ответить


lshaton Перейти
Mikhail Sukhov Перейти

Событие ITrader.OrdersChanged вызывается для заявок, по которым идет сделка?

Да вызывается.


Вот в этом событие какие значение Balance + State у заявки? Выведите в лог.
Спасибо:


Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy