rss

Профиль компании

Финансовые компании

Блог компании Os_Engine | Что такое робастность. Оптимизатор в Os Engine #2.

Используя возможность быстрой и легкой оптимизации стратегий с переборами десятков тысяч различных настроек для параметров роботов, многие стратегии могут быть излишне адаптированы под конкретный участок истории. А на других участках истории (включая будущие) работать перестанут.

Поэтому, в данном контексте, важно обсудить понятие Робастности (Robustness).

Что такое робастность. Оптимизатор в Os Engine #2.

Термин «робастность» означает способность торговой стратегии повторять результаты своего тестирования в прошлом на других данных.

Рассмотрим примеры.

Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой, как в красном квадрате. Отлично! Включаем стратегию в торги, и в реальном времени за следующие два месяца стратегия дала примерно такой же результат по прибыльности, как и в тестере:

Что такое робастность. Оптимизатор в Os Engine #2.
Рис. 1. Стратегия с высокой робастностью повторяет результаты тестов в реальной торговле.


Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой же, как в красном квадрате. Включаем стратегию в торги, при этом в реальном времени за следующие два месяца (зелёный квадрат) стратегия вам дала убытки:

Что такое робастность. Оптимизатор в Os Engine #2.
Рис. 2. Стратегия с низкой робастностью не повторяет результаты тестов в реальной торговле.

 

Проблематика.

Этот термин возник в тот момент, когда появилась техническая возможность тестировать и оптимизировать торговые стратегии.

Выяснилось, что не все стратегии, показывающие хорошую прибыль в тестах, показывают прибыль в реальных торгах. Так происходит с большинством стратегий.

 

Повышаем робастность. Правило 1000 сделок.

 

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

Что такое робастность. Оптимизатор в Os Engine #2.
Рис. 3. Если у вас больше 1000 сделок, скорее всего, это будет работать. Но не факт и не всегда

Что такое робастность. Оптимизатор в Os Engine #2.
Рис. 4. Если у вас меньше 1000 сделок, скорее всего, это НЕ будет работать.

 

Важно понимать, что эта цифра — не аксиома. 

Чем больше сделок, тем робастность выше. И чем меньше количество сделок, тем шанс того, что стратегия будет прибыльной в будущем, резко понижается.

 

Повышаем робастность. Кросс-тестирование (Cross-tests).

Одним из способов добрать до 1000 сделок на обучающей выборке являются кросс-тесты.

Это когда вы запускаете одну и ту же стратегию с одними и теми же параметрами, с одним и тем же таймфреймом, НО НА РАЗНЫХ ИНСТРУМЕНТАХ!

Что такое робастность. Оптимизатор в Os Engine #2.
Рис. 5. Кросс-тесты. Тесты одной стратегии с одинаковыми параметрами на разных бумагах. 

 

Удачных алгоритмов!

Комментарии открыты для друзей!

Что такое робастность. Оптимизатор в Os Engine #2. 

OsEngine: https://github.com/AlexWan/OsEngine
FAQ: https://o-s-a.net/os-engine-faq
Поддержка OsEngine: https://t.me/osengine_official_support

Регистрируйся в АЛОР и получай бонусы: https://www.alorbroker.ru/open
Сайт АЛОР БРОКЕР: https://www.alorbroker.ru
Раздел «Для клиентов»: https://www.alorbroker.ru/openinfo/for-clients
Программа лояльности от АЛОР БРОКЕР и OsEngine: https://smart-lab.ru/company/os_engine/blog/972745.php

Что такое робастность. Оптимизатор в Os Engine #2.

★1

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