Тестер стратегий МТ5 как тестировать советники в MetaTrader5
Тестирование и оптимизация на реальных тиках являются максимально приближенными к реальным условиям. Вместо сгенерированных на основе минутных данных используются реальные тики, накопленные по финансовым инструментам брокером. Достаточно определить момент поступления цены Open и затем анализировать следующий тик, чтобы определить что перед нами – High или Low. Если цена ниже цены Open, значит, перед нами цена Low – покупаем на этом тике, следующий тик будет соответствовать цене High, на котором закрываем покупку и открываем продажу. Базовым и наиболее детальным режимом генерации является режим «Все тики», остальные два режима являются упрощением основного и будут описаны в сравнении с режимом «Все тики». Эксперт на языке MQL5 представляет из себя программу, которая запускается каждый раз в ответ на некое внешнее воздействие – событие.
- Например, это может
быть максимальная прибыль, устойчивость, низкий риск и так далее. - Так, изначально в этом окне можно видеть только вкладки «Настройки» и «Журнал».
- Входные параметры позволяют управлять поведением советника, адаптируя его под различные рыночные условия, в том числе под конкретный финансовый инструмент.
- Для просмотра
отчёта достаточно нажать кнопку «Analyze»
(в этом случае вы увидите его на
официальном сайте тестера)
или можно просмотреть его в стандартном
тестере стратегий. - Тестером стратегий называют специальное программное обеспечение позволяющее определить эффективность разработанной вами стратегии торговли путем её прогона по реальным историческим данным.
На последующих этапах «оптимальные» комбинации скрещиваются до тех пор, пока результаты не перестанут улучшаться. Таким образом, количество комбинаций и общее время оптимизации сокращаются в разы. Встроенная в тестер функция Оптимизации позволяет подобрать
оптимальные параметры торговой программы для получения наилучшего результата в трейдинге. Например, можно настроить параметры торгового робота на получение максимальной прибыли, минимизацию риска и так далее. Тестирование ручных стратегий с помощью тестеров в общих чертах происходит следующим образом.
Советник TSTester для тестирования; ручных; стратегий R Blog RU — RoboForex
Поэтому, понимая несомненную пользу тестирования на истории, нельзя механически полагаться исключительно на его результаты. Программа для тестирования советников позволяет проверять и оптимизировать любые стратегии. В Тестере вы можете испытывать как свои собственные, так и чужие разработки. Воспользуйтесь этим инструментов для принятия решения о покупке робота в Маркете — скачайте бесплатную демо-версию выбранного приложения и
оцените ее поведение на исторических данных. Верхняя часть окна содержит название финансового инструмента и период графика. Ниже отображается информация о текущем положении курсора на графике.
Ручное тестирование выполняется, как уже понятно из названия, непосредственно ручками самого трейдера. Тестер прогоняет для него исторические данные, а он выбирает подходящие моменты для открытия и закрытия сделок. То есть по сути, трейдер ведёт обычную торговлю с единственным отличием в том, что время здесь можно существенно ускорить. При этом следует помнить, что эффективность торговой стратегии в прошлом не гарантирует того же в будущем. Тестируемый советник не может записывать на диск более 4ГБ информации и использовать более 4ГБ оперативной памяти.
Strategy Tester: режимы моделирования при тестировании торговых стратегий
Работа тестера строится на основе исторических данных по котировкам валют. В процессе тестирования торговый робот анализирует накопленные котировки, при этом совершая виртуальные торговые сделки в соответствии с заложенным в него торговым алгоритмом. Это позволяет оценить, как бы данный советник торговал в прошлом и смоделировать его поведение в реальном трейдинге.
Поддержка генетических алгоритмов в тестере торговых стратегий
существенно снижает время сложных оптимизаций с большим количеством
переборов. Распределенная оптимизация также в разы ускоряет этот процесс
за счет подключения дополнительных вычислительных мощностей из
локальной сети или интернета. Режим визуализации — это не только возможность самому увидеть, как торгует робот. Помимо этого он позволяет проверить работу пользовательских технических индикаторов.
Проверьте и оптимизируйте торгового робота еще до запуска в торговлю
Это дает возможность для создания «Грааля тестирования», который показывает красивый восходящий график баланса при тестировании. Для увеличения быстродействия при оптимизации параметров советника функции Comment(), Print() и PrintFormat() не выполняются. Исключением является использование этих функций внутри обработчика OnInit(). Для получения ответов на эти вопросы предназначен тестер стратегий, входящий в состав клиентского терминала MetaTrader 5. Бэктестинг можно провести с помощью встроенной в терминалы МТ4 или МТ5 специальной программы — тестера стратегий.
Необходимо заметить,
что первые 100 баров также не генерируются, это ограничение не
зависит от установленного диапазона дат. Результаты тестирования складываются терминалом в специальный кэш результатов (результирующий кэш) для последующего быстрого доступа к ним при необходимости. Для каждого набора параметров терминал ищет в результирующем кэше уже готовые результаты от предыдущих запусков для исключения повторных запусков. Если результат с таким набором параметров не найден, агенту отдается задание на проведение тестирования. У каждого агента тестирования своя копия глобальных переменных, которая никак не связана с клиентским терминалом. Сам терминал является диспетчером, который раздает задачи локальным и удаленным агентам.
Тестер стратегий
Это означает, что при тестировании мультивалютного эксперта возможна ситуация (и чаще всего так и бывает), когда на одном инструменте новый бар уже открылся, а на другом еще нет. Проведем оптимизацию и представим результаты оптимизации в виде 2D графика. В этом варианте не требуется проверять значение_функции на равенство нулю и сама поверхность результатов оптимизации в 3D-представлении имеет ту же форму, только зеркально отраженную от исходной. На рисунке представлен очень привлекательный график тестирования этого эксперта. Для минутного бара известно 4 цены, и для них точно известно, что первой идет цена Open, а последней идет цена Close.
Но что же делать, если вы ничего не понимаете в языках программирования, и у вас нет денег заказать себе советника? Тогда переходите в полную версию материала и знакомьтесь со всеми возможностями онлайн тестера. После того, как архив будет скачан, вы сможете его распаковать и обнаружить папке MQL4 с файлами индикатора и советника. Интерфейс программы удобен и напоминает терминал МТ4 – так же оформлены графики, есть панель инструментов. На шкале времени отмечены новости, что дает максимум возможностей для анализа стратегий, построенных на фундаментальных данных. Для корректного тестирования советника рекомендуется загрузить котировки с нужным временным интервалом по выбранной валютной паре из архива, как это было указано выше.
Тестер стратегий производит симуляцию торговли на основе заданной стратегии, используя исторические данные, и выдает результаты в виде графиков, таблиц и отчетов. Встроенная функция форвард-тестирования позволяет избавиться от “переоптимизации”, или подгонки параметров. С включением этой опции история котировок валют и акций делится на две части. Непосредственно оптимизация происходит на первом отрезке истории, а второй используется только для подтверждения полученных результатов. Если на обоих отрезках эффективность торгового робота одинаково высока, значит, торговая система обладает наилучшими параметрами и подгонка параметров практически исключена. Важной функцией Тестера стратегий является оптимизация торгового робота, которая позволяет подобрать для конкретного советника лучшие входные параметры.
Это позволяет выстроить правильный график в тестере в случае неполных тиковых данных у брокера. Чтобы обеспечить наибольшую точность при тестировании, в режиме реальных тиков также используются и минутные бары. Это также позволяет избежать расхождения графиков в тестере и клиентском терминале. Программа для тестирования торговых стратегий очень полезна при установке автоматизированных систем торговли. Роботы и советники, после их установки в терминале, отображаются в соответствующем окне.
ТОП 10 скальпинговых стратегий форекс
Как видите, графики на разных режимах тестирования абсолютно одинаковы для советника Moving Average из стандартной поставки. При тестировании в режиме «Все тики» функция OnTick() эксперта будет вызываться на каждой контрольной точке, каждая контрольная точка – это тик из сгенерированной последовательности. Эксперт будет получать время и цену смоделированного тика так же, как и при работе в онлайне. История котировок по финансовым инструментам передается от торгового сервера в клиентский терминал MetaTrader 5 в виде экономно упакованных блоков минутных баров.
Единицы, в которых указывается значение, зависят от выбранного способа начисления (в базовой валюте, валюте группы, пунктах и т.д.). Чтобы не ограничивать максимальный размер комиссии, установите значение 0. Чтобы не ограничивать минимальный размер комиссии, установите значение 0. Максимальный объем сделки (оборота), с которого будет взиматься данная комиссия; Настраиваемые диапазоны не должны пересекаться.
Обмен данными между терминалом и агентом #
При использовании технических индикаторов, можно также проверить их результативность на истории. В настройках имеется функция визуализации, которая воспроизводит ценовое движение на выбранном таймфрейме за период, на котором проводится тест. Перед стартом тестирования стратегии с роботами выбирается торговый инструмент и анализируемый период.
Также здесь можно настроить сессии, когда тестируемой программе будет запрещено торговать. Перед началом тестирования мультивалютного эксперта включите требуемые для тестирования инструменты в «Обзоре рынка». В контекстном меню нажмите » Символы» и включите показ необходимых инструментов. Выполните команду » Тестировать» в контекстном меню нужного советника в окне «Навигатор».
Также выбранные символ и период влияют на специальные функции в коде советника, которые используют параметры текущего графика (например, Symbol() и Period()). Иными словами, здесь выбирается график, к которому был бы присоединен советник. Если в результате выполнения функции Sleep() текущее время в тестере вышло за конец тестер торговых стратегий периода тестирования, то будет получена ошибка «бесконечный цикл в Sleep». В процессе тестирования вы можете наблюдать за процессом торговли в режиме онлайн — все сделки испытуемого робота наглядно отображаются на графике. Его анализ позволит вскрыть недостатки вашего советника и внести соответствующие правки.
Визуальное тестирование советника в режиме реального времени наглядно показывает на графике, каким именно образом эксперт осуществляет торговые операции на исторических данных. По завершении тестирования вашему вниманию предоставляется полный отчет с результатами — как графическими, так и количественными. Такая подача результатов делает анализ торговой стратегии еще более удобным.
Например, из-за обрывов связи или иных сбоев при передаче данных от источника в клиентский терминал. При тестировании спред не моделируется, а берется из исторических данных. Если в исторических данных спред меньше или равен нулю, то используется последний известный на момент генерации спред.