Можно ли узнать, что скрипт qlua не дополучает инфо по onalltrade/onquote?
Пользователь
Сообщений: Регистрация: 27.12.2022
09.02.2024 12:51:37
Если скрипт в коллбэке как-то притормаживает, то теряются эти сообщения. Неужели в Квике нет очереди, чтобы их не терять? Есть ли гарантированное время (скажем, 5 мс), что если коллбэк в него вписывается, то потерь данных гарантированно не будет? (Думаю, что его нет, т.к. интенсивность вызова коллбэка может быть высокой.) А если они были, можно ли как-то об этом узнать?
Пользователь
Сообщений: Регистрация: 30.01.2015
09.02.2024 13:46:01
Цитата
Serge123 написал: Если скрипт в коллбэке как-то притормаживает, то теряются эти сообщения. Неужели в Квике нет очереди, чтобы их не терять? Есть ли гарантированное время (скажем, 5 мс), что если коллбэк в него вписывается, то потерь данных гарантированно не будет? (Думаю, что его нет, т.к. интенсивность вызова коллбэка может быть высокой.) А если они были, можно ли как-то об этом узнать?
Они не теряются.
Пользователь
Сообщений: Регистрация: 27.12.2022
09.02.2024 14:12:52
Я как-то заказал в Квике отчёт по всем заявкам или сделкам клиента за день, Квик задумался на 10 сек., а потом в файле, куда скрипт писал обезличенные сделки/содержимое стаканов за эти 10 сек. не было записей.
Пользователь
Сообщений: Регистрация: 30.01.2015
09.02.2024 16:07:48
Цитата
Serge123 написал: Я как-то заказал в Квике отчёт по всем заявкам или сделкам клиента за день, Квик задумался на 10 сек., а потом в файле, куда скрипт писал обезличенные сделки/содержимое стаканов за эти 10 сек. не было записей.
КВИК докачивает пропущенные значения. Но я не проверял попадают ли они в колбек. Их можно получить из таблицы обезличенных сделок.
Пользователь
Сообщений: Регистрация: 30.01.2015
09.02.2024 16:36:22
можно поставить счетчик вызова колбека и сравнить его с размером таблицы обезличенных сделок.
Пользователь
Сообщений: Регистрация: 27.12.2022
09.02.2024 18:46:08
Насколько я понял, размер таблицы обезл. сделок можно получить через
Код
getNumberOf('all_trades')
А как скрипту прочитать эту таблицу? По-моему, никак...
Пользователь
Сообщений: Регистрация: 30.01.2015
09.02.2024 20:23:24
Цитата
Serge123 написал: Насколько я понял, размер таблицы обезл. сделок можно получить через
Код
getNumberOf ( 'all_trades' )
А как скрипту прочитать эту таблицу? По-моему, никак...
функцией «getItem», или «SearchItems»
Пользователь
Сообщений: Регистрация: 27.12.2022
09.02.2024 22:48:46
Хм, а я как-то не обращал внимание на эти функции. Тогда выходит, что можно не загружать ЦП коллбэком OnAllTrade, если всё это можно брать напрямую из таблицы all_trades?
Хочу ещё уточнить, как узнавать направление сделки по флагам, описание на неясное:
=== Набор битовых флагов Параметр Тип Описание бит 0 (0x1) - Сделка на продажу бит 1 (0x2) - Сделка на покупку ===
Такое чувство, что я всё время неправильно определяю направление (buy или sell). Я считал, что если младший бит = 0, то buy, а если младший бит = 1, то sell.
А из этого объяснения вроде бы следует, что если мл. бит = 1, то это sell, а если следующий за младшим битом бит = 1, то это buy, так? Вроде бы можно было обойтись одним мл. битом...
Пользователь
Сообщений: Регистрация: 27.12.2022
10.02.2024 00:53:23
Вот здесь нашёл вроде бы верные ответы:
Пользователь
Сообщений: Регистрация: 18.12.2017
10.02.2024 01:01:34
Цитата
Serge123 написал: Хм, а я как-то не обращал внимание на эти функции. Тогда выходит, что можно не загружать ЦП коллбэком OnAllTrade, если всё это можно брать напрямую из таблицы all_trades?
Да, многие так делают.
Цитата
Хочу ещё уточнить, как узнавать направление сделки по флагам, описание на неясное:
=== Набор битовых флагов Параметр Тип Описание бит 0 (0x1) - Сделка на продажу бит 1 (0x2) - Сделка на покупку ===
Такое чувство, что я всё время неправильно определяю направление (buy или sell). Я считал, что если младший бит = 0, то buy, а если младший бит = 1, то sell.
Сделка на продажу получается, когда активный продавец бьет по лимитной заявке покупателя.
Цитата
А из этого объяснения вроде бы следует, что если мл. бит = 1, то это sell, а если следующий за младшим битом бит = 1, то это buy, так? Вроде бы можно было обойтись одним мл. битом...
Скачайте на сайте полное . Там написано: "Если флаги не установлены, направление сделки не определено".
Пользователь
Сообщений: Регистрация: 30.01.2015
10.02.2024 08:48:13
Цитата
Serge123 написал: Хм, а я как-то не обращал внимание на эти функции. Тогда выходит, что можно не загружать ЦП коллбэком OnAllTrade, если всё это можно брать напрямую из таблицы all_trades?
Хочу ещё уточнить, как узнавать направление сделки по флагам, описание на неясное:
=== Набор битовых флагов Параметр Тип Описание бит 0 (0x1) - Сделка на продажу бит 1 (0x2) - Сделка на покупку ===
Такое чувство, что я всё время неправильно определяю направление (buy или sell). Я считал, что если младший бит = 0, то buy, а если младший бит = 1, то sell.
А из этого объяснения вроде бы следует, что если мл. бит = 1, то это sell, а если следующий за младшим битом бит = 1, то это buy, так? Вроде бы можно было обойтись одним мл. битом...
Так вроде все ясно из описания флагов: бит 0 (0x1) - продажа т е flags@1 ~=0 бит 1 (0x2) - покупка flags@2 ~=0