Денис X (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Да, пожалуй, так и сделаю. Спасибо за совет.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Ключевое слово здесь "Возможно". Может быть да, а может быть нет.
И поэтому в моем сообщении звучит вопрос "А ситуация, когда дублирующее сообщение с проставленным transID_не_ придет возможна? ", а не утверждение.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Цитата
Sergey Gorokhov пишет:
Позже, когда ответ на транзакцию получен, сервер проставляет на заявке TRANS_ID.
А ситуация, когда дублирующее сообщение с проставленным transID  _не_ придет возможна?
Сообщение в этой же ветке выше:
"В логе из первого сообщения - для ордеров, начинающихся на "num:1394" - всегда "transaction:0""
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Цитата
Michael Bulychev пишет:
Какой ответ был на транзакцию? на каком рынке совершалась операция?
В лог ответ на транзакцию не писался, если просто словами сказать, то заявка либо попадала с стакан и затем исполнялась, либо сразу исполнялась (если цена заявки получалась рыночной). Все ордера выставлялись по SPBFUT RIU5.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Цитата
Michael Bulychev пишет:
Алгоритмы обработки зависят от решаемых задач,
Задача - отслеживать состояние своих ордеров. Если более конкретно, есть библиотека S#, внутри нее информация об имеющихся ордерах и сообщения об их изменении сопоставляется между собой по transactionId. Соответственно, когда приходит сообщение с нулевым transactionId, оно не сопоставляется с нужным ордером.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Michael Bulychev пишет:
Цитата
Насчет разных флагов - можно сказать точнее если знать параметры транзакции и ответ торговой системы
Какие именно параметры? Заявки выставлялись следующим кодом:
function onButtonBuyClick(sender)
       qt = getQuoteLevel2(secClass, secCode)
       bid = qt.bid[qt.bid_count+0].price;
       transaction={
                                       ["CLASSCODE"]=secClass,
                                       ["ACTION"]="NEW_ORDER",
                                       ["ACCOUNT"]=account,
                                       ["OPERATION"] = "B",
                                       ["SECCODE"] = secCode,
                                       ["PRICE"] = tostring(bid+0),
                                       ["QUANTITY"] = tostring(1)
                               }
       transaction.TRANS_ID = GetTransId();
       res = sendTransaction(transaction);
end
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Michael Bulychev, вы отвечаете от лица разработчиков?
Как тогда нужно обрабатывать такие сообщения на своей стороне? Есть ситуации когда сообщение с теми же флагами дублируется с проставленным transId:
01.09.2015 17:20:09 num:17043507444|transaction:0|flags:25
01.09.2015 17:20:09 num:17043507444|transaction:12209159|flags:25
01.09.2015 17:20:14 num:17043507444|transaction:12209159|flags:24

А есть, когда не дублируется:
01.09.2015 17:15:28 num:17043266652|transaction:0|flags:25
01.09.2015 17:15:28 num:17043266652|transaction:121528146|flags:24
01.09.2015 17:15:28 num:17043266652|transaction:121528146|flags:24
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Хотелось бы услышать от представителя разработчиков ответ, ситуации с нулевыми transactionId это баг или допустимое поведение?
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Подниму тему. Убедился, что дело точно не в StockSharp. Набросал минимальный lua-скрипт, для выставления заявок на продажу и на покупку.
Запустил свой логер и начал покупать-продавать через новый скрипт. Ситуация как и в первом посте, по небольшой части заявок приходят сообщения с нулевым transactionId.

Новый лог: https://www.sendspace.com/file/41dxty

На всякий случай выложу еще скрипты логера и торговой формы. За качество кода прошу не пинать, на луа вообще не программирую и скрипты написал на коленке за 5 минут, лишь бы работало.
Форма торговая требует библиотеку VCLua в папке квика.
Логер: http://pastebin.com/PhSPCuGi
Форма для торговли: http://pastebin.com/q5LXxwzk
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Цитата
user пишет:
В логе из первого сообщения - для ордеров, начинающихся на "num:1394" - всегда "transaction:0"
Хм, сам я на это не обратил внимание. Затрудняюсь сказать, что это значит. Возможно этот ордер и был выставлен руками..  но остальные ордера с нулевым trans_id точно выставлялись моей программой через S#
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Ситуация такая. По некоторым ордерам сначала приходит сообщение, о новом ордере, с нулевым transaction_id, затем приходит сообщение о новом ордере (этом же самом) с нормальным trans_id. Затем приходит сообщение о том, что ордер с нормальным trans_id исполнился, а по нулевому естественно  не приходит. И в итоге в S# в списке активных ордеров есть лишние (те, по которым пришло сообщение с нулевым trans_id).
Что именно можно насмотреть в S# я сам пока не особо понимаю, пока просто попробую разобраться в механизме обмена сообщениями с квиком.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
По всем приходит. Точно не вручную, все ордера поданы одним способом.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Видимо да.. я почему-то думал, что id транзакции генерирует либо квик либо биржа. Спасибо за ответ, пойду копаться в S#.
Нулевой transaction_id, Проскакивает нулевой transaction_id
 
Приветствую всех.
Написал минимальный луа-скрипт, который пишет лог по событию OnOrder. По некоторым ордерам (небольшой части относительно общей массы) событие приходит с нулевым trans_id. А затем приходит с нормальным id.

Лог: https://www.sendspace.com/file/d57512
Формат лога: "время|номер ордера из квика|номер транзакции|структура flags"
Ордера с нулевыми транзакциями можно найти по строке "transaction:0"

Это баг или это нормальное допустимое поведение? Сам я с этим столкнулся, потому что библиотека StockSharp неправильно обрабатывает эту ситуацию. И вот хочу знать с какого конца ее нужно устранить - со стороны квика или со стороны S#
Страницы: 1
Наверх