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

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

Страницы: Пред. 1 ... 14 15 16 17 18 19 20 21 22 23 24 ... 78 След.
Сценарий при TRANS2QUIK_DLL_DISCONNECTED
 
Цитата
Михаил Филимонов написал:
А какие действия нужно предпринимать, получив эти сообщения?
При коннекте работать
При дисконнекте не работать.
Это очевидно.
Или вопрос понят не правильно?

Цитата
Михаил Филимонов написал:
TRANS2QUIK_DLL_DISCONNECTED - теряются ли коллбэки и другие настройки?
Это дисконнект DLL. Естественно сама DLL перестает работать, следовательно и колбеки перестают поступать.
Или вопрос опять понят не правильно.

Цитата
Михаил Филимонов написал:
Каие варианты ещё возможны?
К сожалению сейчас нет полного описания возможных кодов ошибок pnExtendedErrorCode.
ранее мы уже обсуждали эту проблему https://forum.quik.ru/messages/forum8/message35147/topic4112/#message35147
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Посмотрел.
На стр. 71  Таблица orders_aggr: Агрегированные стаканы.
Понимаю.

Вот именно, что в QUIK транслируются агрегированные стаканы. Об этом и речь.
Такова реализация.

Цитата
PFelix написал:
Цитата
Sergey Gorokhov написал:
получив очередной срез стакана мы не можем никак узнать какие строки действительно изменились, а какие остались в прежнем состоянии.И проблема не в QLUA и не в самом QUIK, сама биржа так транслирует данные.
Сергей, а что мешает "запоминать" стакан и новый сравнивать с предыдущим?

то что при таком сравнении, будет ложное отсеивание.
На примере выше
Цитата
Sergey Gorokhov написал:
допустим были изменения в лучшем bid
1200 <- попал в срез
1201 <- НЕ попал в срез
1200 <- попал в срез

По Вашему предложению, сравниваем первый 1200 и последний 1200, т.к. они одинаковые то делаем вывод что изменений не было, в результате гипотетическая функция вернет nil, хотя по факту должна вернуть цифру.
В примере речь про цену, что наверное не совсем удачно, лучше представить что изменился объем, а не цена.
Как отличить эту ситуацию от той при которой изменений не было?
Никак.
Потому в описанном виде предложение звучит больше как вредное чем полезное.
Возможно, ошибка в ответе функции TRANS2QUIK_IS_QUIK_CONNECTED
 
Melchin,
Проблема изучается. Постараемся в ближайшее время дать ответ.
Можно ли продлить работу в программе.
 
Цитата
Андрей написал:
По выходным да, я понял, но кроме выходных есть еще праздничные, у вас праздничные и выходные это разные дни или праздничные тоже считаются выходными?,

Праздничные считаются выходными в связи с озвученным ранее примечанием.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
А Вы -- про  какой?

Ответ зависит от того про какой рынок идет речь.
Именно по вопросу про стаканы, разницы нет, что на срочном рынке, что на фондовом и валютном в поведении разницы нет.
Возможно, ошибка в ответе функции TRANS2QUIK_IS_QUIK_CONNECTED
 
Цитата
Melchin написал:
Здравствуйте,
Исходя из руководства пользователя, вызывая функцию TRANS2QUIK_IS_QUIK_CONNECTED при отсутствии соединения QUIK с сервером, я должен ожидать в ответ TRANS2QUIK_QUIK_NOT_CONNECTED, но я получаю TRANS2QUIK_QUIK_DISCONNECTED.
Подскажите, это ошибка или я делаю что-то не так?

Ваше письмо получено, проблема изучается. Постараемся в ближайшее время дать ответ.

Цитата
Melchin написал:
И да, в lpstrErrorMessage возвращается «QUIK is not connected to QUIK.».
Что тоже неоднозначно, как мне кажется.

