Как сделать оптимизацию советника в mt4. Что такое оптимизация советника или как увеличить эффективность торгового эксперта. Метод моделирования тестера

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

В предыдущей статье мы уже кратко познакомились с тестером стратегий и научились скачивать репрезентативные котировки, поэтому сегодняшний обзор будет посвящён именно практической части оптимизации советника в MT4.

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

По большому счёту, это «сливатор», который вручную настроить практически невозможно, поэтому я его и выбрал для экспериментов, чтобы показать преимущества автоматической оптимизации советников в MT4.

Итак, советник выбран, теперь на панели тестера задаём остальные ключевые параметры - торговый инструмент (это тикер валютной пары, металла или CFD), таймфрейм, тип модели (желательно всегда выбирать «все тики»), дату тестирования и, самое главное, ставим галочку напротив пункта «оптимизация».

На втором этапе настройки потребуется задать начальные параметры счёта и робота, а также установить величину шага для функций, требующих оптимизации. Для решения этой задачи нажимаем кнопку «Свойства эксперта».

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

В представленном примере я решил «подогнать» три функции - CCI_per (основной индекс), MA_per (сигнальная скользящая) и CCI_close_per (индекс, по значениям которого сделка закрывается), поэтому галки стоят только напротив перечисленных переменных.

Параметры всех остальных функций в процессе оптимизации советника в MT4 меняться не будут, поэтому они задаются сразу в колонке «Значение».

Таким образом, если параметр оптимизируется, необходимо заполнять колонки «Старт», «Шаг» и «Стоп», но если переменная в процессе тестов меняться не будет, она настраивается лишь однажды в поле «Значение».

Затем переходим во вкладку «Тестирование» и задаём здесь величину начального депозита, разрешаем советнику открывать сделки в обе стороны (buy и sell), а также отключаем функцию «генетический алгоритм».

Генетический алгоритм - это специальный «умный» модуль, при помощи которого терминал ищет прибыльные «прогоны», после чего начинает подгонять значения ключевых переменных таким образом, чтобы все потенциально профитные комбинации тестировались в первую очередь.

Практика показывает, что подобный подход зачастую мешает оценить результаты теста, поскольку переменные советника подбираются вразнобой, например, в первом прогоне CCI_per будет равен 25, во втором 55, а в третьем 15. Мне нравится, когда всё упорядочено, поэтому я отключаю данную функцию.

Но это ещё не всё. Чтобы сократить время оптимизации советника в MT4, целесообразно задать ограничения на максимальную просадку, прибыль и прочие статистические переменные. Сделать это можно в специальной вкладке того же самого окна.

Когда всё готово, просто нажимаем на кнопку «старт», как и при обычном единичном тесте. С этого момента оптимизация началась.

Как можно заметить, на рабочей панели тестера появились две новые вкладки, которых раньше не было - «Результаты оптимизации» и «График оптимизации». Учитывая тот факт, что здесь собрана необходимая нам информация, остановимся на каждой из них подробнее.

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

По умолчанию здесь показаны только прибыльные результаты, но я рекомендую включить отображение всех тестов, в том числе и убыточных. Сделать это можно при помощи правой кнопки мыши:

Как нетрудно догадаться, результаты тестов можно упорядочить по определённому параметру, например, разумно их расположить в порядке убывания итогового баланса.

«График оптимизации» также является источником важной информации, в частности, его точечный вариант позволяет оценить, как менялись прибыли и убытки по мере корректировки того или иного параметра.

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

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

Справедливо и обратное утверждение - бледные участки матрицы соответствуют самым «неудачным» тестам, поэтому подобные «пулы данных» можно смело отбрасывать из дальнейших исследований.

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

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

  • Результат оптимизации оценивается:
  • Высокой общей прибылью
  • Минимальной просадкой
  • Большим количеством прибыльных сделок
  • Минимальным риском
  • Оптимальным сочетанием вышеприведенных целей

Алгоритм Советника, как правило, не предусматривает “человеческого вмешательства ”, что предполагает в нем наличие блоков для формирования сигнала на вход, выход и мани менеджмента:

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

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

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

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

  • Важных глобальных новостей
  • Политических событий
  • Сезонности

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

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

Оптимизация - это поиск и подбор качественных настроек Советника с помощью компьютерных технологий, реализованных в терминале MetaTrader 4. Эта технология превращает многочасовой и монотонный “ручной” труд трейдера по поиску наилучших параметров в легко выполнимую “минутную” задачу.

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

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

В начале процесса, трейдер должен провести подготовительный этап:

  • Запустить тестер стратегий из-под меню «Вид» или комбинацией клавиш быстрого доступа Ctrl+R
  • Скачать/обновить архив котировок (клавиша F2) валютных пар, участвующих в тесте
  • Выбрать Советник и настроить параметры, совпадающие с рабочим инструментом (валютной парой), таймфреймом, спредом и периодом истории

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

Запуск оптимизации Советника состоит из четырех шагов, в ходе которых определяются цели, задаются пределы, шаг изменения параметров.

Шаг 1: настройка параметров вкладки “Тестирование”

В правом нижнем углу окна тестера стратегий нажмите опцию «», в открывшемся окне перейдите на вкладку “Тестирование”

  • Выберите размер депозита и валюту депозита - По умолчанию выставлено 10 000 USD. Оба параметра не критичны для оптимизации, но не стоит занижать стартовую сумму, особенно при использовании Советников с использованием стратегией сеток. В рассматриваемом примере оптимизируется, как раз такая стратегия - VR Smart Grid , поэтому принимаем настройки по умолчанию
  • Укажите вид разрешенных при тестировании и оптимизации ордеров: покупки/продажи (long&short), только покупки (long) только продажи (short) - По умолчанию разрешены оба вида сделок, трейдеры редко используют “однобокие” стратегии, поэтому оставляем настройки без изменений
  • Определите цель оптимизации параметров стратегии

