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

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

Страницы: Пред. 1 ... 12 13 14 15 16 17 18 19 20 21 22 ... 72 След.
Кто сможет объяснить необъяснимое?
 
Цитата
Даниил Волошин написал:
Цитата
nikolz написал:
Что-то разработчики  молчат.
Ay!!!

Добрый день,

Просим прощения, немного поторопили Вас. На демо-доступе QUIK Junior идёт эмуляция торгов - так называемый игровой полигон, следовательно причины могут отличаться от таковых на реальных торгах.

Просим Вас всё же в аналогичном формате привести в пример: номер сделки, которая пришла с запозданием, её время и время её появления на терминале, но с реального рынка (подключаясь к Сбербанку). Также укажите обязательно дату и сервер (его адрес) к которому Вы подключались.
Так мы сможем обратиться к Вашему брокеру и совместно с ним разобрать возможную задержку обезличенных сделок.
Добрый день,
Понятно.
Но хотел бы услышать Ваше объяснение применительно к Вашему демо серверу.
Судя по данным , приведенным мною выше, Вы отправляете обезличенные сделки пакетом.
Для демо сервера размер пакета получается в 1 минуту.
Полагаю, что на рабочем сервере отправка пакетами остается но возможно, что интервал меньше.
Это так?
----------------------------------
Кроме того, могу выложить задержки по свечам.
На 1 минутных свечах на демо сервере у Вас задержки до 20 секунд.
======================
Для свечей я наблюдал аналогичные задержки и на рабочем сервере. Обычно это задержка до 10 секунд.
-------------------------------
Поясните механизм возникновение этих задержек.
-------------------------------
Задержка интернет и загрузка процессора исключаются, так как их величина на несколько порядков меньше.
------------------
Пример
 
Добрый день,
по просьбе трудящихся выкладываю пример на QPILE
Код
PORTFOLIO_EX TEST;
DESCRIPTION TEST;
CLIENTS_LIST ALL_CLIENTS;
FIRMS_LIST FIRM_ID;
USE_CASE_SENSITIVE_CONSTANTS;

PROGRAM

NEW_GLOBAL("count",0)
NEW_GLOBAL("CLAS","CETS")
NEW_GLOBAL("List","USD000000TOD,EURUSD000TOD,EUR_RUB__TOD")
NEW_GLOBAL("com",0.000445)

i=1
dif=0
e=1-3*com
f=create_map()
z=create_map()
FOR SEC IN List
  s=get_param_ex(CLAS,SEC,"SHORTNAME")
  n=get_value(s,"PARAM_IMAGE")
  s=get_param_ex(CLAS,SEC,"LAST")
  p=get_value(s,"PARAM_IMAGE")+0
  s=get_param_ex(CLAS,SEC,"OFFER")
  po=get_value(s,"PARAM_IMAGE")+0
  s=get_param_ex(CLAS,SEC,"BID")
  pb=get_value(s,"PARAM_IMAGE")+0
  s=get_param_ex(CLAS,SEC,"LOTSIZE")
  q=get_value(s,"PARAM_IMAGE")+0
  z=set_value(z,"Name",n)
  z=set_value(z,"last",p)
  z=set_value(z,"bid",pb)
  z=set_value(z,"offer",po)
  z=set_value(z,"lotsize",q)
  IF count=0
   add_item(i,z)
  ELSE
   MODIFY_ITEM(i,z)
  END IF
  IF i==3
    IF pb>0
      dif=e/pb-1
      f=set_value(f,"lotsize",dif)
   END IF
  ELSE
    e=e*po
  END IF
  i=i+1
END FOR

IF count=0
  add_item(4,f)
ELSE
   MODIFY_ITEM(4,f)
END IF
 count=1
END_PROGRAM

PARAMETER Name;
PARAMETER_TITLE Name;
PARAMETER_DESCRIPTION here is Name;
PARAMETER_TYPE STRING(15);
END

PARAMETER last;
PARAMETER_TITLE last;
PARAMETER_DESCRIPTION good;
PARAMETER_TYPE STRING(10);
END

PARAMETER bid;
PARAMETER_TITLE bid;
PARAMETER_DESCRIPTION good;
PARAMETER_TYPE STRING(10);
END

PARAMETER offer;
PARAMETER_TITLE offer;
PARAMETER_DESCRIPTION good;
PARAMETER_TYPE STRING(10);
END

PARAMETER LOTSIZE;
PARAMETER_TITLE lotsize;
PARAMETER_DESCRIPTION good;
PARAMETER_TYPE STRING(10);
END

END_PORTFOLIO_EX


 
Кто сможет объяснить необъяснимое?
 
Что-то разработчики  молчат.
Ay!!!
Подключение к Quik, Как подключиться к quik для получения информации с графика и формирования заявок?
 
Цитата
Юрий написал:
Коллеги! А можно это все как-то в виде примера с кодом увидеть? Нужно получать в реалтайме данные о сделках и подробности по бумаге (шаг цены, стоимость, число знаков и т.д.) во внешней программе на C++ через некий lua скрипт и я никак этому не дам ума так как нет опыта :(
Сначала получите эти параметры в луа, а потом передадите их в свою функцию на CИ.
Примеры использования Api C for Lua  есть в документации по луа
https://lua.org.ru/manual_ru.html#lua_call
https://www.lua.org/manual/5.3/
или в ссылке выше.
Утечки памяти в quik 10.0.1.18
 
Цитата
Василий написал:
Цитата
nikolz написал:
В таблице запуска скриптов отображается память занимаемая скриптом.
Посмотрите как она изменяется.  
Попробуйте отключить скрипты.
Согласно той таблице, скрипты занимают несколько мегабайт.
А согласно таск менеджеру, квик занимает 3 гигабайта.
Да в нём и раньше утечки памяти были, но вроде фиксили. Вот опять.
Я пытался старую версию из бекапа восстановить, скопировав поверх текущих файлов, но не запустилось. Какая-то ошибка.
я три раза пытался ставить версию 9 но снес и работаю на 8.7
Но то что у Вас 3 ГБ  это не проблема версии.
посмотрите сколько у Вас выбрано инструментов и параметров в заказе данных.
При смене версий установки могут встать по умолчанию.
еще в настройках уберите восстанавливать пропущенные данные, если установлено.
Утечки памяти в quik 10.0.1.18
 
Цитата
Василий написал:
Цитата
nikolz написал:
Возможно, это не утечка.
В зависимости от настройки может сохранятся или нет история параметров и ТТП для построения индикаторов.
Если история параметров сохраняется, то и затраты памяти растут.
Но у меня же нет никакой активности, кроме скриптов lua.
В том числе никаких индикаторов. Вообще никаких таблиц и графиков не открыто.
Если бы я каждую секунду менял настройки, то можно было бы понять гигабайт истории параметров.
А так - навряд ли. Да и на предыдущей версии такого не было.
В таблице запуска скриптов отображается память занимаемая скриптом.
Посмотрите как она изменяется.  
Попробуйте отключить скрипты.
Скрипт не видит значение индикатора с определенной периодичностью.
 
Цитата
Юрий написал:
Методом научного тыка определил, что проблема кроется в этом блоке (297 строка кода):     Скрытый текст        
Код
   IF  ( 0   +  IS_CONNECTED()  =   1 )
seconline = SUBSTR(Get_Info_Param( "CONNECTIONTIME" ), 6 , 2 )
minonline = SUBSTR(Get_Info_Param( "CONNECTIONTIME" ), 3 , 2 )
houronline = SUBSTR(Get_Info_Param( "CONNECTIONTIME" ), 0 , 2 )
   if  (((houronline +  0 ) >  1 )  or  ((minonline +  0 ) >  1 )  or  ((seconline +  0 ) >  20 )) 
  work =  1 
   end   if 
 end   if    
Не нашел информации в каком формате предоставляются данные CONNECTIONTIME.
Знающие люди, подскажите пожалуйста!
внимательно читайте документацию:
STRING getInfoParam (STRING param_name)
Утечки памяти в quik 10.0.1.18
 
Цитата
Василий написал:
Здравствуйте,

У меня последняя версия quik (открытие) 10.0.1.18. При работе медленно растёт объём используемой памяти.
Только вчера перезапускал (примерно 23 часа назад), и уже Task Manager показывает, что quik занимает 1945 MB. За несколько минут число вырастает на несколько мегабайт.
Перезапустил, теперь quik потребляет всего 492 мегабайта.
Такого не было на последней версии на дату 24.12.2022. После этого не обновлял до 16.04.2023, всё было хорошо - quik мог работать неделю без сильного роста используемой памяти. Как обновил, а потом ещё раз 18.04.2023, так пошли утечки.
У меня постоянно запущены скрипты lua, кроме этого никакой активности.

Хотелось бы, чтобы устранили утечки памяти.
Спасибо.
Возможно, это не утечка.
В зависимости от настройки может сохранятся или нет история параметров и ТТП для построения индикаторов.
Если история параметров сохраняется, то и затраты памяти растут.
Кто сможет объяснить необъяснимое?
 
Даниил Волошин,
Добрый день,

Вам достаточно информации, что объяснить по данным Вашего демо сервера:
-----------------------------
1) повторение обезличенных сделок в onAllTrade
----------------------------------
2) запаздывание прихода обезличенных сделок до 60 секунд по ликвидному инструменту SBER.
Кто сможет объяснить необъяснимое?
 
в итоге имеем это:
229:156066>64821,89358,916,70,5,18,2,11,3,3,7,11,7,9,22,6,23,13,4,13,30,23,16,10,1,6,8,4,25,8,9,11,41,47,1,18,43,10,4,10,4,9,13,6,22,9,4,15,22,7,44,13,10,3,22,2,2,4,6,10,7,6,3,2,2,10,1,2,1,4,8,6,
Кто сможет объяснить необъяснимое?
 
отфильтровал повторяющиеся сделки.
----------------------
В итоге получаем:
Код
26361,SBER,num=4781728079,size=57343,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.4609999999998
26361,SBER,num=4781728080,size=57344,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.4609999999998
26361,SBER,num=4781728081,size=57345,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.462
26361,SBER,num=4781728082,size=57346,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.462
26361,SBER,num=4781728083,size=57347,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.462
26361,SBER,num=4781728084,size=57348,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.462
26361,SBER,num=4781728086,size=57350,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728087,size=57351,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728088,size=57352,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728089,size=57353,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728090,size=57354,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728091,size=57355,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728092,size=57356,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728093,size=57357,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728094,size=57358,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728095,size=57359,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728096,size=57360,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728097,size=57361,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728098,size=57362,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728099,size=57363,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728100,size=57364,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728101,size=57365,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728102,size=57366,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.462
26361,SBER,num=4781728103,size=57367,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728104,size=57368,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728105,size=57369,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728106,size=57370,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728107,size=57371,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728108,size=57372,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728109,size=57373,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728110,size=57374,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728111,size=57375,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728112,size=57376,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728113,size=57377,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728114,size=57378,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728115,size=57379,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728116,size=57380,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728117,size=57381,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728118,size=57382,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728119,size=57383,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728120,size=57384,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728121,size=57385,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4630000000002
26361,SBER,num=4781728122,size=57386,HMS=26307.0,dt=54.0,n=0,m=55,clock=2.4639999999999
26361,SBER,num=4781728129,size=57388,HMS=26308.0,dt=53.0,n=0,m=54,clock=2.4639999999999
26361,SBER,num=4781728160,size=57390,HMS=26309.0,dt=52.0,n=0,m=53,clock=2.4639999999999
26361,SBER,num=4781728180,size=57392,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728181,size=57393,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728182,size=57394,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728183,size=57395,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728184,size=57396,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728185,size=57397,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728186,size=57398,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728187,size=57399,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728188,size=57400,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728189,size=57401,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728190,size=57402,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728191,size=57403,HMS=26310.0,dt=51.0,n=0,m=52,clock=2.4639999999999
26361,SBER,num=4781728210,size=57406,HMS=26312.0,dt=49.0,n=0,m=50,clock=2.4639999999999
26361,SBER,num=4781728211,size=57407,HMS=26312.0,dt=49.0,n=0,m=50,clock=2.4639999999999
26361,SBER,num=4781728219,size=57408,HMS=26312.0,dt=49.0,n=0,m=50,clock=2.4639999999999
26361,SBER,num=4781728234,size=57410,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4639999999999
26361,SBER,num=4781728235,size=57411,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4639999999999
26361,SBER,num=4781728236,size=57412,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4650000000001
26361,SBER,num=4781728237,size=57413,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4650000000001
26361,SBER,num=4781728238,size=57414,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4650000000001
26361,SBER,num=4781728239,size=57415,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4650000000001
26361,SBER,num=4781728240,size=57416,HMS=26313.0,dt=48.0,n=0,m=49,clock=2.4650000000001
26361,SBER,num=4781728271,size=57419,HMS=26315.0,dt=46.0,n=0,m=47,clock=2.4650000000001
26361,SBER,num=4781728279,size=57421,HMS=26316.0,dt=45.0,n=0,m=46,clock=2.4650000000001
26361,SBER,num=4781728282,size=57422,HMS=26316.0,dt=45.0,n=0,m=46,clock=2.4650000000001
26361,SBER,num=4781728323,size=57424,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728324,size=57425,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728325,size=57426,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728326,size=57427,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728327,size=57428,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728328,size=57429,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728329,size=57430,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728330,size=57431,HMS=26318.0,dt=43.0,n=0,m=44,clock=2.4650000000001
26361,SBER,num=4781728409,size=57433,HMS=26320.0,dt=41.0,n=0,m=42,clock=2.4650000000001
26361,SBER,num=4781728761,size=57440,HMS=26335.0,dt=26.0,n=0,m=27,clock=2.4659999999999
26361,SBER,num=4781728762,size=57441,HMS=26335.0,dt=26.0,n=0,m=27,clock=2.4659999999999
26361,SBER,num=4781728773,size=57443,HMS=26336.0,dt=25.0,n=0,m=26,clock=2.4659999999999
26361,SBER,num=4781728800,size=57445,HMS=26337.0,dt=24.0,n=0,m=25,clock=2.4659999999999
26361,SBER,num=4781728807,size=57447,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728808,size=57448,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728810,size=57449,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728811,size=57450,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728812,size=57451,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728813,size=57452,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728814,size=57453,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728815,size=57454,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728816,size=57455,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728817,size=57456,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728818,size=57457,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728819,size=57458,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728820,size=57459,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728821,size=57460,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728825,size=57461,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728826,size=57462,HMS=26338.0,dt=23.0,n=0,m=24,clock=2.4659999999999
26361,SBER,num=4781728829,size=57464,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4659999999999
26361,SBER,num=4781728830,size=57465,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728831,size=57466,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728832,size=57467,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728833,size=57468,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728834,size=57469,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728835,size=57470,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728836,size=57471,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728837,size=57472,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728838,size=57473,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728839,size=57474,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728840,size=57475,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728843,size=57476,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728844,size=57477,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728845,size=57478,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728846,size=57479,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728847,size=57480,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728848,size=57481,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728849,size=57482,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728850,size=57483,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728851,size=57484,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728852,size=57485,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728853,size=57486,HMS=26339.0,dt=22.0,n=0,m=23,clock=2.4670000000001
26361,SBER,num=4781728855,size=57488,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728856,size=57489,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728857,size=57490,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728858,size=57491,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728859,size=57492,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728860,size=57493,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728861,size=57494,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728862,size=57495,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728866,size=57496,HMS=26340.0,dt=21.0,n=0,m=22,clock=2.4679999999998
26361,SBER,num=4781728885,size=57498,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728886,size=57499,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728887,size=57500,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728888,size=57501,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728889,size=57502,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728894,size=57503,HMS=26341.0,dt=20.0,n=0,m=21,clock=2.4679999999998
26361,SBER,num=4781728898,size=57505,HMS=26342.0,dt=19.0,n=0,m=20,clock=2.4679999999998
26361,SBER,num=4781728899,size=57506,HMS=26342.0,dt=19.0,n=0,m=20,clock=2.4679999999998
26361,SBER,num=4781728900,size=57507,HMS=26342.0,dt=19.0,n=0,m=20,clock=2.4679999999998
26361,SBER,num=4781728935,size=57510,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4679999999998
26361,SBER,num=4781728937,size=57511,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4679999999998
26361,SBER,num=4781728938,size=57512,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4679999999998
26361,SBER,num=4781728939,size=57513,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728940,size=57514,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728942,size=57515,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728943,size=57516,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728944,size=57517,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728945,size=57518,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728946,size=57519,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728947,size=57520,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728948,size=57521,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728949,size=57522,HMS=26344.0,dt=17.0,n=0,m=18,clock=2.4690000000001
26361,SBER,num=4781728952,size=57524,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.4690000000001
26361,SBER,num=4781728953,size=57525,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.4690000000001
26361,SBER,num=4781728954,size=57526,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.4690000000001
26361,SBER,num=4781728955,size=57527,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728956,size=57528,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728957,size=57529,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728958,size=57530,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728959,size=57531,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728960,size=57532,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728961,size=57533,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728962,size=57534,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728963,size=57535,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728964,size=57536,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728965,size=57537,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728966,size=57538,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728967,size=57539,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728968,size=57540,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728969,size=57541,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728970,size=57542,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728972,size=57543,HMS=26345.0,dt=16.0,n=0,m=17,clock=2.471
26361,SBER,num=4781728980,size=57545,HMS=26346.0,dt=15.0,n=0,m=16,clock=2.471
26361,SBER,num=4781729002,size=57546,HMS=26346.0,dt=15.0,n=0,m=16,clock=2.471
26361,SBER,num=4781729009,size=57547,HMS=26346.0,dt=15.0,n=0,m=16,clock=2.471
26361,SBER,num=4781729052,size=57550,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.471
26361,SBER,num=4781729053,size=57551,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.471
26361,SBER,num=4781729054,size=57552,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729055,size=57553,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729056,size=57554,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729057,size=57555,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729058,size=57556,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729059,size=57557,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729060,size=57558,HMS=26348.0,dt=13.0,n=0,m=14,clock=2.4719999999998
26361,SBER,num=4781729119,size=57561,HMS=26351.0,dt=10.0,n=0,m=11,clock=2.4719999999998
26361,SBER,num=4781729151,size=57563,HMS=26352.0,dt=9.0,n=0,m=10,clock=2.4719999999998
26361,SBER,num=4781729152,size=57564,HMS=26352.0,dt=9.0,n=0,m=10,clock=2.4719999999998
26361,SBER,num=4781729170,size=57566,HMS=26353.0,dt=8.0,n=0,m=9,clock=2.4719999999998
26361,SBER,num=4781729171,size=57567,HMS=26353.0,dt=8.0,n=0,m=9,clock=2.4719999999998
26361,SBER,num=4781729172,size=57568,HMS=26353.0,dt=8.0,n=0,m=9,clock=2.4719999999998
26361,SBER,num=4781729192,size=57570,HMS=26355.0,dt=6.0,n=0,m=7,clock=2.4719999999998
26361,SBER,num=4781729215,size=57572,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.4719999999998
26361,SBER,num=4781729216,size=57573,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.4719999999998
26361,SBER,num=4781729218,size=57574,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.4719999999998
26361,SBER,num=4781729219,size=57575,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.4719999999998
26361,SBER,num=4781729220,size=57576,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729221,size=57577,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729222,size=57578,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729223,size=57579,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729224,size=57580,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729225,size=57581,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729226,size=57582,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729227,size=57583,HMS=26356.0,dt=5.0,n=0,m=6,clock=2.473
26361,SBER,num=4781729233,size=57585,HMS=26357.0,dt=4.0,n=0,m=5,clock=2.473
26361,SBER,num=4781729234,size=57586,HMS=26357.0,dt=4.0,n=0,m=5,clock=2.473
26361,SBER,num=4781729237,size=57587,HMS=26357.0,dt=4.0,n=0,m=5,clock=2.473
26361,SBER,num=4781729244,size=57588,HMS=26357.0,dt=4.0,n=0,m=5,clock=2.473
26361,SBER,num=4781729253,size=57590,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729254,size=57591,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729255,size=57592,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729256,size=57593,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729257,size=57594,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729258,size=57595,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729259,size=57596,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729260,size=57597,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.473
26361,SBER,num=4781729261,size=57598,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729262,size=57599,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729263,size=57600,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729264,size=57601,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729265,size=57602,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729266,size=57603,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
26361,SBER,num=4781729267,size=57604,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
анализ результата:
----------------------
1-я сделка
26361,SBER,num=4781728079,size=57343,HMS=26306.0,dt=55.0,n=0,m=56,clock=2.4609999999998
------------------------------
последняя сделка
26361,SBER,num=4781729267,size=57604,HMS=26358.0,dt=3.0,n=0,m=4,clock=2.4740000000002
---------------------
Первое число 26361 -  это время компьютера в секундах. Оно не изменилось
-------------------------
Последнее число - это os.clock в секундах изменяется от 2.461 до 2.474  т е на 13 миллисекунд.
----------------------
HMS - время сделок в секундах изменилось от  26306   до 26358  т е на 52 секунды
----------------------
Таким образом , запаздывание прихода сделок самого ликвидного инструмента составило 52 секунду.
-----------------------------------------
Причем, сделки почти за минуту получили за  13 миллисекунд
------------------------------
Все верно?
-----------------------------
Можете объяснить?
Кто сможет объяснить необъяснимое?
 
