Избранное трейдера Великий Нехочух
«Робастность» — это способность торговой стратегии воспроизводить результаты своего тестирования на новых данных.
Было бы полезно измерить эту характеристику численно. В этом тексте расскажем о метрике робастности стратегии, представленной в OsEngine — Walk-Forward Robustness Metric.
Примеры.
Вы оттестировали какую-то стратегию в тестере и видите результат в красном квадрате. Отлично! Включаем стратегию в торги, и в реальном времени за следующие два месяца стратегия вам дала примерно такой же результат по прибыльности, как и в тестере: стратегия с высокой робастностью повторяет результаты тестов в реальной торговле.
Разновидностей свечей – ДЕСЯТКИ. Это отдельная вселенная того, как можно схлопывать ленту сделок в привычные столбики с хвостами. Мы привыкли видеть графики инструментов в виде Японских свечей, жёстко ограниченных временными рамками 5 минут, 30 минут и т.д. Это всё классно для пробойных стратегий или арбитражных, например. Но для многих стратегий это не является оптимальным.
Например, существует целый ряд стратегий, направленных на следование «за большими деньгами». И как раз-таки, некоторые типы свечей могут показывать активность участников с огромными депозитами (пенсионных фондов, хедж фондов и т.д.). И это чётко и ясно видно, если знать, как именно нужно построить свечи, как на этой картинке:
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) был создан Константином Копыркиным, российским трейдером и разработчиком программного обеспечения для торговли на финансовых рынках. Он известен своими работами в области технического анализа и автоматизации торговых стратегий.
В OS Engine имеется возможность автоматического подключения к серверу после закрытия программы, что облегчает процесс. После настройки и выполнения подключения к бирже один раз, при последующем запуске OS Engine оно будет автоматически восстанавливаться.
Для использования этой удобной функции заходим в «Connection servers» в модулях Bot Station или Bot Station Light.
В этой статье разберем торговый интерфейс — «Bot Station Light».
Открываем OsEngine:
Итак, подытоживая: я писал про некую наработанную эвристику в разработке, которая вроде как сильно ускорила процесс, но позже я уточнял, что мой интеллект с таким ускорением уже не справляется. Эвристика подсказывает скорее не само решение, а то, где и как его искать. Но задачи становятся настолько сложными для моего ограниченного сознания, что решений приходится ждать от дефолт-системы мозга (ДСМ), а это значит ждать долго.
Однако, могу поклясться, все три года на R&D я провёл в ощущении, что вот тут разрешу проблему, вот тут доресёчу, вот там доделаю — и будет идеальная законченная безошибочная модель/алго. Но в конце концов сама эвристика в процессе разработки привела меня к переломному моменту, когда я искренне почувствовал, что это может длиться «вечно» и невозможно спрогнозировать какие-либо сроки.
Рассмотрим один из способов узнать оптимальное соотношение объёмов между роботами. Ансамблирование объёмов, которое можно делать вручную, в журнале OsEngine. Эта информация актуальна, если вы торгуете несколькими роботами одновременно.
Распределить объёмы между роботами равномерно – это самое простое, что можно сделать.
Если берем 10 роботов, то дробим все деньги, которые хотим торговать, на 10 и устанавливаем для торгов.
Это самый простой подход, и он работает.
Это способ распределения объёмов между роботами таким образом, чтобы уменьшить максимальную просадку.
Проводим тесты роботов на всей имеющейся истории и открываем журнал.
Для этого нужно иметь возможность динамически менять размер входа по позиции.
В OsEngine есть такая возможность!
1. Надо провести тесты с равномерным распределением объёма.
Ваши роботы должны торговать в % от депозита и иметь равномерную его часть на торговые операции во время тестирования.
В этой статье разберемся в типах профитов и посмотрим, чем различаются P\L в журналах Os Engine.
Для тестов возьмем робота ZZ Channel и проведём обычные тесты, получив какой-то результат тестирования, который и будем рассматривать.
Журнал сделок в OS Engine играет важную роль в отслеживании и анализе выполненных сделок с помощью платформы OS Engine. В этом журнале содержится информация о каждой сделке, включая дату, время, инструмент, объем торгов, цены входа и выхода, комиссии, прибыль и другие связанные данные.
В OsEngine есть два типа журнала:
Рассмотрим общий журнал, в который попадаем, нажав на кнопку «Journal» в главном меню: