getParamEx

Страницы: 1
RSS
getParamEx
 
Код
Price = tonumber(getParamEx('FUTSPREAD', 'RIM7RIU7', 'last').param_value)
message(tostring(Price))
--> 0

Вопрос к разработчикам:
Вы можете предложить надёжный способ убедиться, что getParamEx даёт действительно последнюю цену инструмента, а не её отсутствие?
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель написал:
Код
  Price  =  tonumber( getParamEx ( 'FUTSPREAD' ,  'RIM7RIU7' ,  'last' ).param_value)
 message (tostring(Price))
 --> 0   

Вопрос к разработчикам:
Вы можете предложить надёжный способ убедиться, что getParamEx даёт действительно последнюю цену инструмента, а не её отсутствие?
Добрый день.

Мы Вас поняли. Можем предложить вариант сравнивать с параметром "время последней сделки".
Если цена ноль, а время последней сделки есть, то да цена ноль, если нет, то цена отсутствует.
 
Цитата
Egor Zaytsev написал:
Можем предложить вариант сравнивать с параметром "время последней сделки".
Если цена ноль, а время последней сделки есть, то да цена ноль, если нет, то цена отсутствует.
Я спрашивал о надёжном способе.
Вы можете гарантировать, что параметры "цена последней сделки" и "время последней сделки" обновляются синхронно? Т.е., когда вы проверите "время последней сделки", и оно будет присутствовать, то в "цена последней сделки" будет значение котировки?
Надо делать так, как надо. А как не надо - делать не надо.
 
Добрый день.
Можно смотреть на param_image. Если param_value = 0 и param_image ~= "", то это значит что действительно получено значение 0 от соответствующего шлюза.
 
Код
getParamEx('FUTSPREAD', 'RIM7RIU7', 'last') = {param_type='1', param_value='0.000000', result='1', param_image='0'}
getParamEx('TQBR', 'MGNT', 'last') = {param_type='1', param_value='0.000000', result='1', param_image='0'}

В каком случае цена последней сделки равна 0, а в каком отсутствует?
Надо делать так, как надо. А как не надо - делать не надо.
 
Это значит, что сервер что-то получил от шлюза, подключенного к соответствующей площадке. Если торговая система изменит этот параметр, то он изменится и на сервере.
 
Michael Bulychev,
вы уклоняетесь от ответа на вопрос:
Цитата
Старатель написал:
В каком случае цена последней сделки равна 0, а в каком отсутствует?
Надо делать так, как надо. А как не надо - делать не надо.
 
Ситуация, которую я описал выше значит что шлюз подключен к серверу и торговой системе. Изменится ли значение параметра и станет отличным от 0 мы не знаем.
 
Тема не о том, что будет в будущем.
Вопрос стоит так: сейчас действительно цена последней сделки равна нулю?
Надо делать так, как надо. А как не надо - делать не надо.
 
Это последнее значение присланное шлюзом на сервер.
 
Michael Bulychev,
я вас услышал.
Проверять можно по косвенным признакам, например по "qty".
Представители биржи уверяют, что обновление таблицы в биржевом потоке цельное.

А как обстоят дела в QUIK? Гарантированно ли, что если qty не равно 0, то в last точно будет цена? (Возвращаемся к вопросу из #3)
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель написал:
Код
  Price  =  tonumber( getParamEx ( 'FUTSPREAD' ,  'RIM7RIU7' ,  'last' ).param_value)
 message (tostring(Price))
 --> 0   

Вопрос к разработчикам:
Вы можете предложить надёжный способ убедиться, что getParamEx даёт действительно последнюю цену инструмента, а не её отсутствие?
Вообще-то странный вопрос.
это же цена последней сделки !!!
Если инструмент торгуется и была хотя бы одна сделка в сессии, то цена последней сделки не может быть равна нулю или nil.
следовательно, если цена последней сделки ноль - то информации о сделках в текущей сессии еще не поступало, что равноценно - сделок  нет.
---------------------------
Умным - горе от ума..
 
RIM7RIU7
Николай, подумайте ещё.
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель написал:
Michael Bulychev  ,
я вас услышал.
Проверять можно по косвенным признакам, например по "qty".
Представители биржи уверяют, что обновление таблицы в биржевом потоке цельное.

А как обстоят дела в QUIK? Гарантированно ли, что если qty не равно 0, то в last точно будет цена? (Возвращаемся к вопросу из  #3 )


Параметры ТТП приезжают срезами, а значит если изменился qty то и last тоже.
 
Старатель, решили вопрос с ценой? Ноль это еще ладно, можно обработать. Например, сегодня на Sim7 два случая было у меня. прислали цену минус 100 пунктов к цене, а через три часа прислали плюс 100 пунктов к цене. Оба раза повлияли на торговлю
 
Вопрос был задан потому, что для некоторых инструментов (календарные спрэды) цена может быть как положительной, так нулевой и отрицательной.
Поэтому last = 0 для таких инструментов не является ненормальным.

Цитата
ilushin написал:
Например, сегодня на Sim7 два случая было у меня. прислали цену минус 100 пунктов к цене, а через три часа прислали плюс 100 пунктов к цене.
Покажите лог.
Надо делать так, как надо. А как не надо - делать не надо.
 
Старатель, поясню (прост давно писал код, забыл детали вчера разобрался). От getParamEx я отказался по причине неправильной цены. Стал использовать функцию OnAllTrade именно она присылала неправильные значения сим7. А по рим7 OnAllTrade регулярно присылает вместо цены фьючерса цену индекса ртс(эта та которая четырех значная, по сим тяжело отследить строчки которые на 100 п отличаются). Я писал в файл что она присылает, (количество, время, номер сделки присутствовали в ошибочных записях).
 
Цитата
ilushin написал:
А по рим7 OnAllTrade регулярно присылает вместо цены фьючерса цену индекса ртс
Может в код вкралась ошибка?

Цитата
ilushin написал:
Я писал в файл что она присылает, (количество, время, номер сделки присутствовали в ошибочных записях).
Покажите файл.

Цитата
ilushin написал:
по сим тяжело отследить строчки которые на 100 п отличаются
Если вы знаете, что эти цены повлияли на торговлю то по времени сделки можно найти.
Надо делать так, как надо. А как не надо - делать не надо.
 
Старатель, к сожалению файл перезаписываемый каждый день, вчерашнего дня не сохранил. Если замечу еще сообщу. Да вы и сами можете последить за работой OnAllTrade, суть понятна. Код могу выслать в личку
 
ilushin, Вот специально проверил:
если исключить первую минуту в 10 ч. и в 19 ч., то разница между соседними тиками по SiM7 составляет 42 пп. (13.04.17 19:05), а по RIM7 220 пп. (06.04.17 19:05) за весь апрель. И то, только потому, что вечерняя сессия в эти дни начиналась в 19:05.
Так что, я склонен считать, что скорее имеет место ошибка в коде. Можете выслать. Будет время - я гляну.
Надо делать так, как надо. А как не надо - делать не надо.
 
Хорошо, завтра вышлю код, попробуем разобраться  
 
Старатель, написал на е-майл
Страницы: 1
Читают тему
Наверх