Не приходит полная версия OnTrade

Страницы: 1
RSS
Не приходит полная версия OnTrade
 
В последнее время несколько раз наблюдал такое: приходит OnTrade, в котором trans_id=0. Я знаю, что это промежуточная версия, поэтому в мой алгоритм вписано игнорировать такие вызовы, ожидая более полных. И почти всегда они приходят. Но в среднем 1-2 раза за день случается так, что полный OnTrade с ненулевым trans_id так и не приходит. В чём может быть причина?
Я мог бы убрать эту дополнительную проверку из своего кода и обрабатывать такие вызовы, в принципе trans_id мне ни для чего не нужен, достаточно brokerref. Но ведь может не прийти что-то более важное. Например бывает, что приходит OnTrade с нулевой комиссией, и сразу после него ещё один OnTrade с заполненной комиссией. Здесь сбоев не было ни разу, но что если он тоже не придёт?
 
Цитата
User12501 написал:
В последнее время несколько раз наблюдал такое: приходит OnTrade, в котором trans_id=0. Я знаю, что это промежуточная версия, поэтому в мой алгоритм вписано игнорировать такие вызовы, ожидая более полных. И почти всегда они приходят. Но в среднем 1-2 раза за день случается так, что полный OnTrade с ненулевым trans_id так и не приходит. В чём может быть причина?
Я мог бы убрать эту дополнительную проверку из своего кода и обрабатывать такие вызовы, в принципе trans_id мне ни для чего не нужен, достаточно brokerref. Но ведь может не прийти что-то более важное. Например бывает, что приходит OnTrade с нулевой комиссией, и сразу после него ещё один OnTrade с заполненной комиссией. Здесь сбоев не было ни разу, но что если он тоже не придёт?
А зачем Вам trans_id в сделке?
-------------------
Поясняю:
Сделка совершается по выставленной заявке. В сделке есть номер заявки,
Номер есть всегда и по нему можно найти эту заявку.
-----------------------------
trans_id - это номер транзакции, по которой уже выставлена заявка.
т е транзакция уже давно исполнена.
Вместо нее есть заявка.
В данном случае и заявка исполнена, вместо нее есть сделка.
Т е  даже заявку нет смысла искать, а уж  trans_id тем более...
 
Цитата
nikolz написал:
Цитата
User12501 написал:
В последнее время несколько раз наблюдал такое: приходит OnTrade, в котором trans_id=0. Я знаю, что это промежуточная версия, поэтому в мой алгоритм вписано игнорировать такие вызовы, ожидая более полных. И почти всегда они приходят. Но в среднем 1-2 раза за день случается так, что полный OnTrade с ненулевым trans_id так и не приходит. В чём может быть причина?
Я мог бы убрать эту дополнительную проверку из своего кода и обрабатывать такие вызовы, в принципе trans_id мне ни для чего не нужен, достаточно brokerref. Но ведь может не прийти что-то более важное. Например бывает, что приходит OnTrade с нулевой комиссией, и сразу после него ещё один OnTrade с заполненной комиссией. Здесь сбоев не было ни разу, но что если он тоже не придёт?
А зачем Вам trans_id в сделке?
Конкретно trans_id мне не нужен. Но если по протоколу он должен прийти, и не приходит, значит что-то пошло не так. В другой раз не прийти может что-то более серьёзное, например комиссия. Или это другое?
Вопрос отчасти пересекается с моим предыдущим вопросом про повторные OnTrade ( https://forum.quik.ru/forum10/topic9419/ ). Т.е. по trans_id=0 я пытался фильтровать OnTrade, которые заведомо не последние.
 
Цитата
User12501 написал:
Цитата
nikolz написал:
 
Цитата
User12501  написал:
В последнее время несколько раз наблюдал такое: приходит OnTrade, в котором trans_id=0. Я знаю, что это промежуточная версия, поэтому в мой алгоритм вписано игнорировать такие вызовы, ожидая более полных. И почти всегда они приходят. Но в среднем 1-2 раза за день случается так, что полный OnTrade с ненулевым trans_id так и не приходит. В чём может быть причина?
Я мог бы убрать эту дополнительную проверку из своего кода и обрабатывать такие вызовы, в принципе trans_id мне ни для чего не нужен, достаточно brokerref. Но ведь может не прийти что-то более важное. Например бывает, что приходит OnTrade с нулевой комиссией, и сразу после него ещё один OnTrade с заполненной комиссией. Здесь сбоев не было ни разу, но что если он тоже не придёт?
 А зачем Вам trans_id в сделке?
Конкретно trans_id мне не нужен. Но если по протоколу он должен прийти, и не приходит, значит что-то пошло не так. В другой раз не прийти может что-то более серьёзное, например комиссия. Или это другое?
Вопрос отчасти пересекается с моим предыдущим вопросом про повторные OnTrade (  https://forum.quik.ru/forum10/topic9419/  ). Т.е. по trans_id=0 я пытался фильтровать OnTrade, которые заведомо не последние.
Предположу, что он не приходит при выполнении заявки в нескольких сделках, либо в заявках, установленных до за пуска скрипта. Но это лишь предположение.
 
Добрый день.

Уточните, пожалуйста, версию Рабочего места QUIK, которую Вы в данный момент используете? Используется свой скрипт или какие-то готовые библиотеки? По каким именно сделкам не приходят trans_id, можете привести пример? Заполнен ли при этом параметр в Таблице Сделок в Рабочем месте?
 
Цитата
Oleg Kuzembaev написал:
Добрый день.

Уточните, пожалуйста, версию Рабочего места QUIK, которую Вы в данный момент используете? Используется свой скрипт или какие-то готовые библиотеки? По каким именно сделкам не приходят trans_id, можете привести пример? Заполнен ли при этом параметр в Таблице Сделок в Рабочем месте?
Версия quik 12.6.0.53. Полностью свой скрипт. Например сделка на покупку одной акции SOFL. Последний раз ошибка была 1-го февраля. За короткий промежуток были совершены три абсолютно идентичные сделки по близкой цене: в 17:01:54, в 17:04:15, и в 17:05:29. Все три на покупку одной акции SOFL. По первой и третьей сделкам пришли три функции OnTrade. По второй сделке только одна. Замечу также, что по первой и третьей сделкам вместе с функциями OnTrade приходили также две функции OnOrder, по второй сделке функция OnOrder пришла только одна. Но в эти функции я не заглядывал, не могу сказать, в чём отличие (если это важно - могу заглянуть, всё сохранено). Каких-либо особых событий, предшествовавших этой ошибке, типа разрыва соединения и т.д., не наблюдалось.  
Страницы: 1
Читают тему
Наверх