К сожалению не понятно в чем суть проблемы.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Цитата
Sergey Gorokhov написал:
Не алгоритм ARQA, а алгоритм биржи. Почитайте биржевой протокол.
А где почитать, -- не подскажете?
на ФТП биржи ftp.moex.com

На остальные вопросы не вижу смысла отвечать.
Ознакомьтесь с протоколом, после чего многие вопросы сами отпадут.
Рекомендуемый размер lpstrErrorMessage, Какой размер буфера следует использовать для сообщений об ошибке?
 
Цитата
Миша написал:
Второй - это размер моего буфера.
Сколько вообще от Quik ожидать? MAX_ERROR_MESSAGE_LENGTH?

Укажите как в наших примерах 1024.
QLUA, вопросы начинающих.
 
Цитата
Анатолий написал:
а как получить firmid, tag и currcod?

Функции getMoney  и getMoneyEx, обращаются к лимитам по деньгам, следовательно посмотреть нужные данные можно в таблице лимитов по деньгам.
firmid - это фирма
tag - это тег (код позиции)
currcode - код валюты.

Цитата
Анатолий написал:
терминал  ведь знает все эти параметры сразу после соединения с сервером
Да знает. Но он не знает от какого счета Вы будете торговать и какой вид лимита использовать при торговле.
И никто не знает, кроме Вас.
В терминале может быть далеко не один код клиента/торговый счет. И позиции могут вестись далеко не только за рубли.
Следовательно автоматики в это месте нет.

Но, Вы можете написать алгоритм который будет искать нужные параметры в таблицах лимитов через функцию getItem.
Она не требует указания фирмы/счета и прочего, а только номер строки из таблицы.
Следовательно, можно написать цикл который будет перебирать все строки до нахождения нужной и брать из нее данные.
Как сделать оповещение при достижении индикатором определенного значения?
 
Цитата
Андрей написал:
Прошу подсказать способ как можно самому делать (программировать) оповещения при достижении индикатора определенного уровня! Например индикатор Volume по инструменту достиг уровня 1000 и издается звук и выводится сообщение!

Здравствуйте,
Это возможно только через lua индикаторы.
Т.е. написать индикатор который будет при достижении определенных значений что то делать (выдавать звук, отправлять сообщения и что угодно на Ваш выбор)
Документация в файле QLUA.chm который лежит у Вас в папке с терминалом.
глава "Индикаторы технического анализа"
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
да потому, что нынешний алгоритм ARQA
Не алгоритм ARQA, а алгоритм биржи. Почитайте биржевой протокол.
Никаких колбеков, только запрос=результат.
Как следствие срезы.

Цитата
PFelix написал:
УМЕНЬШИТЬ нагрузку на комп
Уверены?

Цитата
PFelix написал:
Однако, я не очень представляю, что мы теряем.
Стакан и так транслируется срезами, Вы хотите еще больше ухудшить ситуацию.

Цитата
PFelix написал:
PS. У меня такое ощущение, что Вы перепутали целесообразность с ответственностью.
Вы можете реализовать фильтрацию в своем алгоритме и далее уже оценить целесообразность.
После этого можно уже говорить о результате.

Цитата
PFelix написал:
о которых Вы, я уверен, -- осведомлены.
Поконкретнее пожалуйста.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Вот и славно.
Калбек придет -- мы будем знать, что изменение было.
А функция вернет пустую таблицу (или вообще nil или bid_count и offer_count = 0).
Результат достигнут,  -- время на построение LUA-таблиц при вызове альтернативной  функции многократно сократится.

Кажется Вы не поняли о чем речь.
Вы же сами сказали что надо отловить изменения.
допустим были изменения в лучшем bid
1200 <- попал в срез
1201 <- НЕ попал в срез
1200 <- попал в срез

В Вашем примере функция вернет пустую таблицу (или вообще nil или bid_count и offer_count = 0), хотя изменения были
Вы этого хотите? Умышленно пропускать цены?
Вам самим не страшно?
Лог откуда происходит подключение
 
