Неправильное значение в PositionManager.Position

Неправильное значение в PositionManager.Position
Atom
30.01.2012
vfreeman


В результате следующих ошибок расходятся данные в PositionManager.Position и реальная позиция в квике. Дважды зафиксировал сегодня эту ситуацию.

Что могут посоветовать гуру?


Код
17:59:53.796 | Error      | MQS             | Заявка 61736017 не была принята по причине System.InvalidOperationException: Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=61736017; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=6667201216; FIRST_ORDER_NEW_PRICE=154040; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] "Не найдена заявка для перестановки.".' по передвинутым заявкам..
17:59:53.812 | Error      | MQS             | Заявка 61736017 не принята биржей по причине 'Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=61736017; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=6667201216; FIRST_ORDER_NEW_PRICE=154040; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] "Не найдена заявка для перестановки.".' по передвинутым заявкам.'.
17:59:53.828 | Warning    | MQS             | Заявка 61736017 устарела.
17:59:53.906 | Error      | MQS             | Заявка 61736018 не была принята по причине System.InvalidOperationException: Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=61736018; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=0; FIRST_ORDER_NEW_PRICE=154100; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Вы не можете снять данную заявку' по передвинутым заявкам..
17:59:53.906 | Error      | MQS             | Заявка 61736018 не принята биржей по причине 'Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=61736018; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=0; FIRST_ORDER_NEW_PRICE=154100; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Вы не можете снять данную заявку' по передвинутым заявкам.'.

Теги:


Спасибо:


Alexander

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


Версия S#; дайте лог от PositionManager
Спасибо:

vfreeman

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


Alexander Mukhanchikov
Версия S#; дайте лог от PositionManager


Сорри, что сразу не указал.

S# 4.0.17

А что значит лог от PositionManager? Как его включить? На данный момент я его уже не смогу получить - но хочу добавить эту информацию в журнал - а может еще что-то нужно добавить для логирования чтобы разобраться?

Хотел бы еще пояснить что и как было.

Регистрирую заявку на открытие позиции котированием.

Код
ordT = CreateOrder(pDir, Security.GetMarketPrice(pDir), pVol)
strT = New MarketQuotingStrategy(ordT, New Unit(), New Unit())
ChildStrategies.Add(strT)


В данном случае это была покупка 3-х контрактов, а на деле получилось 2 сделки покупки по 3 контракта каждая - в итоге PositionManager.Position уловил покупку только 3-х контрактов
Спасибо:

vfreeman

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


Alexander Mukhanchikov
Версия S#; дайте лог от PositionManager


добавил логирование (спасибо esper) следующим образом:

Код
sealed class TraceStrategyPositionManager : StrategyPositionManager
          {
               public TraceStrategyPositionManager(Strategy strategy, bool byOrders)
                    : base(strategy, byOrders)
               {
               }

               protected override void  ProcessOrder(Order order)
               {
                    Strategy.AddWarningLog("SPM: OrderId {0} Volume {1} Balance {2} Pos {3}".Put(order.Id, order.Volume, order.Balance, order.GetPosition()));
                    base.ProcessOrder(order);
               }
          }


ситуация повторилась. перед покупкой 3 контрактов - на балансе -1. на выходе имеем 2 покупки по 3 контракта => на балансе 5, вместо 2.