Цитата
Даниил Волошин написал:
Нужен также номер сделки, по которому можно её отследить на всех этапах её следования.
Обнаружил, что
в колбек onAllTrade  сделки прилетают повторно!!!!
-------------------
Написал для этого такой тест:
Код
local ds={}
local count=0;

function OnParam(c,s)
   local z=ds[c..s] if z==nil then d,err=CreateDataSource (c,s,INTERVAL_TICK); if d then  d:SetEmptyCallback(); ds[c..s]={d,0,0}; end end
end

function OnAllTrade(t)
   count=count+1;
   local c,s=t.class_code,t.sec_code;  local z=ds[c..s]; local num=t.trade_num;
   if z then
      if z[2]==num then
      Log:write(os.date()..","..tostring(s)..",num="..tostring(num)..","..tostring(count)..",повторение "..tostring(z[3]) .."\n"); Log:flush();
      else
         Log:write(os.date()..","..tostring(s)..",num="..tostring(num)..","..tostring(count).."\n"); Log:flush();
      end
      z[2]=num; z[3]=count;
   end
end

function OnInit(pfile)  local path = getScriptPath(); Log=io.open(path.."/test.log","w") end
function main()  while true do     sleep(1000); end  end
В результате имеем:
Код
ri Apr 21 18:18:08 2023,GDM3,num=1936585274704269063,12
Fri Apr 21 18:18:08 2023,GDM3,num=1936585274704269064,13
Fri Apr 21 18:18:08 2023,GDM3,num=1936585274704269065,14
Fri Apr 21 18:18:08 2023,GDM3,num=1936585274704269066,15
Fri Apr 21 18:18:08 2023,GDM3,num=1936585274704269067,16
Fri Apr 21 18:18:16 2023,GDM3,num=1936585274704269067,17,повторение 16
Fri Apr 21 18:18:16 2023,GLDRUB_TOM,num=112298,18
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112272,19
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112273,20
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112274,21
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112275,22
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112276,23
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112277,24
Fri Apr 21 18:18:17 2023,GDM3,num=1936585274704269067,25,повторение 17
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112294,26
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112295,27
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112296,28
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112297,29
Fri Apr 21 18:18:17 2023,GLDRUB_TOM,num=112298,30,повторение 18
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112301,31
Fri Apr 21 18:18:17 2023,USD000UTSTOM,num=112302,32
Fri Apr 21 18:18:19 2023,GDM3,num=1936585274704269067,33,повторение 25
Fri Apr 21 18:18:19 2023,GLDRUB_TOM,num=112298,34,повторение 30
Fri Apr 21 18:18:19 2023,USD000UTSTOM,num=112302,35,повторение 32
Fri Apr 21 18:18:20 2023,CNYRUB_TOM,num=112270,36
Fri Apr 21 18:18:20 2023,CNYRUB_TOM,num=112271,37
Fri Apr 21 18:18:20 2023,CNYRUB_TOM,num=112292,38
Fri Apr 21 18:18:20 2023,GDM3,num=1936585274704269067,39,повторение 33
Fri Apr 21 18:18:20 2023,GLDRUB_TOM,num=112298,40,повторение 34
Fri Apr 21 18:18:20 2023,CNYRUB_TOM,num=112299,41
Fri Apr 21 18:18:20 2023,CNYRUB_TOM,num=112300,42
Fri Apr 21 18:18:20 2023,USD000UTSTOM,num=112302,43,повторение 35
Fri Apr 21 18:18:21 2023,GDM3,num=1936585274704269068,44
Fri Apr 21 18:18:21 2023,USD000000TOD,num=112282,45
Fri Apr 21 18:18:21 2023,USD000000TOD,num=112291,46
Fri Apr 21 18:18:21 2023,USD000000TOD,num=112293,47
Fri Apr 21 18:18:21 2023,GLDRUB_TOM,num=112298,48,повторение 40
Fri Apr 21 18:18:21 2023,CNYRUB_TOM,num=112300,49,повторение 42
Fri Apr 21 18:18:21 2023,USD000UTSTOM,num=112302,50,повторение 43
Fri Apr 21 18:18:21 2023,GDM3,num=1936585274704269068,51,повторение 44
Fri Apr 21 18:18:24 2023,USD000000TOD,num=112293,52,повторение 47
Fri Apr 21 18:18:24 2023,GLDRUB_TOM,num=112298,53,повторение 48
Fri Apr 21 18:18:24 2023,CNYRUB_TOM,num=112300,54,повторение 49
Fri Apr 21 18:18:24 2023,USD000UTSTOM,num=112302,55,повторение 50
Fri Apr 21 18:18:24 2023,GDM3,num=1936585274704269068,56,повторение 51
Fri Apr 21 18:18:24 2023,GDM3,num=1936585274704269069,57
Fri Apr 21 18:18:24 2023,CNYRUB_TOM,num=112306,58
Fri Apr 21 18:18:25 2023,GDM3,num=1936585274704269070,59
Fri Apr 21 18:18:25 2023,USD000000TOD,num=112293,60,повторение 52
Fri Apr 21 18:18:25 2023,GLDRUB_TOM,num=112298,61,повторение 53
Fri Apr 21 18:18:25 2023,USD000UTSTOM,num=112302,62,повторение 55
Fri Apr 21 18:18:25 2023,CNYRUB_TOM,num=112306,63,повторение 58
Fri Apr 21 18:18:25 2023,GDM3,num=1936585274704269070,64,повторение 59
Fri Apr 21 18:18:25 2023,USD000000TOD,num=112293,65,повторение 60
Fri Apr 21 18:18:25 2023,GLDRUB_TOM,num=112298,66,повторение 61
Fri Apr 21 18:18:25 2023,LIFE,num=4780929424,67
Fri Apr 21 18:18:25 2023,USD000UTSTOM,num=112302,68,повторение 62
Fri Apr 21 18:18:25 2023,CNYRUB_TOM,num=112306,69,повторение 63
Fri Apr 21 18:18:25 2023,GDM3,num=1936585274704269070,70,повторение 64
Fri Apr 21 18:18:25 2023,EUR_RUB__TOM,num=112307,71
Fri Apr 21 18:18:25 2023,EUR_RUB__TOM,num=112308,72
Fri Apr 21 18:18:25 2023,EUR_RUB__TOM,num=112309,73
Fri Apr 21 18:18:25 2023,EUR_RUB__TOM,num=112310,74
Fri Apr 21 18:18:30 2023,AGRO,num=4780929494,75
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112311,76
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112312,77
Fri Apr 21 18:18:30 2023,MAGN,num=4780929259,78
Fri Apr 21 18:18:30 2023,MAGN,num=4780929260,79
Fri Apr 21 18:18:30 2023,MAGN,num=4780929284,80
Fri Apr 21 18:18:30 2023,MAGN,num=4780929285,81
Fri Apr 21 18:18:30 2023,MAGN,num=4780929286,82
Fri Apr 21 18:18:30 2023,MAGN,num=4780929287,83
Fri Apr 21 18:18:30 2023,MAGN,num=4780929366,84
Fri Apr 21 18:18:30 2023,USD000000TOD,num=112293,85,повторение 65
Fri Apr 21 18:18:30 2023,MAGN,num=4780929374,86
Fri Apr 21 18:18:30 2023,GLDRUB_TOM,num=112298,87,повторение 66
Fri Apr 21 18:18:30 2023,LIFE,num=4780929424,88,повторение 67
Fri Apr 21 18:18:30 2023,USD000UTSTOM,num=112302,89,повторение 68
Fri Apr 21 18:18:30 2023,MAGN,num=4780929458,90
Fri Apr 21 18:18:30 2023,MAGN,num=4780929459,91
Fri Apr 21 18:18:30 2023,MAGN,num=4780929460,92
Fri Apr 21 18:18:30 2023,MAGN,num=4780929461,93
Fri Apr 21 18:18:30 2023,MAGN,num=4780929462,94
Fri Apr 21 18:18:30 2023,MAGN,num=4780929463,95
Fri Apr 21 18:18:30 2023,MAGN,num=4780929464,96
Fri Apr 21 18:18:30 2023,MAGN,num=4780929465,97
Fri Apr 21 18:18:30 2023,MAGN,num=4780929466,98
Fri Apr 21 18:18:30 2023,MAGN,num=4780929467,99
Fri Apr 21 18:18:30 2023,MAGN,num=4780929468,100
Fri Apr 21 18:18:30 2023,MAGN,num=4780929469,101
Fri Apr 21 18:18:30 2023,MAGN,num=4780929470,102
Fri Apr 21 18:18:30 2023,MAGN,num=4780929471,103
Fri Apr 21 18:18:30 2023,MAGN,num=4780929472,104
Fri Apr 21 18:18:30 2023,MAGN,num=4780929473,105
Fri Apr 21 18:18:30 2023,MAGN,num=4780929474,106
Fri Apr 21 18:18:30 2023,MAGN,num=4780929475,107
Fri Apr 21 18:18:30 2023,CNYRUB_TOM,num=112306,108,повторение 69
Fri Apr 21 18:18:30 2023,GDM3,num=1936585274704269070,109,повторение 70
Fri Apr 21 18:18:30 2023,AGRO,num=4780929494,110,повторение 75
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112312,111,повторение 77
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112313,112
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112314,113
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112315,114
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112316,115
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112317,116
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112318,117
Fri Apr 21 18:18:30 2023,MTLR,num=4780929257,118
Fri Apr 21 18:18:30 2023,MTLR,num=4780929263,119
Fri Apr 21 18:18:30 2023,MTLR,num=4780929265,120
Fri Apr 21 18:18:30 2023,MTLR,num=4780929268,121
Fri Apr 21 18:18:30 2023,MTLR,num=4780929270,122
Fri Apr 21 18:18:30 2023,MTLR,num=4780929276,123
Fri Apr 21 18:18:30 2023,MTLR,num=4780929294,124
Fri Apr 21 18:18:30 2023,MTLR,num=4780929295,125
Fri Apr 21 18:18:30 2023,MTLR,num=4780929296,126
Fri Apr 21 18:18:30 2023,MTLR,num=4780929297,127
Fri Apr 21 18:18:30 2023,MTLR,num=4780929298,128
Fri Apr 21 18:18:30 2023,MTLR,num=4780929299,129
Fri Apr 21 18:18:30 2023,MTLR,num=4780929300,130
Fri Apr 21 18:18:30 2023,MTLR,num=4780929301,131
Fri Apr 21 18:18:30 2023,MTLR,num=4780929302,132
Fri Apr 21 18:18:30 2023,MTLR,num=4780929303,133
Fri Apr 21 18:18:30 2023,MTLR,num=4780929304,134
Fri Apr 21 18:18:30 2023,MTLR,num=4780929305,135
Fri Apr 21 18:18:30 2023,MTLR,num=4780929306,136
Fri Apr 21 18:18:30 2023,MTLR,num=4780929307,137
Fri Apr 21 18:18:30 2023,MTLR,num=4780929308,138
Fri Apr 21 18:18:30 2023,MTLR,num=4780929309,139
Fri Apr 21 18:18:30 2023,MTLR,num=4780929310,140
Fri Apr 21 18:18:30 2023,MTLR,num=4780929311,141
Fri Apr 21 18:18:30 2023,MTLR,num=4780929312,142
Fri Apr 21 18:18:30 2023,MTLR,num=4780929313,143
Fri Apr 21 18:18:30 2023,MTLR,num=4780929314,144
Fri Apr 21 18:18:30 2023,MTLR,num=4780929315,145
Fri Apr 21 18:18:30 2023,MTLR,num=4780929316,146
Fri Apr 21 18:18:30 2023,MTLR,num=4780929317,147
Fri Apr 21 18:18:30 2023,MTLR,num=4780929325,148
Fri Apr 21 18:18:30 2023,MTLR,num=4780929326,149
Fri Apr 21 18:18:30 2023,MTLR,num=4780929347,150
Fri Apr 21 18:18:30 2023,MTLR,num=4780929361,151
Fri Apr 21 18:18:30 2023,MTLR,num=4780929367,152
Fri Apr 21 18:18:30 2023,USD000000TOD,num=112293,153,повторение 85
Fri Apr 21 18:18:30 2023,MTLR,num=4780929385,154
Fri Apr 21 18:18:30 2023,MTLR,num=4780929390,155
Fri Apr 21 18:18:30 2023,GLDRUB_TOM,num=112298,156,повторение 87
Fri Apr 21 18:18:30 2023,LIFE,num=4780929424,157,повторение 88
Fri Apr 21 18:18:30 2023,MTLR,num=4780929425,158
Fri Apr 21 18:18:30 2023,MTLR,num=4780929431,159
Fri Apr 21 18:18:30 2023,USD000UTSTOM,num=112302,160,повторение 89
Fri Apr 21 18:18:30 2023,MTLR,num=4780929435,161
Fri Apr 21 18:18:30 2023,MAGN,num=4780929475,162,повторение 107
Fri Apr 21 18:18:30 2023,MTLR,num=4780929476,163
Fri Apr 21 18:18:30 2023,CNYRUB_TOM,num=112306,164,повторение 108
Fri Apr 21 18:18:30 2023,GDM3,num=1936585274704269070,165,повторение 109
Fri Apr 21 18:18:30 2023,AGRO,num=4780929494,166,повторение 110
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112318,167,повторение 117
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112319,168
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112320,169
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112321,170
Fri Apr 21 18:18:30 2023,GDM3,num=1936585274704269071,171
Fri Apr 21 18:18:30 2023,GDM3,num=1936585274704269072,172
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112322,173
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112323,174
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112324,175
Fri Apr 21 18:18:30 2023,EUR_RUB__TOM,num=112325,176
Fri Apr 21 18:18:31 2023,GDM3,num=1936585274704269073,177
Fri Apr 21 18:18:32 2023,MTLR,num=4780929520,178
Fri Apr 21 18:18:32 2023,MTLR,num=4780929522,179
Fri Apr 21 18:18:32 2023,USD000000TOD,num=112293,180,повторение 153
Fri Apr 21 18:18:32 2023,PMSB,num=4780929375,181
Fri Apr 21 18:18:32 2023,PMSB,num=4780929376,182
Fri Apr 21 18:18:32 2023,PMSB,num=4780929377,183
Fri Apr 21 18:18:32 2023,PMSB,num=4780929378,184
Fri Apr 21 18:18:32 2023,PMSB,num=4780929379,185
Fri Apr 21 18:18:32 2023,GLDRUB_TOM,num=112298,186,повторение 156
Fri Apr 21 18:18:32 2023,LIFE,num=4780929424,187,повторение 157
Fri Apr 21 18:18:32 2023,USD000UTSTOM,num=112302,188,повторение 160
Fri Apr 21 18:18:32 2023,MAGN,num=4780929475,189,повторение 162
Fri Apr 21 18:18:32 2023,CNYRUB_TOM,num=112306,190,повторение 164
Fri Apr 21 18:18:32 2023,AGRO,num=4780929494,191,повторение 166
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112325,192,повторение 176
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269073,193,повторение 177
Fri Apr 21 18:18:32 2023,MTLR,num=4780929522,194,повторение 179
Fri Apr 21 18:18:32 2023,USD000UTSTOM,num=112326,195
Fri Apr 21 18:18:32 2023,USD000UTSTOM,num=112327,196
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112328,197
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112329,198
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112330,199
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112331,200
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112332,201
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112333,202
Fri Apr 21 18:18:32 2023,CNYRUB_TOM,num=112334,203
Fri Apr 21 18:18:32 2023,CNYRUB_TOM,num=112335,204
Fri Apr 21 18:18:32 2023,SBER,num=4780929254,205
Fri Apr 21 18:18:32 2023,SBER,num=4780929255,206
Fri Apr 21 18:18:32 2023,USD000000TOD,num=112293,207,повторение 180
Fri Apr 21 18:18:32 2023,PMSB,num=4780929379,208,повторение 185
Fri Apr 21 18:18:32 2023,SBER,num=4780929386,209
Fri Apr 21 18:18:32 2023,GLDRUB_TOM,num=112298,210,повторение 186
Fri Apr 21 18:18:32 2023,LIFE,num=4780929424,211,повторение 187
Fri Apr 21 18:18:32 2023,SBER,num=4780929432,212
Fri Apr 21 18:18:32 2023,SBER,num=4780929453,213
Fri Apr 21 18:18:32 2023,SBER,num=4780929454,214
Fri Apr 21 18:18:32 2023,SBER,num=4780929455,215
Fri Apr 21 18:18:32 2023,SBER,num=4780929456,216
Fri Apr 21 18:18:32 2023,SBER,num=4780929457,217
Fri Apr 21 18:18:32 2023,MAGN,num=4780929475,218,повторение 189
Fri Apr 21 18:18:32 2023,AGRO,num=4780929494,219,повторение 191
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269073,220,повторение 193
Fri Apr 21 18:18:32 2023,MTLR,num=4780929522,221,повторение 194
Fri Apr 21 18:18:32 2023,USD000UTSTOM,num=112327,222,повторение 196
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112333,223,повторение 202
Fri Apr 21 18:18:32 2023,CNYRUB_TOM,num=112335,224,повторение 204
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269074,225
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112336,226
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269075,227
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269076,228
Fri Apr 21 18:18:32 2023,USD000000TOD,num=112293,229,повторение 207
Fri Apr 21 18:18:32 2023,PMSB,num=4780929379,230,повторение 208
Fri Apr 21 18:18:32 2023,GLDRUB_TOM,num=112298,231,повторение 210
Fri Apr 21 18:18:32 2023,SMLT,num=4780929417,232
Fri Apr 21 18:18:32 2023,SMLT,num=4780929418,233
Fri Apr 21 18:18:32 2023,SMLT,num=4780929419,234
Fri Apr 21 18:18:32 2023,SMLT,num=4780929420,235
Fri Apr 21 18:18:32 2023,SMLT,num=4780929421,236
Fri Apr 21 18:18:32 2023,SMLT,num=4780929422,237
Fri Apr 21 18:18:32 2023,SMLT,num=4780929423,238
Fri Apr 21 18:18:32 2023,LIFE,num=4780929424,239,повторение 211
Fri Apr 21 18:18:32 2023,SBER,num=4780929457,240,повторение 217
Fri Apr 21 18:18:32 2023,MAGN,num=4780929475,241,повторение 218
Fri Apr 21 18:18:32 2023,AGRO,num=4780929494,242,повторение 219
Fri Apr 21 18:18:32 2023,MTLR,num=4780929522,243,повторение 221
Fri Apr 21 18:18:32 2023,USD000UTSTOM,num=112327,244,повторение 222
Fri Apr 21 18:18:32 2023,CNYRUB_TOM,num=112335,245,повторение 224
Fri Apr 21 18:18:32 2023,EUR_RUB__TOM,num=112336,246,повторение 226
Fri Apr 21 18:18:32 2023,GDM3,num=1936585274704269076,247,повторение 228
Fri Apr 21 18:18:35 2023,SBER,num=4780929544,248
Fri Apr 21 18:18:35 2023,SBER,num=4780929545,249
Fri Apr 21 18:18:35 2023,SBER,num=4780929546,250
Fri Apr 21 18:18:35 2023,MTLR,num=4780929548,251
Fri Apr 21 18:18:35 2023,MTLR,num=4780929551,252
Можете объяснить?
Кто сможет объяснить необъяснимое?
 