На вкладке тестирования трейдер должен определиться, на что ориентироваться, улучшая входные параметры Советника:

  • Balance – эта опция стоит первой по умолчанию, из-за наиболее частого ее использования тестерами. Она дает простой и понятный способ выбрать лучшие параметры индикаторов, позволяющие достичь максимального приращения баланса на указанном историческом промежутке торгов;
  • Profit Factor – второй по популярности оптимизируемый параметр, более подходящий для систем со встроенным уровнем, мани менеджмента. Трейдер может отдать этому методу улучшения стратегии приоритет, если алгоритмом Советника предусмотрено изменение уровней тейк-профита и стоп-лосса. В этом случае прогоны оптимизации должны выдать наилучшее соотношение прибыли и убытка;
  • Expected Payoff – метод, позволяющий максимально избегать убыточных сделок, рекомендуется использовать при скальпинге или внутридневных стратегиях, так как присутствует побочный эффект уменьшения количества сделок;
  • Maximal Drawdown – оптимизация будет стремиться снизить просадку, но результаты поисков приведут к консервативной стратегии с низкой прибылью;
  • Drawdown Percent – этот метод схож с предыдущим, но подбор параметров стремится уменьшить просадку по каждой сделке. Побочные эффекты снижения прибыли приведут к уменьшению количества сделок;
  • Custom – оптимизация параметров, заданных пользователем

В рассматриваемом примере оптимизируется Советник VR Smart Grid, логика работы которого состоит в открытии сеток ордеров, поэтому трейдеру подойдет только первый пункт оптимизации – задать поиск параметров для получения максимального приращения баланса.

  • Подключите генетический алгоритм оптимизации стратегии

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

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

Плюс генетического алгоритма – максимальное качество проходов за короткий период времени. Генетический алгоритм, огромное количество вариаций настроек, сокращает до 10400 . В некоторых случаях при оптимизации советников количество проходов может исчисляться миллиардами, а время оптимизации миллионами часов. Именно при таких ситуациях эффективен генетический алгоритм.

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

В случае оптимизации Советника алгоритм не будет доводить до конца тестового периода стратегии со «слившимися» еще на старте параметрами.

Шаг2: настройка вкладки «Входные параметры»

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

  • В левом столбце отметьте параметры, которые будут изменяться и подбираться после запуска оптимизации. Параметры отмечаются галочкой.
  • Заполните столбец: Старт - Поставьте в ячейке “Старт” цифру меньше, чем в графе “Значение”, чтобы оптимизация начала проверку всех вариантов: периодов индикаторов, уровней стоп-лосса и тейк-профита, вариантов модификаций, заложенных внутри торговой системы
  • Установите значение столбца “Шаг” - В графе “Шаг” интервал изменения (перебора) выбранных оптимизируемых параметров. Для индикаторов наиболее распространенный вариант этого значения - единица. При таких настройках каждое историческое тестирование Советника (прогон) будет отличать от предыдущего на 1.

Для настроек мани менеджмента, обращаете внимание на единицу измерения ячейки графы «Значение». Она может быть в пунктах или процентах, в этом случае задание изменение шага в единицу, может затянуть процесс. Не стоит так мельчить, если речь идет о стоп-лоссе и тейк-профите, трейдеру лучше выбрать шаг перебора прогонов 5 или 10.

  • Поставьте ограничение оптимизации в графе “Стоп” - Цифра графы стоп должна превышать цифру ячейки «Значение». Это “отсечка”, определяющая параметры конечного прогона, достигнув которых тест оптимизации будет остановлен. Устанавливая эти ограничения, трейдер должен исходить из логики стратегии.

Для индикаторов цифра стоп выбирается, исходя из вида стратегии, например при торговле внутри дня редко понадобятся периоды индикаторов, равны 30, 50, 100 и т.д., но они подходят для долгосрочной стратегии.

Для параметров мани менеджмета, номинированных в процентах не стоит выбирать цифру больше 100. Что касается значений с размерностью пунктов, стоп в виде 100 или 200 - редкое явление, тогда, как для тейк профита такие цифры могут быть использованы.

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

В рассматриваемом примере Советник VR Smart Grid имеет множество входных параметров, однако наиболее важными являются следующие блоки:

  • Настройки изменения лотности - пользователь может доверить оптимизатору выбор между фиксированным значением каждой сделки в сетке или динамичным изменением ее размера
  • Манименеджмент Мартингейла - оптимизация выберет из предложенных разработчиком 5 алгоритмов увеличения каждой последующей инвестиции в сетке
  • Ограничение размера максимальной единичной сделки - оно “закроет строительство сетки”
  • Тип и шаг торговли
  • Манименеджмент , определяющий максимально возможные потери по депозиту, размеры фиксации профита и трейлинг стопа

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

Выставив галочки, означающие оптимизацию только нужных параметров, выбираем на старте и финише (колонка “Стоп”) значения, которые отличаются в меньшую и большую сторону от заложенных параметров в графе “Значение”. Также нужно учитывать их размерность при выборе шага перебора.

Остальные настройки регулируют функционал - проскальзывания, магический номер, не позволяющий роботу управлять другими (открытыми вручную) ордерами, настройки терминального времени и т.д. Все они не имеют отношения к оптимизации, поэтому остаются без изменений.


Шаг 3: вкладка «Оптимизации»

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

  • Минимальный баланс – выбран в долларах
  • Максимальная прибыль – берется равной начальному депозиту, чтобы отключить «прогон» при достижении 100% профита
  • Минимальный уровень маржи – взят 30%, это уровень стоп-аута у некоторых брокеров, при достижении которого сделки закрываются автоматически
  • Максимальная просадка – логично сочетается с минимальным уровнем маржи, в сумме составляя 100%
  • Непрерывное количество убыточных и прибыльных сделок , обычно выбраны нереальные значения

Любое значение можно включить или отключить, поставив отметку слева.

В приведенном примере оптимизации Советника VR Smart Grid , трейдеру нет смысла ограничивать сетку по серии прибыльных или убыточных сделок подряд, как и уровень прибыли, поэтому включаем в блок только настройки убытка:

Шаг 4: выбор исторического участка для оптимизации параметров стратегии

После выбора параметров на трех вкладках опции «» и включения слева режима тестера «Оптимизация», но перед нажатием кнопки «Старт», трейдер должен выбрать исторический период поиска оптимальных параметров.

