Проблемы переобучения

Пример переобучения или переоптимизации при настройке торговых систем

С феноменом переоптимизации при подборе параметров автоматических торговых систем, сталкиваются алго трейдеры и разработчики. Переоптимизация — это процесс, при котором модели или стратегии становятся слишком адаптированными к историческим данным и теряют свою эффективность на новых данных.

Переоптимизация автоматических торговых стратегий может происходить по нескольким причинам:

 

  1. Стремление к высоким результатам на исторических данных: Трейдеры могут слишком тщательно настраивать свои модели или стратегии, чтобы они идеально соответствовали прошлым данным. Это может привести к тому, что модель будет хорошо работать на исторических данных, но плохо адаптироваться к новым условиям рынка.
  2. Использование сложных моделей: иногда разработчики торговых систем применяют очень сложные математические модели или алгоритмы, которые могут быть слишком чувствительны к небольшим изменениям в данных. Такие модели часто оказываются неэффективными в реальных торговых условиях.
  3. Недостаток данных или их качество: если данные, на которых обучается модель, ограничены или имеют низкое качество, это может вынудить алгоритмы подбора параметров прибегнуть к переоптимизации, чтобы достичь приемлемых результатов.
  4. Нестабильность рынка: финансовые рынки очень динамичны и подвержены влиянию множества факторов. Стратегии, которые хорошо работали в прошлом, могут стать неэффективными из-за изменений в условиях рынка.

 

Важно понимать, что переоптимизация может привести к ухудшению эффективности стратегий на практике и увеличению рисков.

 

 

Способы решения проблемы переоптимизации

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

 

  1. Расширение выборки данных позволяет получить более репрезентативную картину поведения системы в различных рыночных условиях, что снижает риск переобучения. Можно использовать дополнительные символы или просто более глубокую историю по символу.
  2. Параллельное тестирование нескольких наборов параметров с небольшими отклонениями помогает выявить оптимальные значения и определить зону устойчивости системы к изменениям входных параметров. То есть использовать сразу несколько наборов параметров и тестировать сразу несколько систем одновременно, сдвигая параметры в обе стороны. Например, если мы пытаемся подобрать период скользящей средней и тестируем параметр 100, то одновременно в тестировании должны участвовать ещё две идентичные системы с параметрами 95 и 105.
  3. Использование специальных критериев оптимизации, ориентированных на стабильность работы, позволяет отобрать наиболее надежные конфигурации системы, способные показывать стабильный результат в реальных условиях торговли.

 

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

Статья впервые опубликована: 27 апреля 2025

Дата последнего обновления: 08 мая 2025