Цитата
Даниил Волошин написал:
Цитата
nikolz написал:
это тест на демо сервере

Для того, чтобы можно было провести анализ, нам необходимо знать номер сделки, которая пришла с запозданием, время её исполнения и время её появления на Вашем терминале. Потому просим Вас привести примеры в указанном формате, это позволит нам начать разбор Вашей ситуации.
сделал тест с автоподстройкой времени
выкладываю скрипт теста
Код
local tmp={}
local ds={}
local ns=0;
local shH=1 --сдвиг часового пояса
local shS=0 -- сдвиг секунд
local count,count1=0,0; local sts={} ;-- for i=1,100 do sts[i]=0;    end


function main()
   while true do
--       nkevent.wait(event); --ждем события
      while #tmp>1 do
         local t=tmp[1]; table.sremove(tmp,1);
         if count>=1000 then  count=0;
            local s=""; for i=1,100 do if sts[i] then s=s..tostring(sts[i])..","; end end
            Log:write(tostring(ns)..":"..tostring(count1)..">"..s.."\n"); Log:flush();
         end
      end
      sleep(1);
   end
end

function OnParam(c,s)
   local z=ds[c..s]
   if z==nil then
      d,err=CreateDataSource (c,s,INTERVAL_TICK);
      if d then  d:SetEmptyCallback(); ns=ns+1; ds[c..s]={d,0,0}; end
   else
       table.sinsert(tmp,{1,c,s}); --nkevent.Set(event);
   end
end

function OnAllTrade(t)
   local c,s=t.class_code,t.sec_code;  local z=ds[c..s];
   if z then   local d=z[1]; local n=z[2]; local f=z[3];
      local Ti=t.datetime; local HMS=(60*(60*Ti.hour+Ti.min)+Ti.sec)+0.001*Ti.ms;
      local D=os.date("*t"); local hms=60*(60*(D.hour-shH)+D.min)+D.sec-shS;
      local dt= hms-HMS+n;
      local size=d:Size();
      local T1=d:T(size);   local HMS1=(60*(60*T1.hour+T1.min)+T1.sec)+0.001*T1.ms;
   --   if 0>dt then dt=0 end
      if f==0 then
         if 0>=dt then f=1 z[3]=f end
      end
      if f~=0 and HMS==HMS1 then
--         if 60>dt then
         if 0>dt then
            if -1>=dt then
               local n1=math.floor(0-dt) dt=dt+n1 n=n+n1;
               if n>100 then n=0; z[3]=0; dt=0; end
               z[2]=n
            end
         end
--         Log:write(tostring(hms)..","..tostring(s)..",size="..tostring(size)..",HMS="..tostring(HMS)..",dt="..tostring(dt)..",n="..tostring(n).."\n"); Log:flush();
         if f~=0 then
            local dt1=dt;            if 0>dt then dt=0 end            count=count+1;            count1=count1+1;
            local m=math.floor(dt)+1;
            if m==nil or sts[m]==nil then
               Log:write(tostring(hms)..","..tostring(s)..",size="..tostring(size)..",HMS="..tostring(HMS)..",HMS1="..tostring(HMS1)..",dt="..tostring(dt1)..",n="..tostring(n)..",m="..tostring(m).."\n"); Log:flush();
            end
      --      if m and 99>m then
               if sts[m] then sts[m]=sts[m]+1; else sts[m]=1    end
      --      end
         end
      end
   end
end

function OnInit(pfile)
local path = getScriptPath(); Log=io.open(path.."/test.log","w") --лог файл
end
Так как Вам лень запускать его на вашем демо сервере, то выкладываю последние результаты
На печать выводится сделка, которая первая с данной задержкой. Время компьютера, код инструмента, size, время этой сделки, время сделки но номеру size, разница времен, автосмещение, индекс ячейки (запаздывание sec+1)
Код
37240,USD000000TOD,size=1443,HMS=37240.023,HMS1=37240.023,dt=-0.023000000001048,n=0,m=1
37242,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=1.9400000000023,n=0,m=2
37244,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=3.9400000000023,n=0,m=4
37244,GMKN,size=3469,HMS=37242.0,HMS1=37242.0,dt=2.0,n=0,m=3
37246,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=5.9400000000023,n=0,m=6
37247,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=6.9400000000023,n=0,m=7
37247,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=4.9360000000015,n=0,m=5
37249,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=8.9400000000023,n=0,m=9
37250,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=9.9400000000023,n=0,m=10
37250,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=7.9360000000015,n=0,m=8
37251,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=10.940000000002,n=0,m=11
37252,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=11.940000000002,n=0,m=12
37254,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=13.940000000002,n=0,m=14
37257,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=16.940000000002,n=0,m=17
37257,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=14.936000000002,n=0,m=15
37257,MMM3,size=2203,HMS=37244.386,HMS1=37244.386,dt=12.614000000001,n=0,m=13
37258,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=17.940000000002,n=0,m=18
37258,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=15.936000000002,n=0,m=16
37259,EUR_RUB__TOD,size=870,HMS=37240.06,HMS1=37240.06,dt=18.940000000002,n=0,m=19
37262,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=19.936000000002,n=0,m=20
37264,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=21.936000000002,n=0,m=22
37265,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=22.936000000002,n=0,m=23
37265,RNFT,size=4723,HMS=37245.0,HMS1=37245.0,dt=20.0,n=0,m=21
37267,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=24.936000000002,n=0,m=25
121:1073>288,285,102,64,42,44,30,32,25,26,23,19,17,12,14,5,10,7,6,9,3,5,3,2,
37268,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=25.936000000002,n=0,m=26
37269,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=26.936000000002,n=0,m=27
37269,EDM3,size=1572,HMS=37245.431,HMS1=37245.431,dt=23.569000000003,n=0,m=24
37270,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=27.936000000002,n=0,m=28
37271,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=28.936000000002,n=0,m=29
37274,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=31.936000000002,n=0,m=32
37276,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=33.936000000002,n=0,m=34
37276,EDM3,size=1572,HMS=37245.431,HMS1=37245.431,dt=30.569000000003,n=0,m=31
37278,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=35.936000000002,n=0,m=36
37278,EDM3,size=1572,HMS=37245.431,HMS1=37245.431,dt=32.569000000003,n=0,m=33
37280,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=37.936000000002,n=0,m=38
37280,EDM3,size=1572,HMS=37245.431,HMS1=37245.431,dt=34.569000000003,n=0,m=35
37323,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=80.936000000002,n=0,m=81
37323,EDM3,size=1572,HMS=37245.431,HMS1=37245.431,dt=77.569000000003,n=0,m=78
37323,GKM3,size=361,HMS=37247.687,HMS1=37247.687,dt=75.313000000002,n=0,m=76
37323,CNY000000TOD,size=1270,HMS=37252.093,HMS1=37252.093,dt=70.906999999999,n=0,m=71
37323,TTLK,size=7749,HMS=37255.0,HMS1=37255.0,dt=68.0,n=0,m=69
37323,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=66.945,n=0,m=67
37323,VBM3,size=3501,HMS=37259.022,HMS1=37259.022,dt=63.978000000003,n=0,m=64
37323,LIFE,size=13007,HMS=37258.0,HMS1=37258.0,dt=65.0,n=0,m=66
37323,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=61.0,n=0,m=62
37323,BANEP,size=3755,HMS=37263.0,HMS1=37263.0,dt=60.0,n=0,m=61
37323,ETLN,size=1252,HMS=37264.0,HMS1=37264.0,dt=59.0,n=0,m=60
37323,NVTK,size=9542,HMS=37268.0,HMS1=37268.0,dt=55.0,n=0,m=56
37323,SNGSP,size=3839,HMS=37269.0,HMS1=37269.0,dt=54.0,n=0,m=55
37323,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=53.0,n=0,m=54
37323,CNYRUB_TOM,size=3361,HMS=37271.407,HMS1=37271.407,dt=51.593000000001,n=0,m=52
37323,AFLT,size=39793,HMS=37273.0,HMS1=37273.0,dt=50.0,n=0,m=51
37323,FLOT,size=4594,HMS=37274.0,HMS1=37274.0,dt=49.0,n=0,m=50
37323,SNM3,size=474,HMS=37275.056,HMS1=37275.056,dt=47.944000000003,n=0,m=48
37323,RIM3,size=7757,HMS=37276.013,HMS1=37276.013,dt=46.987000000001,n=0,m=47
37323,BRK3,size=20024,HMS=37277.399,HMS1=37277.399,dt=45.601000000002,n=0,m=46
37323,GDM3,size=8934,HMS=37279.215,HMS1=37279.215,dt=43.785000000003,n=0,m=44
37323,EUR_RUB__TOD,size=878,HMS=37280.042,HMS1=37280.042,dt=42.957999999999,n=0,m=43
37323,CHMF,size=12573,HMS=37279.0,HMS1=37279.0,dt=44.0,n=0,m=45
37323,USD000UTSTOM,size=2272,HMS=37281.068,HMS1=37281.068,dt=41.932000000001,n=0,m=42
37323,SRM3,size=14214,HMS=37282.131,HMS1=37282.131,dt=40.868999999999,n=0,m=41
37323,SVM3,size=3561,HMS=37283.275,HMS1=37283.275,dt=39.724999999999,n=0,m=40
37323,SRM3,size=14215,HMS=37284.441,HMS1=37284.441,dt=38.559000000001,n=0,m=39
37323,SRM3,size=14233,HMS=37286.587,HMS1=37286.587,dt=36.413,n=0,m=37
37323,EUR_RUB__TOD,size=879,HMS=37293.781,HMS1=37293.781,dt=29.218999999997,n=0,m=30
274:2577>543,410,175,148,93,77,88,84,63,47,43,29,39,32,26,9,36,34,53,11,37,25,26,37,13,12,13,15,14,11,22,30,50,65,2,3,23,15,27,7,13,11,7,8,1,5,4,2,5,2,3,7,2,3,3,2,2,1,1,2,1,1,1,1,2,
37325,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=82.936000000002,n=0,m=83
37325,BANEP,size=3755,HMS=37263.0,HMS1=37263.0,dt=62.0,n=0,m=63
37325,AFLT,size=39793,HMS=37273.0,HMS1=37273.0,dt=52.0,n=0,m=53
37326,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=83.936000000002,n=0,m=84
37326,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=69.945,n=0,m=70
37326,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=64.0,n=0,m=65
37326,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=56.0,n=0,m=57
37327,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=84.936000000002,n=0,m=85
37327,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=57.0,n=0,m=58
37330,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=87.936000000002,n=0,m=88
37330,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=73.945,n=0,m=74
37330,BANEP,size=3755,HMS=37263.0,HMS1=37263.0,dt=67.0,n=0,m=68
37330,SFTL,size=2263,HMS=37282.0,HMS1=37282.0,dt=48.0,n=0,m=49
37333,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=90.936000000002,n=0,m=91
37333,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=76.945,n=0,m=77
37333,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=71.0,n=0,m=72
37334,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=91.936000000002,n=0,m=92
37334,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=72.0,n=0,m=73
282:3589>645,629,262,207,123,123,133,104,93,70,60,41,70,48,33,19,55,42,55,22,47,26,33,46,14,18,20,19,17,14,23,30,54,70,2,8,32,20,28,9,17,15,7,19,5,8,8,10,3,6,8,6,2,16,4,5,2,4,6,11,7,2,8,4,2,5,2,4,1,4,3,1,2,1,2,2,5,1,1,1,2,2,1,
37340,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=97.936000000002,n=0,m=98
37340,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=78.0,n=0,m=79
37340,SFTL,size=2263,HMS=37282.0,HMS1=37282.0,dt=58.0,n=0,m=59
37346,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=103.936,n=0,m=104
37346,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=89.945,n=0,m=90
37350,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=107.936,n=0,m=108
37350,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=93.945,n=0,m=94
37350,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=88.0,n=0,m=89
37352,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=109.936,n=0,m=110
37352,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=95.945,n=0,m=96
37354,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=111.936,n=0,m=112
37354,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=92.0,n=0,m=93
37362,EuM3,size=772,HMS=37242.064,HMS1=37242.064,dt=119.936,n=0,m=120
37362,EUR000TODTOM,size=79,HMS=37256.055,HMS1=37256.055,dt=105.945,n=0,m=106
37362,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=100.0,n=0,m=101
291:4594>830,847,326,285,173,148,158,127,112,87,66,52,88,63,45,28,72,52,70,27,56,31,44,55,19,23,23,23,24,19,29,30,57,75,3,13,34,23,29,17,20,19,9,25,7,10,8,11,3,7,8,8,2,19,5,7,2,5,1,7,13,7,2,10,7,3,6,3,7,1,7,3,2,2,2,5,3,1,10,3,2,4,2,2,1,3,1,3,2,1,2,
37366,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=104.0,n=0,m=105
37366,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=96.0,n=0,m=97
37366,GMKN,size=3474,HMS=37287.0,HMS1=37287.0,dt=79.0,n=0,m=80
37375,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=113.0,n=0,m=114
37381,SFTL,size=2263,HMS=37282.0,HMS1=37282.0,dt=99.0,n=0,m=100
37382,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=120.0,n=0,m=121
37382,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=112.0,n=0,m=113
297:5616>1163,1067,360,317,227,164,183,147,126,95,74,60,102,75,52,43,84,63,80,35,66,40,55,59,22,31,28,31,27,28,33,33,62,76,6,16,43,27,32,18,21,21,11,28,8,10,10,14,7,9,10,9,3,21,5,8,2,6,2,7,13,7,2,11,10,5,6,3,7,1,7,3,2,2,2,5,3,1,1,11,3,2,5,2,2,1,3,1,3,3,1,2,2,1,
37405,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=143.0,n=0,m=144
37405,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=135.0,n=0,m=136
37414,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=152.0,n=0,m=153
37414,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=144.0,n=0,m=145
37414,BRM3,size=1533,HMS=37328.821,HMS1=37328.821,dt=85.178999999996,n=0,m=86
299:6616>1610,1349,395,355,250,174,188,155,131,99,81,66,111,79,56,46,87,66,82,39,70,44,59,62,24,35,31,35,28,30,36,37,64,76,9,19,44,27,34,21,24,22,11,30,10,14,11,15,8,10,11,10,5,22,6,10,2,7,3,9,15,7,3,11,11,5,6,3,8,2,7,4,2,2,2,6,3,1,1,12,3,2,5,1,3,3,1,3,1,3,3,1,3,3,1,
37441,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=179.0,n=0,m=180
37441,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=171.0,n=0,m=172
37441,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=123.149,n=0,m=124
37441,TATN,size=4176,HMS=37360.0,HMS1=37360.0,dt=81.0,n=0,m=82
37441,SELG,size=1246,HMS=37367.0,HMS1=37367.0,dt=74.0,n=0,m=75
37443,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=181.0,n=0,m=182
37443,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=173.0,n=0,m=174
37443,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=125.149,n=0,m=126
37443,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=98.0,n=0,m=99
37447,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=185.0,n=0,m=186
37447,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=177.0,n=0,m=178
37447,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=129.149,n=0,m=130
37447,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=102.0,n=0,m=103
37447,AMEZ,size=770,HMS=37346.0,HMS1=37346.0,dt=101.0,n=0,m=102
37455,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=193.0,n=0,m=194
37455,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=137.149,n=0,m=138
37455,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=121.448,n=0,m=122
37455,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=110.0,n=0,m=111
304:7625>1955,1591,430,377,267,190,199,172,141,105,92,74,121,88,59,55,96,77,90,51,74,49,67,68,28,42,33,38,33,34,40,47,65,81,12,21,46,30,35,24,24,25,12,35,11,18,13,19,9,12,11,13,7,25,8,12,3,10,4,11,16,8,4,13,12,6,8,4,11,3,7,6,2,4,1,2,7,5,1,4,13,4,4,4,6,4,5,4,3,3,3,3,6,3,5,4,1,1,
37457,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=195.0,n=0,m=196
37457,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=187.0,n=0,m=188
37457,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=139.149,n=0,m=140
37463,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=201.0,n=0,m=202
37463,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=145.149,n=0,m=146
37463,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=118.0,n=0,m=119
37463,AMEZ,size=770,HMS=37346.0,HMS1=37346.0,dt=117.0,n=0,m=118
37469,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=207.0,n=0,m=208
37469,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=199.0,n=0,m=200
37469,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=151.149,n=0,m=152
37469,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=124.0,n=0,m=125
37469,BANE,size=1071,HMS=37354.0,HMS1=37354.0,dt=115.0,n=0,m=116
37474,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=212.0,n=0,m=213
37474,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=204.0,n=0,m=205
37474,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=156.149,n=0,m=157
37474,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=140.448,n=0,m=141
37475,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=213.0,n=0,m=214
37475,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=205.0,n=0,m=206
37475,EDM3,size=1573,HMS=37317.851,HMS1=37317.851,dt=157.149,n=0,m=158
37475,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=141.448,n=0,m=142
37475,RTKM,size=984,HMS=37345.0,HMS1=37345.0,dt=130.0,n=0,m=131
37475,ALRS,size=5295,HMS=37389.0,HMS1=37389.0,dt=86.0,n=0,m=87
309:8632>2135,1860,459,403,294,214,213,185,158,116,106,89,133,96,65,70,101,90,98,57,81,57,71,79,38,50,40,49,35,42,50,48,75,92,15,30,49,31,44,33,26,29,16,35,17,25,13,21,11,14,19,18,8,29,10,13,5,12,4,14,17,10,6,15,13,9,9,6,12,4,9,7,2,7,2,3,8,5,1,6,14,4,4,5,7,7,1,6,4,4,3,3,3,8,6,5,5,2,3,
37498,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=236.0,n=0,m=237
37498,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=228.0,n=0,m=229
37498,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=164.448,n=0,m=165
37498,NKSH,size=38,HMS=37362.0,HMS1=37362.0,dt=136.0,n=0,m=137
37498,FIVE,size=2084,HMS=37364.0,HMS1=37364.0,dt=134.0,n=0,m=135
37498,SNM3,size=479,HMS=37369.989,HMS1=37369.989,dt=128.011,n=0,m=129
37498,SLVRUB_TOM,size=104,HMS=37403.345,HMS1=37403.345,dt=94.654999999999,n=0,m=95
37500,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=238.0,n=0,m=239
37500,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=230.0,n=0,m=231
37500,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=166.448,n=0,m=167
37500,BANE,size=1071,HMS=37354.0,HMS1=37354.0,dt=146.0,n=0,m=147
37500,NKSH,size=38,HMS=37362.0,HMS1=37362.0,dt=138.0,n=0,m=139
37500,SAREP,size=1763,HMS=37374.0,HMS1=37374.0,dt=126.0,n=0,m=127
37511,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=249.0,n=0,m=250
37511,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=241.0,n=0,m=242
37511,NKSH,size=38,HMS=37362.0,HMS1=37362.0,dt=149.0,n=0,m=150
312:9687>2549,2133,479,415,312,223,220,201,175,125,124,109,139,100,65,72,106,96,103,62,81,65,84,88,44,53,42,50,39,45,53,53,76,97,18,33,54,33,46,33,28,31,19,36,21,25,14,23,15,15,22,20,10,30,11,16,6,14,7,16,19,11,7,15,14,10,11,6,14,4,11,8,2,9,5,5,11,7,1,8,14,6,4,5,7,8,3,10,5,5,4,4,3,8,1,6,6,5,3,3,
37513,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=251.0,n=0,m=252
37513,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=243.0,n=0,m=244
37513,BANE,size=1071,HMS=37354.0,HMS1=37354.0,dt=159.0,n=0,m=160
37514,UTAR,size=143,HMS=37262.0,HMS1=37262.0,dt=252.0,n=0,m=253
37514,LSNGP,size=497,HMS=37270.0,HMS1=37270.0,dt=244.0,n=0,m=245
37514,RNM3,size=249,HMS=37333.552,HMS1=37333.552,dt=180.448,n=0,m=181
37514,BANE,size=1071,HMS=37354.0,HMS1=37354.0,dt=160.0,n=0,m=161
Напишите, если надо еще что-то.
Кто сможет объяснить необъяснимое?
 