Это интервал, задаваемый датой календаря в строке тестера «Использовать дату». При выборе отрезка трейдер должен придерживаться следующих принципов:

  • Точка отсчета должна совпадать с периодом снижения результативности стратегии, его поможет определить анализ кривой эквити отчета-стейтмента, полученного из «Истории счета».

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

  • Длина отрезка должна быть не менее трех календарных месяцев
  • Отрезки должны содержать явный растущий тренд, флет, падающий тренд
  • Желательно продлить период тестирования, чтобы добиться пропорциональной длины зон флэта, трендов вверх и вниз

Шаг 5: Запуск оптимизации

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

Анализ результатов оптимизации

Поиск оптимальных параметров Советника в тестере Metatrader 4 выполняется за множество прогонов стратегии на одном и том же историческом интервале в лимитах и с шагом параметров, заданных пользователем в настройках. Наиболее успешные из них отображаются на вкладках «График оптимизации » и «Результаты оптимизации ».

График оптимизации
График оптимизации выполнен в системе координат:

  • По оси Y – доходность (итоговый результат прогона по балансу)
  • По оси X – номера прогона по порядку

Расположение точек в оси координат позволяет получить оперативное визуальное представление о прибыльности параметров торговой системы конкретного теста. Чтобы перейти к изучению достигнутых оптимальных параметров самых высокодоходных, находящихся вверху графика прогонов, два раза кликните на точку графика оптимизации. Это автоматически перенесет трейдера на вкладку – «Результаты оптимизации».

Результаты оптимизации

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

Прогоны сведены в таблицу, в столбцах которой отображены:

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

Если Советник тестировался на предмет достижения максимального баланса депозита – выставленного параметра Balance на вкладке «Тестирование» (меню – “Свойство эксперта”) первые прогоны – самые максимальные по приросту прибыли. Это будет видно по второму столбику:

  • Прибыль
  • Всего сделок – количество сработавших ордеров, помогает трейдеру оценить соотношение частоты сделок и полученной прибыли

Приоритетным выбором является максимальная прибыль при минимуме сделок, исходя из принципа, что каждый выставленный ордер – это риск (получить убыток).

  • Прибыльность – параметр, показывающий коэффициент соотношение прибыли к убытку

Идеальным соотношением является величина 2, когда прибыль превышает убыток вдвое, но реальные показатели находятся в пределах от 1 до 1,5. Меньше единицы – убыток выше прибыли, выбор таких параметров может привести к потере депозита.

  • Матожидание – вероятность получения прибыльной сделки, чем этот параметр выше, тем лучше
  • Просадка – отображена в двух столбиках, отражающих числовое значение в $ и относительное в процентах

Исходя из простой логики, трейдер выбирает прогоны с наименьшей просадкой.

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

Программа Microsoft Excel при работе с таблицами обладает большим удобством и массой преимуществ, по сравнению с Metatrader. Полученные данные результатов оптимизации можно скопировать и перенести в Excel.

Сделать это достаточно просто – откройте страницу вкладки «Результаты оптимизации» и нажмите правой клавишей мыши в любом месте поля таблицы. В возникшем меню выберите функцию – «Копировать все».

Запустите программу Excel на компьютере, создайте новый или войдите в уже существующий файл, открыв новый лист Книги. Выгрузите содержимое буфера обмена, наведя предварительно курсор на левую верхнюю ячейку. Вставку можно провести с помощью клавиш Ctrl+V или опять воспользоваться меню, вызываемом правой клавишей мыши.

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

Каждый параметр набора настроек имеет собственное существенное влияние, например, период – на количество сделок, уровень стоп-лоссов – на размеры убытка и т.д. Сопоставляя и объединяя диаграммы, пользователь может визуально выбрать необходимое сочетание параметров, которое «пропустил» генетический алгоритм.

Применение выбранного прохода для последующего тестирования Советника

Полученные результаты оптимизации дают общее представления и набор множества вариантов параметров торговой системы. Чтобы получить детальное представление об эффективности работы каждого комплекта, трейдер должен провести тестирование Советника.
  • Выберите строку с нужным прогоном, установив на нее курсор мыши
  • Вызовите правым кликом клавиши дополнительное меню, переместите курсор на поле опции «Установить входные параметры» и кликните левой клавишей

  • В открывшемся поле тестера первой вкладки «Настройки» нажмите «Старт»

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

После нажатия кнопки «Старт» запускается стандартный процесс тестирования Советника, в ходе которого тестер «пополняется» дополнительными вкладками: “Результаты”, “График”, “Отчет” и “Журнал”.

  • Результаты содержат таблицу с детальными характеристиками каждой сделки, доступную для сохранения в виде файла html или копированию и выгрузки в Exсel

  • График показывает изменение баланса и гистограмму размера лота (объема сделки)

  • Отчет – самая важная часть для оценки прогонов Советника, содержащая количественную и относительную оценку результатов прогона по стандартам Metatrader 4

  • Журнал логов – технический отчет выставленных и закрытых в автоматическом режиме ордеров

Выбор наилучшего прохода

Подобрать оптимальные параметры по результатам прогонов достаточно просто – трейдер должен придерживаться правил «золотой середины » и не стремиться использовать Советника по первым прогонам.

Не ограничивайтесь тестами первых двух или трех вариантов пакета настроек – тестируйте минимум 25%, а лучше 50% полученных результатов оптимизации. Сохраните для каждого из них график оптимизации и отчет. Проведите качественно-моделированный, визуальный и численный анализ отобранных вариантов по окончании процедуры тестирования.

На последнем этапе оставьте несколько пакетов настроек Советника для финального испытания робота на демонстрационных торгах.

  • Качественно-моделированный анализ состоит в отсеивании стратегий с прогонами на истории с низким уровнем смоделированных тиков
  • Визуальный анализ подразумевает выбор Советника с наиболее сглаженным ростом линии баланса. В идеале он характеризуется угол касательной близкой к 45 градусам, отсутствием изломов, образованных резкими взлетами и падениями

Числовой анализ прогонов по вкладке отчет

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

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

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

