Постов с тегом "LUA": 340

LUA


Ухожу в отпуск. Творческий.

    • 05 ноября 2020, 21:33
    • |
    • 3Qu
  • Еще
Наконец все предварительные работы по системе закончены. Тесты системы в Python на разных инструментах вы уже видели ранее. Система совершенно новая, хотя, по прежнему Lua и С++, но все переписано заново. Появилось множество потоков — все чтение данных из терминала выполняется в фоновом режиме.
Осталось только вбить саму стратегию. Поначалу хотел в стратегии использовать библиотеки Python, но нашел и оттестировал неплохие эрзацы на С++ (эрзац кофе — это не кофе, а заменитель кофе). Существенной разницы нет, и можно обойтись без Python.
Ожидаются проблемы со сделками и стаканом — на истории и минутных данных это никак не оттестируешь. С этим надо работать уже с реальными данными.
В общем, с завтрашнего дня ухожу в творческий отпуск. В январе надеюсь выйти на тест уже с мелким реалом. До того, еще тест с виртуальными сделками. Учитывая то, что многое не готово, планы не такие уж маленькие.
Топики особо писать не буду, разве, что комментарии.

Робострой: вопрос из "зала" о неисполненных заявках. Просто поделиться опытом.

   Полагаю, мой ответ на нижеприведенный вопрос должен стать достоянием всех.
  
Сегодня утром коллега задал вопрос:
Часто в тестировании используют методы бек/форвард тест, иногда устраивают стресс тест, на хаотичных котировках, но в данном примере хотелось показать как смоделировать ситуацию, когда в алгоритме все хорошо, но по той или иной причине нашу заявку не исполнили.

Мой ответ (в 3-х частях, по мере внесения уточнений и подробностей) ему был следующий:

1. Все перечисленные «проблемы» решаются очень просто и успешно, если немного расширить само понятие «робот».
Добавьте надстройку, следящую за состоянием робота, за состоянием сети, инета, которая автоматически блокирует ненужные явления (задваивание ордеров на одном баре, например, или обрыв связи с сервером), и проблем не будет. Да, это выходит за рамки Lua (или того, на чем реализован робот). У меня такие сервисы реализованы на C#, опять же например. Итог: сам включается/выключается, «фильтрует базар» и поддерживает постоянное подключение, «постукивая» мне логами на почту или джаббер…



( Читать дальше )

LUA теперь читает alltrade.qty как дробное число

    • 15 сентября 2020, 12:14
    • |
    • Glago
  • Еще
После обновления Quik до 8.8.4.3 заметил, что alltrade.qty стало приходить с одним знаком после запятой. Для меня это не критично и теоретически можно округлять значения объёма, если скрипт используется на срочке. Однако интересно, может это связано с тем как кодит Notepad++.  Непонятно в какой версии луа он кодит 5.1 или 5.3? Может дробные значения объёма предполагают торговлю дробными лотами например на фонде? Пожалуйста, напишите в комментариях, что вы думаете об этом.
  • обсудить на форуме:
  • Quik Lua

Вопрос алготрейдерам: у вас Квик не зависает при срабатывании OnStop() ?

Столкнулся с такой проблемой буквально на последних паре версий 8.8.1 и 8.8.4

В чем проблема: при остановке скрипта квик стал «уходить в себя» (зависать).
Останавливается скрипт банально через OnStop()

Логика там проще некуда:

IsRun = true

OnInit()
     CreateDataSource()
end

main()
     while IsRun do
         getCandlesByIndex()
         --доп. запрос данных с индикатора
         --и после вычисления
     end
end

OnStop()
     IsRun = false
end

Все. Структура как по учебнику. Все расчеты внутри main. Никаких допов не подключается, все расчеты сугубо арифметические.
Считают каждую минуту при появлении новых данных по свечам.
После остановки скрипта считать нечего. С рояли он зависает?

Причем весь парадокс в том, что подобное происходит только после продолжительной работы скрипты (где-то от часа и более).

( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

Посоветуйте программу для редактирования Lua

Всем привет!

Посоветуйте плиз прогу для редактирования скриптов Lua чтобы она:

1) мало весила
2) имела опцию темного фона
3) делала подсветку функций
4) имела tool bar с большим количеством инструментов

Сейчас пользуюсь скитом, но темного фона там нет, и тул бар какой-то убогий…
  • обсудить на форуме:
  • Quik Lua

LUA - код инструмента - вопрос

    • 19 августа 2020, 21:25
    • |
    • Vitaliy
  • Еще
Доброго дня, уважаемые коллеги! 

Возник у меня вопрос. Пишу я робота, написал робота, все красиво — хочу, к примеру, его продать, либо же хочу просто не заморачиваться более влезанием в код или еще что — не суть. Вот у меня в роботе прописан код инструмента. Можно ли как-то сделать так, чтобы при смене инструмента после экспирации робот автоматически стал использовать новый код? Может через идентификатор, который вешается на график или еще как. 

С индикаторами все просто — там берем getDataSourceInfo и готово. А вот именно со скриптом как быть? Дергать эту информацию из какого-либо индикатора и передвать ее в скрипт тоже не особо красивое решение задачи.

Буду рад, если есть идеи.

С уважением, Виталий.
  • обсудить на форуме:
  • Quik Lua

LUA: Построитель графиков. Просто поделиться.

Бэктесты, построенные непосредственно в QUIK'e, формируют прогнозные PL тестируемых стратегий в виде простых одномерных индексированных таблиц LUA.
    Но прежде, чем детально копаться в стратегии и манипулировать параметрами (мой LUA-тестер «заточен» и на ввод «точечных» наборов параметров и на перебор Монте-Карло), будет логично качественно оценить направление результатов. Так сказать, посмотреть тренд прибыльности: есть она, эта прибыль, или её стратегия даже не прогнозирует...
   Поскольку, как я писал в предыдущем посте, я — не академик в софте, то просто написал свой графопостроитель.
   Наверное, он смотрится наивно, но, может быть, он и в таком виде сгодится. Обрабатывает сразу 5 файлов (iup позволяет не больше 20 за раз).

  Скрины в порядке манипуляций:

Главная форма

Выбрать файл - источник данных

( Читать дальше )
  • обсудить на форуме:
  • Quik Lua

....все тэги
UPDONW
Новый дизайн