это тест на демо сервере
Кто сможет объяснить необъяснимое?
 
думал что ошибка в тесте, написал новый , но лучше не стало.
в тесте надо установить смещение часового пояса и секунд
Код
local tmp={}
local ds={}
local ns=0;
local shH=1 --сдвиг часового пояса
local shS=10 -- сдвиг секунд
local count,count1=0,0; local sts={}  for i=1,200 do sts[i]=0;    end

function main()
   while true do
      while #tmp>0 do
         local t=tmp[1]; table.sremove(tmp,1);
         if count>=1000 then  count=0;
            local s=""; for i=1,60 do    s=s..tostring(sts[i])..",";end
            Log:write(tostring(ns)..":"..tostring(count1)..">"..s.."\n"); Log:flush();
         end
      end
      sleep(1);
   end
end

function OnParam(c,s)
   local d=ds[c..s]
   if d==nil then
      d,err=CreateDataSource (c,s,INTERVAL_TICK);
      if d then  d:SetEmptyCallback(); ns=ns+1; ds[c..s]=d; end
   else
      table.sinsert(tmp,{1,c,s}); 
   end
end

function OnAllTrade(t)
   local c,s=t.class_code,t.sec_code;  local d=ds[c..s];
   if d then
      local Ti=t.datetime; local HMS=(60*(60*Ti.hour+Ti.min)+Ti.sec);--+0.001*Ti.ms;
      local D=os.date("*t"); local hms=60*(60*(D.hour-shH)+D.min)+D.sec-shS;
      local dt= hms-HMS;  local size=d:Size(); local T1=d:T(size);
      local HMS1=(60*(60*T1.hour+T1.min)+T1.sec);--+0.001*T1.ms;
      if HMS==HMS1 then
         if 0>dt then dt=0 end
         if 60>dt then
         count=count+1; count1=count1+1; local m=math.floor(dt)+1; sts[m]=sts[m]+1;
         end
      end
   end
end

function OnInit(pfile)
local path = getScriptPath(); Log=io.open(path.."/test.log","w") --лог файл
end
результат:
191:18184>6506,233,262,256,295,313,351,383,396,461,451,401,312,331,321,262,297,248,301,227,231,274,231,222,225,254,229,244,245,183,171,170,194,142,136,182,161,166,128,142,122,168,120,117,84,92,65,75,79,48,75,64,70,84,80,62,53,71,52,66,
Кто сможет объяснить необъяснимое?
 
выкладываю скрипт теста:
Код
local tmp={}
local ds={}
local ns=0;

local count,count1=0,0; local sts={}  for i=1,200 do sts[i]=0;    end

function main()
   while true do
--       nkevent.wait(event); --ждем события
      while #tmp>0 do
         local t=tmp[1]; table.sremove(tmp,1);
         if count>=100 then  count=0;
            local s=""; for i=1,60 do    s=s..tostring(sts[i])..",";end
            Log:write(tostring(ns)..":"..tostring(count1)..">"..s.."\n"); Log:flush();
         end
      end
      sleep(100);
   end
end

function OnParam(c,s)
   local d=ds[c..s]
   if d==nil then
      d,err=CreateDataSource (c,s,INTERVAL_TICK);
      if d then ds[c..s]=d; d:SetEmptyCallback(); ns=ns+1; end
   else
      table.sinsert(tmp,{1,c,s});
   end
end

function OnAllTrade(t)
   local Ti=t.datetime; local HMS=(100*(100*Ti.hour+Ti.min)+Ti.sec)+0.001*Ti.ms;
   local hms=string.sub(os.date(),12,19);      hms=string.gsub(hms,':','')-10000;
   local dt=hms-HMS; if 0>dt then dt=0 end
   if 60>dt then
      count=count+1;   count1=count1+1; local m=math.floor(dt)+1; sts[m]=sts[m]+1;
   end
end

function OnInit(pfile)
path = getScriptPath(); Log=io.open(path.."/test.log","w") --лог файл
end
результат помещается в лог файл test.log, который создается в каталоге , где размещается этот скрипт.
в лог файл через каждые 100 обезличенных сделок записывается следующая строка:
Код
77:3554>79,90,89,115,116,62,79,123,134,216,266,266,270,161,157,138,97,72,104,124,103,78,105,84,64,84,50,42,43,27,36,28,18,18,6,5,3,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
77 - число инструментов
3554 - число обезличенных сделок
далее количество сделок в интервале  запаздывания с шагом 1 секунда
79  - в интервале    запаздывания  до 1 секунды
90 - в интервале   запаздывания  от 1 до 2 секунд
89 -в интервале    запаздывания  от 2 до 3 секунд
Кто сможет объяснить необъяснимое?
 
Цитата
Даниил Волошин написал:
Цитата
nikolz написал:
Ау, разработчики!
Можете объяснить?

Добрый день,

Назвать конкретную причину такого распределения в Вашей выборке без конкретных примеров и участия брокера не удастся. В данной ситуации замешано большое количество неопределённостей: эпизодические сетевые задержки, ситуативные задержки на сервере в расчете и обработке сделок, возможные задержки в обработке поступающей информации на Вашем ПК, задержки в трансляции данных из ТС на сервер QUIK и из сервера на терминал и т.д.

Для того, чтобы можно было анализировать большие задержки поступления обезличенных сделок необходимы конкретные примеры. Например зафиксировать конкретные номера сделок с временем их исполнения и временем получения их терминалом, далее приложить эти данные и архив терминала сделанный в момент проявления задержек к Вашему обращению в техническую поддержку Вашего брокера, в котором попросить помочь в выяснении причин таких задержек и в случае, если брокер не сможет помочь по данному вопросу, то инициировать его обращение к нам для совместного анализа данной ситуации.
примерно такое же можно наблюдать и на вашем демо сервере.
относительно задержек в сети и на компьютере не логично.
В сети задержка 30 мс, а на графике задержка десятки секунд
Ядро процессора загружено примерно на 10%
--------------
Возможно не знаете,   но недавно я делал тест на скорость выставления снятие заявок на вашем демо сервере. Полагаю я нго либо положил либо очень нагрузил так как меня отключили.
По тестам скорость выставления и снятия заявки без учета прохождения по сети составляет порядка 10-100 мкс.
-------------------------
Если у Вас есть возможность, то сделайте подобный тест и покажите результат.
--------------------------
Если покажете, что у вас задержка прихода обезличенной сделки через колбек onAllTrade  в пределах разумного, то вопрос будет закрыт.
--------------------
Я мог бы повторить Ваш тест, так как у сбербанка постоянно какие-то глюки. Например вчера пропал предыдущий торговый день и не вогсстановлися.  
Кто сможет объяснить необъяснимое?
 
Ау, разработчики!
Можете объяснить?
Кто сможет объяснить необъяснимое?
 
Ув, разработчики
Просьба объяснить следующий феномен работы системы QUIK
-----------------------
На реальном рынке вычисляю функцию распределения запаздывания времени прихода обезличенных сделок  в терминал QUIK на моем компе с сервера брокера сбербанк.
----------------------
Алгоритм расчета следующий
Вычисляем разницу текущего времени компа и времени обезличенной сделки и в добавляем 1 в ячейку массива с индексом равным разности.
В результата по  24 000 обезличенных сделок
получаем следующий график распределения запаздывания


Что получилось:
80% пришло с задержкой не более 1 секунды  это при пинге до сервера 0.03 сек.
12% с задержкой от 1 до 2 секунд
8% с задержкой более 2 секунд
1% с задержкой 17 секунд
0.5% с задержкой 30 секунд
---------------------
Что не так c сервером QUIK у брокера Сбербанк.
Выгрузка библиотек
 
Цитата
Kalmar написал:
Цитата
paluke написал:
 https://github.com/lua/lua/blob/master/loadlib.c#L20  4
А ее ктото вызвал?

Цитата
paluke написал:
Ну и про выгрузку выше   https://forum.quik.ru/messages/forum10/message37303/topic4425/#message37303  
Нет желания проводить эксперименты.

К тому же, я незнаю как работает вся эту луашная магия:

Цитата
function unrequire(m)
 package.loaded[m] = nil
 _G[m] = nil
end
Я вижу тут зануление таблиц.
Приводит ли это к выгрузке модулей - неизвестно.
Для этого не надо знать лушную магию .  Достаточно знать Сишную и
назначение функции DllMain.
----------------------------------
Но, боже упаси Вас, подумать что я Вас заставляю что-то изучать или проводить эксперименты.
Не утруждайте себя.
Пишите на форум жалобы.
Время потратите столько-же, но зато не будете себя утруждать.
Какая кодировка используются в Lua?
 
и еще..
для отладки dll для lua советую использовать SciTe (редактор текста на Lua с встроенным компилятором )
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
Если имелось ввиду заменить MessageBox  на MessageBoxA, так я так уже пробовал. По умолчанию да юникод в свойствах проекта и функция из макроса MessageBox подставляется MessageBoxW, я это знаю. Замена ничего не меняет абсолютно. MessageBox, что один, что другой вызываются из оконной процедуры у меня.
какой IDE используете?
Могу посоветовать для написания dll для Lua(QUIK) использовать Pelles C.
Очень хороший, простой в настройках, быстрый по сравнению с Visual Studio .
Выгрузка библиотек
 
Цитата
Alexander написал:
Попробую поднять данную тему вновь. Вобщем всё что выше написано - не работает Библиотека не выгружается!. Библиотека на C++. Выше писали, что типа если на чистом C++ то выгружается нормально. Не выгружается. Есть ли ещё какой способ выгрузить свою же DLL, которую Lua выгружать почему-то не хочет. Странное вообще какое-то поведение Lua. Скрипт отработал, библиотека - осталась. Функций в Lua для выгрузки не нашёл, что тоже довольно таки странно. Загружать значит можно, выгружать нет. Приходится постоянно перезагружать QUIK, чтобы удалить файл DLL, поскольку система не даёт его удалить, пока библиотека используется Lua. А удалять файл надо, чтобы после перекомпиляции DLL, новый DLL-файл записать на место  того, что надо удалить. Это сильно напрягает поскольку сам QUIK грузится не быстро. Сталкивался кто с таким? Как ещё можно решить пролему? Ведь библиотека же чисто моя, зачем она вообще удерживается Lua - не понятно. Закончился скрипт без ошибок - освободи, но нет. Уж не знаю как решить, думаю уже как-то искать ID библиотеки, ну или там хэндл какой и выгружать отдельно программой через API винды.
А причем здесь скрипт?  
Скрипт - это даже не программа, а все лишь байткод для луа машины.
Вспомните, когда dll выгружается.
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
Тут я кажется кое-что пряснил для себя. Вы, видимо используете этот подход:  https://forum.quik.ru/forum10/topic7971/ , тем более сами писали. Я правильно понял? Я использую этот подход:  https://forum.quik.ru/forum10/topic7971/
Хотелось бы решить задачу в своём подходе.
У меня есть dll на основе API C for Lua  
Результат будет такой же.
Просто сделайте как я Вам написал и увидите результат.
Либо измените опции в компиляторе
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
nikolz , у Вас что за функции nkcf.defF и rfs ? Какой их код, что они вызывают API винды? И Вы их вызываете прямо из скрипта, а я API прямо из DLL на C.
Это мой аналог библиотеки FFI,,
Эти функции позволяют вызывать в луа функции из dll, у которых интерфейс C.
любые функции из системных библиотек и сторонних dll
нет надобности городить что-то на API C for Lua.
Я об это на форуме уже писал.
-------------------------
правда я встроил LuaJIT в QUIK и могу использовать и FFI.
Тоже об этом писал на форуме.
Какая кодировка используются в Lua?
 
В луа однобайтовая кодировка
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
Аааа, я ещё что-то сразу то не приметил.  nikolz , Вы  на скрине показываете окно сообщений самого квика. Мои скрипты в это окно пишут по-русски нормально. Я писал не про это окно. У меня DLL. Скрипт вызывает её функции. Эти функции например вызывают MessageBox виндовую для вызова окна сообщенй винды с русским текстом. И вот оно то пишет не по-русски. Вот в этом проблема. А с простым message в скрипте проблем нет - сохраняю с русскими сообщениями как ANSI и проблем нет. Вобщем сама винда перестаёт по-русски писать в своём же сообщении, хотя если вызывать  не из библиотеки DLL под QUIK, а просто из программы под винду, то пишет по-русски как положено. И ещё. Из DLL в этом окне только само сообщение абракадаброй выводится, а вот кнопки "Да", "Нет" - они нормально по-русски подписаны.
У Вас по умолчанию подставляется  MessageBoxW
а надо прописать явно  MessageBoxA
----------------------
Вот ваш вариант с   MessageBoxW


а это с  MessageBoxA

 
Какая кодировка используются в Lua?
 
 
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
Аааа, я ещё что-то сразу то не приметил.  nikolz , Вы  на скрине показываете окно сообщений самого квика. Мои скрипты в это окно пишут по-русски нормально. Я писал не про это окно. У меня DLL. Скрипт вызывает её функции. Эти функции например вызывают MessageBox виндовую для вызова окна сообщенй винды с русским текстом. И вот оно то пишет не по-русски. Вот в этом проблема. А с простым message в скрипте проблем нет - сохраняю с русскими сообщениями как ANSI и проблем нет. Вобщем сама винда перестаёт по-русски писать в своём же сообщении, хотя если вызывать  не из библиотеки DLL под QUIK, а просто из программы под винду, то пишет по-русски как положено. И ещё. Из DLL в этом окне только само сообщение абракадаброй выводится, а вот кнопки "Да", "Нет" - они нормально по-русски подписаны.
попробуйте вызвать MessageBoxA
Net error "Удалённый хост принудительно разорвал существующее подключение", Такая ошибка ,как правило, возникает ближе к концу торгов.Подключиться после этой ошибки невозможно в этот день. На пк установлено ещё 2 квика,они при этом работают нормально. Подключение через USB-модем
 
Цитата
NPlay написал:
Причем если подключаешься по wi-fi (Intel® Wi-Fi 6 AX200 160MHz)он встроен в материнскую плату а сетевую карту отключаешь то никаких проблем, тут же логинится и работает.
На самом деле Вы все уже рассказали и что делать примерно понятно.
Но полагаю, что знаете сами.
Успехов в творчестве.
Net error "Удалённый хост принудительно разорвал существующее подключение", Такая ошибка ,как правило, возникает ближе к концу торгов.Подключиться после этой ошибки невозможно в этот день. На пк установлено ещё 2 квика,они при этом работают нормально. Подключение через USB-модем
 
Цитата
NPlay написал:
Цитата
nikolz написал:
 
Цитата
NPlay  написал:
Автор тебе удалось решить проблему? У меня такие же симптомы при логине в квик происходит разрыв локального соединения и сеть отключается, брандмаузер, антивирь, все отрублено, папка квик в исключениях. Проблема возникает исключительно при коннекте с квиком! сетевая карта I-225v мат плата asus 550b-e gaming. Мучаюсь уже несколько месяцев, так и не смог победить. 1 из 10-15 раз все таки удается залогинится на сервер квика, но при этом приходится включать/выключать сетевое подключение.
 сделайте пинг до сервера брокера (в квике есть IP адрес сервера)
