Блог им. Smoker_Joker

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

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

Читайте на SMART-LAB:
М.Видео размывается
Компания объявила о реализации преимущественного права акционеров в рамках «допки»   М.Видео (MVID) Инфо и показатели С 25 марта у...
Фото
Стоит ли покупать ОФЗ в юанях
В последние недели на российском рынке заметно ухудшилась юаневая ликвидность, и это сразу отразилось на ценах валютных гособлигаций. Разбираемся,...
Фото
5 идей в российских акциях. Индекс МосБиржи снова ниже 2850 п.
Индекс МосБиржи за неделю понизился на 1% и вновь просел ниже значимой отметки 2850 п. Это значит, многие голубые фишки остаются на...
Фото
Россети Ленэнерго. Отчет МСФО. Считаем дивидендную базу
Компания Россети Ленэнерго опубликовала финансовый отчет за 2025г. по МСФО. Отчет МСФО и РСБУ у сетевых компаний очень похожи, а так...

теги блога Smoker_Joker

....все тэги



UPDONW
Новый дизайн