init1,
Брокер может предоставить такую информацию при желании.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Понятно, спасибо.
Однако, не понятно, почему нельзя сохранять предыдущий стакан (его состояние) и с ним сравнивать текущий.
На нативной стороне это гораздо быстрее. После чего на сторону LUA отдавать только строки с измененным количеством лотов.

Потому что нет никакой возможности определить что строка изменилась, в случае если визуально она не изменилась.

Банальный пример, цена между двумя срезами скакнула и вернулась в то же состояние что и на первом срезе.
Изменение было? да было.
Но визуально ничего не поменялось.
И как это отличить от случая когда ничего не поменялось?
Никак.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Добрый день.
Сергей, я правильно Вас понял, что биржа (вероятно, всё-таки сервер QUIK) транслирует стакан каждый раз ПОЛНОСТЬЮ?

Стаканы транслируются биржей каждый раз полностью.
Тайминг функциональности QUIK из луа, как правильно замерить
 
Цитата
PFelix написал:
Добрый день.
1. Всех - "с наступающим".
2. Учитывая вышеписанное ("Итого, lua_pcall - порядка 99.1 - 99.3% всего времени" ... напомню, call была -- getQuoteLevel2), а также учитывая, что в подавляющем большинстве запросов стакан отличается от предыдущего не более, чем на 15%(а то и -- гораздо менее),
а также учитывая, что нормальный API нам АRQA никогда не предоставит,
Прошу зарегистрировать пожелание по развитию QUIK, а именно
Cделать в Qlua функцию, альтернативную getQuoteLevel2,
Которая будет передавать массив ТОЛЬКО ИЗМЕНЕННЫХ строк в стакане.
Здравствуйте,
К сожалению данное пожелание не может быть реализовано т.к. стаканы транслируются срезами.
Т.е. получив очередной срез стакана мы не можем никак узнать какие строки действительно изменились, а какие остались в прежнем состоянии.
И проблема не в QLUA и не в самом QUIK, сама биржа так транслирует данные.
откуда x
 
Цитата
Let_it_go написал:
Откуда function (x) return (f(x + delta) - f(x))/delta end берёт свой аргумент x?

У Вас функция derivative возвращает функцию (в вашем примере "c" это функция) и X это параметр этой функции.
В Вашем примере X задается при вызове c(5.2)
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Новая. Вы не внимательно читаете.
новая это какая?
И не вижу чтобы Вы сообщали версию.

Цитата
Kolossi написал:
PS У вас nil, потому что стоит не ваш счет клиента 555555 и другие параметры тоже не ваши.  

на первом коннекте тоже не воспроизводится.
getDepoEx, Ошибки при выполнении функции
 
Kolossi,

не воспроизводится
Код
if getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2) then
  message("getDepoEx~=nil")
else
  message("getDepoEx is nil")
end



Может у Вас версия терминала старая?
QUICK 7.23---продажа акций, помогите решить вопрос
 
Цитата
ГЕННАДИЙ написал:
на счете есть остаток 5000 акций ВТБао.    при попытке избавится от них не могу создать заявку на продажу т.к. минимум продажи 1 лот==10000 акций....у меня 5000......как их продать.?
Вы можете продать их в классе неполных лотов SMAL.
Если его у Вас нет, попросите брокера его подключить
в чем ошибка в коде?, просмотр таблицы заявок
 
Цитата
Sergey Gorokhov написал:
Если Вы передаете параметр таблицы в виде строки  то его надо взять в квадратные скобки []
И в этом случае без точки
Цитата
Sergey Gorokhov написал:
        PrintDbgStr(v .. " = " .. order[v])
в чем ошибка в коде?, просмотр таблицы заявок
 