Если серверов несколько то попробуйте подключится к другому.
да нет никаких потерь, вообще, никаких, проблема исключительно при коннекте квика 10.0.1.18 на сервер брокера( рабочий у них только один (открытие). ни переустановка квика, ни переустановка винды(10) не помогает, все обновления, драйвера на сетевую свежие.

спасибо что почистить кулер не советуете, а то рукалицо.
у вас болезнь другая, поэтому кулер чистить бесполезно
Net error "Удалённый хост принудительно разорвал существующее подключение", Такая ошибка ,как правило, возникает ближе к концу торгов.Подключиться после этой ошибки невозможно в этот день. На пк установлено ещё 2 квика,они при этом работают нормально. Подключение через USB-модем
 
Цитата
NPlay написал:
Автор тебе удалось решить проблему? У меня такие же симптомы при логине в квик происходит разрыв локального соединения и сеть отключается, брандмаузер, антивирь, все отрублено, папка квик в исключениях. Проблема возникает исключительно при коннекте с квиком! сетевая карта I-225v мат плата asus 550b-e gaming. Мучаюсь уже несколько месяцев, так и не смог победить. 1 из 10-15 раз все таки удается залогинится на сервер квика, но при этом приходится включать/выключать сетевое подключение.
сделайте пинг до сервера брокера (в квике есть IP адрес сервера)
Если серверов несколько то попробуйте подключится к другому.
Какая кодировка используются в Lua?
 
Цитата
Alexander написал:
За столько времени так никто и не ответил. Поддержка может хоть что-нибудь подсказать в решении проблемы? Мой вывод : в контексте толи потока QUIK, толь в Lua, локаль меняется с ru-Ru на локаль C, а в ней видимо русских букв вообще нету. Поэтому хоть что ты пиши, хоть кодируй текст - всё равно толку не будет, так как его попросту в чарактер сет(кодировке) нет как такового. Но почему не получается сначала  сохранить локаль C, потом установить родную локаль, вывести текст, потом локаь C вернуть обратно - не пойму.
никогда не было проблемы с русскими буквами. Полагаю кодировка, которая в системе установлена.
 
Запаздывание свечей. Что не так.?
 
Ув.разработчики
Просьба пояснить причину систематического запаздывания свечей  в следующем тесте.
------------------------
Тест проводится на реальных торгах. Брокер сбербанк
-------------------
Были выбраны два инструмента SBER и IRAO
Новая свеча  выявляется по изменению числа свечей в колбеке  источника данных  для 1 минутных свечей.
Ниже приведены результаты теста
а также график запаздывания прихода свечи
Код
66182,Fri Apr 14 22:04:10 2023,SBER,HMS1=220400.0,Oi=222.19,Vi=8.0
66183,Fri Apr 14 22:05:04 2023,SBER,HMS1=220500.0,Oi=222.19,Vi=2.0
3638,Fri Apr 14 22:05:19 2023,IRAO,HMS1=220500.0,Oi=3.9,Vi=3.0
66184,Fri Apr 14 22:06:02 2023,SBER,HMS1=220600.0,Oi=222.13,Vi=1019.0
3639,Fri Apr 14 22:06:22 2023,IRAO,HMS1=220600.0,Oi=3.9,Vi=13.0
66185,Fri Apr 14 22:07:09 2023,SBER,HMS1=220700.0,Oi=222.12,Vi=55.0
3640,Fri Apr 14 22:07:44 2023,IRAO,HMS1=220700.0,Oi=3.9,Vi=1.0
66186,Fri Apr 14 22:08:01 2023,SBER,HMS1=220800.0,Oi=222.1,Vi=232.0
3641,Fri Apr 14 22:08:09 2023,IRAO,HMS1=220800.0,Oi=3.9,Vi=25.0
66187,Fri Apr 14 22:09:01 2023,SBER,HMS1=220900.0,Oi=222.11,Vi=30.0
3642,Fri Apr 14 22:09:06 2023,IRAO,HMS1=220900.0,Oi=3.8995,Vi=10.0
66188,Fri Apr 14 22:10:01 2023,SBER,HMS1=221000.0,Oi=222.1,Vi=113.0
66189,Fri Apr 14 22:11:04 2023,SBER,HMS1=221100.0,Oi=222.1,Vi=25.0
3643,Fri Apr 14 22:11:53 2023,IRAO,HMS1=221100.0,Oi=3.901,Vi=1.0
66190,Fri Apr 14 22:12:14 2023,SBER,HMS1=221200.0,Oi=222.09,Vi=2144.0
66191,Fri Apr 14 22:13:04 2023,SBER,HMS1=221300.0,Oi=222.14,Vi=125.0
3644,Fri Apr 14 22:13:12 2023,IRAO,HMS1=221300.0,Oi=3.901,Vi=1.0
66192,Fri Apr 14 22:14:02 2023,SBER,HMS1=221400.0,Oi=222.16,Vi=1125.0
3645,Fri Apr 14 22:14:25 2023,IRAO,HMS1=221400.0,Oi=3.902,Vi=100.0
66193,Fri Apr 14 22:15:04 2023,SBER,HMS1=221500.0,Oi=222.23,Vi=2.0
3646,Fri Apr 14 22:15:25 2023,IRAO,HMS1=221500.0,Oi=3.9025,Vi=1.0
66194,Fri Apr 14 22:16:04 2023,SBER,HMS1=221600.0,Oi=222.23,Vi=595.0
3647,Fri Apr 14 22:16:21 2023,IRAO,HMS1=221600.0,Oi=3.901,Vi=1.0
66195,Fri Apr 14 22:17:05 2023,SBER,HMS1=221700.0,Oi=222.21,Vi=2.0
66196,Fri Apr 14 22:18:06 2023,SBER,HMS1=221800.0,Oi=222.15,Vi=1.0
66197,Fri Apr 14 22:19:05 2023,SBER,HMS1=221900.0,Oi=222.16,Vi=5.0
3648,Fri Apr 14 22:19:38 2023,IRAO,HMS1=221900.0,Oi=3.9025,Vi=29.0
66198,Fri Apr 14 22:20:08 2023,SBER,HMS1=222000.0,Oi=222.09,Vi=36.0
3649,Fri Apr 14 22:20:19 2023,IRAO,HMS1=222000.0,Oi=3.9035,Vi=30.0
66199,Fri Apr 14 22:21:05 2023,SBER,HMS1=222100.0,Oi=222.1,Vi=2.0
3650,Fri Apr 14 22:21:29 2023,IRAO,HMS1=222100.0,Oi=3.904,Vi=34.0
66200,Fri Apr 14 22:22:05 2023,SBER,HMS1=222200.0,Oi=222.08,Vi=5.0
3651,Fri Apr 14 22:22:28 2023,IRAO,HMS1=222200.0,Oi=3.9015,Vi=1.0
66201,Fri Apr 14 22:23:10 2023,SBER,HMS1=222300.0,Oi=222.07,Vi=10.0
3652,Fri Apr 14 22:23:18 2023,IRAO,HMS1=222300.0,Oi=3.901,Vi=1.0
66202,Fri Apr 14 22:24:03 2023,SBER,HMS1=222400.0,Oi=222.14,Vi=14.0
3653,Fri Apr 14 22:24:30 2023,IRAO,HMS1=222400.0,Oi=3.901,Vi=85.0
66203,Fri Apr 14 22:25:02 2023,SBER,HMS1=222500.0,Oi=222.16,Vi=1.0
3654,Fri Apr 14 22:25:31 2023,IRAO,HMS1=222500.0,Oi=3.9005,Vi=5.0
66204,Fri Apr 14 22:26:05 2023,SBER,HMS1=222600.0,Oi=222.15,Vi=2.0
3655,Fri Apr 14 22:26:21 2023,IRAO,HMS1=222600.0,Oi=3.9005,Vi=20.0
66205,Fri Apr 14 22:27:03 2023,SBER,HMS1=222700.0,Oi=222.18,Vi=12.0
3656,Fri Apr 14 22:27:11 2023,IRAO,HMS1=222700.0,Oi=3.9005,Vi=89.0
3657,Fri Apr 14 22:28:14 2023,IRAO,HMS1=222800.0,Oi=3.9025,Vi=3.0
66206,Fri Apr 14 22:28:14 2023,SBER,HMS1=222800.0,Oi=222.18,Vi=10.0
66207,Fri Apr 14 22:29:03 2023,SBER,HMS1=222900.0,Oi=222.18,Vi=5.0
3658,Fri Apr 14 22:29:33 2023,IRAO,HMS1=222900.0,Oi=3.9025,Vi=15.0
66208,Fri Apr 14 22:30:05 2023,SBER,HMS1=223000.0,Oi=222.17,Vi=1.0
3659,Fri Apr 14 22:30:29 2023,IRAO,HMS1=223000.0,Oi=3.9025,Vi=1.0
66209,Fri Apr 14 22:31:03 2023,SBER,HMS1=223100.0,Oi=222.18,Vi=1.0
3660,Fri Apr 14 22:31:41 2023,IRAO,HMS1=223100.0,Oi=3.903,Vi=1.0
66210,Fri Apr 14 22:32:02 2023,SBER,HMS1=223200.0,Oi=222.18,Vi=307.0
66211,Fri Apr 14 22:33:06 2023,SBER,HMS1=223300.0,Oi=222.2,Vi=3.0
3661,Fri Apr 14 22:33:26 2023,IRAO,HMS1=223300.0,Oi=3.903,Vi=1.0
66212,Fri Apr 14 22:34:06 2023,SBER,HMS1=223400.0,Oi=222.17,Vi=263.0
3662,Fri Apr 14 22:34:40 2023,IRAO,HMS1=223400.0,Oi=3.903,Vi=2.0
66213,Fri Apr 14 22:35:02 2023,SBER,HMS1=223500.0,Oi=222.17,Vi=5.0
3663,Fri Apr 14 22:35:18 2023,IRAO,HMS1=223500.0,Oi=3.903,Vi=1.0
66214,Fri Apr 14 22:36:02 2023,SBER,HMS1=223600.0,Oi=222.16,Vi=16.0
3664,Fri Apr 14 22:36:48 2023,IRAO,HMS1=223600.0,Oi=3.904,Vi=1.0
66215,Fri Apr 14 22:37:02 2023,SBER,HMS1=223700.0,Oi=222.12,Vi=90.0
3665,Fri Apr 14 22:37:19 2023,IRAO,HMS1=223700.0,Oi=3.904,Vi=1.0
66216,Fri Apr 14 22:38:16 2023,SBER,HMS1=223800.0,Oi=222.2,Vi=1.0
3666,Fri Apr 14 22:38:22 2023,IRAO,HMS1=223800.0,Oi=3.904,Vi=1.0
66217,Fri Apr 14 22:39:07 2023,SBER,HMS1=223900.0,Oi=222.21,Vi=39.0
3667,Fri Apr 14 22:39:29 2023,IRAO,HMS1=223900.0,Oi=3.904,Vi=3.0
66218,Fri Apr 14 22:40:04 2023,SBER,HMS1=224000.0,Oi=222.22,Vi=151.0
66219,Fri Apr 14 22:41:05 2023,SBER,HMS1=224100.0,Oi=222.22,Vi=40.0
3668,Fri Apr 14 22:41:07 2023,IRAO,HMS1=224100.0,Oi=3.905,Vi=1.0
66220,Fri Apr 14 22:42:03 2023,SBER,HMS1=224200.0,Oi=222.21,Vi=2.0
3669,Fri Apr 14 22:42:12 2023,IRAO,HMS1=224200.0,Oi=3.9035,Vi=3.0
3670,Fri Apr 14 22:43:02 2023,IRAO,HMS1=224300.0,Oi=3.905,Vi=1.0
66221,Fri Apr 14 22:43:02 2023,SBER,HMS1=224300.0,Oi=222.23,Vi=1200.0
66222,Fri Apr 14 22:44:01 2023,SBER,HMS1=224400.0,Oi=222.25,Vi=1.0
3671,Fri Apr 14 22:44:12 2023,IRAO,HMS1=224400.0,Oi=3.9035,Vi=1.0
66223,Fri Apr 14 22:45:03 2023,SBER,HMS1=224500.0,Oi=222.24,Vi=136.0
66224,Fri Apr 14 22:46:02 2023,SBER,HMS1=224600.0,Oi=222.24,Vi=5.0
3672,Fri Apr 14 22:46:15 2023,IRAO,HMS1=224600.0,Oi=3.905,Vi=100.0
66225,Fri Apr 14 22:47:06 2023,SBER,HMS1=224700.0,Oi=222.25,Vi=1.0
66226,Fri Apr 14 22:48:03 2023,SBER,HMS1=224800.0,Oi=222.26,Vi=1.0
3673,Fri Apr 14 22:48:04 2023,IRAO,HMS1=224800.0,Oi=3.9035,Vi=5.0
66227,Fri Apr 14 22:49:01 2023,SBER,HMS1=224900.0,Oi=222.27,Vi=1.0
3674,Fri Apr 14 22:49:37 2023,IRAO,HMS1=224900.0,Oi=3.904,Vi=3.0
66228,Fri Apr 14 22:50:03 2023,SBER,HMS1=225000.0,Oi=222.27,Vi=4.0
3675,Fri Apr 14 22:50:08 2023,IRAO,HMS1=225000.0,Oi=3.9045,Vi=25.0
3676,Fri Apr 14 22:51:09 2023,IRAO,HMS1=225100.0,Oi=3.905,Vi=10.0
66229,Fri Apr 14 22:51:09 2023,SBER,HMS1=225100.0,Oi=222.28,Vi=32.0
66230,Fri Apr 14 22:52:03 2023,SBER,HMS1=225200.0,Oi=222.28,Vi=32.0
3677,Fri Apr 14 22:53:02 2023,IRAO,HMS1=225300.0,Oi=3.905,Vi=1.0
66231,Fri Apr 14 22:53:04 2023,SBER,HMS1=225300.0,Oi=222.28,Vi=3.0
66232,Fri Apr 14 22:54:11 2023,SBER,HMS1=225400.0,Oi=222.28,Vi=500.0
66233,Fri Apr 14 22:55:03 2023,SBER,HMS1=225500.0,Oi=222.26,Vi=90.0
3678,Fri Apr 14 22:55:47 2023,IRAO,HMS1=225500.0,Oi=3.905,Vi=4.0
66234,Fri Apr 14 22:56:06 2023,SBER,HMS1=225600.0,Oi=222.25,Vi=4.0
3679,Fri Apr 14 22:56:34 2023,IRAO,HMS1=225600.0,Oi=3.905,Vi=1.0
66235,Fri Apr 14 22:57:07 2023,SBER,HMS1=225700.0,Oi=222.27,Vi=36.0
3680,Fri Apr 14 22:57:11 2023,IRAO,HMS1=225700.0,Oi=3.905,Vi=1.0
3681,Fri Apr 14 22:58:06 2023,IRAO,HMS1=225800.0,Oi=3.905,Vi=1.0
66236,Fri Apr 14 22:58:06 2023,SBER,HMS1=225800.0,Oi=222.27,Vi=15.0
66237,Fri Apr 14 22:59:09 2023,SBER,HMS1=225900.0,Oi=222.28,Vi=4.0
3682,Fri Apr 14 22:59:44 2023,IRAO,HMS1=225900.0,Oi=3.905,Vi=7.0
3683,Fri Apr 14 23:00:05 2023,IRAO,HMS1=230000.0,Oi=3.905,Vi=4.0
66238,Fri Apr 14 23:00:10 2023,SBER,HMS1=230000.0,Oi=222.3,Vi=1.0
66239,Fri Apr 14 23:01:04 2023,SBER,HMS1=230100.0,Oi=222.35,Vi=4.0
3684,Fri Apr 14 23:01:07 2023,IRAO,HMS1=230100.0,Oi=3.905,Vi=2.0
66240,Fri Apr 14 23:02:01 2023,SBER,HMS1=230200.0,Oi=222.35,Vi=1.0
3685,Fri Apr 14 23:02:04 2023,IRAO,HMS1=230200.0,Oi=3.905,Vi=314.0
66241,Fri Apr 14 23:03:03 2023,SBER,HMS1=230300.0,Oi=222.35,Vi=1.0
3686,Fri Apr 14 23:03:11 2023,IRAO,HMS1=230300.0,Oi=3.905,Vi=1.0
3687,Fri Apr 14 23:04:03 2023,IRAO,HMS1=230400.0,Oi=3.905,Vi=11.0
66242,Fri Apr 14 23:04:05 2023,SBER,HMS1=230400.0,Oi=222.35,Vi=128.0
66243,Fri Apr 14 23:05:05 2023,SBER,HMS1=230500.0,Oi=222.34,Vi=5.0
3688,Fri Apr 14 23:05:12 2023,IRAO,HMS1=230500.0,Oi=3.905,Vi=35.0
3689,Fri Apr 14 23:06:01 2023,IRAO,HMS1=230600.0,Oi=3.9055,Vi=3.0
66244,Fri Apr 14 23:06:02 2023,SBER,HMS1=230600.0,Oi=222.38,Vi=52.0
66245,Fri Apr 14 23:07:06 2023,SBER,HMS1=230700.0,Oi=222.36,Vi=27.0
3690,Fri Apr 14 23:07:18 2023,IRAO,HMS1=230700.0,Oi=3.907,Vi=40.0
3691,Fri Apr 14 23:08:01 2023,IRAO,HMS1=230800.0,Oi=3.908,Vi=15.0
66246,Fri Apr 14 23:08:06 2023,SBER,HMS1=230800.0,Oi=222.35,Vi=11.0
66247,Fri Apr 14 23:09:02 2023,SBER,HMS1=230900.0,Oi=222.34,Vi=3.0
3692,Fri Apr 14 23:09:07 2023,IRAO,HMS1=230900.0,Oi=3.9095,Vi=1.0
3693,Fri Apr 14 23:10:02 2023,IRAO,HMS1=231000.0,Oi=3.9075,Vi=91.0
66248,Fri Apr 14 23:10:06 2023,SBER,HMS1=231000.0,Oi=222.31,Vi=50.0
66249,Fri Apr 14 23:11:03 2023,SBER,HMS1=231100.0,Oi=222.3,Vi=392.0
3694,Fri Apr 14 23:11:22 2023,IRAO,HMS1=231100.0,Oi=3.9075,Vi=726.0
66250,Fri Apr 14 23:12:07 2023,SBER,HMS1=231200.0,Oi=222.24,Vi=92.0
3695,Fri Apr 14 23:12:12 2023,IRAO,HMS1=231200.0,Oi=3.909,Vi=15.0
3696,Fri Apr 14 23:13:03 2023,IRAO,HMS1=231300.0,Oi=3.907,Vi=1.0
66251,Fri Apr 14 23:13:06 2023,SBER,HMS1=231300.0,Oi=222.22,Vi=100.0
66252,Fri Apr 14 23:14:05 2023,SBER,HMS1=231400.0,Oi=222.17,Vi=15.0
3697,Fri Apr 14 23:14:11 2023,IRAO,HMS1=231400.0,Oi=3.9075,Vi=9.0
3698,Fri Apr 14 23:15:02 2023,IRAO,HMS1=231500.0,Oi=3.9085,Vi=50.0
66253,Fri Apr 14 23:15:02 2023,SBER,HMS1=231500.0,Oi=222.13,Vi=129.0
3699,Fri Apr 14 23:16:01 2023,IRAO,HMS1=231600.0,Oi=3.9085,Vi=1.0
66254,Fri Apr 14 23:16:04 2023,SBER,HMS1=231600.0,Oi=222.12,Vi=5.0
66255,Fri Apr 14 23:17:02 2023,SBER,HMS1=231700.0,Oi=222.12,Vi=7.0
3700,Fri Apr 14 23:17:25 2023,IRAO,HMS1=231700.0,Oi=3.9085,Vi=8.0
66256,Fri Apr 14 23:18:01 2023,SBER,HMS1=231800.0,Oi=222.1,Vi=5.0
3701,Fri Apr 14 23:18:08 2023,IRAO,HMS1=231800.0,Oi=3.9085,Vi=1.0
66257,Fri Apr 14 23:19:02 2023,SBER,HMS1=231900.0,Oi=222.16,Vi=2.0
3702,Fri Apr 14 23:19:29 2023,IRAO,HMS1=231900.0,Oi=3.9085,Vi=1.0
66258,Fri Apr 14 23:20:01 2023,SBER,HMS1=232000.0,Oi=222.17,Vi=3.0
3703,Fri Apr 14 23:20:12 2023,IRAO,HMS1=232000.0,Oi=3.9085,Vi=1.0
3704,Fri Apr 14 23:21:01 2023,IRAO,HMS1=232100.0,Oi=3.9085,Vi=1.0
66259,Fri Apr 14 23:21:01 2023,SBER,HMS1=232100.0,Oi=222.2,Vi=1.0
66260,Fri Apr 14 23:22:05 2023,SBER,HMS1=232200.0,Oi=222.19,Vi=47.0
3705,Fri Apr 14 23:22:17 2023,IRAO,HMS1=232200.0,Oi=3.9085,Vi=30.0
66261,Fri Apr 14 23:23:02 2023,SBER,HMS1=232300.0,Oi=222.2,Vi=11.0
3706,Fri Apr 14 23:23:04 2023,IRAO,HMS1=232300.0,Oi=3.9085,Vi=3.0
66262,Fri Apr 14 23:24:03 2023,SBER,HMS1=232400.0,Oi=222.18,Vi=95.0
3707,Fri Apr 14 23:24:12 2023,IRAO,HMS1=232400.0,Oi=3.9075,Vi=10.0
66263,Fri Apr 14 23:25:01 2023,SBER,HMS1=232500.0,Oi=222.18,Vi=15.0
3708,Fri Apr 14 23:25:05 2023,IRAO,HMS1=232500.0,Oi=3.9085,Vi=50.0
66264,Fri Apr 14 23:26:02 2023,SBER,HMS1=232600.0,Oi=222.18,Vi=1.0
3709,Fri Apr 14 23:26:04 2023,IRAO,HMS1=232600.0,Oi=3.9085,Vi=1.0
66265,Fri Apr 14 23:27:05 2023,SBER,HMS1=232700.0,Oi=222.18,Vi=30.0
3710,Fri Apr 14 23:27:09 2023,IRAO,HMS1=232700.0,Oi=3.9085,Vi=5.0
66266,Fri Apr 14 23:28:01 2023,SBER,HMS1=232800.0,Oi=222.16,Vi=1.0
3711,Fri Apr 14 23:28:17 2023,IRAO,HMS1=232800.0,Oi=3.9085,Vi=2.0
66267,Fri Apr 14 23:29:07 2023,SBER,HMS1=232900.0,Oi=222.18,Vi=100.0
3712,Fri Apr 14 23:29:19 2023,IRAO,HMS1=232900.0,Oi=3.908,Vi=6.0
66268,Fri Apr 14 23:30:01 2023,SBER,HMS1=233000.0,Oi=222.15,Vi=400.0
3713,Fri Apr 14 23:30:17 2023,IRAO,HMS1=233000.0,Oi=3.9075,Vi=3.0
66269,Fri Apr 14 23:31:05 2023,SBER,HMS1=233100.0,Oi=222.15,Vi=100.0
3714,Fri Apr 14 23:31:33 2023,IRAO,HMS1=233100.0,Oi=3.9085,Vi=31.0
66270,Fri Apr 14 23:32:03 2023,SBER,HMS1=233200.0,Oi=222.17,Vi=62.0
3715,Fri Apr 14 23:32:23 2023,IRAO,HMS1=233200.0,Oi=3.907,Vi=5.0
66271,Fri Apr 14 23:33:06 2023,SBER,HMS1=233300.0,Oi=222.14,Vi=2.0
66272,Fri Apr 14 23:34:04 2023,SBER,HMS1=233400.0,Oi=222.12,Vi=3.0
3716,Fri Apr 14 23:34:12 2023,IRAO,HMS1=233400.0,Oi=3.907,Vi=3.0
66273,Fri Apr 14 23:35:02 2023,SBER,HMS1=233500.0,Oi=222.11,Vi=251.0
3717,Fri Apr 14 23:35:18 2023,IRAO,HMS1=233500.0,Oi=3.908,Vi=160.0
66274,Fri Apr 14 23:36:02 2023,SBER,HMS1=233600.0,Oi=222.11,Vi=251.0
3718,Fri Apr 14 23:36:19 2023,IRAO,HMS1=233600.0,Oi=3.908,Vi=1.0
66275,Fri Apr 14 23:37:02 2023,SBER,HMS1=233700.0,Oi=222.1,Vi=427.0
3719,Fri Apr 14 23:37:11 2023,IRAO,HMS1=233700.0,Oi=3.9075,Vi=1.0
66276,Fri Apr 14 23:38:05 2023,SBER,HMS1=233800.0,Oi=222.1,Vi=3.0
3720,Fri Apr 14 23:38:08 2023,IRAO,HMS1=233800.0,Oi=3.904,Vi=760.0
66277,Fri Apr 14 23:39:01 2023,SBER,HMS1=233900.0,Oi=222.06,Vi=2.0
3721,Fri Apr 14 23:39:18 2023,IRAO,HMS1=233900.0,Oi=3.904,Vi=1.0
66278,Fri Apr 14 23:40:03 2023,SBER,HMS1=234000.0,Oi=222.07,Vi=48.0
3722,Fri Apr 14 23:40:16 2023,IRAO,HMS1=234000.0,Oi=3.904,Vi=2.0
66279,Fri Apr 14 23:41:02 2023,SBER,HMS1=234100.0,Oi=222.09,Vi=174.0
3723,Fri Apr 14 23:41:32 2023,IRAO,HMS1=234100.0,Oi=3.904,Vi=1.0
66280,Fri Apr 14 23:42:03 2023,SBER,HMS1=234200.0,Oi=222.11,Vi=112.0
3724,Fri Apr 14 23:42:16 2023,IRAO,HMS1=234200.0,Oi=3.903,Vi=2.0
66281,Fri Apr 14 23:43:02 2023,SBER,HMS1=234300.0,Oi=222.13,Vi=54.0
3725,Fri Apr 14 23:43:11 2023,IRAO,HMS1=234300.0,Oi=3.904,Vi=7.0
66282,Fri Apr 14 23:44:01 2023,SBER,HMS1=234400.0,Oi=222.1,Vi=31.0
3726,Fri Apr 14 23:44:31 2023,IRAO,HMS1=234400.0,Oi=3.904,Vi=3.0
3727,Fri Apr 14 23:45:05 2023,IRAO,HMS1=234500.0,Oi=3.906,Vi=5.0
66283,Fri Apr 14 23:45:10 2023,SBER,HMS1=234500.0,Oi=222.09,Vi=17.0
66284,Fri Apr 14 23:46:01 2023,SBER,HMS1=234600.0,Oi=222.07,Vi=10.0
3728,Fri Apr 14 23:46:16 2023,IRAO,HMS1=234600.0,Oi=3.903,Vi=205.0
3729,Fri Apr 14 23:47:02 2023,IRAO,HMS1=234700.0,Oi=3.903,Vi=2.0
66285,Fri Apr 14 23:47:02 2023,SBER,HMS1=234700.0,Oi=222.05,Vi=1.0
66286,Fri Apr 14 23:48:03 2023,SBER,HMS1=234800.0,Oi=222.06,Vi=20.0
3730,Fri Apr 14 23:48:12 2023,IRAO,HMS1=234800.0,Oi=3.9025,Vi=1193.0
66287,Fri Apr 14 23:49:04 2023,SBER,HMS1=234900.0,Oi=221.97,Vi=35.0
3731,Fri Apr 14 23:49:07 2023,IRAO,HMS1=234900.0,Oi=3.902,Vi=10.0
3732,Fri Apr 14 23:50:02 2023,IRAO,HMS1=235000.0,Oi=3.903,Vi=5.0
66288,Fri Apr 14 23:50:03 2023,SBER,HMS1=235000.0,Oi=221.97,Vi=117.0
66289,Fri Apr 14 23:51:03 2023,SBER,HMS1=235100.0,Oi=222.01,Vi=1.0
3733,Fri Apr 14 23:51:45 2023,IRAO,HMS1=235100.0,Oi=3.9025,Vi=1.0
66290,Fri Apr 14 23:52:07 2023,SBER,HMS1=235200.0,Oi=222.0,Vi=121.0
3734,Fri Apr 14 23:52:12 2023,IRAO,HMS1=235200.0,Oi=3.903,Vi=6.0
66291,Fri Apr 14 23:53:03 2023,SBER,HMS1=235300.0,Oi=222.0,Vi=47.0
3735,Fri Apr 14 23:53:45 2023,IRAO,HMS1=235300.0,Oi=3.9025,Vi=1.0
3736,Fri Apr 14 23:54:02 2023,IRAO,HMS1=235400.0,Oi=3.903,Vi=41.0
66292,Fri Apr 14 23:54:04 2023,SBER,HMS1=235400.0,Oi=222.0,Vi=14.0
66293,Fri Apr 14 23:55:07 2023,SBER,HMS1=235500.0,Oi=221.96,Vi=119.0
3737,Fri Apr 14 23:55:29 2023,IRAO,HMS1=235500.0,Oi=3.9025,Vi=8.0
66294,Fri Apr 14 23:56:03 2023,SBER,HMS1=235600.0,Oi=221.92,Vi=180.0
3738,Fri Apr 14 23:56:24 2023,IRAO,HMS1=235600.0,Oi=3.9025,Vi=8.0
66295,Fri Apr 14 23:57:02 2023,SBER,HMS1=235700.0,Oi=221.95,Vi=43.0
3739,Fri Apr 14 23:57:11 2023,IRAO,HMS1=235700.0,Oi=3.9025,Vi=1.0
66296,Fri Apr 14 23:58:01 2023,SBER,HMS1=235800.0,Oi=221.93,Vi=30.0
3740,Fri Apr 14 23:58:18 2023,IRAO,HMS1=235800.0,Oi=3.906,Vi=2.0
66297,Fri Apr 14 23:59:01 2023,SBER,HMS1=235900.0,Oi=221.98,Vi=6.0
3741,Fri Apr 14 23:59:13 2023,IRAO,HMS1=235900.0,Oi=3.9025,Vi=1.0
66298,Sat Apr 15 00:00:06 2023,SBER,HMS1=240000.0,Oi=221.95,Vi=50.0
3742,Sat Apr 15 00:00:28 2023,IRAO,HMS1=240000.0,Oi=3.9045,Vi=1.0
3743,Sat Apr 15 00:01:02 2023,IRAO,HMS1=240100.0,Oi=3.904,Vi=840.0
66299,Sat Apr 15 00:01:02 2023,SBER,HMS1=240100.0,Oi=221.99,Vi=300.0
66300,Sat Apr 15 00:02:04 2023,SBER,HMS1=240200.0,Oi=221.96,Vi=10.0
66301,Sat Apr 15 00:03:07 2023,SBER,HMS1=240300.0,Oi=222.02,Vi=100.0
3744,Sat Apr 15 00:03:51 2023,IRAO,HMS1=240300.0,Oi=3.9065,Vi=62.0
66302,Sat Apr 15 00:04:07 2023,SBER,HMS1=240400.0,Oi=222.0,Vi=2.0
3745,Sat Apr 15 00:04:33 2023,IRAO,HMS1=240400.0,Oi=3.907,Vi=2.0
66303,Sat Apr 15 00:05:12 2023,SBER,HMS1=240500.0,Oi=222.0,Vi=111.0
3746,Sat Apr 15 00:05:14 2023,IRAO,HMS1=240500.0,Oi=3.9045,Vi=7.0
66304,Sat Apr 15 00:06:01 2023,SBER,HMS1=240600.0,Oi=222.0,Vi=54.0
66305,Sat Apr 15 00:07:01 2023,SBER,HMS1=240700.0,Oi=222.0,Vi=50.0
66306,Sat Apr 15 00:08:02 2023,SBER,HMS1=240800.0,Oi=222.0,Vi=1.0
3747,Sat Apr 15 00:08:08 2023,IRAO,HMS1=240800.0,Oi=3.905,Vi=61.0
66307,Sat Apr 15 00:09:01 2023,SBER,HMS1=240900.0,Oi=221.99,Vi=9.0
3748,Sat Apr 15 00:09:11 2023,IRAO,HMS1=240900.0,Oi=3.907,Vi=2.0
66308,Sat Apr 15 00:10:01 2023,SBER,HMS1=241000.0,Oi=221.98,Vi=500.0
3749,Sat Apr 15 00:10:04 2023,IRAO,HMS1=241000.0,Oi=3.905,Vi=2.0
66309,Sat Apr 15 00:11:02 2023,SBER,HMS1=241100.0,Oi=222.0,Vi=100.0
3750,Sat Apr 15 00:12:00 2023,IRAO,HMS1=241100.0,Oi=3.907,Vi=1.0
66310,Sat Apr 15 00:12:05 2023,SBER,HMS1=241200.0,Oi=221.97,Vi=1.0
3751,Sat Apr 15 00:12:16 2023,IRAO,HMS1=241200.0,Oi=3.907,Vi=1.0
66311,Sat Apr 15 00:13:03 2023,SBER,HMS1=241300.0,Oi=221.97,Vi=15.0
3752,Sat Apr 15 00:13:07 2023,IRAO,HMS1=241300.0,Oi=3.9055,Vi=3.0
66312,Sat Apr 15 00:14:06 2023,SBER,HMS1=241400.0,Oi=221.99,Vi=1.0
3753,Sat Apr 15 00:14:07 2023,IRAO,HMS1=241400.0,Oi=3.907,Vi=1.0
66313,Sat Apr 15 00:15:02 2023,SBER,HMS1=241500.0,Oi=222.0,Vi=1.0
3754,Sat Apr 15 00:15:07 2023,IRAO,HMS1=241500.0,Oi=3.9065,Vi=120.0
66314,Sat Apr 15 00:16:03 2023,SBER,HMS1=241600.0,Oi=222.03,Vi=23.0
3755,Sat Apr 15 00:16:14 2023,IRAO,HMS1=241600.0,Oi=3.9055,Vi=14.0
66315,Sat Apr 15 00:17:07 2023,SBER,HMS1=241700.0,Oi=222.05,Vi=20.0
3756,Sat Apr 15 00:17:19 2023,IRAO,HMS1=241700.0,Oi=3.907,Vi=1.0
66316,Sat Apr 15 00:18:04 2023,SBER,HMS1=241800.0,Oi=221.98,Vi=14.0
3757,Sat Apr 15 00:18:07 2023,IRAO,HMS1=241800.0,Oi=3.9075,Vi=419.0
3758,Sat Apr 15 00:19:02 2023,IRAO,HMS1=241900.0,Oi=3.9075,Vi=760.0
66317,Sat Apr 15 00:19:06 2023,SBER,HMS1=241900.0,Oi=221.98,Vi=400.0
3759,Sat Apr 15 00:20:02 2023,IRAO,HMS1=242000.0,Oi=3.9065,Vi=10.0
66318,Sat Apr 15 00:20:03 2023,SBER,HMS1=242000.0,Oi=221.96,Vi=103.0
66319,Sat Apr 15 00:21:14 2023,SBER,HMS1=242100.0,Oi=221.97,Vi=200.0
66320,Sat Apr 15 00:22:06 2023,SBER,HMS1=242200.0,Oi=221.96,Vi=3.0
3760,Sat Apr 15 00:22:40 2023,IRAO,HMS1=242200.0,Oi=3.9075,Vi=11.0
66321,Sat Apr 15 00:23:06 2023,SBER,HMS1=242300.0,Oi=221.97,Vi=18.0
3761,Sat Apr 15 00:23:09 2023,IRAO,HMS1=242300.0,Oi=3.906,Vi=350.0
66322,Sat Apr 15 00:24:06 2023,SBER,HMS1=242400.0,Oi=221.96,Vi=50.0
3762,Sat Apr 15 00:24:26 2023,IRAO,HMS1=242400.0,Oi=3.9085,Vi=20.0
66323,Sat Apr 15 00:25:05 2023,SBER,HMS1=242500.0,Oi=221.93,Vi=96.0
3763,Sat Apr 15 00:25:14 2023,IRAO,HMS1=242500.0,Oi=3.908,Vi=1.0
66324,Sat Apr 15 00:26:02 2023,SBER,HMS1=242600.0,Oi=221.91,Vi=4.0
3764,Sat Apr 15 00:26:15 2023,IRAO,HMS1=242600.0,Oi=3.906,Vi=3.0
66325,Sat Apr 15 00:27:03 2023,SBER,HMS1=242700.0,Oi=221.91,Vi=70.0
3765,Sat Apr 15 00:27:10 2023,IRAO,HMS1=242700.0,Oi=3.906,Vi=50.0
66326,Sat Apr 15 00:28:02 2023,SBER,HMS1=242800.0,Oi=221.89,Vi=5116.0
3766,Sat Apr 15 00:28:24 2023,IRAO,HMS1=242800.0,Oi=3.907,Vi=25.0
66327,Sat Apr 15 00:29:04 2023,SBER,HMS1=242900.0,Oi=221.83,Vi=140.0
3767,Sat Apr 15 00:29:13 2023,IRAO,HMS1=242900.0,Oi=3.907,Vi=1.0
66328,Sat Apr 15 00:30:03 2023,SBER,HMS1=243000.0,Oi=221.82,Vi=26.0
3768,Sat Apr 15 00:30:29 2023,IRAO,HMS1=243000.0,Oi=3.907,Vi=3.0
66329,Sat Apr 15 00:31:01 2023,SBER,HMS1=243100.0,Oi=221.81,Vi=14996.0
3769,Sat Apr 15 00:31:05 2023,IRAO,HMS1=243100.0,Oi=3.907,Vi=5.0


Из графиков следует,
что максимальное запаздывание прихода 1 минутной свечи SBER  с сервера брокера  составляет  16 секунд, в среднем 5 секунд.
---------------------------------
максимальное запаздывание свечи IRAO составляет 59 секунд. в среднем 25 секунд.
------------------------------
При этом пинг до сервера не более 0.03 секунды.
-----------------------------
Можете объяснить такое большое значение запаздывания даже для ликвидного инструмента SBER?
Что не так?
Запаздывание свечей. Что не так.?
 
Рано обрадовался.
Теперь принимаю свечи через колбек, но запаздывание все то же.
Вот результат на демо сервере. Вывод лишь 1 мин свечей
Код
3638,Fri Apr 14 19:57:07 2023,GLDRUB_TOM,HMS1=195700.0
262,Fri Apr 14 19:57:08 2023,GTRK,HMS1=195700.0
505,Fri Apr 14 19:57:08 2023,VRSB,HMS1=195700.0
786,Fri Apr 14 19:57:08 2023,MOEX,HMS1=195700.0
823,Fri Apr 14 19:57:08 2023,VSMO,HMS1=195700.0
814,Fri Apr 14 19:57:08 2023,CHMF,HMS1=195700.0
693,Fri Apr 14 19:57:09 2023,AFKS,HMS1=195700.0
815,Fri Apr 14 19:57:09 2023,RUAL,HMS1=195700.0
765,Fri Apr 14 19:57:12 2023,POSI,HMS1=195700.0
724,Fri Apr 14 19:57:13 2023,RASP,HMS1=195700.0
756,Fri Apr 14 19:57:13 2023,SBERP,HMS1=195700.0
890,Fri Apr 14 19:57:13 2023,SBER,HMS1=195700.0
840,Fri Apr 14 19:57:13 2023,ROSN,HMS1=195700.0
867,Fri Apr 14 19:57:14 2023,TRMK,HMS1=195700.0
762,Fri Apr 14 19:57:16 2023,TATN,HMS1=195700.0
790,Fri Apr 14 19:57:16 2023,POLY,HMS1=195700.0
868,Fri Apr 14 19:57:17 2023,FLOT,HMS1=195700.0
870,Fri Apr 14 19:57:19 2023,NVTK,HMS1=195700.0
217,Fri Apr 14 19:57:21 2023,KRSB,HMS1=195700.0
360,Fri Apr 14 19:57:23 2023,ROLO,HMS1=195700.0
295,Fri Apr 14 19:57:23 2023,LSRG,HMS1=195700.0
729,Fri Apr 14 19:57:23 2023,MTSS,HMS1=195700.0
3502,Fri Apr 14 19:57:24 2023,HKDRUB_TOM,HMS1=195700.0
642,Fri Apr 14 19:57:26 2023,MRKC,HMS1=195700.0
145,Fri Apr 14 19:57:26 2023,KUZB,HMS1=195700.0
618,Fri Apr 14 19:57:26 2023,SELG,HMS1=195700.0
515,Fri Apr 14 19:57:26 2023,BELU,HMS1=195700.0
84,Fri Apr 14 19:57:27 2023,INGR,HMS1=195700.0
219,Fri Apr 14 19:57:28 2023,YKENP,HMS1=195700.0
367,Fri Apr 14 19:57:30 2023,MRKP,HMS1=195700.0
592,Fri Apr 14 19:57:30 2023,SFTL,HMS1=195700.0
416,Fri Apr 14 19:57:31 2023,FIVE,HMS1=195700.0
789,Fri Apr 14 19:57:31 2023,TCSG,HMS1=195700.0
687,Fri Apr 14 19:57:31 2023,SGZH,HMS1=195700.0
543,Fri Apr 14 19:57:34 2023,FEES,HMS1=195700.0
547,Fri Apr 14 19:57:36 2023,OGKB,HMS1=195700.0
462,Fri Apr 14 19:57:38 2023,CNTLP,HMS1=195700.0
680,Fri Apr 14 19:57:38 2023,KMAZ,HMS1=195700.0
420,Fri Apr 14 19:57:39 2023,LSNG,HMS1=195700.0
394,Fri Apr 14 19:57:40 2023,MVID,HMS1=195700.0
372,Fri Apr 14 19:57:41 2023,ENPG,HMS1=195100.0
211,Fri Apr 14 19:57:43 2023,MSTT,HMS1=195700.0
373,Fri Apr 14 19:57:43 2023,ENPG,HMS1=195700.0
475,Fri Apr 14 19:57:43 2023,RENI,HMS1=195700.0
644,Fri Apr 14 19:57:43 2023,SNGSP,HMS1=195700.0
575,Fri Apr 14 19:57:43 2023,ETLN,HMS1=195700.0
597,Fri Apr 14 19:57:44 2023,OZON,HMS1=195700.0
211,Fri Apr 14 19:57:45 2023,KZOS,HMS1=195700.0
653,Fri Apr 14 19:57:45 2023,IRAO,HMS1=195700.0
532,Fri Apr 14 19:57:45 2023,PIKK,HMS1=195700.0
384,Fri Apr 14 19:57:45 2023,RTKM,HMS1=195700.0
3706,Fri Apr 14 19:57:46 2023,CNYRUB_TOM,HMS1=195700.0
246,Fri Apr 14 19:57:48 2023,LENT,HMS1=195700.0
Запаздывание свечей. Что не так.?
 
Запаздывание осталось ,
но очевидно, причина другая -  свечи приходят пакетами.
Запаздывание свечей. Что не так.?
 
Цитата
Станислав написал:
Предположу, что процессор Ryzen, а компьютер вышел из гибернации.
Все гораздо проще оказалось.
Я инструменты брал из колбека onParam.
А там как известно идут срезы т е не все сделки.
Теперь все нормально (почти)  Первое число в строке - номер новой свечи данного инструмента
Код
3533,Fri Apr 14 19:12:00 2023s=,SRM3,HMS1=191200.0
3532,Fri Apr 14 19:12:00 2023s=,SiM3,HMS1=191200.0
3598,Fri Apr 14 19:12:00 2023s=,GLDRUB_TOM,HMS1=191200.0
402,Fri Apr 14 19:12:00 2023s=,GLTR,HMS1=191200.0
800,Fri Apr 14 19:12:00 2023s=,BSPB,HMS1=191200.0
845,Fri Apr 14 19:12:00 2023s=,SBER,HMS1=191200.0
3326,Fri Apr 14 19:12:01 2023s=,GKM3,HMS1=191200.0
3563,Fri Apr 14 19:12:01 2023s=,EUR_RUB__TOM,HMS1=191200.0
564,Fri Apr 14 19:12:02 2023s=,OZON,HMS1=191200.0
845,Fri Apr 14 19:12:02 2023s=,MTLR,HMS1=191200.0
3442,Fri Apr 14 19:12:02 2023s=,EuM3,HMS1=191200.0
3651,Fri Apr 14 19:12:02 2023s=,USD000UTSTOM,HMS1=191200.0
3530,Fri Apr 14 19:12:03 2023s=,BRK3,HMS1=191200.0
699,Fri Apr 14 19:12:04 2023s=,AFLT,HMS1=191200.0
770,Fri Apr 14 19:12:04 2023s=,CHMF,HMS1=191200.0
770,Fri Apr 14 19:12:04 2023s=,RUAL,HMS1=191200.0
814,Fri Apr 14 19:12:04 2023s=,ALRS,HMS1=191200.0
655,Fri Apr 14 19:12:04 2023s=,SGZH,HMS1=191200.0
388,Fri Apr 14 19:12:04 2023s=,CNTL,HMS1=191200.0
3529,Fri Apr 14 19:12:04 2023s=,GDM3,HMS1=191200.0
3467,Fri Apr 14 19:12:05 2023s=,SFM3,HMS1=191200.0
3440,Fri Apr 14 19:12:05 2023s=,EDM3,HMS1=191200.0
822,Fri Apr 14 19:12:05 2023s=,MAGN,HMS1=191200.0
3504,Fri Apr 14 19:12:05 2023s=,SVM3,HMS1=191200.0
389,Fri Apr 14 19:12:07 2023s=,NMTP,HMS1=191200.0
659,Fri Apr 14 19:12:07 2023s=,AFKS,HMS1=191200.0
838,Fri Apr 14 19:12:07 2023s=,WUSH,HMS1=191200.0
843,Fri Apr 14 19:12:07 2023s=,GAZP,HMS1=191200.0
376,Fri Apr 14 19:12:07 2023s=,APTK,HMS1=191200.0
825,Fri Apr 14 19:12:07 2023s=,NVTK,HMS1=191200.0
3495,Fri Apr 14 19:12:07 2023s=,GZM3,HMS1=191200.0
3526,Fri Apr 14 19:12:07 2023s=,CRM3,HMS1=191200.0
781,Fri Apr 14 19:12:08 2023s=,AKRN,HMS1=191200.0
129,Fri Apr 14 19:12:09 2023s=,MFGSP,HMS1=191200.0
520,Fri Apr 14 19:12:09 2023s=,OGKB,HMS1=191200.0
659,Fri Apr 14 19:12:10 2023s=,PLZL,HMS1=191200.0
796,Fri Apr 14 19:12:10 2023s=,ROSN,HMS1=191200.0
407,Fri Apr 14 19:12:12 2023s=,AQUA,HMS1=191200.0
578,Fri Apr 14 19:12:12 2023s=,SELG,HMS1=191200.0
449,Fri Apr 14 19:12:13 2023s=,BLNG,HMS1=190800.0
453,Fri Apr 14 19:12:13 2023s=,RENI,HMS1=191200.0
3455,Fri Apr 14 19:12:13 2023s=,MXM3,HMS1=191200.0
3529,Fri Apr 14 19:12:14 2023s=,RIM3,HMS1=191200.0
450,Fri Apr 14 19:12:14 2023s=,BLNG,HMS1=191200.0
364,Fri Apr 14 19:12:15 2023s=,MSNG,HMS1=191200.0
835,Fri Apr 14 19:12:15 2023s=,LKOH,HMS1=191200.0
437,Fri Apr 14 19:12:16 2023s=,IRKT,HMS1=191200.0
637,Fri Apr 14 19:12:16 2023s=,NLMK,HMS1=191200.0
358,Fri Apr 14 19:12:17 2023s=,NKNCP,HMS1=191200.0
826,Fri Apr 14 19:12:17 2023s=,FLOT,HMS1=191200.0
3476,Fri Apr 14 19:12:17 2023s=,MMM3,HMS1=191200.0
160,Fri Apr 14 19:12:18 2023s=,KROT,HMS1=191200.0
577,Fri Apr 14 19:12:18 2023s=,TTLK,HMS1=191200.0
459,Fri Apr 14 19:12:18 2023s=,ABRD,HMS1=191200.0
567,Fri Apr 14 19:12:19 2023s=,FESH,HMS1=191200.0
604,Fri Apr 14 19:12:19 2023s=,MRKC,HMS1=191200.0
204,Fri Apr 14 19:12:19 2023s=,KZOS,HMS1=191200.0
612,Fri Apr 14 19:12:19 2023s=,SNGSP,HMS1=191200.0
548,Fri Apr 14 19:12:19 2023s=,ETLN,HMS1=191200.0
656,Fri Apr 14 19:12:20 2023s=,ELFV,HMS1=191200.0
555,Fri Apr 14 19:12:20 2023s=,NKNC,HMS1=191200.0
107,Fri Apr 14 19:12:21 2023s=,GUM3,HMS1=163200.0
746,Fri Apr 14 19:12:22 2023s=,POLY,HMS1=191200.0
699,Fri Apr 14 19:12:22 2023s=,MTSS,HMS1=191200.0
189,Fri Apr 14 19:12:23 2023s=,KRSB,HMS1=191200.0
3473,Fri Apr 14 19:12:24 2023s=,HKDRUB_TOM,HMS1=191200.0
315,Fri Apr 14 19:12:24 2023s=,MDMG,HMS1=191200.0
839,Fri Apr 14 19:12:24 2023s=,VTBR,HMS1=191200.0
3280,Fri Apr 14 19:12:25 2023s=,SLVRUB_TOM,HMS1=191200.0
247,Fri Apr 14 19:12:26 2023s=,LSNGP,HMS1=191200.0
451,Fri Apr 14 19:12:27 2023s=,CNTLP,HMS1=191200.0
462,Fri Apr 14 19:12:27 2023s=,DVEC,HMS1=191200.0
719,Fri Apr 14 19:12:27 2023s=,SBERP,HMS1=191200.0
84,Fri Apr 14 19:12:28 2023s=,RZSB,HMS1=191200.0
501,Fri Apr 14 19:12:28 2023s=,PHOR,HMS1=191200.0
210,Fri Apr 14 19:12:29 2023s=,DSKY,HMS1=191200.0
611,Fri Apr 14 19:12:29 2023s=,GMKN,HMS1=191200.0
365,Fri Apr 14 19:12:31 2023s=,TGKA,HMS1=191200.0
3385,Fri Apr 14 19:12:32 2023s=,VBM3,HMS1=190900.0
626,Fri Apr 14 19:12:32 2023s=,SNGS,HMS1=191200.0
320,Fri Apr 14 19:12:33 2023s=,AMEZ,HMS1=191200.0
3662,Fri Apr 14 19:12:34 2023s=,CNYRUB_TOM,HMS1=191200.0
686,Fri Apr 14 19:12:35 2023s=,RASP,HMS1=191200.0
347,Fri Apr 14 19:12:35 2023s=,HYDR,HMS1=191200.0
60,Fri Apr 14 19:12:36 2023s=,GAZA,HMS1=191200.0
622,Fri Apr 14 19:12:36 2023s=,IRAO,HMS1=191200.0
170,Fri Apr 14 19:12:37 2023s=,JNOSP,HMS1=191200.0
734,Fri Apr 14 19:12:40 2023s=,POSI,HMS1=191200.0
190,Fri Apr 14 19:12:41 2023s=,NKHP,HMS1=191200.0
309,Fri Apr 14 19:12:41 2023s=,YKEN,HMS1=191200.0
147,Fri Apr 14 19:12:43 2023s=,CHGZ,HMS1=191200.0
373,Fri Apr 14 19:12:45 2023s=,MVID,HMS1=191200.0
745,Fri Apr 14 19:12:45 2023s=,MOEX,HMS1=191200.0
Запаздывание свечей. Что не так.?
 
Добрый день,
Сделал тест получения свечей с интервалом 1 5 и 30 мин для всех инструментов, которые определены у меня в ТТП
В лог файл выводим время открытия новой свечи и время свечей
------------------
Тест исполняем на реальных торгах Брокер Сбербанк.
=================
вот результаты в лог файле время местное на 1 час сдвинуто относительно биржевого
Код
Fri Apr 14 12:36:01 2023,sec=MAGN ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:02 2023,sec=SBER ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:02 2023,sec=VTBR ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:03 2023,sec=NVTK ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:03 2023,sec=YNDX ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:03 2023,sec=LKOH ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:03 2023,sec=GAZP ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:04 2023,sec=GMKN ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:04 2023,sec=CHMF ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:04 2023,sec=POLY ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:04 2023,sec=MGNT ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:05 2023,sec=ROSN ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:05 2023,sec=SBERP ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:05 2023,sec=IRAO ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:06 2023,sec=TATN ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:06 2023,sec=ALRS ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:07 2023,sec=MTLR ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:07 2023,sec=NLMK ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:08 2023,sec=PLZL ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:09 2023,sec=AFKS ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:10 2023,sec=AFLT ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:17 2023,sec=AMEZ ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:27 2023,sec=SNGSP ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:27 2023,sec=OGKB ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:28 2023,sec=ZILL ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:29 2023,sec=HYDR ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:31 2023,sec=TATNP ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:32 2023,sec=LSRG ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:38 2023,sec=AKRN ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:46 2023,sec=PIKK ,T30=123000.0,T5=123500.0,T1=123600.0
Fri Apr 14 12:36:55 2023,sec=SNGS ,T30=123000.0,T5=123500.0,T1=123600.0
Обращаю внимание на следующее:
----------------------
Для инструмента в 1 ой строке минутная свеча сформирована  01 секунду
----------------------------------
Fri Apr 14 12:36:01 2023,sec=MAGN ,T30=123000.0,T5=123500.0,T1=123600.0
-------------------------
а для инструмента в последней строке через 55 секунд после первой.
Fri Apr 14 12:36:55 2023,sec=SNGS ,T30=123000.0,T5=123500.0,T1=123600.0
-----------------------------
Чем дальше в таблице инструмент от первой строки тем больше запаздывание.
--------------------------------
Что не так?
Функция getCandlesByIndex() и закрытие свечки
 
Вы можете обнаруживать новую свечу по изменению числа свечей.
Отложенная покупка
 
собака лает, караван идет.
Функция getCandlesByIndex() и закрытие свечки
 
Так как время свечи меняется в начале, то Вы можете обнаружить начало свечи, когда время текущей  тика изменится относительно предыдущего.  
Функция getCandlesByIndex() и закрытие свечки
 
можно сравнивать время
на предмет точного совпадения с началом интервала
Функция getCandlesByIndex() и закрытие свечки
 
Цитата
Денис написал:
Цитата
nikolz написал:
Так все же просто в этом случае .Время свечи содержит счетчик тиков. Если счетчик меньше предыдущего то это открытие новой свечи. А предыдущая  это последняя закрытая.  
Нашел код где выводит время бара, время изменяется при открытии нового бара. Выдает в таком виде, это оно?
sTime --1681312260  
не время а счетчик тиков
см док
Функции O, H, L, C, V, T

Функции в качестве параметра принимают индекс свечи и возвращают  соответствующее значение. Время свечи возвращается с точностью до миллисекунд в  виде таблицы с полями:  

{year, month, day, week_day, hour, min, sec, ms, count}  

Где:  


  • count – количество тиковых интервалов в секунду. Может принимать значения от
    «1» до «10000» включительно.

Пример:

 

Open = ds:O(1)
High = ds:H(1)
Low = ds:L(1)
Close = ds:C(1)
Volume = ds:V(1)
week_day = ds:T(1).week_day
count = ds:T(1).count

Функция getCandlesByIndex() и закрытие свечки
 
Цитата
Денис написал:
Цитата
nikolz написал:
 
Цитата
Денис  написал:
Погуглив немного нашел кое-что похожее для определения нового бара. Подправил, сейчас переменная first_candle_index обновляет свой индекс как только появляется новая свеча.
Но как это прикрутить для дальнейших вычислений, пока не допер.
Тут на форуме нашел вот что, цитирую : SetUpdateCallback при смене индекса даст вам как раз момент открытия новой свечи.
Вот как ее прикрутить к функции поиска индекса ниже? Или может есть другие методы какие?

function newbar()
ds, error_desc = CreateDataSource("SPBFUT", "SiM3", INTERVAL_M1)
local try_count = 0
while ds:Size() == 0 and try_count < 1000 do
sleep(100)
try_count = try_count + 1
end
if error_desc ~= nil and error_desc ~= "" then
message("Ошибка получения таблицы свечей:" .. error_desc)
return 0
end

local today_day = tonumber(os.date("%m"))
local current_candle = ds:Size()
local max_candles = math.min(20, ds:Size())
local first_candle_index = nil

while first_candle_index == nil and current_candle > ds:Size() - max_candles do
if tonumber(ds:T(current_candle).day) ~= today_day then

first_candle_index = current_candle - 1
end
end

return first_candle_index
end
 Рекомендую начать написание своего робота не в виде скрипта а в виде индикатора.
Если будете торговать каким-то конкретным инструментом, то этого вполне достаточно, будет проще сделать работающий.
-----------------
Кроме того, рекомендую писать не торговый робот, а торговый советник.
Так будет меньше шансов слить свой счет.
-----------------
Потом перепишите советник в робота,
а затем если  захотите большего -возьметесь за скрипты.
--------------------
В итоге напишите все быстрее и качественнее.

Так я, если честно, qLua в глаза второй раз вижу, я больше на питоне, амиброкер,... хотел работающего бота перевести на qLua на срочный рынок для попробовать, почти все перевел, уперся в этот блин новый бар (получить его закрытие/открытие, так как расчет баров ведется после закрытия текущего). Собственно qLua - это вопрос разового применения. Хотел из питона сразу в Квик - но увидев что там еще больше прокладок между кодом и биржей - забил на это дело.
Так все же просто в этом случае .
Время свечи содержит счетчик тиков.
Если счетчик меньше предыдущего то это открытие новой свечи.
А предыдущая  это последняя закрытая.  
Как получать данные объема исходя из наименьшего таймфрейма?, Индикатор для Quik
 
Цитата
Sergey написал:
Всем доброго дня и мира! Хочется разработать индикатор для Quik. Кто понимает, поделитесь мнением. Реально ли так сделать на Lua, и как это будет грузить программу? Для наглядности такой пример: 1) Обычно на 4ч таймфрейме две свечи за дневной период. Зеленая свеча с объемом 200 и красная с объемом 50. Перейдя на дневку у меня будет свеча с объемом 250, и не важно какого цвета. 2) я бы хотел получить объем под дневной свечей исходя из условий свеч 4ч-го таймфрейма, т.е. из 200 вычесть 50 (т.к. свеча над 50 красная), и получить 150. По сути мне хотелось бы чтобы индикатор считывал, предположим, минутный таймфрейм, а значения более старших таймфреймов строил путем вычисления значений из этого минутного таймфрейма и выстраивал в накопительную линию. Что-то на подобии индикатора A/D, только чтобы линия отклонялась на сумму объемов минутного таймфрейма.
Все это можно сделать, но скорее всего уже лет сто назад написан индикатор,
который нечто подобное отображает.
----------------
Попробуйте изучить смысл индикаторов типа RSI, индикатор Чайкина и др им подобные, обязательно найдете, то что Вам подойдет и встроен в QUIK.
Функция getCandlesByIndex() и закрытие свечки
 
