Стоп заявка "по исполнению"

Страницы: 1
RSS
Стоп заявка "по исполнению"
 
здравствуйте

Эту стоп-заявку я могу выставить из луа (как)? в документации информации нет, в карман транзакций добавить ее не могу
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Цитата
s_mike@rambler.ru написал:
в документации информации нет
В документации см
-Раздел 6. Совместная работа с другими приложениями
--Импорт транзакций
---Формат .tri-файла с параметрами транзакций
параметр STOP_ORDER_KIND:
«ACTIVATED_BY_ORDER_SIMPLE_STOP_ORDER» – стоп-лимит по исполнению заявки,
«ACTIVATED_BY_ORDER_TAKE_PROFIT_STOP_ORDER» – тэйк-профит по исполнению заявки,
«ACTIVATED_BY_ORDER_TAKE_PROFIT_AND_STOP_LIMIT_ORDER» - тэйк-профит и стоп-лимит по исполнению заявки.
 
Верно. После обновления файла документации упоминание о ACTIVATED_BY_ORDER_TAKE_PROFIT_AND_STOP_LIMIT_ORDER увидел.

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

Стандартный способ через карман транзакций не работает - эту транзакцию я просто не могу в карман положить и посмотреть tri файл. Что посоветуете кроме метода тыка из луа?
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Цитата
s_mike@rambler.ru написал:
Что посоветуете кроме метода тыка из луа?
В документации см
-Раздел 6. Совместная работа с другими приложениями
--Импорт транзакций
---Формат .tri-файла с параметрами транзакций
----Примеры строк, которые могут содержаться в файле
Пример для
"Стоп-лимит по исполнению заявки"
"Тэйк-профит по исполнению заявки"
и
"Тэйк-профит и стоп-лимит по исполнению заявки"
 
Да, Сергей, спасибо.

В процессе ковыряния этой стоп заявки проявляется эффект, которому я не нахожу объяснения

1. Выставляем лимитный ордер.
2. ontransreply берем номер ордера
3. выставляем стоп заявку для него "по исполнению"

в 99 случаях из ста все прекрасно. Но иногда в ответ на транзакцию по исполнению приходит следующий ответ:

17:46:30   [Газпром] : Транзакция не прошла проверку сервера QUIK, Неверные параметры стоп-заявки

текст транзакции таков:

17:46:30 > [Газпром] Транзакция {action="NEW_STOP_ORDER",stop_order_kind="ACTIVATED_BY_ORDER_TAKE_PROFIT_AND_STOP_LIM­IT_ORDER",operation="S",client_code="qtest078//uks",base_order_key="4191105030",use_base_order_balance="YES",market_take_profit="YES",stopprice="138.16",market_stop_limit="YES",spread="0",offset="0",expiry_date="TODAY",trans_id="182805882",classcode="QJSIM",seccode="GAZP",activate_if_base_order_partly_filled="YES",stopprice2="0",offset_units="PRICE_UNITS",price="0",account="NL0011100043"}

base_order_key с номером 4191105030 существует в таблице терминала


Что это может быть?  
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
(интересуюсь тоже)
 
Цитата
s_mike@rambler.ru написал:
3. выставляем стоп заявку для него "по исполнению"
В каком колбеке выставляется стоп?
Если в OnTransReply, возможно (но это не точно) что стоп выставляется до того как на сервер приехала заявка.
Заявки и транзакции транслируются разными потоками, в связи с чем возможны ситуации когда ответ на транзакцию уже приехал, а сама заявка еще нет.
При таком сценарии сервер не может привязать стоп заявку по исполнению к заявке т.к. ее просто нет.
А то что с Ваших слов заявка уже существует в таблице терминала, зависит от того в какой момент смотреть, речь может идти про доли секунд.
Если проблема не наблюдается после срабатывания OnOrder(), значит причина точно в этом.
Если продолжает наблюдаться, к сожалению без анализа со стороны брокера нельзя однозначно определить причины, сообщите кто Ваш брокер.
 
Последовательность такова.

выставляем лимитную заявку
получаем ontransreply, в которой есть номер этой заявки в тс. Считаем, что если этот номер дали нам, то сервер про эту лимитированную заявку уже все знает, она присутствует в его таблицах и т.п.

выставляем условную заявку по исполнению, в которой в качестве baseorder укащыааем нашу лимитную.

тут возможны 3 варианта.

1. Лимитная заявка  ещё не давала сделки. В этом случае условная заявка должна выставиться в лучшем виде

2. Заявка полностью удовлетворена. В этом случае мы должны получить какую то внятную диагностику.

3. Заявка удовлетворена частично. Непонятно что будет. (Кстати что?)



я же иногда получаю отказ в выставлении условной заявки с диагностикой "неверные параметры".  эта диагностика не соответствует действительности, ибо параметры правильные, а отказ происходит не из за неверных параметров, а из за чего то другого. Возможно, что из за того, что по исходной лимитной заявке уже есть сделки или ещё из за чего то. Но понять невозможно из за косого ответа сервера
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Демо контур арка
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Цитата
s_mike@rambler.ru написал:
Считаем, что если этот номер дали нам, то сервер про эту лимитированную заявку уже все знает, она присутствует в его таблицах и т.п.
Как уже было сказано сервер не может привязать стоп заявку по исполнению к заявке если ее нет.
Одного ответа на транзакцию в этом месте недостаточно.
Цитата
s_mike@rambler.ru написал:
3. Заявка удовлетворена частично. Непонятно что будет. (Кстати что?)
При частичном исполнении заявки всё равно можно поставить стоп по исполнению.
Цитата
s_mike@rambler.ru написал:
я же иногда получаю отказ в выставлении условной заявки с диагностикой "неверные параметры".  эта диагностика не соответствует действительности, ибо параметры правильные, а отказ происходит не из за неверных параметров, а из за чего то другого. Возможно, что из за того, что по исходной лимитной заявке уже есть сделки или ещё из за чего то. Но понять невозможно из за косого ответа сервера
Как уже было сказано и еще раз повторим, попробуйте отправлять транзакцию на выставление стопа после получения OnOrder
 
Цитата
s_mike@rambler.ru написал:
Демо контур арка
Согласно логам, заявка 4191105030 приехала на сервер в 17:46:30.650, а транзакция на выставление стопа была в 17:46:29.901, т.е. до того как сервер получил заявку.
В связи с чем рекомендация в силе, ждите OnOrder
 
Цитата
Sergey Gorokhov написал:
Цитата
s_mike@rambler.ru написал:
Демо контур арка
Согласно логам, заявка 4191105030 приехала на сервер в 17:46:30.650, а транзакция на выставление стопа была в 17:46:29.901, т.е. до того как сервер получил заявку.
В связи с чем рекомендация в силе, ждите OnOrder
понятно, спасибо.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
Страницы: 1
Читают тему
Наверх