Перейти к содержимому
Роботы и советники 2 мин чтения

Оптимизация советника: как не скатиться в подгонку

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

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

Что это и как работает

В тестере можно перебрать множество значений параметров и выбрать лучшие. Проблема в том, что «лучшие на истории» часто просто подогнаны под случайные особенности прошлого (переоптимизация, кривая подгонка). Такой советник запоминает шум, а не закономерность, и в реале рассыпается.

Плато против пика

Ключевая интуиция честной оптимизации: ищите «плато», а не «пик». Если результат отличный только при одном точном наборе параметров, а чуть в сторону — всё разваливается, вы нашли случайность прошлого. Если же соседние значения дают похожий приличный результат — это устойчивое плато, и вероятность, что закономерность реальна, выше. Робот, живущий на широком диапазоне настроек, переживёт смену рыночных условий; робот на игольчатом пике — нет.

Как это выглядит на практике

Вы прогнали оптимизацию и видите: при периоде 14 прибыль огромна, а при 13 и 15 — убыток. Соблазн взять «14 и радоваться». Но это красный флаг подгонки: рынок не знает про вашу цифру 14. Правильнее выбрать участок, где 12–16 дают ровный положительный результат, пусть и скромнее пикового. Затем проверить на отложенных данных и форвардом. Значения условны и служат лишь иллюстрацией разницы между пиком и плато.

Плюсы и минусы

Плюс честной оптимизации: адаптация робота к инструменту и таймфрейму, отсев заведомо плохих настроек. Минус и риск: соблазн «докрутить» до идеальной кривой, которая не воспроизводится. Чем больше параметров и меньше данных, тем выше риск переподгонки.

Как оптимизировать без переподгонки

Делите историю: оптимизируйте на одной части (in-sample), проверяйте на другой (out-of-sample). Используйте walk-forward: скользящее окно оптимизации и проверки. Предпочитайте параметры из широкого устойчивого «плато», а не одиночный пик. Держите число параметров минимальным: каждая лишняя настройка повышает шанс подогнать робота под шум. Завершайте форвард-тестом на демо.

Частые вопросы

Оптимизация — это вообще плохо?

Нет, честная оптимизация полезна. Плохо — «докручивать» до идеальной картинки, которая не воспроизводится на новых данных.

Что такое out-of-sample?

Это часть истории, которую вы не использовали при подборе параметров, — на ней проверяют, работает ли настройка вне «выученного» периода.

Сколько параметров — норма?

Чем меньше, тем устойчивее. Много параметров на короткой истории почти гарантируют переподгонку.

Как понять, что робот переоптимизирован?

Идеально на истории, но плохо на out-of-sample и на форварде; результат резко чувствителен к малейшему сдвигу параметров — сдвинули на шаг, и прибыль превратилась в убыток.

Итог

Хорошая оптимизация ищет устойчивость, а не идеальную картинку прошлого. Разделяйте данные, применяйте walk-forward и форвард-тест. Специализированные инструменты для честной проверки смотрите в нашем каталоге бэктест-сервисов.

Материал носит образовательный характер и не является индивидуальной инвестиционной рекомендацией (не ИИР).

Материал носит информационный характер и не является индивидуальной инвестиционной рекомендацией. Редакционная политика

Читайте также