проблема с котированием лимитными ордерами


проблема с котированием лимитными ордерами
Atom
11/8/2011


DT

Avatar
при котировании заявки не имеют состояния:

Quote:

12:32:28.348 | | OMMS | Стратегия запущена.
12:33:03.998 | | LQS | Стратегия запущена.
12:33:04.004 | | LQS | Стратегия запущена.
12:33:04.120 | | LQS | Регистрация новой заявки на Buy с ценой 157740 и объемом 1.
12:33:04.564 | | LQS | Заявка 45143806 на Buy отправлена с ценой 157740 объемом 1.
12:33:04.564 | | LQS | Регистрация новой заявки на Sell с ценой 157755 и объемом 1.
12:33:04.564 | | LQS | Заявка 45143807 на Sell отправлена с ценой 157755 объемом 1.
12:33:04.576 | Warning | LQS | Заявка 45143806 не имеет состояния.
12:33:04.576 | Warning | LQS | Заявка 45143807 не имеет состояния.
12:33:04.718 | Warning | LQS | Заявка 45143806 не имеет состояния.
12:33:04.718 | Warning | LQS | Заявка 45143807 не имеет состояния.
12:33:04.805 | Warning | LQS | Заявка 45143806 не имеет состояния.
12:33:04.805 | Warning | LQS | Заявка 45143807 не имеет состояния.
12:33:04.892 | Warning | LQS | Заявка 45143806 не имеет состояния.
.......


Код стратегии:

Code
 protected override void OnStarting()
        {

            // ..... детали стратегии

            this
                .When(this.StrategyNewMyTrades())
                .Do(ResetQuoting);

            this
                .When(Security.MarketDepthChanged())
                .Do(ResetQuoting);

            base.OnStarting();

        private void ResetQuoting()
        {
 
            Bid = ... 
            Ask = ...

            if (Bid < Ask)
            {
                base.ChildStrategies.Add(CreateQuoting(OrderDirections.Buy, 1, Bid));
                base.ChildStrategies.Add(CreateQuoting(OrderDirections.Sell, 1, Ask));
            }
        }

        protected virtual QuotingStrategy CreateQuoting(OrderDirections direction, int volume, decimal price)
        {
            return new LimitQuotingStrategy(direction, volume, price);
        }


Any idea?

Tags:


Thanks:


DT

Avatar
Date: 11/8/2011
Reply


Забыл сказать. Тестовая Плаза.
Thanks:

Alexander

Avatar
Date: 11/8/2011
Reply


Дело в плазе.
Thanks:

DT

Avatar
Date: 11/8/2011
Reply


А есть способ с этим бороться?

Кстати, вот еще что выскакивает:

error
Thanks:

Alexander

Avatar
Date: 11/8/2011
Reply


DT Go to
А есть способ с этим бороться?

Кстати, вот еще что выскакивает:

error



Да, пофиксить плазу, в частности - получение ответа по заявкам. Или мы сами пофиксим в ближайшее время.
Данную ошибку уже исправили - последний фикс на codeplex.
Thanks: DT

DT

Avatar
Date: 11/12/2011
Reply


С 4.0.5 стало существенно лучше - по-крайней мере, MessageBoxes с ошибкой "Заявка ХХХХХХХХХ не имеет состояния" уже не вызывают сразу переполнения, как раньше, стратегия в принципе работает.
Тем не менее, проблема сохранилась:
Quote:

11:13:08.275 | | OMMS | Новая Buy сделка 15457122 по цене 18480.00000 на 1 заявки 40230368.
11:13:08.275 | | OMMS | Новая Buy сделка 15457123 по цене 18479.00000 на 1 заявки 40230364.
11:13:08.345 | | LQS | Регистрация новой заявки на Buy с ценой 18466 и объемом 1.
11:13:08.345 | | LQS | Заявка 40230370 на Buy отправлена с ценой 18466 объемом 1.
11:13:08.345 | | LQS | Регистрация новой заявки на Sell с ценой 18480 и объемом 1.
11:13:08.346 | | LQS | Заявка 40230371 на Sell отправлена с ценой 18480 объемом 1.
11:13:08.449 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.449 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:08.502 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.503 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:08.587 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.587 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:11.726 | Warning | LQS | Стакан пустой.
11:13:11.726 | Warning | LQS | Стакан пустой.
11:13:11.829 | | LQS | Стратегия запущена.
11:13:11.829 | | LQS | Стратегия запущена.
11:13:11.829 | Warning | LQS | Стакан пустой.
11:13:11.829 | Warning | LQS | Стакан пустой.
11:13:11.834 | | LQS | Позиция изменилась на 1.
11:13:11.834 | | LQS | Заканчиваем котирование с неисполненным объемом равный 0.
11:13:11.834 | | LQS | Стратегия останавливается.

Обратите внимание, изредка стали появляться сообщения "Стакан пустой".

Тестовая Плаза2, RIZ1
Thanks:

Alexander

Avatar
Date: 11/13/2011
Reply


DT Go to
С 4.0.5 стало существенно лучше - по-крайней мере, MessageBoxes с ошибкой "Заявка ХХХХХХХХХ не имеет состояния" уже не вызывают сразу переполнения, как раньше, стратегия в принципе работает.
Тем не менее, проблема сохранилась:
Quote:

11:13:08.275 | | OMMS | Новая Buy сделка 15457122 по цене 18480.00000 на 1 заявки 40230368.
11:13:08.275 | | OMMS | Новая Buy сделка 15457123 по цене 18479.00000 на 1 заявки 40230364.
11:13:08.345 | | LQS | Регистрация новой заявки на Buy с ценой 18466 и объемом 1.
11:13:08.345 | | LQS | Заявка 40230370 на Buy отправлена с ценой 18466 объемом 1.
11:13:08.345 | | LQS | Регистрация новой заявки на Sell с ценой 18480 и объемом 1.
11:13:08.346 | | LQS | Заявка 40230371 на Sell отправлена с ценой 18480 объемом 1.
11:13:08.449 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.449 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:08.502 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.503 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:08.587 | Warning | LQS | Заявка 40230370 не имеет состояния.
11:13:08.587 | Warning | LQS | Заявка 40230371 не имеет состояния.
11:13:11.726 | Warning | LQS | Стакан пустой.
11:13:11.726 | Warning | LQS | Стакан пустой.
11:13:11.829 | | LQS | Стратегия запущена.
11:13:11.829 | | LQS | Стратегия запущена.
11:13:11.829 | Warning | LQS | Стакан пустой.
11:13:11.829 | Warning | LQS | Стакан пустой.
11:13:11.834 | | LQS | Позиция изменилась на 1.
11:13:11.834 | | LQS | Заканчиваем котирование с неисполненным объемом равный 0.
11:13:11.834 | | LQS | Стратегия останавливается.

Обратите внимание, изредка стали появляться сообщения "Стакан пустой".

Тестовая Плаза2, RIZ1



Давайте попорядку.

Как известно, заявки до биржи и ответ до биржи проиходит не мгновенно, не за пару микросекунд.
На это требуется время.
В 4.0.5 был большой фикс связанный с выставлением заявок в плазе - отсюда и то, что время когда есть эти ворнинги сильно сократилось - у вас всего 250мс - в принципе, нормальное время для выставления заявок.

Далее - пустой стакан - вы запускаете в какой момент стратегию? Надо запускать когда все потоки плазы перешли в состояние Online (PlazaTrader.IsOnline())


После всего вышесказанного - проблема есть или её нет? :)
Thanks: DT

