Smoker_Joker
Smoker_Joker личный блог
22 мая 2020, 20:20

Прошу помощи: скрипт lua

Собственно нигде не нашел, но очень нужен скрипт луа к квику, который записывает цены спреда (лучшего бид и аск) и выводит в виде графика (при тиковом графике), а лучше в таблицу эксель.
Тоесть это не запись спреда с интервалом 1сек или 1 мин, а как тиковый график — изменился — запись обоих параметров (бид и аск)
Если никто не поможет придется lua изучать и делать самому, не доводите до греха!)))
8 Комментариев
  • Dmitryy
    22 мая 2020, 21:25
    Для одного инструмента?
    Вообще предвижу здесь проблемы производительности. Луа пишет в файл. Эксель читает из файла. Все это несколько 10 раз в секунду. 
    • Rostislav Kudryashov
      22 мая 2020, 21:49
      Dmitryy, эта проблема решается разделением труда. Функция обратного вызова в главном потоке Quik'а (в данном случае OnParam или OnQuote) накапливает параметры отслеживаемого события в глобальной таблице-очереди. Для этого используется потокобезопасная функция table.sinsert().
      А функция скрипта main() из вспомогательного потока для периодической разгрузки очереди использует потокобезопасную функцию table.sremove(). И делает это тогда, когда ей удобно, например каждые 0.01 сек. За это время очередь событий не должна слишком разрастись.
      PS Для лучшей производительности, наверно следует использовать не очередь FIFO, а стек LIFO. А для упорядочения выводимых вовне событий использовать локальные средства внутри main().
      • Dmitryy
        23 мая 2020, 10:27
        Rostislav Kudryashov, плюс не стоит забывать о внутреннем ограничении квика на прослушку событий стакана. Их там около 200 кажется. 
        В C# это легко обходится реализацией очередей, подобно тому как вы описали. Циклично вешаются и удаляются хендлеры и вуаля, слушай сколько угодно интсрументов :) У меня работает.
  • Vkt
    22 мая 2020, 21:49
    Так нужен график в Квике или файл с цифрами?
    Если график, то в Квике он и так строится на раз. 
    А график можно сохранить в файл, нажав на нем правую кнопку.
  • Rostislav Kudryashov
    22 мая 2020, 22:08
    А ведь из «Таблицы параметров» и вообще из любой в Quik'е есть экспорт в Excel через сервер DDE без использования QLua.
  • Дмитрий К
    23 мая 2020, 11:37
    Зачем вообще какой то скрипт мудрить, кроме дде еще можно стаканы выгружать по одбс в базу данных mysql например.
    Я выгружал одновременно и си и брент и ри, вообще ничего не тормозит на дохлом старом сервере.
    Нстройка одбс и mysql легко гуглится.
    В отличии от дде не нужно открытые стаканы для этого иметь все в фоновом режиме происходит

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн