Некорректная работа Order.Canceled()
Atom
08.11.2011
frontman


Правило некорректно срабатывает если происходит частичное исполнение заявки. Т.е если заявка частично сработала правило Order.Canceled() срабатывает. Подозреваю что это связанно с тем, что правило скорее всего правило активизируется при смене статуса заявки на Done, а этот статус и у исполненной частично заявки и у отмененной заявки! Сам я к сожалению не могу посмотреть внутренности Order.Canceled() , так что это только предположение...


Теги:


Спасибо:


1 2  >
Alexander

Фотография
Дата: 08.11.2011
Ответить


Почему в Plaza2?

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Да честно просто не знаю на других системах так же... Я с плазой только работаю...

Спасибо:

Alexander

Фотография
Дата: 08.11.2011
Ответить


Если заявка частично срабатывает и она затем отменена - она действительно отменена, потому правило срабатывает правильно.

Хотите дополнительно отфильтровать те заявки, которые частично исполнились - проверяйте что Balance = Volume. Для таких заявок характерно полная отмена, без частичного исполнения.

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Нет. Заявка вообще не отменялась. Правило Order.Canceled() сработало именно при частичном исполнении заявки. Мне именно корректное исполнение Order.Canceled() нужно))

Спасибо:

Alexander

Фотография
Дата: 08.11.2011
Ответить


какой при этом order.State? какая версия плазы?

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Скажу честно это предположение. Т.к у исполненной заявки так же как и у отмененной статус Done, то я предположил и у частично исполненной так же статус Done. отсюда и неверное срабатывание. К сожалению я не могу вот так сразу статус проверить заявки что бы сказать точно, т.к. частичное исполнение в моей стратегии не так часто происходит... Вообщем то я вас понял. Тогда как только получу точную инф. сразу отпишусь...

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Все проверил. Статус Done у заявки.

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Может скинете код Order.Canceled() я сам покопаюсь....

Спасибо:

Alexander

Фотография
Дата: 08.11.2011
Ответить


Так ответьте на вопрос про версию плазы. В коммите 10989 я делал фикс.

Order.Canceled() не дам, он тут не при чём. У заявки не должен выставляться статус Done. Если у вас версия >= 10989 - копайте PlazaTrader, который всем доступен.

Спасибо:

frontman

Фотография
Дата: 08.11.2011
Ответить


Использую версию 11103. Понят. Ок.

Спасибо:
1 2  >

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

loading
clippy