Walk Forwards – один из способов избежать переобучения алгоритма, путём проверки его способности адаптироваться к новым периодам данных.
12 июня пройдёт большое обновление. В проект будет добавлен слой создание кастомных серий свечек. Со своей фабрикой, параметрами и т.д. А новый тип свечек будет писаться как индикатор, в 100 – 300 строк без знаний архитектуры и чего бы то ни было сложного в отдельном файле, размещённом где угодно в проекте или папке Custom/CandleSeries. Соответствующая серия инструкций будет в FAQ и в два раза больше на СмартЛабе в течении месяца. Что откроет нам, пользователям OsEngine, новую дивную психоделическую реальность десятков различных взглядов на ленту следок.
Но не всё так радужно. Изменения настолько обширные и всеобъемлющие, что кое-где нарушится обратная совместимость… То, чего я очень боюсь и стараюсь вносить такие изменения очень редко, либо вообще не вносить. Но сегодня – тот случай, когда это сделать придётся, скрепя сердцем…
Где проблемы будут точно:
Сегодня мы рассмотрим индикатор NRTR. Узнаем историю создания индикатора и то, как он рассчитывается.
Также к данной статье будут прикреплены готовые скрипты роботов на этом индикаторе с возможностью торговать на нашей платформе OsEngine.
1. История создания индикатора NRTR.
2. Как проводятся расчеты индикатора NRTR.
3. Какие сигналы может подавать индикатор NRTR.
4. Роботы для OsEngine на индикаторе NRTR.
4.1. Стратегия на индикаторах NRTR и SmaChannel.
4.2. Контртрендовая стратегия на индикаторах NRTR и ROC.
5. Итоговая таблица результатов.
Индикатор Nick Rypock Trailing Reverse (NRTR) был создан Константином Копыркиным, российским трейдером и разработчиком программного обеспечения для торговли на финансовых рынках. Он известен своими работами в области технического анализа и автоматизации торговых стратегий.
Используя возможность быстрой и легкой оптимизации стратегий с переборами десятков тысяч различных настроек для параметров роботов, многие стратегии могут быть излишне адаптированы под конкретный участок истории. А на других участках истории (включая будущие) работать перестанут.
Поэтому, в данном контексте, важно обсудить понятие Робастности (Robustness).
Термин «робастность» означает способность торговой стратегии повторять результаты своего тестирования в прошлом на других данных.
Рассмотрим примеры.
Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой, как в красном квадрате. Отлично! Включаем стратегию в торги, и в реальном времени за следующие два месяца стратегия дала примерно такой же результат по прибыльности, как и в тестере:
Модуль оптимизации предоставляет возможность выполнения различных видов оптимизации стратегии, включая простой перебор параметров и Walk-Forward тестирование. В этой статье мы рассмотрим первый вариант — простой перебор параметров.
Из главного меню запускаем «Оптимизатор»:
В OS Engine имеется возможность автоматического подключения к серверу после закрытия программы, что облегчает процесс. После настройки и выполнения подключения к бирже один раз, при последующем запуске OS Engine оно будет автоматически восстанавливаться.
Для использования этой удобной функции заходим в «Connection servers» в модулях Bot Station или Bot Station Light.
В этой статье разберем торговый интерфейс — «Bot Station Light».
Открываем OsEngine:
Рассмотрим один из способов узнать оптимальное соотношение объёмов между роботами. Ансамблирование объёмов, которое можно делать вручную, в журнале OsEngine. Эта информация актуальна, если вы торгуете несколькими роботами одновременно.
Распределить объёмы между роботами равномерно – это самое простое, что можно сделать.
Если берем 10 роботов, то дробим все деньги, которые хотим торговать, на 10 и устанавливаем для торгов.
Это самый простой подход, и он работает.
Это способ распределения объёмов между роботами таким образом, чтобы уменьшить максимальную просадку.
Проводим тесты роботов на всей имеющейся истории и открываем журнал.
Для этого нужно иметь возможность динамически менять размер входа по позиции.
В OsEngine есть такая возможность!
1. Надо провести тесты с равномерным распределением объёма.
Ваши роботы должны торговать в % от депозита и иметь равномерную его часть на торговые операции во время тестирования.
В этой статье разберемся в типах профитов и посмотрим, чем различаются P\L в журналах Os Engine.
Для тестов возьмем робота ZZ Channel и проведём обычные тесты, получив какой-то результат тестирования, который и будем рассматривать.