Введение в оптимизацию советников MT5 с помощью генетического алгоритма
Содержание
- Что такое генетический алгоритм
- Когда что использовать: перебор или генетика
- Настройки в тестере стратегий
- Как выбрать критерий оценки
- Запуск оптимизации с генетическим алгоритмом
- Типичные ловушки
- Как избежать переоптимизации
- 1. Разделите данные на периоды
- 2. Сравнивайте 10–20 лучших решений
- 3. Проверяйте чувствительность параметров
- 4. Оставляйте параметры вне оптимизации
- Параллельная оптимизация
- Подход к оптимизации в советниках с нашего сайта
- Скачайте бесплатный EA
- Рекомендуемые брокеры
Введение в оптимизацию советников MT5 с помощью генетического алгоритма
При настройке параметров EA в тестере стратегий MT5 доступны два режима оптимизации: «Полный перебор» (проверка всех возможных комбинаций параметров) и «Генетический алгоритм» (GA).
Для практического исследования огромного числа комбинаций за разумное время стандартным подходом является генетический алгоритм. В этой статье рассмотрим основы оптимизации с помощью генетического алгоритма и ключевые практические моменты.
Что такое генетический алгоритм
Генетический алгоритм (Genetic Algorithm, GA) — это метод оптимизации, имитирующий биологическую эволюцию. Процесс выглядит следующим образом:
- Генерируется несколько случайных наборов параметров (особей)
- Для каждой особи выполняется бэктест, результаты оцениваются по выбранному критерию (PF, коэффициент восстановления и т.д.)
- Лучшие особи выбираются в качестве «родителей», из которых путём скрещивания и мутации создаётся следующее поколение
- Процесс повторяется: с каждым поколением параметры всё больше сходятся к наилучшим значениям
В отличие от полного перебора, который «проходит все комбинации», GA «концентрируется на перспективных областях» — поэтому вычислительное время сокращается на порядки.
Когда что использовать: перебор или генетика
- Параметров мало, комбинаций не более нескольких тысяч — используйте полный перебор для исчерпывающего поиска
- Параметров много, комбинаций десятки тысяч и более — используйте генетический алгоритм
Например, если три параметра перебираются по 10 шагов каждый, получается 1 000 вариантов — с этим справится полный перебор. Но если пять параметров по 20 шагов — это уже 3,2 миллиона вариантов, и без генетического алгоритма не обойтись.
Настройки в тестере стратегий
Для включения оптимизации задайте в тестере стратегий следующие параметры:
- Оптимизация: выберите «Быстрая на основе генетического алгоритма»
- Результат: выберите критерий оценки — «Максимальный баланс», «Пользовательский максимум», «Максимальный коэффициент восстановления» и т.д.
- Вкладка «Входные параметры»: поставьте галочки напротив параметров для оптимизации, задайте начальное, конечное значения и шаг
Как выбрать критерий оценки
Выбор критерия напрямую влияет на результат. Вот основные варианты и их особенности:
- Максимальный баланс (прибыль): максимизирует только доход. Игнорирует риск — склонен к переоптимизации
- Коэффициент восстановления: чистая прибыль ÷ максимальная просадка. Сбалансированный подход
- Коэффициент Шарпа: учитывает стабильность доходности
- Пользовательский максимум: задаётся свободно в коде EA (например, PF × количество сделок)
Использование коэффициента восстановления или коэффициента Шарпа — наиболее практичный способ найти рабочие параметры и при этом избежать переоптимизации.
Запуск оптимизации с генетическим алгоритмом
После запуска оптимизации на вкладке «Результаты оптимизации» по каждому поколению начнут появляться наборы параметров с высокими оценками. GA в MT5 автоматически прогоняет сотни поколений, постепенно сходясь к лучшим решениям.
Типичные ловушки
- Слишком быстрая сходимость: возможно, диапазон поиска параметров задан слишком узко
- Нет сходимости вовсе: критерий оценки выбран неудачно, либо данные слишком зашумлены
- Сходимость к явно странным значениям: среди результатов не отфильтрованы решения с малым числом сделок
Включение в функцию оценки фильтра вроде «исключить результаты с менее чем 50 сделками» позволяет отсеять шумовые решения с недостаточной статистикой.
Как избежать переоптимизации
Чем дольше вы оптимизируете, тем больше рискуете получить параметры, «идеальные для прошлого, но бесполезные в будущем». Вот практические правила, помогающие этого избежать.
1. Разделите данные на периоды
Если у вас данные за 10 лет, проводите оптимизацию на первых 7 годах, а на оставшихся 3 — тест на выборке вне обучающего периода (out-of-sample). Если результаты на тестовом периоде резко ухудшаются, это свидетельствует о переподгонке на обучающем периоде.
2. Сравнивайте 10–20 лучших решений
Выбирать только одно решение с наивысшим показателем опасно. Проверьте, сосредоточены ли лучшие решения в одной области пространства параметров: если да, выбирайте значения ближе к центру этого кластера.
3. Проверяйте чувствительность параметров
Отклоните параметры финального кандидата на ±10–20% и убедитесь, что результат не рассыпается. Если рассыпается — решение подогнано под «острый пик», а не под устойчивый оптимум.
4. Оставляйте параметры вне оптимизации
Всегда сохраняйте несколько «логически естественных фиксированных значений», которые не участвуют в оптимизации — это снижает риск переоптимизации. Например: период EMA оптимизируете, а множитель ATR фиксируете.
Параллельная оптимизация
MT5 поддерживает параллельную оптимизацию с использованием нескольких ядер CPU. Перейдите в «Тестер» → «Настройки» и увеличьте число используемых агентов — это сократит время вычислений.
Кроме того, сеть MQL5 Cloud позволяет задействовать удалённые агенты по всему миру для масштабной оптимизации, однако это платно. Поэтому эффективнее сначала сузить диапазоны параметров локально, а затем при необходимости задействовать облако.
Подход к оптимизации в советниках с нашего сайта
В случае GOLD_EMA_ATR_EA (XAUUSD H1) круг параметров для оптимизации намеренно ограничен:
- Короткий период EMA
- Длинный период EMA
- Множитель ATR (для стоп-лосса)
Остальные параметры зафиксированы на «естественных значениях» — это часть дизайна, направленного на предотвращение переоптимизации. Значение PF 1.30 на 10-летнем бэктесте можно повысить, прогнав оптимизацию дольше, — но тогда возрастёт и вероятность того, что советник перестанет работать на реальном рынке. «Выбрать скромные цифры и работать долго» — вот практически обоснованная стратегия реальной торговли.
Скачайте бесплатный EA
GOLD_EMA_ATR_EA распространяется бесплатно — в комплекте идут оптимизированные параметры и руководство по оптимизации.
Рекомендуемые брокеры
Чтобы результаты бэктеста и оптимизации воспроизводились в реальной торговле, мы рекомендуем брокеров с высоким качеством исполнения ордеров.
По теме
2026-05-12
Бэктестирование FX EA: правильная методология и ключевые ошибки
2026-05-22
Как читать отчёт бэктеста MT5 [издание 2026 года]: полное руководство по показателям
2026-05-18
Как организовать демо-тестирование EA перед запуском в реальную торговлю — что проверить за 3 месяца
2026-05-18
Управление просадкой MT5 EA — автоматическая остановка и психологический контроль
5-дневный курс по email (бесплатно)
Получайте по одному письму в день об основах автоматизированной FX-торговли, правильном чтении бэктестов и советах по выбору брокера.
* Конфиденциальность строго защищена. Отписаться можно в любое время.