Цитата
Денис написал:
Погуглив немного нашел кое-что похожее для определения нового бара. Подправил, сейчас переменная first_candle_index обновляет свой индекс как только появляется новая свеча.
Но как это прикрутить для дальнейших вычислений, пока не допер.
Тут на форуме нашел вот что, цитирую : SetUpdateCallback при смене индекса даст вам как раз момент открытия новой свечи.
Вот как ее прикрутить к функции поиска индекса ниже? Или может есть другие методы какие?

function newbar()
ds, error_desc = CreateDataSource("SPBFUT", "SiM3", INTERVAL_M1)
local try_count = 0
while ds:Size() == 0 and try_count < 1000 do
sleep(100)
try_count = try_count + 1
end
if error_desc ~= nil and error_desc ~= "" then
message("Ошибка получения таблицы свечей:" .. error_desc)
return 0
end

local today_day = tonumber(os.date("%m"))
local current_candle = ds:Size()
local max_candles = math.min(20, ds:Size())
local first_candle_index = nil

while first_candle_index == nil and current_candle > ds:Size() - max_candles do
if tonumber(ds:T(current_candle).day) ~= today_day then

first_candle_index = current_candle - 1
end
end

return first_candle_index
end
Рекомендую начать написание своего робота не в виде скрипта а в виде индикатора.
Если будете торговать каким-то конкретным инструментом, то этого вполне достаточно, будет проще сделать работающий.
-----------------
Кроме того, рекомендую писать не торговый робот, а торговый советник.
Так будет меньше шансов слить свой счет.
-----------------
Потом перепишите советник в робота,
а затем если  захотите большего -возьметесь за скрипты.
--------------------
В итоге напишите все быстрее и качественнее.
Проблема установки связи с QUICK Сбербанка
 