Цитата
Андрей написал:
может в синтаксисе что то не так?
Давайте еще раз.
Если Вы передаете параметр таблицы в виде строки то его надо взять в квадратные скобки [] ровно как это уже было показано на примере:
Цитата
Sergey Gorokhov написал:
        PrintDbgStr(v .. " = " .. order.[v])

Если Вы передаете параметр не в виде строки а как имя параметра, то его надо указывать БЕЗ скобок и БЕЗ кавычек.
например:
getFuturesHolding('SPBFUT000000','SPBFUT000pf','SRH9','1').cbplplanned
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Цитата
Sergey Gorokhov написал:
 
Цитата
Kolossi  написал:
Если бы она возвращала nil, я бы сюда не обращался. Скрипт останавливается с ошибкой : attempt to index a nil value
А это сообщение разве не говорит что значение nil?
Не говорит, это сообщение о причине остановки скрипта.

сообщение о причине остановки скрипта, как раз и говорит о том что Вы пытаетесь получить параметр таблицы которая есть nil
Как уже было сказано и еще раз повторим, что для решения проблемы надо сделать проверку на nil
QLUA, вопросы начинающих.
 
Цитата
Анатолий написал:
Цитата
Sergey Gorokhov написал:
Просто добавить условие фильтрации. Если сделка с таким номером по данному классу уже была то игнорировать.
Извините за глупый вопрос - как это сделать? Для этого есть какие то функции qlua? или же обычными средствами lua
Во втором случае примерно понятно как это сделать

что именно не понятно?
добавляете условие if и пишите проверку, все стандартными средствами lua никакой магии.
Вы же умеете сравнивать две переменные? (if a==b then) вот это оно и есть.
вопрос только в том как хранить ранее полученные данные
можно просто в виде таблицы lua
можно в файле
как Вам удобней
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Если бы она возвращала nil, я бы сюда не обращался. Скрипт останавливается с ошибкой : attempt to index a nil value
А это сообщение разве не говорит что значение nil?
Можно ли продлить работу в программе.
 
Цитата
Андрей написал:
Я так понимаю, что учебный демо счет работает в праздничные дни? А не работает только в выходные (суббота и воскресенье)? Простите за тупость.

на сайте написано:
QLUA, вопросы начинающих.
 
Цитата
Анатолий написал:
И как же мне отфильтровать дублирующиеся мне ответы от сервера?
Просто добавить условие фильтрации. Если сделка с таким номером по данному классу уже была то игнорировать.
Плата за транзакции - а где их взять, У биржи есть плата за транзакции - вопрос в том где их взять
 
Иван Ру,
Вопросы к бирже, лучше задавать на форуме биржи.
Какими функциями на луа можно посмотреть количество фьючерсов у себя на текущем остатке?, срочный рынок
 
Андрей,
Дополним. К таблице позиций по клиентским счетам (futures_client_holding) можно обратиться функциями getFuturesHolding или через getItem
Подробнее см документацию QLUA.chm
Можно ли продлить работу в программе.
 
Андрей,
это значит что будет работать как обычно работает. т.е. по графику на сайте:
https://arqatech.com/ru/products/quik/basic-sets/quik-broker-training-copy/#anchor-link
Какими функциями на луа можно посмотреть количество фьючерсов у себя на текущем остатке?, срочный рынок
 
Цитата
Андрей написал:
А вот с остатком по количеству, нужно самому считать сколько купил и сколько продал и каких бумаг? или в системе Quik где то есть количество лотов фьючерсов на срочном рынке имеющихся в данный момент в плюсе или в минусе у себя?
Смотрите таблице позиций по клиентским счетам (futures_client_holding) параметр "Текущие чистые позиции" (totalnet)
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Возможно это баг разработчиков. Но я не могу придумать как это обойти, кроме как останавливать скрипт на время обновления данных. Подскажите если кого озарит
Почему именно баг? Вы же сами сказали что данных нет. А раз данных нет то и возвращать естественно нечего.
И даже в документации про это сказано:
Цитата
В случае ошибки функция возвращает «nil».
остается только добавить проверку на nil
QLUA, вопросы начинающих.
 