Работа Советника – это не всегда полностью автоматический режим управления средствами трейдера, перед выпуском оптимизированного робота на реальный счет трейдеру следует проверить открытие и закрытие ордеров на демо-счете, котировки и работа которого полностью совпадает с реальным счетом.

Если стратегия масштабируема, т.е. способна работать на более мелких таймфреймах, трейдер может использовать их для быстрой дополнительной проверки достигнутых теоретических результатов отчета.

Чтобы получить объективную оценку теста на малых «нештатных» для применения стратегии таймфреймов, трейдер должен выбрать достаточно длинный отрезок испытаний (от 1000 свечей) и учесть следующие особенности:

  • Выбирать активные участки (европейской, американской) сессии
  • Останавливать робота в период выхода важных экономических новостей
  • Принимать во внимание 20% снижение результативности на малых таймфреймах

Финальный этап теста позволит выбрать наверняка правильный набор новых параметров Советника.

Файлы с расширением *.set – это готовые настройки Советника, написанные специально под алгоритм конкретного робота. Они автоматически изменяют текущие параметры торговой системы сразу после их загрузки.

Новые настройки для конкретного Советника в формате *.set можно получить от разработчика или на специализированных форумах в разделе Presets или “пресеты”. Новые настройки можно установить напрямую в текущую версию работающую версию Советника, но из соображений безопасности лучше прибегнуть к проверке работы новых шаблонов в тестере стратегии или демо счете.

Подготовка оптимизации и тестирование файлов *.set

  • Сохраните полученные пресеты в папке Presets

Запустите программу Metatrader 4 и нажмите опцию «Каталог данных » из меню «Файл ». В открывшемся окне войдите в папку MQL и поместите скачанные файлы перестов в директорию Presets.


  • Перезапустите Metatrader 4 и откройте тестер стратегий (Ctrl+R)
  • Зайдите во вкладку «Свойства эксперта» и настройте вкладку тестирования по вышеизложенной ранее методике
  • Откройте вкладку “Входные параметры”, сохраните текущие значения, нажав кнопку “Сохранить”

Эти Настройки уже присутствуют в директории Presets , но дополнительное сохранение позволит пользователю обозначить уникальное имя файла

  • Вернитесь к окну входных параметров и нажмите кнопку «Загрузить ». выбрав папку Preset, куда до этого были помещены полученные новые файлы *.set Советника. Замените на них текущие настройки.

  • Настройте столбцы старт, шаг и стоп
  • Нажмите ОК, включите опцию «Оптимизация» и генетический алгоритм, поставьте исторический период в соответствии с рекомендациями выше.

Полученный результат сравните с вариантом прямого теста Советника без оптимизации. В теории он должен объективно превосходить последний или может помочь трейдеру найти лучшее сочетание параметров.

В любом случае – тестирование «чужих» пресетов перед применением на реальном счете обязательно.

Хранение и использование архива настроек с помощью файлов set

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

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

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

  • Погрешностью базовых условий тестирования и оптимизации

Каждая стратегия ориентирована на определенный таймфрейм, волатильность котировок, нюансы их отображения (пять или четыре знака), размер спреда, проскальзывания и множество других условий, индивидуальных для каждого брокера

  • Проблемой доверия результатам тестирования пресетов

Тестер дает относительную точность результата, из-за проблем с моделированием котировок, которое зависит от полноты архива тиков на серверах брокера.

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

Как часто надо делать оптимизацию

Необходимость оптимизации определяется снижением прибыли при работе Советника. Перед применением стратегии на реальном счете, после тестирования стратегии в тестере и проверки ее работы на демонстрационном счете, трейдер должен установить для себя «эталонные» параметры: прибыльности, относительной просадки, процента убыточных сделок. Отклонение реальных показателей от этих значений на 30% - сигнал для оптимизации.

При долгосрочной работе стратегии с приемлемым результатом прибыли, не стоит полагаться на «вечную» торговую систему. Советник может мгновенно ухудшить результаты, значительно увеличив серию убыточных сделок. Как показывают эмпирические наблюдения, то потеря эффективности начинается после того, как Советник отработает 40% от использовавшегося в тестировании исторического периода. То есть если тестирование проходило на периоде в 100 дней, Советник начнет терять эффективность примерно через 40 дней.

Обязательно нанесите на график ценовые границы максимума и минимума периода тестирования Советника Выход за эти границы – сигнал к оптимизации стратегии, в 50% случаев индикаторы резко наращивают количество ложных сигналов при выходе котировок на не тестированные ценовые значения.

Заключение

Оптимизация – необходимая и обязательная процедура корректировки параметров стратегии, чтобы подстроить индикаторы Советника под цикличные изменения рынка. Благодаря программным решениям, реализованным в тестере Metatrader 4, этот процесс сегодня не сложен.

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

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

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

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

Если значимые результаты не удастся получить, то график будет пустой, а в журнале появится запись о том, что энное число результатов было отклонено как незначительное.

Казалось бы, после подбора новой комбинации параметров можно смело бросаться в бой и ставить бот на реальный счет, но не все так просто. При чрезмерном усердии вполне можно переоптимизировать советник, это как минимум снизит прибыль, а в худшем случае возможно и обнуление депозита.

Явление переоптимизации

При подборе оптимальных параметров следует понимать, что их поиск мы ведем на определенном историческом участке в надежде на то, что полученный комплект параметров будет работать и в режиме реального времени. Но это не означает, что нужно стараться максимально подогнать результаты к историческим данным.

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

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

  • сперва выполняем оптимизацию, выбираем лучшую комбинацию настроек. Работать будеv с историей за последние полгода-год, для оптимизации выбираем временной промежуток в 3-4 месяца;
  • затем советник с новыми настройками тестируем на 2-месячном участке рынка, который при оптимизации не использовался;
  • кривую роста депозита сравниваем с той, какой она была до оптимизации. Если кривые более-менее подобны, то проблемы переоптимизации трейдер избежал, если же разница в доходности существенна, нужно либо проводить поиск оптимальных параметров и тестирование на более длинном промежутке времени (это сильно зависит от типа советника), либо увеличить шаг/уменьшить число оптимизируемых параметров;
  • если бот новый и ранее не использовался на реальном счету, можно попробовать его на центовом счете и только после этого подключать его к основному.

