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

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

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

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

Рис. 3. Если у вас больше 1000 сделок, скорее всего, это будет работать. Но не факт и не всегда

Рис. 4. Если у вас меньше 1000 сделок, скорее всего, это НЕ будет работать.
Важно понимать, что эта цифра — не аксиома.
Чем больше сделок, тем робастность выше. И чем меньше количество сделок, тем шанс того, что стратегия будет прибыльной в будущем, резко понижается.
Повышаем робастность. Кросс-тестирование (Cross-tests).
Одним из способов добрать до 1000 сделок на обучающей выборке являются кросс-тесты.
Это когда вы запускаете одну и ту же стратегию с одними и теми же параметрами, с одним и тем же таймфреймом, НО НА РАЗНЫХ ИНСТРУМЕНТАХ!

Рис. 5. Кросс-тесты. Тесты одной стратегии с одинаковыми параметрами на разных бумагах.
Удачных алгоритмов!
Комментарии открыты для друзей!
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
Подробнее https://smart-lab.ru/compan...