Цитата
Анатолий написал:
То есть получается что при выполнении сделки функция ontrade ( )  у меня выполняется трижды, либо ее тело трижды, странно
Здравствуйте,
Это нормально, т.к. сервер может обновлять некоторые параметры сделки, он присылает ее несколько раз.
Тоже самое с заявками.
в чем ошибка в коде?, просмотр таблицы заявок
 
Андрей,
Так нельзя делать.
Сделайте так:
Код
   PrintDbgStr(" Просмотр полей таблицы заявок")   
   params = {"order_num", "flags", "sec_code"}
   for i=0,getNumberOf('orders')-1 do 
      PrintDbgStr(i)
      local order = getItem('orders', i); 
      for key,v in ipairs(params) do
         PrintDbgStr(v .. " = " .. order.[v])
      end
   end
Где посмотреть описание на флаг в транзакции?
 
Цитата
Андрей написал:
Цитата
Андрей написал:
И еще почему то номер trans.trans_id 2147483647 не совпадает с тем , который я отправлял в запросе (['TRANS_ID'] = '2412181506')
Это я кажется понял, при покупке выходит не мой номер ид транзакции, а того кто продавал, а я у него купил

не правильно.
Вы видите другой номер потому что указали значение больше чем позволяет тип данных integer
Согласно документации, TRANS_ID нельзя указывать больше чем 2 147 483 647.

Цитата
Андрей написал:
выход код 1001000000000000000001 - что он обозначает, есть где то битовые значения этого флага. Получаю данные из следующего кода

Цитата
Возможные значения:
«1» – отправлена с помощью файла импорта;
«512» – отправлена с помощью QPILE;
«32768» – отправлена с помощью Trans2Quik;
«131072» – на продажу;
«262144» – отправлена с помощью LUA;
«524288» – отправлена с помощью API клиентского места;
«1048576» – служебная;
«2097152» – на ввод заявки

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

При дозаказе, данные в хранилище терминала действителньо могут находиться не в том месте.
Т.к. хранилище наполняется в конец файла.
Но в QUIK в визуальной таблице данные будут отсортированы по индексу записи.
От сюда и ответ на вопрос, данные сохраняются в файл по индексу записи.
Таблица всех сделок
 
Цитата
Дмитрий написал:
А как тогда понимать вот эти ваши слова, которые процитированы ниже?
А что не так? не вижу противоречий.
В Визуальной таблице данные могут быть в любом порядке, как отсортируете или отфильтруете.
Но в хранилище терминала эти данные не поменяют своего места.
Как обратиться к таблице с транзакциями?
 
Цитата
Андрей написал:
а к таблице транзакций как можно обратиться?
Такой возможности нет. Но можно получить ответ на транзакцию в событии OnTransReply
Цитата
Андрей написал:
и к стакану котировок?
Для этого есть отдельная функция getQuoteLevel2
Как исправить ошибку транзакции?, Ошибка отправки транзакции
 
Цитата
Андрей написал:
или надо так?
Код
  [ 'ACCOUNT' ]    =   '' ,      

параметр был указан правильно ['ACCOUNT'] = 'SPBFUT000pf',
Как исправить ошибку транзакции?, Ошибка отправки транзакции
 
Андрей,
Проверьте в настройках терминала, пункт Торговля - Настройка счетов, что нужный счет в списке выбранных.
Ошибка при вызове ds:Close()
 
Цитата
s_mike@rambler.ru написал:
Может быть после прихода OnStop уже нет смысла беспокоится о закрытии ds, т.к. Quik уже сам все закрыл?
Нет смысла, т.к. если других подписок на этот источник не будет, то терминал сам его закроет.
Таблица всех сделок
 