Влияет ли тип счета на результаты теста советника

Когда дело доходит до последнего этапа, т.е. советник с новым набором настроек торгует в режиме реального времени, на конечный результат может повлиять даже тип счета. Можно порекомендовать:

  • для советников, использующих спокойный стиль торговли, подойдет любой тип счета (центовый, демо-счет, обычный). Небольшие задержки в исполнении ордеров при торговле, например, на Н4 никакого влияния на результат не окажут;
  • боты на основе мартингейла (они же сеточники) также не особо требовательны к типу счета, основной упор в них делается на расчет положения ордеров, управление капиталом;
  • а вот скальпирующие роботы, особенно те, которые в день заключают много сделок с малыми целями, требуют быстрого исполнения, так что тип счета важен. На демо-счете исполнение мгновенное, а вот на центовом похуже, так что на этапе проверки результатов оптимизации остановиться лучше на реальном счете.

Причины переоптимизации

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

  • проблемы с самой ТС, положенной в основу робота. С таким может столкнуться автор на этапе создания советника, добавление/удаление разных индикаторов, условий для входа может привести к тому, что условий для совершения сделок будет слишком много. В результате сделок будет совершаться мало, система будет слишком сложной, на истории если и удастся подобрать более-менее рабочую комбинацию параметров, то в реальной торговле малейшее изменение рынка сделает советник неэффективным;
  • зацикливание на одном параметре. Предположим, что в алгоритме советника используется выход Стохастика из зон перепроданности/перекупленности, если при оптимизации уделять только этому параметру слишком большое внимание, то можно определить положение границ зон, дающее высокий результат на истории, но потом даже небольшое изменение рынка сведет всю работу на нет. Не следует излишнее внимание уделять только одному параметру, лучше выбрать несколько, а поиск вести с шагом средней величины;
  • выбран неудачный отрезок для оптимизации, под неудачным понимается тот период, когда валютная пара ведет себя нехарактерным для себя образом. Например, в стране произошла революция, стихийное бедствие или какое-нибудь другое потрясение. Подобный эффект будет получен и в том случае, когда выбранный временной отрезок захватывает только трендовый участок либо флет;

  • если в процессе оптимизации было совершено мало сделок, то доверять таким результатам однозначно не стоит. Понятие «мало» довольно расплывчато, для скальпера, работающего на m15, сотня сделок за пару месяцев – мало, но та же сотня за 2 месяца для бота на Н4 – нормальное явление. В это вопросе все индивидуально и учитывать нужно принцип работы советника, для скальпера обычно достаточно куска истории в 2-3 месяца, а вот бот, торгующий на дневках, лучше тестировать за последние пару лет;
  • желание достичь идеала может вылиться в то, что трейдер задает слишком малый шаг в оптимизируемых параметрах. В итоге у советника сужается пространство для маневра (если оптимизируемых параметров много) и демонстрировать высокий результат уже не получается. Если оптимальная комбинация настроек ищется среди 2-3 параметров, то такой подход вполне оправдан.

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

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

Лучший критерий хорошо оптимизированного советника – форма кривой роста депозита. Идеальная форма – прямая линия, растущая по направлению справа-налево, понятно, что в реальности без просадки не обойтись, но общая форма должна сохраняться именно такой. Без значительных всплесков ни в одну ни в другую сторону.

Пример оптимизации сеточника

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

Рабочий таймфрейм у него m15, советник мультивалютный, так что предпочтений по валютным парам нет. Для начала (чтобы была база для сравнения), прогоним советник с базовыми настройками на периоде в месяц с небольшим, с начала февраля по 9 марта, январь в тесте не учитывался из-за обилия праздничных дней. Результаты теста сразу показывают все слабые места сеточника – прибыль составила чуть больше 20%, но и просадка превышает 80%. При оптимизации задача стоит в повышении прибыльности, также можно попробовать уменьшить просадку.

Сперва выбираем параметры, которые больше всего влияют на работу советника, в нашем случае это величина тейк-профита (по умолчанию она равна всего 11 пунктам), стартовый шаг между ордерами (25 п), а также коэффициент, вводящийся при расчете расстояния между остальными ордерами.

В качестве основного критерия при оптимизации выберем только максимальную прибыль, вообще в случае с сеточниками глупо рассчитывать на долгосрочную прибыль. Основная идея здесь строится на том, чтобы максимально быстро отбить величину стартового депозита и потом «рубить капусту» пока советник не выдохнется (периодически деньги, конечно, выводятся).

В результате оптимизации получаем массу результатов, так как основной критерий у нас – прибыльность, то выбираем соответствующие настройки. Правда, максимальная просадка при оптимизации превысила 80%.

Проверка результатов

Для проверки полученных результатов выполняем тест советника на участке истории с января по начало марта 2016 года с оптимизированными настройками. По сравнению с базовыми до 50 увеличился ТР и коэффициент умножения стал равным 1,2.

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

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

Всегда ли может помочь оптимизация

В предыдущем примере советник и с базовыми настройками показывал прибыль, нужно было только увеличить ее. Разберем случай, когда робот торгует с отрицательным результатом, показывая убытки. Для примера взят советник Nostradamus, при тесте на m30 с начала года он снизил объем стартового депозита на 5,7%, учитывая количество сделок, а их было больше 1000, с настройками у него явно не все в порядке.

Для оптимизации были выбраны такие параметры как величина ТР и SL, а также PipStep, именно они сильнее всего влияют на результаты торговли. К сожалению, автор советника не дает возможности изменять параметры индикаторов (в алгоритме используется Параболик и МА), так что ограничимся только этими настройками.

Несмотря на то, что алгоритм несложен, времени оптимизация может занять немало, так что шаг при поиске оптимальных настроек выберем достаточно большой. Поиск удачной комбинации будет проводиться в таком интервале: ТР – от 10 до 50 (шаг 10), SL – от 10 до 50 (шаг 10), Pipstep – от 6 до 10 (шаг 2).