Код
10:09:48.937 |            | MQS             | Стратегия запущена.
10:09:48.937 |            | MQS             | Котирование на Buy объема 3.
10:09:48.953 |            | MQS             | Цена текущей NULL и лучшей 156510.
10:09:48.968 |            | MQS             | Лучший бид 156510 и лучший аск 156525.
10:09:48.968 |            | MQS             | Регистрация новой заявки на Buy с ценой 156510 и объемом 3.
10:09:49.000 |            | MQS             | Заявка 35735969 на Buy отправлена с ценой 156510 объемом 3.
10:09:49.296 | Warning    | MQS             | Заявка 35735969 в процессе регистрации.
10:09:49.328 | Warning    | chb_RIH2        | SPM: OrderId 6669965126 Volume 3 Balance 3 Pos 0
10:09:49.343 |            | MQS             | Заявка 35735969 принята биржей.
10:09:49.343 |            | MQS             | Цена текущей 156510 и лучшей 156485.
10:09:49.359 |            | MQS             | Лучший бид 156485 и лучший аск 156495.
10:09:49.359 |            | MQS             | Котирование заявки 35735969 на Buy с ценой 156510 объемом 3.
10:09:49.390 |            | MQS             | Перекотирование зарегистрировано для заявки 35735970 на Buy с ценой 156485 объемом 3.
10:09:49.500 | Error      | MQS             | Заявка 35735970 не была принята по причине System.InvalidOperationException: Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=35735970; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=6669965126; FIRST_ORDER_NEW_PRICE=156485; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] "Не найдена заявка для перестановки.".' по передвинутым заявкам..
10:09:49.500 | Error      | MQS             | Заявка 35735970 не принята биржей по причине 'Сервер для транзакции 'ACTION=MOVE_ORDERS; TRANS_ID=35735970; CLASSCODE=SPBFUT; SECCODE=RIH2; MODE=0; FIRST_ORDER_NUMBER=6669965126; FIRST_ORDER_NEW_PRICE=156485; FIRST_ORDER_NEW_QUANTITY=3;' вернул неправильное сообщение 'Ошибка перестановки заявок. [FORTS] "Не найдена заявка для перестановки.".' по передвинутым заявкам.'.
10:09:49.531 |            | MQS             | Цена текущей NULL и лучшей 156485.
10:09:49.531 |            | MQS             | Лучший бид 156485 и лучший аск 156495.
10:09:49.546 |            | MQS             | Регистрация новой заявки на Buy с ценой 156485 и объемом 3.
10:09:49.562 |            | MQS             | Заявка 35735971 на Buy отправлена с ценой 156485 объемом 3.
10:09:49.796 | Warning    | chb_RIH2        | SPM: OrderId 6669965534 Volume 3 Balance 3 Pos 0
10:09:49.796 |            | MQS             | Заявка 35735971 принята биржей.
10:09:50.125 |            | chb_RIH2        | Новая Buy сделка 497153499 по цене 156495 на 3 заявки 35735969.
10:09:50.140 |            | MQS             | Новая Buy сделка 497153499 по цене 156495 на 3 заявки 35735969.
10:09:50.140 |            | chb_RIH2        | ChannelBreak_PositionsChanged PositionManager.Position=-1 lngNewPos=2
10:09:50.171 |            | chb_RIH2        | Новая Buy сделка 497153586 по цене 156485 на 2 заявки 35735971.
10:09:50.171 |            | chb_RIH2        | Новая позиция -1.
10:09:50.203 |            | MQS             | Новая Buy сделка 497153586 по цене 156485 на 2 заявки 35735971.
10:09:50.234 |            | chb_RIH2        | Новая Buy сделка 497153587 по цене 156485 на 1 заявки 35735971.
10:09:50.234 | Warning    | chb_RIH2        | SPM: OrderId 6669965126 Volume 3 Balance 0 Pos 3
10:09:50.250 |            | chb_RIH2        | Новая позиция 2.
10:09:50.250 |            | MQS             | Новая Buy сделка 497153587 по цене 156485 на 1 заявки 35735971.
10:09:50.281 |            | MQS             | Новая позиция 3.
10:09:50.296 |            | MQS             | Позиция изменилась на 3. Оставшийся объем 0.
10:09:50.296 |            | MQS             | Заканчиваем котирование.
10:09:50.312 |            | MQS             | Отмена заявки 35735971.
10:09:50.312 |            | MQS             | Стратегия останавливается.
10:09:50.312 |            | MQS             | Стратегия остановлена.
10:09:50.328 | Warning    | chb_RIH2        | SPM: OrderId 6669965126 Volume 3 Balance 0 Pos 3
10:09:50.375 | Warning    | chb_RIH2        | SPM: OrderId 6669965126 Volume 3 Balance 0 Pos 3
10:09:50.390 | Warning    | chb_RIH2        | SPM: OrderId 6669965126 Volume 3 Balance 0 Pos 3
10:09:50.406 |            | chb_RIH2        | Новая позиция 2.
10:09:50.453 | Warning    | chb_RIH2        | SPM: OrderId 6669965534 Volume 3 Balance 0 Pos 3
10:09:50.468 |            | chb_RIH2        | Новая позиция 5.
10:09:50.500 | Warning    | chb_RIH2        | SPM: OrderId 6669965534 Volume 3 Balance 0 Pos 3
10:09:50.500 | Warning    | chb_RIH2        | SPM: OrderId 6669965534 Volume 3 Balance 0 Pos 3
10:09:50.515 | Warning    | chb_RIH2        | SPM: OrderId 6669965534 Volume 3 Balance 0 Pos 3
10:10:17.203 |            | chb_RIH2        | Стратегия останавливается.
10:10:17.203 |            | chb_RIH2        | Стратегия остановлена.

Спасибо:

Mikhail Sukhov

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


vfreeman
В результате следующих ошибок расходятся данные в PositionManager.Position и реальная позиция в квике. Дважды зафиксировал сегодня эту ситуацию.

Что могут посоветовать гуру?


Котирование пока не дружит с move (а возможно и вообще, так как там все довольно неопределенно). Сделайте Security.Exchange.IsSupportAtomicReRegister = false.
Спасибо:

vfreeman

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


Mikhail Sukhov
vfreeman
В результате следующих ошибок расходятся данные в PositionManager.Position и реальная позиция в квике. Дважды зафиксировал сегодня эту ситуацию.

Что могут посоветовать гуру?


Котирование пока не дружит с move (а возможно и вообще, так как там все довольно неопределенно). Сделайте Security.Exchange.IsSupportAtomicReRegister = false.


благодарю за совет! внес изменения - проверяю.
Спасибо:

vfreeman

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


vfreeman
Mikhail Sukhov
vfreeman
В результате следующих ошибок расходятся данные в PositionManager.Position и реальная позиция в квике. Дважды зафиксировал сегодня эту ситуацию.

Что могут посоветовать гуру?


Котирование пока не дружит с move (а возможно и вообще, так как там все довольно неопределенно). Сделайте Security.Exchange.IsSupportAtomicReRegister = false.


благодарю за совет! внес изменения - проверяю.


несколько сделок прошло за сегодня - полет нормальный! еще раз благодарю!!!
Спасибо:


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

loading
clippy