Используя возможность быстрой и легкой оптимизации стратегий с переборами десятков тысяч различных настроек для параметров роботов, многие стратегии могут быть излишне адаптированы под конкретный участок истории. А на других участках истории (включая будущие) работать перестанут.
Поэтому, в данном контексте, важно обсудить понятие Робастности (Robustness).
Термин «робастность» означает способность торговой стратегии повторять результаты своего тестирования в прошлом на других данных.
Рассмотрим примеры.
Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой, как в красном квадрате. Отлично! Включаем стратегию в торги, и в реальном времени за следующие два месяца стратегия дала примерно такой же результат по прибыльности, как и в тестере:
Рис. 1. Стратегия с высокой робастностью повторяет результаты тестов в реальной торговле.
Вы оттестировали какую-то стратегию в тестере и видите результат, примерно такой же, как в красном квадрате. Включаем стратегию в торги, при этом в реальном времени за следующие два месяца (зелёный квадрат) стратегия вам дала убытки:
Рис. 2. Стратегия с низкой робастностью не повторяет результаты тестов в реальной торговле.
Этот термин возник в тот момент, когда появилась техническая возможность тестировать и оптимизировать торговые стратегии.
Выяснилось, что не все стратегии, показывающие хорошую прибыль в тестах, показывают прибыль в реальных торгах. Так происходит с большинством стратегий.
Первое, что надо запомнить, что прибыльность на выборке не из обучения часто напрямую зависит от количества сделок, которые совершал робот в обучающей выборке.
Рис. 3. Если у вас больше 1000 сделок, скорее всего, это будет работать. Но не факт и не всегда
Рис. 4. Если у вас меньше 1000 сделок, скорее всего, это НЕ будет работать.
Важно понимать, что эта цифра — не аксиома.
Чем больше сделок, тем робастность выше. И чем меньше количество сделок, тем шанс того, что стратегия будет прибыльной в будущем, резко понижается.
Одним из способов добрать до 1000 сделок на обучающей выборке являются кросс-тесты.
Это когда вы запускаете одну и ту же стратегию с одними и теми же параметрами, с одним и тем же таймфреймом, НО НА РАЗНЫХ ИНСТРУМЕНТАХ!
Рис. 5. Кросс-тесты. Тесты одной стратегии с одинаковыми параметрами на разных бумагах.
Удачных алгоритмов!
Комментарии открыты для друзей!
OsEngine: https://github.com/AlexWan/OsEngine
Поддержка 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