Проблемная работа программы с луа роботами

Страницы: 1
RSS
Проблемная работа программы с луа роботами, Проблемная работа программы с луа роботами
 
Уважаемые разработчики.
Проблема в следующем, при 4-5 работающих роботах на луа скриптах, Квик становится практически мертвым. Тормозит дико и фактически не позволяет что то еще делать.
Хотелось бы услышать ваши рекомендации как решать эту проблему. Ну и планируется ли что то с этим делать на программном уровне.
 
major, добрый день.

Мы не можем прокомментировать работу терминала совместно с Lua-скриптами, так как в этом случае проблемы могут наблюдаться из-за неоптимального кода или использования сторонних библиотек и других зависимостей.
Если у Вас есть вопросы по работе конкретных функций QLua, будем готовы на них ответить.

Дополнительно предлагаем убедиться, что настройки в Вашем терминале соответствуют рекомендованным.
 
Добрый день.

Тоже хочу посетовать на эту же проблему. Причем проблема появилась относительно недавно. Осенью. До этого все более-менее работало, а сейчас висит очень долго. Те же самые скрипты использую, тот же самый компьютер, те же три работающих терминала, а тормозить стало все гораздо сильнее. На тех двух терминалах, где стаканы открываются программно, еще кое-как работает, а там где стаканы у меня открыты вручную, там совсем плохо (стаканов у меня открыто много - около 200 разрешенных штук в каждом из терминалов). Скрипты еще кое-как работают, а вручную еле-еле между окнами можно переключаться. Думал, может будет какое-нибудь более удачное обновление, но после последнего обновления на релиз 12.8.3.4 лучше не стало (стало ли хуже пока не понятно).
Причем проблема именно в релизе. Другой человек, который тоже работает с Квик и запускает похожие по алгоритму скрипты, тоже столкнулся с этой же проблемой. А потом взял и откатился на релиз 12.5.0.20. И у него снова стало все нормально работать. Не знаю, что добавилось после этого релиза, но это что-то стало сильно тормозить работу системы.
 
Проверяйте, что не производятся расчеты в колбеках. Очень часто - это основная проблема. Более корректно - формировать очередь сообщений и разбирать в потоке main.

Но по субъективным ощущениям могу подтвердить, что последние версии терминала стали более легко уходить в ступор.
 
Добавлю ложку ... в  бочку...
---------------
Несколько раз пытался установить обновления версии 12
Но после наблюдения тормозов  откатывался на 8. 7  что и Вам советую.
не вижу смысла быть бесплатным тестировщикам сырых версий.
 
Цитата
Nikolay написал:
Проверяйте, что не производятся расчеты в колбеках. Очень часто - это основная проблема. Более корректно - формировать очередь сообщений и разбирать в потоке main.

Но по субъективным ощущениям могу подтвердить, что последние версии терминала стали более легко уходить в ступор.
Нет, похоже, что не в них дело. У меня OnAllTrade (а проблема, наверное, может быть только с ним) начинает считать что-то только после 10:30 (так алгоритм настроен), а терминал начинает тормозить с самого начала торгов (еще раз проверил сейчас). И после завершения работы, когда никаких событий уже не происходит, тоже тормозит очень сильно.
Похоже, что тоже откатываться на 12.5.0.20 придется. А то как-то совсем медленно и печально все работает.
 
Оверхед от вызова колбэков высокий, независимо от кода внутри колбэка.
Я вот думаю отказаться от OnAllTrade совсем.
Да и  от OnParam стоило бы отказаться, поскольку при включении "умного" заказа данных, терминал тянет данные почти по всем классам. Но в этом случае придётся постоянно в main опрашивать на наличие новых данных по инструментам, что отрицательно скажется на производительности.
 
Цитата
Йцукен написал:
OnAllTrade
Этот колбек самый опасный. Читать таблицу обезличенных сделок лучше пакетами. У Вас цикл работы скрипта. допустим, 100 млс. За этот период набежит много сделок. Дойдете до процедуры чтения и все пачкой прочитаете от прошлого индекса. И так читаете, опрашивая не изменился ли размер таблицы. Колблек же будет занимать основной поток терминала просто говоря, что прошла сделка.
 
Цитата
Йцукен написал:
Оверхед от вызова колбэков высокий, независимо от кода внутри колбэка.
Я вот думаю отказаться от OnAllTrade совсем.
Да и  от OnParam стоило бы отказаться, поскольку при включении "умного" заказа данных, терминал тянет данные почти по всем классам. Но в этом случае придётся постоянно в main опрашивать на наличие новых данных по инструментам, что отрицательно скажется на производительности.
У вас очевидно неправильно написаны колбеки.
-----------------------------
колбек OnAllTrade вызывается перед записью данных в таблицу обезличенных сделок.
На него затрачивается не более  5 мкс.  
Он ничего не тормозит как и колбек OnParam.
-----------------------
колбек OnParam нужен для управления стопами и позицией.  Никакие "умные "  заказы  это не решают.  
 
Цитата
nikolz написал:
На него затрачивается не более  5 мкс.
Интересно, как вы это измерили?  :shock:
 
Цитата
Nikolay написал:
Цитата
Йцукен написал:
OnAllTrade
Этот колбек самый опасный.
В каком смысле?
 
Цитата
Йцукен написал:
Цитата
nikolz написал:
На него затрачивается не более  5 мкс.
Интересно, как вы это измерили?  
таймером. Есть в ПК счетчик c тактом 0.1 мкс.  На основе него делаем таймер, который измеряет с погрешностью 0.1 мкс.
Потом берете мой скрипт универсального обработчика событий, который я выложил на форуме , и измеряете время от входа в колбек до входа в функцию main. Это и будет время задержки.
 
Цитата
nikolz написал:
измеряете время от входа в колбек до входа в функцию main.
Ясно, к вам вопросов больше нет.
Очевидно (но, видимо, не всем), что таким образом не возможно измерить время, затрачиваемое на вызов колбэка. Не путать со временем исполнения кода пользовательской функции колбэка.
 
Цитата
Йцукен написал:
Цитата
nikolz написал:
измеряете время от входа в колбек до входа в функцию main.
Ясно, к вам вопросов больше нет.
Очевидно (но, видимо, не всем), что таким образом не возможно измерить время, затрачиваемое на  вызов  колбэка. Не путать со временем исполнения кода пользовательской функции колбэка.
Время на вызов колбека Вы можете измерить еще проще.
Вызовите колбек функцию из своей dll.  У меня получилось менее 1 мкс.
---------------
Без обид, но вы просто не умеете программировать .  
 
В результате откатился на 12.5.0.20. И лютейшие тормоза сразу исчезли. По сравнению с тем что было, Квик просто летает!
Буду теперь держаться за этот релиз, пока есть такая возможность.
 
Pedro, добрый день.

Правильно понимаем, что в версии 12.8.3 наблюдались зависания при взаимодействии с интерфейсом программы? Как долго они длились?
В версии 12.5.0 при работе с такой же конфигурацией проблем не наблюдается?
Страницы: 1
Читают тему
Наверх