Наилучшим тестированием торгового эксперта является запуск в условиях, максимально приближенных к реальным. Максимально качественные результаты тестирования торгового эксперта вы можете получить, запустив тестирование на учебных демонстрационных счетах.
Тестирование – это запуск советника или индикатора на исторических данных с предустановленным набором настроек. Тестирование проводится с целью обнаружения ошибок в коде советника или индикатора или ошибок в торговой стратегии. Тест может быть запущен в режиме визуализации, что позволяет увидеть все торговые действия и сигналы индикаторов прямо на графике. Такое тестирование происходит намного медленнее, чем с отключенной визуализацией. Процесс построения визуализации сильно нагружает вычислительные мощности компьютера для отрисовки всех данных. Поэтому нужно четко понимать, какую цель вы преследуете, проводя тестирование.
Тестирование советника или индикатора позволяет трейдеру оценить работу программы на исторических данных. Главные критерии, по которым проводится оценка торгового советника или индикатора:
Существует всего два способа проверить программу на соответствие торговой стратегии, наличие ошибок в коде и реальную доходность. Любой пользователь терминала MetaTrader 4 может проверить торговую стратегию программы в тестере стратегий или запустив программу на учебном демонстрационном счете.
Тестирование советников в терминале MetaTrader 5 отличается от тестирования в терминале MetaTrader 4. В данной инструкции мы рассмотрим оба тестера стратегий. Небольшой совет-рекомендация: если вы еще выбираете, с каким терминалом работать, или уже используете MetaTrader 4, сделайте выбор в пользу терминала MetaTrader 5, так как официальная поддержка терминала MetaTrader 4 закончена и развитие терминала MetaTrader 4 полностью прекращено.
Написанные и скомпилированные скрипты, так называемые советники, можно запускать на любом терминале MetaTrader 4. Этот фактор породил целый рынок пользовательских программ, распространяемых как бесплатно, так и на различных условиях единоразовой оплаты или подписки. На сегодняшний день в интернете можно найти больше ста тысяч таких программ на любой вкус.
В теории советники должны содержать открытую и неоднократно протестированную на демонстрационных торгах и в реальных условиях стратегию, а результаты тестирования обычно прилагаются к программе. Получается, что трейдеры приобретают полностью автоматические, уже проверенные алгоритмы.
На практике это не всегда так, а поскольку роботы получают доступ к реальному депозиту, очень важно еще на первом этапе выбора провести экспресс-оценку приобретаемого советника вне зависимости от прилагаемых и рекламируемых результатов.
Пользовательский советник с закодированной стратегией для MetaTrader 4 представляет собой файлы, имеющие расширение mql4 или ex4. Трейдеру следует соблюдать правильность пути при установке советника, чтобы впоследствии без проблем найти и запустить его на платформе MetaTrader 4.
Установка выглядит как обычное копирование файлов, но с одной важной особенностью: папка для размещения файлов советника открывается из-под работающего (запущенного) торгового терминала.
Первый шаг трейдера – убедитесь, что файлы советника предназначены для MetaTrader 4, проверив расширение (mql4 или ex4). В качестве примера рассмотрим установку робота VR Smart Grid, который состоит из одного файла.
Второй шаг – запуск торговой платформы MetaTrader 4.
Третий шаг – открытие папки установки файлов советника через меню терминала «Файл» и опцию «Открыть каталог данных». После этой операции откроется привычное для пользователя окно с папками.
Индикаторы, советники, скрипты, вспомогательные библиотеки, шаблоны и многое другое, связанное с пользовательской настройкой платформы, находится в папке MQL4. Достаточно ее открыть, чтобы сразу сориентироваться, куда копировать файлы советника, благодаря аутентичному названию папок.
Четвертый шаг – разнесите файлы с дистрибутивом и настройками советника по соответствующим папкам, следуя приложенным к нему рекомендациям или ориентируясь на расширения:
В примере мы скопируем файл форекс советника VR Smart Grid в папку Experts.
Если советник установлен правильно, после перезапуска MetaTrader 4 его название появится в «Навигаторе». Завершает подготовительный этап, предшествующий тестированию, скачивание истории тиков. Определитесь с инструментами, с которыми предстоит работать, и нажмите F2.
В открывшемся окне архива котировок выберите требуемый финансовый инструмент, после чего нажмите клавишу «Загрузить». Начнется скачивание истории тиков, прогресс процесса будет обозначен увеличением зеленой шкалы внизу окна «Архив котировок».
Если история уже загружена в терминал Metatrader 4 и серверы брокера не содержат новых данных, возникнет сообщение с предложением о пересчете (перезагрузке) таймфреймов. На всякий случай лучше воспользоваться предложенным обновлением данных по тикам.
Скачанный архив котировок обеспечит тестер стратегий базой данных для моделирования (восстановления) свечей при воссоздании истории торгов. Загруженные котировки в большинстве случаев не обладают полным набором данных, а также очень часто встречаются пропуски данных, что приводит к низкому качеству тестирования советников.
ВАЖНО! Часть свойств торгового счета копируется с того счета, к которому сейчас подключен терминал. Тестирование на разных типах счетов будет сильно отличаться. Свойства, которые копируются: кредитное плечо, ограничения по минимальному и максимальному лоту, количество знаков после запятой, количество одновременно разрешенных позиций, суммарный объем открытых позиции и др.
Тестер стратегий открывается, как нижнее окно рабочего пространства Metatrader 4, позволяя трейдеру одновременно тестировать/оптимизировать торговые системы и «быть в рынке», отслеживая текущие позиции.
Трейдер может вызвать сервис в любой момент через меню платформы «Вид» или комбинацией быстрых клавиш, указанных в строке опций «Тестер стратегий».
Разработчики постарались сделать это приложение нативным, поэтому у пользователя, даже немного знакомого с платформой Metatrader 4, интерфейс почти не вызывает вопросов. Однако некоторые функции имеют определенную специфику.
Настройка свойств эксперта тестера стратегий
Свойства эксперта находятся в правом углу поля тестера стратегий и управляют непосредственной настройкой режимов тестирования, разбитых по трем вкладкам:
Никогда не занимайтесь оптимизацией при первичном прогоне советника! Проверку результативности торговой системы не стоит начинать с попытки «подогнать» параметры входящих в нее индикаторов и условий.
Система оптимизации использует «генетический алгоритм», который может эффективно повышать результативность теста. Побочный результат его работы – подгонка параметров под конкретный загруженный в тестер исторический период и инструмент. На реальных торгах, столкнувшись с другой формой колебаний (волатильностью, гэпами и т. д.), робот получит большие убытки.
Как уже было написано выше, для корректной работы советника при тестировании следует придерживаться настроек, рекомендованных или установленных по умолчанию разработчиком торговой системы.
В некоторых случаях изменения возможны в рамках «пресетов», специальных файлов, прилагаемых к роботу с описанием случаев или инструментов для их использования. Если советник популярен, то файлы настроек можно найти самостоятельно в интернете.
Рассматриваемый для примера робот VR Smart Grid как раз имеет подобные файлы пользовательских настроек. Файлы настроек можно размещать в любом удобном месте на вашем компьютере.
Таким образом, пользователю останется только нажать опцию «Загрузить» в тестировщике стратегий и выбрать нужный файл в открывшемся окне. Часто по умолчанию при выборе загрузки открывается папка «Tester», поэтому воспользуйтесь навигацией Windows, чтобы самостоятельно найти ваш файл настроек.
Описание полей тестера
При открытии сервиса тестирования по умолчанию слева устанавливается опция «Советник». Она автоматически отображает весь список роботов, что находится в папке Experts и окне «Навигатора».
При выборе второго варианта – индикатора – отобразится список файлов папки Indicators.
Чтобы запустить тест советника, надо дважды кликнуть по его названию в выпадающем списке. Далее аналогичным образом выбирается инструмент, по котировкам которого будет проведен разовый тест. Для его отображения в окне настроек достаточно одного клика.
Функция «Модель» определяет точность и продолжительность тестирования, метод «все тики» восстанавливает исторические котировки, используя все данные архива, поэтому он самый длительный. Остальные два вида не дают точной оценки и используются разработчиками на стадии проверки «торговых гипотез» для экономии времени поиска идей.
В некоторых случаях, когда логика робота «завязана» на долгосрочной стратегии, где сделки открываются по цене открытия свечи (бара) в начале дня, можно прибегнуть к модели с соответствующим названием – это позволит трейдеру «прогнать» советник на максимальном временном отрезке.
На длительность и точность теста влияет дата или длина исторического отрезка. Некоторые трейдеры полагают, что чем она больше, тем лучше, но эмпирический опыт доказывает следующее:
Как уже упоминалось выше, одной из задач тестирования является проверка «логики» открытия и закрытия сделок, работы мани-менеджмента – автоматического размещения отложенных ордеров, фиксирующих убытки и прибыль. Благодаря опции визуализации трейдер может воочию наблюдать за этими процессами в режиме «скоростного прогона» торговых сессий.
Опция «Визуализация» предлагает пользователю выбор включения и периода длительности демонстрации торгов.
Установка вышеуказанных настроек позволяет нажать кнопку запуска теста «Старт». Многие так и делают, оставляя без внимания параметр «Спред», где по умолчанию стоит значение «Текущий». Это может привести к ненадежным результатам по двум причинам:
Иногда трейдеры ставят стоимость спреда вручную выше на один пункт его реального значения, чтобы учесть вышеописанные потери.
Запуск тестирования советника
Выбрав метод моделирования истории торгов и длину отрезка их визуализации, настройте во входных параметрах эксперта фиксированный размер лота, равный 0,01. Это поможет отобразить размерность показателей отчета тестирования в пунктах, что сделает удобным анализ результатов теста.
Тестирование начинается с нажатия опции «Старт» и проходит автоматически, отображая на возникшем сверху графике инструмента только отрезок, выбранный на визуализации. Процесс наблюдения за сделками можно ставить на паузу (1), ускорять (2), уменьшать или расширять с помощью передвижения ползунка (3).
Если выбран метод «все тики», в тестере происходит воссоздание свечей, и цена производит колебания почти с достоверной точностью, что позволяет отображать сделки не по цене открытия и закрытия, а прямо «внутри» свечи.
После окончания теста в сервисе добавляются новые вкладки, которых не было на этапе запуска тестера: «Журнал», «График», «Результаты» и «Отчет».
Предварительная оценка эффективности торгового алгоритма проводится:
Стабильность работы кода советника определяется по журналу логов тестера.
На финальном этапе тестирования в тестере стратегий Metatrader 4 сервис производит «обрыв торгов», т. е. принудительное закрытие ордеров с фактическим убытком или прибылью. Тестируя среднесрочные, долгосрочные стратегии или советники, практикующие сетки ордеров, как в случае с VR Smart Grid, трейдер может увидеть в конце теста завышенный убыток, что отразится в резком падении кривой доходности – эквити (equity).
Вкладка «Результаты» содержит подробное описание совершенной или измененной торговой сделки, а также отложенных (лимитных) ордеров и итогов торгов.
Для удобства навигации при поиске сбоев работы все действия автоматической стратегии советника имеют сквозную нумерацию в первом столбце. Время совершения операции расположено рядом во второй графе.
Нумерация сделок содержится в четвертом столбце «Ордер». При модификации лимитных выставленных заявок она не меняется, например маркером отмечено выставление второго лимитного ордера на продажу, поэтому в колонке стоит цифра 2. Она же повторяется в следующей строке: по причине изменения предыдущего ордера Sell робот добавил к нему связанную заявку стоп-лосс, ограничивающую убыток в случае неблагоприятного движения цены.
Тип сделки определяет вторая колонка. Работа блока мани-менеджмента стратегии отображается в цифрах S/L и T/P (стоп-лосса, страхующего от убытков, и тейк-профита, фиксирующего прибыль). Колонка «Цена» показывает ценовой уровень отложенного или исполненного по рынку ордера, «Прибыль» – закрытый результат сделки, «Баланс» – динамику изменений депозита.
В приведенном примере тестирования советника VR Smart Grid трейдер должен обратить внимание, как идет увеличение лотности и работа трейлинг стопа, переставляемого вслед за положительным изменением курса в сторону открытой сделки, и проверить на графике, совпадают ли эти операции с логикой, заложенной в алгоритме робота.
Вкладка «График» разделена на два поля. Первое содержит две линии: баланса, обозначенного синим цветом, и текущих средств (зеленый цвет). Баланс меняется только по закрытии позиций, а текущие средства меняются в зависимости от текущих значений накопленной прибыли или убытка, что и объясняет несовпадение этих кривых. Второе окно, расположенное внизу, отображает гистограмму размера позиций, которая будет постоянной для стратегии, использующей фиксированный лот, открываемый по торговому сигналу робота. В рассматриваемом примере советник VR Smart Grid работает по сложной стратегии сетки, используя наращивание позиции, что и отображается различной высотой столбиков.
«Отчет» – самая важная вкладка, объективно, в цифрах, определяющая результаты тестирования. В первую очередь следует обратить внимание на качество моделирования истории торгов (1). Иногда трудно добиться 90% точности, поэтому советник следует проверять на демонстрационном счете.
Ошибки моделирования будут отображены:
Длина тестируемого периода указана количеством свечей «рабочего таймфрейма». В рассматриваемом примере это «часовик» – Н1. Строка (2) содержит данные начального депозита и спреда, настроенного пользователем до запуска тестирования.
Строка (3) определяет выгоду стратегии с точки зрения прибыли. Чистая и общая прибыль, и даже общий убыток играют относительную роль, гораздо важнее следующие параметры:
Убытки и прибыли в стратегии разнесены в строку (4):
Остальные параметры – абсолютные цифры прибыльных и убыточных позиций – не так важны, как:
Остальная часть отчета – своеобразный «сборник рекордов» по самым большим тестовым убыткам и прибылям, где следует обратить внимание на максимальную серию непрерывных сделок, закрытых в минус.
Информация из справки терминала
Журнал – это статистический пошаговый отчет о работе советника. В отличие от логов терминала он не содержит сервисных сообщений (информацию о старте робота, выключении и т.д.), здесь находится только описание сделок.
Журнал обязательно отобразит ошибки кода, если таковые будут найдены в ходе работы. Если это произошло, надо обратиться к разработчику или скачать советник в другом месте.
Кликнув на вкладки «Отчет», «Результаты» и «График» правой клавишей мыши, можно сохранить их для дальнейшего анализа. В выпадающем меню на выбор представлены варианты копирования или сохранения в файле, путь к которому трейдер выбирает самостоятельно или соглашается с предложенным вариантом по умолчанию. Копии нужны для сравнения с другими вариантами тестирования, для которых потребуется выбрать другие параметры или настройки.
Главная задача тестирования – экспресс-проверка робастности советника, поэтому на первой вкладке «График» трейдер должен наблюдать растущую линию эквити. При этом стабильность заработка гарантируют косвенные показатели:
На вкладке «Отчет» в первую очередь обращаем внимание на количество и процент прибыльных сделок:
Большое количество положительно закрытых ордеров может в итоге дать убыток, если трейдер «забудет» о параметре «прибыльность»:
Такой цифры можно добиться, контролируя размер стоп-лоссов (ордеров, ограничивающих убыток) по отношению к автоматически фиксируемой прибыли, размер которой определяют отложенные заявки – тейк-профиты.
В таблице на вкладке «Результаты» показаны итоговые значения по каждому положительному и отрицательному трейду. Изучение произвольной выборки поможет понять системность размера стоп-лосса и тейк-профита. Если в алгоритме заложены слишком высокие размеры убытков, их серия может «убить депозит».
Представление о возможной длине череды отрицательных сделок даст параметр «непрерывные убыточные сделки».
Анализируя вышеперечисленные результаты, трейдер должен понимать, что задача тестера – экспресс-анализ работы робота. Тестирование доказывает только факт отсутствия ошибок кода в советнике и наличие «рабочего» торгового алгоритма.
Терминал MetaTrader 5 является передовой платформой для торговли любыми финансовыми инструментами (Forex, Crypto, CFD, Option, Futures). Если вы еще не перешли на торговлю в терминале MetaTrader 5, рекомендуем вам это сделать как можно скорее. Также обратите внимание, что терминал MetaTrader 5 работает только в 64-битных операционных системах. Терминалы, работающие в 32-битных системах, больше не поддерживаются и не обновляются.
ВАЖНО! Советники, индикаторы, скрипты, сделанные для терминалов версии старше 2361, не могут работать в терминалах версии 2361 или ниже. Если у вас MetaTrader 5 застыл на версии 2361, настоятельно рекомендуем установить 64-битную версию терминала. Возможно, потребуется установка 64-битной операционной системы Windows.
Запустите терминал MetaTrader 5, в котором планируете провести тестирование советника. Установка советника в терминале делается точно так же, как и в терминале MetaTrader 4. После запуска терминала вы можете вызвать тестер стратегий двумя способами.
Откроется дополнительное окно «Тестера стратегий» – это предварительно настроенные режимы тестирования и оптимизации. При выборе режима в последующих настройках остается возможность все перенастроить на любой из представленных режимов.
Под пунктом (1) в окне тестера стратегий расположен режим тестирования с визуализацией. Несмотря на то, что режим называется «Визуализация», в следующих настройках визуализацию можно будет отключить или включить. Поле (2) предназначено для поиска результатов предыдущих тестов. Список предыдущих тестов и их результатов можно пересмотреть под пунктом (3).
Настройки тестера стратегий состоят из 20 пунктов:
(1) Вкладка «Настройки» – расположена на панели вкладок и позволяет переключаться между другими вкладками.
(2) «Советник». Выпадающий список – в данной настройке вы можете выбрать тестируемый советник.
(3) «IDE». Кнопка вызова редактора кода. Если тестируемый советник имеет файл исходного кода, вы можете открыть этот исходный код, нажав на кнопку IDE.
(4) Кнопка загрузки файла настроек. Нажав на эту кнопку, вы можете загрузить ранее сохраненный файл настроек и провести тестирование с настройками из файла.
(5) «Символ». Выпадающий список – в данной настройке вы сможете выбрать финансовый инструмент, на котором будет проводиться тестирование.
(6) «Период». Выпадающий список – позволяет выбрать «Период графика» для проведения тестирования.
(7) «$». Кнопка дополнительных настроек – позволяет внести изменения в свойства финансового инструмента. По умолчанию свойства финансового инструмента заполняются значениями от брокера, и по этим свойствам происходит реальная торговля. При необходимости вы можете изменить свойства вручную.
(8) «Интервал». Выпадающий список – позволяет выбрать предустановленный временной участок тестирования.
(11) «Форвард». Выпадающий список – позволяет задать период, не участвующий в процессе оптимизации, на нем идет проверка найденного набора настроек. Проще говоря, тестер терминала подбирает настройки на одном участке истории, а на другом проверяет их работу.
Форвард. Эта настройка, позволяющая проверить результаты тестирования, будет полезна для исключения ситуаций подгонки настроек на истории. Выбранный период тестирования (9)-(10) делится на части (половина, треть, четверть). Чтобы указать собственную дату начала форвард- тестирования, в настройке (11) нужно выбрать пункт «Пользовательский» и указать дату старта форвард-теста в поле (12). Подбор настроек проводится на первой части тестирования и называется «бэк-тест», на второй части проводится форвард-тестирование.
(13) «Задержки». Выпадающий список – позволяет пользователю выставить задержки для процесса открытия позиций. В реальной торговле такая задержка называется «Requote» – реквота. Вследствие изменения цен часто бывает ситуация, когда с момента первой попытки открыть позицию проходит много времени и цена успевает измениться. Сервер брокера при попытке открыть позицию по старой цене вернет отказ «Requote».
(14) Кнопка – позволяет задать дополнительные параметры изменения свойств торгового счета, комиссии, маржу, лимиты и др.
(15) «Моделирование». Выпадающий список – позволяет выбрать режим моделирования тиков и шагов цены.
Наилучшее качество тестирования. «Каждый тик на основе реальных тиков» не гарантирует получения таких же результатов, как если бы это было на учебном или реальном счете.
«Каждый тик на основе реальных тиков» – это максимально доступное качество, а не гарантия 100-процентного воспроизведения движения ценовых данных.
(16) «Прибыль в пипсах». При включении этой опции вся прибыль будет вычисляться в пунктах, расчеты прибыли и убытков не будут производиться. Для советников с увеличением торговых лотов включать данный режим не рекомендуется, так как в таких советниках 5 пунктов прибыли могут перекрывать 50 пунктов убытков.
(17) «Начальный депозит» – позволяет задать сумму депозита для тестирования.
(18) «Валюта тестирования» – позволяет задать валюту депозита.
(19) «Кредитное плечо» – позволяет задать размер кредитного плеча.
(20) «Оптимизация». Выпадающий список – позволяет включить тестер в режиме «Оптимизация».
(21) «Визуальный режим». Новое окно. Если данная опция включена, тестер стратегий откроет дополнительное окно, в котором можно наглядно увидеть все совершаемые торговые операции. Включение данного режима сильно замедляет процесс тестирования.
После того как вы настроили торговое окружение для тестера стратегий, можно переходить к настройкам самого советника. Для этого нужно перейти во вкладку «Параметры».
Красным прямоугольником выделен столбец «Значения». Именно здесь вы можете установить желаемые настройки для проведения одиночного теста. Список настроек, их значения зависят от советника и будут меняться для каждого советника. После того как вы задали настройки советнику для тестирования и настроили тестовое окружение, можно нажимать зеленую кнопку «Старт».
После нажатия на кнопку «Старт» откроется окно тестера стратегий с быстрым прогоном советника на исторических данных. В случае если вы установили форвард-тестирование, после указанной даты тестер стратегий запустит второе окно тестера для визуализации форвард-теста. После тестирования в основном окне терминала MetaTrader 5 откроется график с результатами тестирования, где каждая сделка будет отображена на графике. Запуск первого тестирования может быть задержан, если терминалу будет необходимо скачать историю финансового инструмента.
Окно тестирования немного похоже на окно терминала MetaTrader 5, но обладает меньшим набором кнопок. В верхней части окна есть кнопки для смены вида графика, для увеличения и уменьшения масштаба графика и для управления скоростью тестирования. В случае, когда нужно пропустить часть визуализации, можно указать дату, до которой следует это сделать, и нажать кнопку «Прокрутить до».
Нижняя часть окна содержит вкладки:
«Торговля» – отображает текущие открытые ордера и позиции.
«История» – отображает историю торговли советника; через контекстное меню можно просмотреть сделки, ордера и сделки + ордера.
«Операции» – отображает торговые операции, произведенные советником, а также открытие, закрытие позиций, их модификации.
«Журнал» – отображает записи и текстом пишет все, что делает торговый эксперт. В данной вкладке также пишутся все торговые условия и ошибки работы советника.
График кривой баланса и свободных средств можно построить в окне терминала MetaTrader 5:
Отчет о тестировании можно сохранить в виде интернет-страницы или файла таблицы.
Отчет тестирования в MetaTrader 5 намного больше и обширнее чем в MetaTrader 4. Трейдер может увидеть отчеты по простому тестированию и отчет по форвард – тестированию.
В отчете тестирования доступны следующие показатели:
Если во время тестирования/оптимизации в эксперте проводятся операции снятия средств со счета (Withdrawal), то вычисление показателей просадки происходит с их учетом. Показатели просадки, вычисленные до снятия средств, запоминаются программой. В момент снятия средств их расчет будет начат заново от текущего значения баланса и средств. Если полученные значения просадки превзойдут ранее запомненные, они, в свою очередь, будут запомнены программой. Таким образом, в итоговом отчете тестирования будут отражены максимальные значения просадки.
Самая грубая ошибка трейдера – это отношение к результатам тестирования как к желаемым результатам торговли на реальном счете. Даже тестирование и оптимизация советника на реальных тиках не покажет тех результатов, которые будут получены при тестировании советника на демо-счете. Тестирование, проведенное в условиях, максимально приближенным к реальным, будет самым качественным и честным. Вы можете открыть учебный счет у наших партнеров для проведения качественного тестирования.
werwerr