Оптимизация выполнялась также на 3-месячном отрезке графика, в период с октября по декабрь 2015 года. Максимальная прибыль составила свыше 80% от стартового депозита при настройках ТР – 40 п, SL – 20 п, Pipstep – 10.

При тесте оптимизированными настройками на временном интервале с начала этого года существенного улучшения не произошло. Советник в течение 2 с небольшим месяцев торгует с прибылью, стремящейся к нулю, по состоянию на 9 марта прибыль с начала года составила $46,99, т.е. 0,47% от стартового капитала. Формально эффект от оптимизации есть, вместо убытка получили прибыль на том же промежутке времени, но прибыть эта просто смехотворна, а форма кривой изменения депозита не особо то и изменилась.

После использования улучшенных настроек видно, что значительно уменьшилось количество сделок. Это объясняется тем, что увеличился шаг между ордерами сетки, а значит и число одновременно открытых ордеров снизилось. Если сначала число сделок было равно 1098, то после оптимизации – всего 301.

Этот пример – подтверждение того, что оптимизация не панацея, и если советника в прошлом демонстрировал неплохие результаты, то нет никакой гарантии, что оптимизация в тестере МТ4 сохранит ту же эффективность в будущем.

Какую модель выбирать при оптимизации

По большому счету оптимизация – то же тестирование советника, но с разными наборами настроек. Тестирование некоторых роботов выполняется почти мгновенно, но есть и такие алгоритмы, в которых тест за 2-3 месяца занимает минут 5 и больше. Если нужно только пару раз прогнать советник на нескольких парах, то ничего страшного в этом нет, но при оптимизации таких проходов может быть больше 100, так что процесс растягивается на часы.

Если выбрать в тестере стратегий модель контрольные точки либо по ценам открытия, то процесс ускорится, но это сильно скажется на точности. Дело в том, что когда выбрана модель все тики, то тестер учитывает все колебания цены внутри рабочего таймфрейма, т.е. если советник тестируется на Н1, то учитываться будет и поведение цены на m1.

Модель по контрольным точкам учитывает данные только с ближайшего к выбранному таймфрейму (то есть при тесте на Н1 учитываться будут только данные с m30), а метод по ценам открытия подходит только для советников, которые открывают сделки во время открытия новой свечи. В подавляющем большинстве случаев единственный правильный вариант – использование модели «все тики» для достоверного результата.

Сравнение результатов при использовании разных моделей выполним на примере советника 4НBox Breakout. При тестировании по всем тикам было заключено 60 сделок, итог – убыток $52,3.

Выставляем в тестере модель «контрольные точки» и получаем тот же результат, что и при модели «по всем тикам». Это объясняется тем, что сделки данный советник заключает только на закрытии четырехчасовой свечи, поэтому поведение цены внутри 4-часовой свечи не особо важно, время теста сокращается примерно в 3-5 раз.

Но вот при использовании модели «по ценам открытия» получаем совершенно другую картину. Число сделок сокращается до 35 и кривая изменения депозита имеет совсем другие очертания. Если бы эта модель использовалась при тестировании и оптимизации советника, результаты были бы далеки от реальности.

Подведение итогов

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

При оптимизации главное – не скромничать с выбором куска исторических данных (хотя и здесь есть свои нюансы, если для скальпера достаточно и нескольких месяцев, то для долгосрочной торговли счет идет уже на годы). Также не следует пытаться подобрать идеальную комбинацию всех настроек робота, достаточно 3-4, сильнее всего влияющих на торговлю. В противном случае трейдер рискует получить идеальный результат на истории, но разочароваться при реальной торговле.

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

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

Торговые системы «Robots Forex» являются профессиональным инструментом для работы на рынке Форекс и товарных биржах. Наши роботы имеют много параметров и настроек, несколько индикаторов и дополнительных возможностей, все из которых мы даже не используем, потому что просто физически невозможно охватить весь спектр реализаций этих возможностей несколькими трейдерами-оптимизаторами.

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

Подготовка к оптимизации

Во-первых, все оптимизации нужно производить на довольно мощном компьютере, и обычный простой VPS-сервер для Форекс не подойдет, так как при оптимизации используется большой объем памяти и процессор загружается довольно сильно, что может привести к зависанию вашего VPS-сервера. Поэтому рекомендуем использовать домашний компьютер с хорошим процессором и достаточной памятью. Чем слабже компьютер — тем дольше будут проходить оптимизации.

Во-вторых, для оптимизаций необходим точно такой же торговый терминал от того же самого брокера, на котором работает ваш торговый робот. Нужно подключаться к тому же торговому счету и открывать график той валютной пары (или товарного инструмента — золота, нефти), которые желаете оптимизировать. Если нет ограничений по счетам и инструментам, то можно использовать различные торговые счета и разные торговые инструменты. Например, мы не имели дело с инструментами «Bitcoin» или «доллар/рубль» или «кукуруза», а вы спокойно можете произвести оптимизацию для данных инструментов и, если найдете смысл запускать на них робота, то можете это сделать для робота Double Trader Extreme, который не имеет ограничений по инструментам и счетам. Если же робот имеет ограничения — то можно менять индикаторы, временные интервалы, расписание торговли и любые другие параметры из панели управления робота в рамках одного торгового инструмента / валютной пары.

Итак, приступим:

1. Установите торговый терминал MetaTrader 4 себе на компьютер.

Скачать его можно с сайта вашего брокера,

2. Подключитесь к вашему торговому счету в терминале.

В меню Файл выбрать Подключиться к торговому счету :

Введите логин (номер счета) и пароль от него, также выберите правильный торговый сервер брокера.

3. Откройте график оптимизируемого символа

Откройте новый график нужного инструмента, кликнув на нем правой кнопкой мыши и выбрав Окно графика .

Если этого инструмента нет среди активных символов, кликните правой кнопкой мышки на любом символе в Обзоре рынка и выберите символы , затем включите нужный символ.

4. Загрузите вручную историю котировок с графика

Перед тем как загрузить историю реальных котировок брокера нужно отключить авто-прокрутку графика и установить максимально возможную историю котировок.

