Блог им. hobbit

Тестер для конструктора роботов Lbot3D. Ч1. Нужна обратная связь

О конструкторе роботов Lbot3D помнят и слышали многие смартлабовцы https://smart-lab.ru/tag/lbot/. Расскажу о тестере стратегий, поддерживающем тот же язык Lbot3D. Он тоже написан на Lua и работает под управлением терминала QUIK. История о том, как я его использовал и дорабатывал будет позже. Сейчас о функциональных возможностях. Нужна обратная связь. Для дальнейшей правки и усовершенствования.

Текущая версия тестера получила название LbotTest_2025. Ссылка для скачивания внизу. Там есть документация. Главное преимущество тестера над Lbot3D — для проверки стратегий не требуется демо-режим. Тем более — реальный. Это тоже конструктор. Его достаточно, чтобы понять основные возможности Lbot3D, сайт - https://www.xsharp.ru/. Сконструировать свои стратегии и проверить их на истории.

Что было добавлено в новую версию тестера. Прежде всего — возможность работать одновременно с графиками (свечи + индикаторы) разных активов (инструментов). Это — главная особенность Lbot3D .  Результаты тестирования (эквити) выводятся в рублях, с учетом заданного размера позиции (WorkSize). Если актив в иностранной валюте, берется текущий курс. При одновременном тестировании нескольких стратегий, все сделки с результатами сохраняются в отдельных табличных файлах. При этом, имя файла соответствует идентификатору раздела в файле инструкций (LbotTest.ini). Чтобы учесть потери при возможном проскальзывании задается опция OpenSlippage. Она учитывается как при открытии, так и закрытии позиции.

Пример LbotTest.ini файла, описывающего простейшую стратегию, на пересечении ценой скользящую среднюю.

xy = 635, 0, 850, 750   // Расположение и размер окна тестера 
Twidth = 9,9,9,6,11,17,10,10,11,10,13,12,10,6,6  // Ширина колонок окна тестера
ALIGNMENT = RIGHT  // Расположение картинки относительно текста (LEFT, RIGHT, TOP, BOTTOM)
TestDate = Y, 11.12.2024, 10:00	// Начальная дата и время тестирования (только для тестера), не обязательна

[ED_T1]
; Стратегия на скользящей средней. Реверсная. По умолчанию: WorkSize=1
; Формат имен индикаторов: Инструмент_Таймфрейм_График (ED_m15_mr)
Security = EDH5, SPBFUT, ED_m15, T1  // инструмент, класс, график цены, стратегия
OpenLong = {Close, 1} > {ED_m15_mr, 1}  // Открытие лонга по предыдущей свече
OpenShort = {Close, 1} < {ED_m15_mr, 1} and math.abs({Close, 1}-{Open, 1}) > 0.0002 // Шорт по мат. функции Lua
Reverse = Y  // Необходимо для переворота позиции

 Скачать тестер: https://cloud.mail.ru/public/8R8B/3wExc2sRn

Ставьте лайки. Прямо сейчас!

Продолжение следует.




8 комментариев
тестирует в квике?
avatar
NZT2020, Да. Не отходя от… Для тех, кому лень скачивать исторические данные ) Я работал только со свежими. Еще сохраняю QUIK, каждый раз, перед обновлением фьючерсов
avatar
Хоббит, так я сам могу легко протестить в квике
avatar
NZT2020, Вручную? Раньше я тоже так делал. Сейчас у меня >50 инструментов. Под каждый 4 таймфрейма. Еще под сотню стратегий.
avatar
Хоббит, добавляешь прогон по свечкам в коде lua и вперед. Минус в том что в квике ограниченный период на графике. 
avatar
NZT2020, «добавляешь прогон» Ну это для тех кто знает Lua. Точнее QLua ). Надо еще программировать разные мелочи. Типа вывода результатов прогона в разные файлы…
avatar
Изобрел недавно индикатор эквити по заданной стратегии. Позволяет обходится без тестера. Но пришлось добавить фичу выборки самых лучших инструментов по эквити за самый последний период. Здесь тоже пришлось использовать тестер
avatar
В чем хорош индикатор эквити. При трендовых стратегиях бывают боковики. Этот индикатор позволяет их распознать (эквити уменьшается). Приходится переходить на другие инструменты
avatar

теги блога Хоббит

....все тэги



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