Дмитрий,
Принудительной сортировки в QUIK нет, уже миллион раз было сказано, сколько можно повторять?
Данные поступают на сервер УЖЕ в отсортированном виде, за этим следит биржа.
По этому, нарушение хронологии в QUIK исключено.
По этому, данные в хранилище сервера и данные в хранилище терминала всегда идут в одинаковом порядке
По этому, НЕТ никакой разницы при сохранении в файл, будут ли данные в том порядке как в терминале или же в том порядке как на сервере.
Естественно, речь про рамки одного рынка.
Если говорить про разные рынки, то как УЖЕ было несколько раз сказано, на разных рынках никакой синхронизации между биржами нет и не может быть в принципе, пока они не синхронизируют часы, а это они естественно делать не будут.
Отличие localtime от os.time ()
 
Цитата
Игорь написал:
Спасибо. А с getInfoParam ("SERVERTIME") всё в порядке (на всякий случай интересуюсь)?
Этот параметр показывает время последнего полученного пакета с сервера.
В нем только часы, минуты и секунды.
TRANS2QUIK_SUBSCRIBE_ORDERS ()
 
Цитата
Михаил Филимонов написал:
А что мешало Вам сделать это в trans2quik.dll?  

Именно пользователь сам должен решать какое обновление по сделке ему нужно.
Лично Вам нужно первое обновление, а другому пользователю нужно последнее.
Почему trans2quik это должен решать?

Цитата
Михаил Филимонов написал:
Квик и так еле "ползает", а тут еще нужно делать массивы по 52 инструментам и "бегать" по ним - очень высокая скорость работы
получается!
52 инструмента это не много и речь не про инструменты, а про сделки.
TRANS2QUIK_SUBSCRIBE_ORDERS ()
 
Цитата
Михаил Филимонов написал:
Нет, нельзя!
Что мешает создать массив, в котором хранить номера уже полученных сделок и при появлении очередной записи сравнивать ее номер с тем который в массиве?
Учебник, Есть ли полный детальный справочник по Qpile ?
 
Здравствуйте,
QPILE устаревший язык который уже не развивается. Сейчас он существует только для поддержания обратной совместимости.
Если Вы только начинаете изучать программирование в QUIK, лучше даже не начинать смотреть в сторону QPILE, а сразу же начать с нового языка QLUA.

Сам по себе QLUA это не более чем дополнение к языку LUA который разработан не нами и по нему есть масса статей в интернете, которые не имеют отношения непосредственно к QUIK но тем не менее касаются LUA а значит их тезисы вполне применимы и в QUIK.
Документация по QLUA лежит в файле QLUA.chm (этот файл Вы можете найти в папке с терминалом QUIK), в ней описаны только те функции которые разработаны нами для QUIK.
таким образом, чтобы начать программировать в QUIK нужно изучить язык LUA (по любым источникам в интернете) и далее дополнить знания по файлу QLUA.chm
Кроме QLUA.chm, на нашем сайте можно найти различные примеры:
https://arqatech.com/upload/iblock/194/quik_lua.zip
https://arqatech.com/upload/iblock/398/INDICATORS.zip
Время изменения стакана получаемого через OnQuotes, OnQuotes - есть ли возможность параллельно с чтением стакана, получить точное время торгового сервера, когда он возник/изменился
 
PFelix,
SetUpdateCallback (от CreateDataSource) и OnAllTrade, OnQuote транслируются разными потоками которые между собой никак не синхронизируются.
Значит и никакой гарантии в определенной последовательности дынных между ними нет и не может быть.
Потому что синхронизация, это ни что иное как искусственная задержка. Как уже несколько раз было сказано и еще раз повторим, со стороны QUIK записи отправляются клиенту тогда когда их получит сервер и в том порядке как их получит сервер, и не важно какое время у конкретной записи, никаких принудительных задержек в этом месте нет и не будет, т.к. любые принудительные задержки есть великое зло.
Таблица всех сделок
 