DT

Avatar
Date: 11/13/2011
Reply


Quote:
Давайте попорядку.

В 4.0.5 был большой фикс связанный с выставлением заявок в плазе - отсюда и то, что время когда есть эти ворнинги сильно сократилось - у вас всего 250мс - в принципе, нормальное время для выставления заявок.


Т.е. это вызвано задержкой между выставлением и оветом с биржи? Тогда колокэйшн должно решить проблему.

Quote:
Далее - пустой стакан - вы запускаете в какой момент стратегию? Надо запускать когда все потоки плазы перешли в состояние Online (PlazaTrader.IsOnline())


У меня так:
Code

Trader.RegisterQuotes(_strategy.Security);
_strategy.Start();

Надо перед стартом стратегии добавить проверку
Code
PlazaTrader.IsOnline()

?
Thanks:

Alexander

Avatar
Date: 11/13/2011
Reply


DT Go to
Quote:
Давайте попорядку.

В 4.0.5 был большой фикс связанный с выставлением заявок в плазе - отсюда и то, что время когда есть эти ворнинги сильно сократилось - у вас всего 250мс - в принципе, нормальное время для выставления заявок.


Т.е. это вызвано задержкой между выставлением и оветом с биржи? Тогда колокэйшн должно решить проблему.

Quote:
Далее - пустой стакан - вы запускаете в какой момент стратегию? Надо запускать когда все потоки плазы перешли в состояние Online (PlazaTrader.IsOnline())


У меня так:
Code

Trader.RegisterQuotes(_strategy.Security);
_strategy.Start();

Надо перед стартом стратегии добавить проверку
Code
PlazaTrader.IsOnline()

?


1) Коллокейшен не решит проблему. У меня на коллокейшене задержки порой достигают сотен мс. Иногда - 20-30мс. Ответ от биржи и прохождение заявки через ядро биржи невозможно за микросекунды
2) Да, пока не онлайн - не стартуйте стратегию
Thanks: DT


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

loading
clippy