Как тестировать советник в тестере MT4 — Подробная инструкция
Подготовка к тестированиюКак установить советник я описал выше. Будем считать, что советник мы уже установили. Теперь необходимо подумать о котировках, которые мы будем использовать. Большинство брокеров не имеют собственной исторической базы, исключение составляют Alpari и Ducascopy (в последнее время этот список пополняется), остальные же используют котировки, предоставляемые компанией MetaQuotes. Котировки эти не стабильны – они очень низкого качества (много пробелов, ошибок, неточностей). Как скачивать котировки от компании Ducascopy – тема отдельная, к тому же это не так просто сделать новичку. Поэтому для тестов советников мы скачаем именно терминал от компании Alpari (при том торговать можно у любого другого брокера). Внимание! Чтобы получить доступ к исторической базе котировок Альпари, в терминале вы должны быть подключены именно к реальному счету! С недавних пор этот брокер не предоставляет свою базу котировок для владельцев демо-счетов.
Именно из-за различий в котировках тесты одного и того же советника у одного и того же брокера по одной и той же паре с теми же настройками и при прочих равных будут отличаться при повторных прогонах и очень сильно.
Для начала нам нужно кое-что настроить, для чего идем во вкладку Сервис -> Настройки или жмем Ctrl+O
Появится окно с настройками терминала:
Выбираем вкладку «Графики» и в графах «Макс. баров истории» и «Макс. баров в окне» и заполняем как у меня на рисунке вверху (по умолчанию там стоит 65000 баров).
Для того, чтобы котировки по нужной нам паре стали доступны в терминале для проведения по ним теста, открываем вкладку Сервис -> Архив котировок или жмем F2.
Открывается следующее окно:
Действуем по инструкции:1. Выбираем нужную пару;
2. Щёлкаем дважды на период м1;
3. Нажимает кнопку «загрузить» (иногда котировки загружаются полностью не с первого раза, поэтому щёлкаем до тех пор пока не появится окно с вопросом "Пересчитать таймфреймы?")
4. Если вы хотите протестировать советник на нескольких валютных парах, закачайте котировки требуемых валютных пар и перезагрузите терминал.
На этом подготовительный этап завершен.
Тестер терминала. Основной функционалИтак, чтобы приступить к тестированию советника открываем тестер стратегий или нажимаем Ctrl+R.
Снизу в терминале появится вот такая панель:
Давайте остановимся на каждой функции поподробнее.
Первое, что вы увидите слева вверху панели – переключатель советник-индикатор:
В новых билдах терминала появилась возможность посмотреть на работу индикатора в визуальном режиме (о котором речь пойдет ниже). Надо сказать, что такая возможность была и раньше, но неофициально. Теперь же под тестирование индикаторов отведена отдельная кнопочка.
Итак, выбираем советник.
Под цифрой 1 у нас находится выпадающий список с доступными для тестирования советниками. Тут вы найдете только те советники, которые загружены в ваш терминал. Цифра 2 — выпадающий список валютных пар, выбираем нужную. Не забудьте закачать для нее котировки в архив котировок. Если вы вдруг не смогли найти нужную вам пару в списке, хотя уверены, что она у брокера доступна для торговли, включите обзор рынка или нажмите Ctrl+M:
Далее правой кнопкой мыши кликните прямо в окне навигатора и нажмите «Показать все символы»:
На пункте 3 остановимся немного подробнее. Тут мы можем выбрать необходимую нам модель тестирования. Для качественного тестирования торговой стратегии важно выбрать адекватный способ моделирования развития ценовых баров. Всего доступны три варианта:
— По ценам открытия (быстрый метод на сформировавшихся барах, можно использовать для советников, которые открывают сделки на ценах открытия и не занимаются её сопровождением, например просто закрывают сделку через несколько свечей)
Использует грубую оценку стратегии. При каждой свече генерируется только один тик. Достоинство — самый быстрый способ проверки. В этом режиме сначала моделируется открытие бара (Open = High = Low = Close, Volume=1), что дает возможность эксперту точно идентифицировать окончание формирования предыдущего ценового бара. Именно на этом зарождающемся баре запускается тестирование эксперта. На следующем шаге выдается уже полностью сформированный текущий бар.
— Контрольные точки (очень грубый метод на основе ближайшего меньшего таймфрейма, результаты нельзя принимать во внимание)
Метод моделирования контрольных точек предназначен для грубой оценки экспертов, торгующих внутри бара. Для этого метода необходимо наличие исторических данных ближайшего меньшего таймфрейма. В некоторых случаях имеющиеся данные меньшего таймфрейма не полностью покрывают временной диапазон тестируемого таймфрейма. При отсутствии данных меньшего таймфрейма развитие бара генерируется на основе предопределенных волновых шаблонов.
Как только появляются исторические данные меньшего таймфрейма, интерполяция применяется уже к этим данным. Однако точно существующие цены OHLC меньшего таймфрейма выступают в качестве контрольных точек. В большинстве случаев результаты тестирования экспертов по методу контрольных точек могут приниматься во внимание только как оценочные, а не как окончательные. Такие результаты имеют промежуточный оценочный характер.
— Все тики (наиболее точный метод на основе всех доступных меньших таймфреймов)
Этот режим позволяет наиболее точно смоделировать движение цены внутри бара. В отличие от «контрольных точек» потиковый метод использует для генерации данные не только ближайшего меньшего таймфрейма, но и всех доступных меньших таймфреймов. При этом, если на какой-то временной диапазон одновременно существуют данные более одного таймфрейма, то для генерации используются данные самого меньшего таймфрейма. Так же, как и в предыдущем методе, генерируются контрольные точки на основе данных OHLC наименьшего доступного таймфрейма. Для генерации движения цены между контрольными точками также используется интерполяция на основе предопределенных шаблонов, поэтому крайне желательно наличие минутных данных, покрывающих весь диапазон тестирования. Возможна ситуация, когда генерируется несколько одинаковых тиков подряд. В этом случае дублирующиеся котировки фильтруются, и фиксируется объем последней из таких котировок.
При тестировании по всем тикам объём сгенерированных тиков может быть довольно большим, поэтому тестирование лучше проводить на мощном компьютере.
Пункт 4 – использовать дату. Ставим галочку и выбираем желаемые даты начала и окончания тестирования. Если галочка не проставлена, тестирование проводится по всей истории котировок, загруженных в терминал. Тестер не сможет провести тестирование на периоде, по которому нет котировок в архиве котировок, то есть вы не сможете сделать тест с 1400 года, если у вас нет котировок за этот период :)
Пункт 5 – визуализация, о ней чуть позднее.
Настройки на панели тестера справа:
Период – выбор периода для тестирования советника. Доступны периоды вплоть до D1. W1 и MN1 недоступны для тестирования.
Спред – можно задать любое значение или же использовать текущий спред по паре. Сделано это для удобства – например, по ночам и на выходных текущий спред обычно завышен и если вы тестируете советник в это время есть смысл задать спред вручную. Если у вас выбран текущий спред, результаты тестов могут сильно отличаться в зависимости от времени суток и дня недели, особенно при тестировании по всем тикам. Рекомендуется задавать спред предварительно узнав его в терминале вашего брокера.
Кнопка «Изменить эксперта» доступна только если у вас есть исходный код советника (файл с расширением mq4). Она открывает редактор кода советника, где вы сможете внести в советник необходимые изменения.
Кнопка «Открыть график» открывает график с нанесенными на него индикаторами и сделками, совершенными советником во время теста (нажать можно после того, как тест выполнен).
Кнопка «Свойства символа»
Поменять здесь ничего нельзя, это просто справочная информация по используемой валютной паре. Чем сильнее она совпадает с вашим брокером, тем лучше.
Кнопка «Свойства эксперта»
Нажав на кнопку, вы увидите окошко, изображенное сверху. Доступны три вкладки: «Тестирование», «Входные параметры» и «Оптимизация».
Вкладка «Тестирование».
Тут вы можете ввести используемый для теста депозит и валюту депозита. Также при желании можно выбрать направление сделок, например разрешить эксперту торговать только в покупки или только в продажи. Настройки оптимизации рассмотрим позднее, также как и вкладки «Оптимизация».
Вкладка «Входные параметры»
Тут находятся все управляющие переменные самого эксперта, его настройки. Кстати, окно масштабируемо – если вы потянете мышкой за нижний правый угол, можно увеличить или уменьшить его в размерах. Вместе с экспертами как правило обычно поставляются файлы с настройками, имеющие расширение *.set. Причем чаще всего для каждой пары свой файл с настройкой. Чтобы загрузить правильные настройки для нужной пары нажимаем кнопку «Загрузить» и выбираем нужный файл. Часто после установки эксперта в терминал они оказываются не в нужной папке. После нажатия на кнопку «Загрузить» мы оказываемся в папке тестера MetaQuotes\Terminal\F9E8F4C70E0FDAFC99\tester. Если нужных файлов там не оказалось, идем в папку F9E8F4C70E0FDAFC99\MQL4\Presets, скорее всего файлы там. Итак, выбираем и загружаем нужный настроечный файл. После загрузки нам нужно найти параметры манименеджмента советника и выставить фиксированный лот 0.1 – в этом случае каждый доллар прибыли или убытка будет равен 1 старому пункту. Для чего это – я расскажу ниже.
[ПРОДОЛЖЕНИЕ СЛЕДУЕТ]