В меню Сервис выберите пункт Настройки :

В настройках во вкладке Графики установите максимальное количество баров в истории и на графике 2 000 000 000 .

Нажмите ОК .

Загрузите правильные котировки для нужного тайм-фрейма

Затем на графике символа, именно на том временном интервале (тайм-фрейме), который планируется оптимизировать, нужно кликнуть мышкой и нажать клавишу Home на клавиатуре. Либо можно крутить колёсиком мышки вниз до упора, после чего должны подгрузиться предыдущие данные графика. Таким образом, нажимая несколько раз Home либо докручивая мышкой до начала графика и потом снова повторяя эти действия, можно загрузить максимально возможную историю котировок данного брокера, на которой можно нормально оптимизировать робота. Загрузка другими способами архива котировок (например с сервера MetaQuotes) только навредит, так как они не будут правильными для этого брокера.

Когда будет загружено максимальное количество котировок можно приступать к тестированию и оптимизациям.

5. Откройте «тестер стратегий»

В меню Вид выберите пункт Тестер стратегий :

Либо нажмите на кнопку тестера на верхней панели терминала (если она там есть):

Откроется окно тестера стратегий внизу терминала.

6. Выберите оптимизируемого робота и желаемые параметры торговли

Сначала выберите робота, затем нужный символ, временной период (тайм-фрейм). Модель нужно выбирать По ценам открытия. Спред нужно устанавливать соответственно брокеру — у всех он разный и его величину вы можете уточнить у брокера, либо глянув на разницу покупки и продажи инструмента в терминале (в рабочее время). Если у символа нет спреда, ставьте текущий .

Устанавливайте желаемое время оптимизации — дату начала и окончания.

7. Установка параметров оптимизации робота

После установки основных параметров можно нажимать на кнопку Свойства эксперта .

Откроется панель управления оптимизацией робота. В первой вкладке Тестирование нужно установить размер депозита и оптимизируемый параметр (обычно оптимизируем по Maximal Drawdown — максимальная просадка ), также желательно включить Генетический алгоритм . Можно пробовать оптимизировать и по другим параметрам, если есть их понимание:

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

Далее отрывайте вкладку Входные параметры , где находятся основные параметры. В этой вкладке необходимо выбрать желаемый индикатор и установить соответствующие ему параметры для оптимизации. Также здесь нужно выбрать какие именно параметры будут оптимизироваться, а какие наоборот будут постоянными. По сути можно оптимизировать любые параметры, но некоторые просто очевидно остаются одинаковыми и не нуждаются в оптимизации. Также, например, бессмысленно тратить время на оптимизирование параметра Период МА-фильтра, если этот МА-фильтр отключен. Кроме того, нужно понимать, что при выборе разных индикаторов, они используют разные параметры для работы и их нужно выбирать соответственно. Какие именно параметры за что отвечают вы можете ознакомиться в

Не забудьте нажать ОК для применения установленных параметров перед стартом оптимизации.

8. Процесс оптимизации

После установки всех желаемых параметров, нужно включить режим Оптимизация и нажать Старт .

Если процесс оптимизации не начался, то возможна ошибка из-за слишком большого количества оптимизируемых параметров. Чтобы проверить это, нужно открыть вкладку Журнал внизу тестера стратегий:

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

9. Выбор результатов оптимизаций

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

Откройте вкладку Результаты оптимизации . В ней будут отображены множество вариантов параметров и результаты их использования. Отсортируйте по нужному вам параметру (например, Прибыль или наоборот, Просадка ):

Затем нужно применить понравившиеся параметры, исходя из предпочтений оптимизатора и поставленных ранее задач — нажмите правой кнопкой мыши на нужном результате и выберите во всплывающем меню Установить входные параметры:

Автоматически откроется вкладка Настройки тестера стратегий, в которой можно нажать Старт и прогнать выбранные параметры оптимизации на любом выбранном временном интервале (например на более продолжительном периоде или включая более ранний или поздний интервал), для нахождения оптимального результата торговли). Если результат прогона не устраивает, выбирайте и устанавливайте другие входные параметры из вкладки Результаты оптимизации . Для тестового прогона на истории нужно убедиться, что птичка рядом с параметром Оптимизация снята.

После прогона выбранных параметров в тестере, можно изучить результат в графическом виде во вкладке График либо в цифровом формате во вкладке Отчет :

Затем придумать название SET-файла и нажать еще раз кнопку Сохранить :

После этого данный файл с настройками можно устанавливать в работающий торговый робот и использовать новые параметры.

Итог

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

При возникновении вопросов можете оставлять комментарии — инструкция будет дополняться и улучшаться по мере необходимости.

Как правильно оптимизировать советников в тестере стратегий терминала МетаТрейдер 4? Зачем вообще нужна оптимизация, и что это такое - оптимизация параметров советников для достижения прибыльной торговли валютой на Форекс? Ответы на эти и другие вопросы Вы сможете узнать, прочитав данный материал.

