измерить скорость выставления заявки

Страницы: 1
RSS
измерить скорость выставления заявки
 
Добрый день.
Как быстро моя заявка попала в стакан?
Если я засекаю время и пользуюсь OnTrnsReply, то информация о времени придёт увеличенная: заявка улетит на биржу (тратится время), а обратно придёт ответ (тратится время). Мне нет дела знать, сколько шёл ответ, мне надо знать когда заявка появилась в боевой очереди в стакане на бирже.
Как это сделать?

Сейчас я считаю так:
Код
function OnTransReply(reply)
        orders[reply.trans_id].tr_receive_time=os.clock()    
        local latency=(orders[reply.trans_id].tr_receive_time-orders[reply.trans_id].tr_send_time)*1000
end

ну и перед отправкой засекаю через os.clock()  
В итоге полученное время дольше, чем есть на самом деле из за того, что ответу нужно идти ко мне в терминал, хотя заявка на бирже уже стоит.
 
ещё постоянно прилетают ответы по Абрау Дюрсо (ABRD), по какой бы акции я не отсылал, всегда летит вот так:

01/05/17 14:31:51,051 sec_code=AFKS;price=23.48;client_code=35328;balance=0;time=143152;status=3;qty=7;class_code=TQBR;trans_id=871101024;account=Y01+00000B00;exchange_code=;quantity=7;firm_id=MC0020800000;flags=262145;result_msg=(160) «а¤вка на покупку N 15834483209 зарегистрирована.;brokerref=/0.8799;order_num=15834483209;R=871101024;server_trans_id=329;uid=6695;ordernum=15834483209;
01/05/17 14:31:51,051 871101024 задержка 62.000000005355
01/05/17 14:31:51,051 sec_code=ABRD;time=0;status=1065;class_code=TQBR;trans_id=871101024;flags=0;result_msg=;server_trans_id=-20504;uid=0;R=871101024;
01/05/17 14:31:51,051 871101024 задержка 62.000000005355

отослал заявку по AFKS, получил по ней, а также по абсолютно левой ABRD
 
Разработчики, прошу, не отмалчивайтесь.
Откуда берётся этот постоянный трэш с Абрау Дюрсо?
Все колбеки по транзакциям приходят в двойном виде: ABRD + правильный
 
Цитата
Космонавт написал:
Разработчики, прошу, не отмалчивайтесь.
И Вас тоже с праздниками.

Цитата
Космонавт написал:
Откуда берётся этот постоянный трэш с Абрау Дюрсо?

К сожалению без полного кода узнать это даже теоретически не представляется возможным.
Еще, в Вашем случае, следует проверить другие терминалы/срипты которые могут работать параллельно.
И о какой версии терминала мы говорим?
 
Цитата

И о какой версии терминала мы говорим?
7.5.072
Код
ticker_list = "AFKS,AFLT,AGRO,ALRS,APTK,.... и ещё много акций....."

function OnTransReply(reply)
    if reply.sec_code~="ABRD" then --пришлось отфильтровывать
        if orders[reply.trans_id]==nil then         
        else
            orders[reply.trans_id].tr_receive_time=os.clock()    
            local latency=(orders[reply.trans_id].tr_receive_time-orders[reply.trans_id].tr_send_time)*1000        
            toLog (log, reply.trans_id.." x="..orders[reply.trans_id].x_number.." zaderzhka "..latency)    
        end
    end
end

внутри main:

for sec in string.gmatch(ticker_list,"%a+") do
--анализ
--отсылаем заявку, засекаем время 

end

В ticker_list никакой Абрау Дюрсо нет, но она прилипает к каждому реплаю.
 
Космонавт,
в версии 7.6 была исправлена похожая проблема.
Рекомендуем выполнить обновление терминала QUIK
 
Цитата
Космонавт написал:
Добрый день.
Как быстро моя заявка попала в стакан?
Если я засекаю время и пользуюсь OnTrnsReply, то информация о времени придёт увеличенная: заявка улетит на биржу (тратится время), а обратно придёт ответ (тратится время). Мне нет дела знать, сколько шёл ответ, мне надо знать когда заявка появилась в боевой очереди в стакане на бирже.
Как это сделать?