Цитата
PFelix написал:
ДД
1 ."Затеваю" связанный вопрос в соседней ветке (по тематике ближе)
2. Возможно, "интерессанты" уже с проблемой разобрались,
  НО, как говорится, истина должна быть известна всем интересующимся.
В свете вышесказанного такой вопрос:
Допустим у биржи несколько "торговых площадок" (не я ввел данное утверждение).
Вопрос: А не по принципу ли брокеров с биржей они должны работать?
Поясняю (на всякий случай): Есть "Центральный офис" (ЦО), в котором фиксируются и обрабатываются все заявки по МЕРЕ ПОПАДАНИЯ в этот самый ЦО?
Если заявки должны быть обработаны в соответствии со временем прихода на торговую площадку, ТО:
Варианты развития событий, очевидно, -- следующие:
1. Конечный вердикт по принятию решения в чью пользу состоится сделка решается путем:
     а) по принципу первенства прихода в ЦО;
     б) руководствуясь принципом: если со всех офисов, пришли "следующие" транзакции, то опоздавших -- НЕТ;
     в) назначением таймаута, после которого заявка с какой-либо торговой площадки обрабатывается не по времени заявки, а по времени прихода в ЦО;
     г) "А, ПОФИГ", "используем" заявки, как НАМ "УДОБНЕЕ".
Поэтому несколько изменяю вопрос.
Как же (не синхронизируется время, а) упорядочиваются и обрабатываются заявки не бирже (ЦО), (как это выглядит для сервера QUIK)?

Интересно почему Вы задаете вопрос к бирже здесь, а не на форуме самой биржи, что было бы куда правильней?
Как уже несколько раз было сказано и еще раз повторим, со стороны QUIK записи отправляются клиенту тогда когда их получит сервер и в том порядке как их получит сервер, и не важно какое время у конкретной записи, никаких принудительных задержек в этом месте нет и не будет, т.к. любые принудительные задержки есть великое зло. Существуют естественные задержки (даже у света есть скорость) с которыми ничего сделать нельзя, а есть не естественные задержки (вина провайдера или проблемы у брокера/биржи) и с ними можно и нужно бороться.
Касаемо времени на сделках, до тех пор пока биржи всего мира не начнут синхронизировать свои часы с одним единым источником (NTP сервером), никакой гарантии синхронизации времени на сделках разных площадок не будет.
Даже если речь про одну биржу с разными торговыми площадками, все равно синхронизация не гарантируется, чтобы убедиться достаточно посмотреть на сделки по акциям и фьючерсам.
И надо учиться с этим жить.
Таблица всех сделок
 
Цитата
Дмитрий написал:
Цитата
Дмитрий написал:
 
Цитата
Sergey Gorokhov  пишет:
Порядок данных в хранилище терминала, всегда соответствует порядку загрузки данных с сервера.
А порядок данных в визуальной таблице всегда соответствует порядку на сервере QUIK (если не настроено иное)
А чему соответствует порядок строк в файле, созданном с помощью пункта контекстного меню визуальной таблицы всех сделок "Сохранить в файл обезличенные сделки из таблицы", а также пункта "Сохранить в файл все обезличенные сделки"?
Так и не ответили на мой вопрос... Все же хотелось бы узнать - при сохранении сделок таким вот образом в файл они записываются в него точно в той последовательности, в какой были сохранены в таблице всех сделок терминала, или же в отсортированном виде?
И если в отсортированном, то каким образом?

В файл сохраняется в том же порядке как на сервере, без сортировок.
Отличие localtime от os.time ()
 
Игорь,
Если говорить о практике, то getInfoParam ("LOCALTIME") это устаревшая функция, она была разработана в терминале QUIK задолго до появления поддержки Lua, так что лучше пользоваться os.date () или os.time ()
Страницы: Пред. 1 ... 14 15 16 17 18 19 20 21 22 23 24 ... 78 След.
Наверх