В условиях современного трейдинга использование в торговле форекс советников уже давно не выглядит какой-то экзотикой. Практически каждый день появляются новые платные и бесплатные торговые роботы, которые впечатляют доходностью и вызывают желание быстренько заработать. Однако ставить эксперта на торговый счет без проверки – сомнительная затея, ведущая к «неожиданным» потерям в потенциале. Поэтому рекомендуем начать работу с роботом с тестирования.
Все, что нужно знать о том, как правильно тестировать торгового советника в тестере стратегий терминала MetaTrader 4 – в инструкции от экспертов журнала Фортрейдерс.
Содержание
- С чего необходимо начинать тестирование советника
- Какой тип моделирования выбрать
- На какие параметры нужно обратить внимание при оптимизации советника
- Что делать с ошибками рассогласования
С чего необходимо начинать тестирование советника
Торговый робот проверяют на истории, поэтому в первую очередь необходимо скачать котировки нужной вам валютной пары. Для этого в меню «Сервис» ищем вкладку «Архив котировок» или просто нажать клавишу F2.
Далее выбираем необходимую валютную пару и таймфрейм, кликаем по ним два раза левой кнопкой мышки и нажимаем «Загрузить».
Обратите внимание, что качество истории котировок у разных форекс брокеров отличаются, что может вызвать серьезные расхождения в результатах тестирования одного советника на счетах от разных компаний.
Выбираем в тестере стратегий торгового робота (1), валютную пару (2), тип моделирования (3), таймфрейм (4), спред (5) и настройки советника (6).
Не забудьте о размере спреда, который установлен для валютной пары вашим брокером. Дело в том, что в тестере стратегий по умолчанию установлен текущий спред. Если вы этого не сделаете, то можете получить совершенно фантастические результаты, особенно, если тестируете эксперта в выходной день.
Какой тип моделирования выбрать
Тестер стратегий предлагает на выбор три типа моделирования:
- Все тики
- Контрольные точки
- По ценам открытия
«Все тики» — самый точный из стандартно доступных типов моделирования, но он же и самый долгий. Некоторые советники можно тестировать без потери точности по контрольным точкам или по ценам открытия. Для этого в алгоритме должны быть заложены условия открытия сделки, начиная с нового бара.
Если вы не сильно разбираетесь в советнике, который пробуете, то имеет смысл подойти к вопросу экспериментальным путем. Тестируете по всем тикам, потом по контрольным точкам, потом по ценам открытия и смотрите разницу. Если она небольшая, то можно оптимизировать советник наиболее быстрым методом, а потом проверять по всем тикам. Если разница существенная, то можно грубую оптимизацию проводить быстрым методом, а тонкую — по всем тикам. Если разница совсем большая, то делать нечего, и придется оптимизировать долго и упорно по всем тикам.
Есть класс советников, в которых рабочий таймфрем прописан в настройках, у них результаты тестирования не зависят от выбранного периода в тестере. Такие роботы, как правило, можно тестировать практически без потери точности на контрольных точках. Получается намного быстрее, чем по всем тикам, а результат практически тот же самый.
Опять-таки, оптимизируем быстрым методом, найденный лучший вариант проверяем по всем тикам и убеждаемся, что все в порядке.
На какие параметры нужно обратить внимание при оптимизации советника
Количество сделок
В первую очередь обращаем внимание на количество сделок. Желательно, чтобы их было не менее 100, иначе оптимизация теряет всякий смысл, поскольку возникает эффект «подгонки» результатов. Если же сделок меньше, то необходимо увеличить промежуток времени тестирования, чтобы получить полную картину.
Прибыль и просадка
Во вторую очередь нас будет интересовать соотношение прибыли к просадке. Популярным параметром для отбора результатов оптимизации является коэффициент восстановления, который представляет собой простое отношение: прибыль / максимальная просадка. Его несложно вычислить, поделив столбец «Прибыль» на столбец «Просадка» в долларах. Но вот отсортировать результаты оптимизации по этому параметру тестер так просто не позволяет.
К счастью, это несложно поправить, если у вас есть доступ к исходному коду советника. Достаточно в конец кода любого робота приписать следующие строчки:
double GetRecoveryFactor( void ) {
double Res = 0;
double MaxDD = TesterStatistics(STAT_EQUITY_DD);
if (MaxDD != 0)
Res = TesterStatistics(STAT_PROFIT) / MaxDD;
return(Res);
}
double OnTester( void ) {
return(GetRecoveryFactor());
}
и перекомпилировать его. После этого при оптимизации в тестере появится новая колонка «Результат OnTester». Она будет содержать коэффициент восстановления. Щелкнув по шапке этой колонки, можно отсортировать результаты оптимизации по данному параметру.
Что делать с ошибками рассогласования
Часто случается, что в отчете о тестировании торгового эксперта тестер стратегий в строке «Качество моделирования» указывает значение n/a и сообщает об ошибках рассогласования графиков.
Откуда берутся эти ошибки? Самой распространенной причиной является расхождение между котировками, которые получены от брокера напрямую, и котировками, загруженными из архива.
Как устранить это расхождение? Существует очень простой способ. Необходимо удалить историю котировок по необходимой валютной паре через «Меню Файл» — «Открыть каталог данных» – History – «Имя торгового сервера». Стираем все файлы EURUSD*.hst.
После чего перезапустить терминал и загрузитькотировки заново, как это было описано выше. После проделанных процедур в большинстве случаев ошибки рассогласования графиков исчезают, а качество моделирования вырастет до 90%.
Таким образом, тестирование и оптимизация торговых советников – дело совсем несложное, хотя требует больших временных затрат и знания тонкостей. Надеемся, что эта статья позволит вам быть с тестером стратегий «на ты», эффективно тестировать форекс экспертов и получать прибыль на валютном рынке.