Сейчас я считаю так:
Код
   function   OnTransReply (reply)
        orders[reply.trans_id].tr_receive_time =  os.clock ()    
         local  latency = (orders[reply.trans_id].tr_receive_time - orders[reply.trans_id].tr_send_time) *  1000 
 end   

ну и перед отправкой засекаю через  os.clock()    
В итоге полученное время дольше, чем есть на самом деле из за того, что ответу нужно идти ко мне в терминал, хотя заявка на бирже уже стоит.
Не факт, что заявка в стакане - это заявка на бирже.
Поэтому в стакане заявка может быть моментально, как только ее принял брокер.
Все зависит от алгоритма реализации сервера брокера.
Например, никто не запрещает брокеру самому гасить встречные заявки клиентов .  
 
Цитата
Николай К
Все зависит от алгоритма реализации сервера брокера.
Например, никто не запрещает брокеру самому гасить встречные заявки клиентов .
мы же про МБ, да?!
тогда странно слышать такое.
 
Цитата
Sergey Gorokhov написал:
Космонавт  ,
в версии 7.6 была исправлена похожая проблема.
Рекомендуем выполнить обновление терминала QUIK
т.е. под такую капец ошибку не было патча 7.5?? вы там совсем рехнулись?
 
Цитата
swerg написал:
Цитата
Sergey Gorokhov   написал:
Космонавт  ,
в версии 7.6 была исправлена похожая проблема.
Рекомендуем выполнить обновление терминала QUIK
т.е. под такую капец ошибку не было патча 7.5?? вы там совсем рехнулись?
Добрый день.

Похожая проблема была исправлена в версии 7.6. Рекомендуем выбирать выражения при общении у нас на Форуме.
 
Не все брокеры обновили сервер, поддерживающий версию 7.6
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
swerg написал:
Цитата
Николай  К  
Все зависит от алгоритма реализации сервера брокера.
Например, никто не запрещает брокеру самому гасить встречные заявки клиентов .
мы же про МБ, да?!
тогда странно слышать такое.
Про МБ, но никто не заприщает делать так.
Полагаю Вы знаете, что на бирже торгует брокер, а не его клиенты.
 
Цитата
Николай Камынин написал:
Цитата
Про МБ, но никто не заприщает делать так.
Полагаю Вы знаете, что на бирже торгует брокер, а не его клиенты.
запрещает.
у вас есть номер биржевой сделки, если на бирже такой нет - смело в суд
 
Цитата
Alexey Ivannikov написал:

Похожая  проблема была исправлена в версии 7.6. Рекомендуем выбирать выражения при общении у нас на Форуме.
вы что же, приняли на свой счет? Так это к себе претензии возможно есть мотив обратить.
я лишь выразил существенное удивление наличием похожей ошибки в финансовом софте и, более того, не предоставлением по этому поводу доступного всем патча.
7.6 не все могут использовать.
 
Цитата
swerg написал:
Цитата
Николай  Камынин   написал:
Цитата
Про МБ, но никто не заприщает делать так.
Полагаю Вы знаете, что на бирже торгует брокер, а не его клиенты.
запрещает.
у вас есть номер биржевой сделки, если на бирже такой нет - смело в суд
Это вы размечтались.
Почитайте регламент, закон о рынке ЦБ, методические указания надзорных органов, ГК РФ и найдите там основания для Вашего смелого похода в суд.
кратко поясню - вы подали заявку и указали цену по которой надо купить/продать - брокер исполнил ваше поручение по указанным Вами параметрам.
Какие претензии? Никаких. Так как основные параметры - это наименование товара и его цена а не место где этот товар купить.
Да и какая вам разница, в каком месте вам купили то, что вы хотели и за сколько Вы хотели? Хоть в китае. Верно?
 
вы упускаете тот момент, что заявки бывают "рыночные".
Страницы: 1
Читают тему
Наверх