Попробуйте, когда будет проблема сделать пинг по IP сервера
Проблема установки связи с QUICK Сбербанка
 
Цитата
Иван__ написал:
Anzhelika Belokur,

Цитата
Anzhelika Belokur написал:
Данная ошибка связана с сетевыми проблемами на стороне клиента (т.е у Вас), рекомендуем попробовать сменить канал для связи или провайдера.
Проблема не с провайдером. Сегодня попробовал через ноутбук на этом же соединении. И проводное и вайфай работают.

На ноутбуке стоит вин 10. Возможно проблема в этом.

Через ноутбук работать не удобно.

Плюс я уже описал обращение к провайдеру. Они проверили и у себя  еще у двух провайдеров. Какая-то проблема с сервером сбербанка.

nikolz,
Цитата
nikolz написал:
Попробуйте обновить кэш DNS.  
Попробовал. Не помогло.
Надеюсь, Вы кэш обновили не у браузера.
Отложенная покупка
 
Цитата
Александр_1976 написал:
Здравствуйте!
Ожидаю что в течении пары месяцев цена на акцию упадет.
Хучу выставить отложенную заявку на покупку по более низкой чем сейчас цене.
Есть ли разница в выставлении заявки через "стоп цена по другой бумаге"  или через "тейк профит"?
Пробовал через стоп лимит, заявка через несколько секунд заявка отклоняется.
Как правильно выставить отложенную заявку на покупку по цене ниже рынка?
Вы кандидат на нобелевскую премию. Так как ранее получатели ее доказали, что  прогноз с таким горизонтом невозможен.
Скрипт для перезапуска другого скрипта
 
Цитата
Денис написал:
Цитата
nikolz написал:
 
Цитата
Денис  написал:
FUTURES_CLIENT_HOLDING
 openbuys - Активные на покупку
opense[[s - Активные на продажу

Эти переменные содержат число, а не логическую переменную
В них либо ноль либо не ноль, а не TRUE и FALSE
--------------------------
Но запускать заново скрипт или main нет надобности в вашем случае.

Тут сорян, я не все написал видимо, то что переменные сравниваются с цифрами это так, я просто потом новую ввожу если ~=0 то запоминаю как TRUE, что есть активная лимитка.
По поводу возвращаемых данных есть смысл писать в функции Return? или в LUA в коде можно сразу писать   например -- If   Buy_Active_Limit == true и т.д.?

function check_active_position ()
  for i = 0,getNumberOf("FUTURES_CLIENT_HOLDING") - 1 do
      if getItem("FUTURES_CLIENT_HOLDING",i).sec_code == instrument then
       if getItem("FUTURES_CLIENT_HOLDING",i).openbuys ~= 0 then
         Buy_Active_Limit = true;
         
      end;
      end;
       end;
    return Buy_Active_Limit
end
Ликбез:
луа отличается например от СИ тем, что 0 - это не false, а true. Т е все числа - это true.
----------------------
return надо писать если что-то возвращаете из функции.
----------------
Ваш пример лучше написать так:
Код
function check_active_position ()
 for i = 0,getNumberOf("FUTURES_CLIENT_HOLDING") - 1 do
   local x=getItem("FUTURES_CLIENT_HOLDING",i);
   if x.sec_code == instrument then
     if x.openbuys ~= 0 then  return x.openbuys; end;
   end
 rnd
end

В этом варианте два момента.
1)  работает быстрее так как у Вас три раза ходите в архив, что существенно дольше чем работа с локальной переменной х
2)   если x.oprnbus  не равен нулю то функция вернет это значение
иначе она вернет nil  - а это false
Страницы: Пред. 1 ... 12 13 14 15 16 17 18 19 20 21 22 ... 72 След.
Наверх