Проблемы со сделками, позициями

Проблемы со сделками, позициями
Atom
8/11/2011
Mikhail Sukhov


Судя по всему у некоторых участников на 3.2.xxx появился сабж. Давайте сделаем следующее для поиска причины:

1. Подпишемся на QuikTrader.ProcessDataError, QuikTrader.PreProcessDdeData, QuikTrader.NewOrders, QuikTrader.OrdersChanged, QuikTrader.OrdersFailed, QuikTrader.NewMyTrades, Strategy.NewOrder, Strategy.OrderChanged, Strategy.NewMyTrades.
2. Из этих событий сделайте логирование.
3. У стратегии сделайте логирование. В 3.2.6 стало больше логов, особенно в плане заявок и сделок.

Без логов разобраться сложно. Скажу больше, скорее всего, невозможно. Поэтому, чтобы взаимно упростить работу, ждем от вас логов.

Tags:


Thanks:


<< < 3 4 5 6  >
Mikhail Sukhov

Avatar
Date: 10/30/2011
Reply


sergun
и в логе возникают сообщения "Вы не можете снять данную заявку". Предположу, что QuikTrader, как и мои обработчики изменения состояния заявок видят их как Active и соответственно CancelActiveOrders пытается их снять.


Не факт. Заявка может быть исполнена на бирже но еще не обновила свой статус у вас на компьютере.

Насчет постоянно висит Active. Запускали пример Sample? Выставляли заявки? Снимали? Статус менялся?
Thanks:

Supervisor

Avatar
Date: 10/31/2011
Reply


sergun
[quote=Mikhail Sukhov;12853]Но вот заявочки остаются в Active. Смотрите, вот даже после всего вызываю CancelActiveOrders и в логе возникают сообщения "Вы не можете снять данную заявку". Предположу, что QuikTrader, как и мои обработчики изменения состояния заявок видят их как Active и соответственно CancelActiveOrders пытается их снять. Хотя в квике заявы давно исполнены либо сняты.

Подтвержу, у меня так же. За сессию исполненные active заявочки накапливаются, и при вызове CancelOrders на каждую такую выводится ошибка. Сегодня будет время - попробую sample и с фильтром Balance = 0 снимать что получится.
Thanks:

Mikhail Sukhov

Avatar
Date: 10/31/2011
Reply


Supervisor
Подтвержу, у меня так же.


Запускали пример Sample? Выставляли заявки? Снимали? Статус менялся?
Thanks:

Supervisor

Avatar
Date: 11/1/2011
Reply


Mikhail Sukhov
Supervisor
Подтвержу, у меня так же.

Запускали пример Sample? Выставляли заявки? Снимали? Статус менялся?

Там все нормально, локализовал проблему:
Code

foreach (var order in Trader.Orders)
{
	if (order.Portfolio == Portfolio && order.State == OrderStates.Active)
	{
		DebugMessage("ORDER ID " + order.Id + " STATE " + order.State + " BALANCE " + order.Balance);
		Trader.CancelOrder(order);
	}
}

Данный код помимо активных заявок выводит и сработавшие заявки со статусом Active. Why?
Thanks:

Mikhail Sukhov

Avatar
Date: 11/1/2011
Reply


Supervisor
Данный код помимо активных заявок выводит и сработавшие заявки со статусом Active. Why?


Потому что у вас почему то заявки не меняют свой статус на Done. В Sample раз все работает, значит ошибка у вас.
Thanks:

Supervisor

Avatar
Date: 11/3/2011
Reply


Долго ковырялся, нашел причину - не был запущен DDE экспорт по таблице заявок.
Thanks:

Mikhail Sukhov

Avatar
Date: 11/3/2011
Reply


На КодеПлексе лежит залеченная версия Algo. Она решает проблему с позициями. Просьба проверить ее.
Thanks:

sergun

Avatar
Date: 11/10/2011
Reply


Mikhail Sukhov
На КодеПлексе лежит залеченная версия Algo. Она решает проблему с позициями. Просьба проверить ее.


Отвлеку, а симптом типа: заявка из None сразу становится Done (без Active) и в такой ситуации заявка на появляется в Strategy.Orders случаем не "про этот фикс"? :-)
Thanks:

VirKato

Avatar
Date: 5/31/2012
Reply


Mikhail Sukhov
Supervisor
Данный код помимо активных заявок выводит и сработавшие заявки со статусом Active. Why?


Потому что у вас почему то заявки не меняют свой статус на Done. В Sample раз все работает, значит ошибка у вас.


Михаил. Sample запускал, работает. Мой код тоже работает и статусы меняются. Но, не всегда: заявки обновляются каждую секунду (reregister) и периодически некоторые заявки, которые по факту уже сняты (например сравнивая с таблицей в квике), так и остаются висеть активными. Процент этих заявок не большой (на вскидку <4%).
Есть ли возможность принудительно поставить статус done для определенной заявки в Trader.Orders?
Thanks:

Alexander

Avatar
Date: 5/31/2012
Reply


Версия 4.1.1?
Покажите список таких заявок и скриншот квика, где видна описанная вами проблема.
Thanks:
<< < 3 4 5 6  >

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

loading
clippy