Шаг 2. Сейчас необходимо загрузить в тестер стратегий оптимизационный файл, если он у Вас есть. Если оптимизационнго файла нет - загружаем файл настроек советника, который копировался в папку с торговым терминалом (это папка на диске С://Programe Files/MetaTrader/experts/presets/ , либо отдельная папка для советника - С://Programe Files/MetaTrader/experts/presets/название_советника/). Для этого нажимаем на кнопку Свойства эксперта, в открывшемся окне выбираем вкладку Входные параметры, кликаем Загрузить и находим файл оптимизируемого советника с расширением.set, с соответствующим валютным инструментом и периодом (тайм-фреймом):


Загружаются первоначальные настройки советника, которые на вкладке "Входные параметры" необходимо изменить. Для этого галочкой отмечаем значения в столбце Переменная, которые необходимо изменять в процессе оптимизации советника, выставляем начальные, конечные цифры и значения шага в столбцах Старт, Стоп и Шаг, после чего сохраняем оптимизационный файл для советника в папку С://Programe Files/MetaTrader/tester/ - эта папка будет Вам доступна по умолчанию, если нажать кнопку Сохранить. Если Вы оптимизируете не одного советника, а несколько, то в таком случае рекомендуется в папке /tester/ создавать папку по названию советника и в неё сохранять начальный оптимизационный файл - это поможет избежать путаницы и всегда понять, к какому советнику относится оптимизациооный файл. В название файла оптимизации с раширением.set следует включать имя валютной пары и тайм - фрейм, например, оптимизация_название_советника_eurusd_m15.set:


После этого переходим на вкладку Тестирование, устанавливаем размер депозита, позицию (Long или Shot), выбираем оптимизируемый параметр (по умолчанию Balance), и ставим галочку в окошке генетический алгоритм (Возможно, у Вас возникнет вопрос - Что такое генетический алгоритм? Генетический алгоритм - это "умная" функция перебора параметров, которая заведомо убыточные параметры отбрасывает, в результате чего значительно сокращается количество вариантов перебора и время тестирования). После этого жмём кнопку ОК.


Шаг 3. Непосредственно перед запуском оптимизации параметров советника ставим галочку в окошечке со словом Оптимизация. И только после этого можно жать кнопку Старт. Процесс оптимизации форекс советника на тестовом периоде может занять значительное время - от нескольких минут, до часов и даже до суток: все зависит от количества оптимизируемых параметров каждого конкретного советника.


Шаг 4. По окончанию процесса оптимизации во вкладке График оптимизации формируется своеобразный график, где более темным цветом выделяются параметры советников, прибыльность которых выше. Даже невооруженным глазом видно, что вариации от 1,7 до 1,75 в порядке возрастания больше подойдут для дальнейшей оптимизации:


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


Открывается окно тестера, где, если нужно, изменяем параметр Модели. Вместо значения По цене открытия устанавливаем значение Все тики, так как результаты теста по всем тикам будут более точными. Но это в первую очередь зависит от того, по какому алгоритму работает советник. Если работа советника построена по Ценам открытия - тестирование его по Всем тикам даст неверные результаты ! Поэтому, прежде чем оптимизировать советника, Вы должны понимать логику его работы. Снимаем галочку с окошка Оптимизация и жмём кнопку Старт для тестирования советника с оптимизированными входными параметрами на тестовом периоде:


Анализ теста проводится на основе вкладок График и Отчет. Чем график прибыли более ровный и восходящий, тем входные параметры лучше:


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


Во вкладе Отчет тестера стратегий торговой платформы MetaTrader 4 представляется более удобная для восприятия и анализа информация. Причём, если оптимизация проводилась на котировках, скаченных с MetaQuotes, то результаты будут такими:


А если Вы работали с котировками, скаченными с сервиса DukasCopy, то результаты качественной оптимизации советника (одного и того же) с одинаковыми параметрами, будут выглядеть следующим образом:


Вывод сделать не сложно.

Далее поочередно подставляем различные комбинации входных параметров, сортируя их по разным параметрам. Особое внимание при выборе комбинаций следует уделять таким параметрам, как Количество сделок (для каждого типа советников разное), Максимальная и минимальная просадка. При выявлении "красивого" восходящего графика и удачных результатов (хорошая прибыльность, небольшая просадка и т.д.) с тем или иным набором параметров, необходимо протестировать советника на форвардном периоде.

Шаг 5. Тестирование советника на форвардном периоде. Переходим во вкладку тестера Настройки и вместо промежутка времени исторического периода устанавливаем даты начала (От) и окончания (До) форвардного периода. Форвард-период начинается с конца исторического периода и заканчивается сегодняшним числом. Кнопка Старт запускает тестирование робота с установленными входными параметрами, полученными на первом этапе оптимизации.


Если тестер показывает хорошие результаты (анализировать по графику и отчету), то установленную комбинацию параметров можно сохранить. Для этого во вкладке Настройки кликаем кнопку Свойства эксперта, выходит уже знакомое окошко с входными параметрами, теми, которые показали хороший результат теста. Здесь нажимаем на Сохранить. Сохранить файл можно в папке с уже имеющимися файлами.set, дав ему такое имя, что бы можно было сразу понять, оптимизационный файл от какого советника, какой валютной пары и какого тайм - фрейма перед Вами:


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

Шаг 6. Дооптимизация советников . Перед тем, как запустить советника на реальный счёт, рекомендуется его дооптимизировать. Но, внимание - не совершите ошибку ! Дооптимизация - это не оптимизация советника на форвардном периоде! Подгонку советника на форвард-тесте следует полностью исключить! Для начала поясним, какой принцип положен в систему дооптимизации советников. Известно, что система считается стабильной в том случае, если небольшое изменение параметров не дестабилизирует её состояние. Ключевая фраза в этом определении - небольшое изменение параметров . Применительно к дооптимизации советников этот принцип должен реализовываться следующим образом: нужно изменить параметры советников в небольших пределах и запустить оптимизацию на форвардном периоде. И если после дооптимизации на форвардном периоде выходные данные (максимальная и минимальная просадка, прибыльность, количество сделок и т. д.) не будут существенно отличаться от тех, которые были получены при тестировании на форвардном периоде, то выбираете лучшие настройки и сохраняете их. Вы проверите правильность оптимизации советника и получите ещё более лучший комплект настроек.

У разных советников дооптимизируются различные параметры, поэтому в рамках данной статьи конкретные параметры, которые должны дооптимизироваться, назвать нельзя. Но привести пример для лучшего понимания материала можно, что мы и сделаем. Например, для данных настроек, которые применялись при оптимизации советника на тестовом периоде, можно дооптимизировать параметр Pips - значение Шаг поменять с 2 на 1, коэфицент Старт изменить с 10 на 22, а Стоп - с 30 на 26:


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

Из всего вышесказанного можно сделать вывод, что только качественная оптимизация советника вместе с его тестированием на историческом и форвардном периоде может обеспечить пусть и не 100-процентную, но высокую вероятность его стабильной работы в реальном режиме. Сложно - скажете Вы? Да, сложно! Но Вы сможете получать , которая полностью окупит ваше терпение и настойчивость в изучении принципов оптимизации советников в торговой платформе MetaTrader 4...