Статистика тестирования выгружается в дневники трейдера и редакторы для последующего анализа. Важной функцией Тестера стратегий является оптимизация торгового робота, которая позволяет подобрать для конкретного советника лучшие входные параметры. Например, при помощи оптимизации можно изменить параметры таким образом, чтобы торговый робот стал максимально прибыльным, устойчивым, отличался минимальной рискованностью и так далее. Тестер стратегий в торговой платформе позволяет тестировать советники и индикаторы в визуальном режиме. Это дает возможность наглядно увидеть, каким именно образом эксперт осуществляет торговые операции при тестировании на исторических данных. Каждая сделка по финансовому инструменту отображается на его графике.
Наиболее частая ошибка начинающих трейдеров, которые не хотят знакомиться с понятиями матожидания и статистики, применяемых в Out-of-Sample (параметры вне выборки). Тестеры стратегий форекс могут быть отдельными программами или же выступать приложением к конкретным платформам. Также их можно разделить на те, которые предназначены исключительно для ручных стратегий (Forex Simulator, FX Blue Trading Simulator) или комбинированные, с возможностью тестирования советников.
Например, можно использовать вычислительные мощности компьютеров локальной сети и в несколько раз ускорить процесс оптимизации.
Глобальные Переменные Клиентского Терминала #
Верхняя часть окна содержит название финансового инструмента и период графика. Ниже отображается информация о текущем положении курсора на графике. Информация по индикаторам, открытым в своих подокнах, отображается в отдельных блоках. Включите эту опцию, чтобы использовать настройки комиссии текущего торгового счета вместо пользовательских настроек, указанных ниже. Чтобы использовать настройки комиссии текущего торгового счета, включите опцию “Использовать предопределенные комиссии”.
Если цена ниже цены Open, значит, перед нами цена Low – покупаем на этом тике, следующий тик будет соответствовать цене High, на котором закрываем покупку и открываем продажу. Следующий тик последний, это цена Close, на нем закрываем продажу. Помимо использования сети распределенных вычислений, вы можете предоставлять собственные вычислительные мощности для нее и зарабатывать. Для этого достаточно запустить специальный компонент
Ручное Тестирование Торговых Стратегий
Поскольку вам, вероятно, потребуется изменить свою стратегию, вам следует попытаться определить, как вы будете платить программисту каждый раз, когда вы просите внести изменения. Вам нужно будет решить, следует ли использовать фиксированную или почасовую оплату. Первый шаг в проекте ручного тестирования — найти программное обеспечение для построения графиков, которое легко и удобно использовать. Галочкой отмечаются те переменные, которые участвуют в оптимизации. Если вам посторонний человек предлагает инвестировать в торговую систему и в качестве доказательства предоставляет бэктест, просите инвесторский пароль.
Чтобы обеспечить наибольшую точность при тестировании, в режиме реальных тиков также используются и минутные бары. Это также позволяет избежать расхождения графиков в тестере и клиентском терминале. Если нет открытых позиций или отложенных ордеров, то необходимости в данных проверках на скрытых тиках нет и прирост скорости может оказаться существенным. Для класса таких стратегий сохраняется вся необходимая точность тестирования. История котировок по финансовым инструментам передается от торгового сервера в клиентский терминал MetaTrader 5 в виде экономно упакованных блоков минутных баров. Подробную информацию о том, как происходит запроса и построение требуемых таймфреймов можно получить из раздела справки Организация доступа к данным.
Mql5 Cloud Network
При этом в первый раз терминал скачивает с торгового сервера сразу всю доступную по тестируемому инструменту историю, чтобы впоследствии не обращаться за ней. На рисунке представлен очень привлекательный график тестирования этого эксперта. Для минутного бара известно 4 цены, и для них точно известно, что первой https://boriscooper.org/ идет цена Open, а последней идет цена Close. Между ними есть цены High и Low, последовательность их наступления неизвестна, но известно, что цена High больше или равна цене Open (цена Low меньше или равна цене Open). Количество комбинаций входных параметров при оптимизации может достигать десятков или сотен тысяч.
Тестирование в клиентском терминале MetaTrader 5 осуществляется с помощью агентов тестирования. Количество локальных агентов по умолчанию соответствует количеству ядер на компьютере. Если в терминале задан шаблон с названием tester.tpl в каталоге /profiles/templates клиентского терминала, то именно он будет применен к открываемому графику. Но в некоторых случаях программисту может понадобиться скрыть информацию о том, какие индикаторы задействованы в торговом алгоритме. Например, код эксперта сдается в аренду или продается в виде исполняемого файла без предоставления исходного кода. Есть и другой способ синхронизации баров – с помощью таймера.
Однако далеко не все пользуются таким шансом, просто игнорируя его. Некоторые просто не знают об этой возможности, другим лень даже начинать, а кто-то не может разобраться во всех премудростях программы. У каждого агента тестирования своя копия глобальных переменных, которая никак не связана с клиентским терминалом. Сам терминал является диспетчером, который раздает задачи локальным и удаленным агентам. После выполнения очередного задания по тестированию советника с заданными параметрами агент возвращает терминалу результаты. Тестер генерирует и проигрывает для каждого инструмента тиковую последовательность в соответствии с выбранным режимом торговли.
Из-за разницы в котировках появляются расхождения в статистике тестирования и качество котировок – первое, на что стоит обратить внимание перед тестированием. В тестере теоретически можно учесть и реакцию на выход новостей. Во-вторых, основной целью ставится всё-таки протестировать стратегию или тестирование торговых стратегий индикатор на предмет математической отработки. Это значит, что учитывается усреднённый результат за несколько месяцев или лет, без учёта обстоятельств извне. Вы смотрите просто на то, как отрабатывается сигнал в целом – как если бы был включен робот-советник, не реагирующий на выходящие новости.
Как только будет найден результат, который выглядит хорошо, он проверяет, работает ли стратегия в течение более длительного периода. В большинстве случаев результаты будут не очень впечатляющими. Тестер стратегий в MetaTrader является примером автоматизированного инструмента тестирования, имеющего встроенную систему бэктестинга.
В правой части окна можно установить таймфрейм, выставить текущий или фиксированный спред. Например, в ночное время спред обычно завышен, если стратегия предполагает использование индикатора ночью, то имеет смысл установить текущий спред. Здесь простор для тех, кто владеет кодом и хочет внести изменения в саму суть тестируемого индикатора с помощью MetaEditor.
Эксперт будет получать время и цену смоделированного тика так же, как и при работе в онлайне. Существуют ограничения работы некоторых функций в тестере стратегий клиентского терминала. MQL5 Cloud Network
Все настройки выставлены – можно начинать тестирование стратегии, нажав кнопку «Старт». Замечу, что каждое ее нажатие открывает новый график и тестирование начинается заново. Чтобы поставить тестер на паузу для открытия ордера, нужно нажимать кнопку возле полосы прокрутки скорости. Кнопка «Стоп» полностью останавливает тестирование и запустить его можно будет только заново. Отсюда же выходит и недостаток тестера – то, что в нём невозможно учесть психологические факторы. Он никак не сможет предусмотреть, что в определённый момент вас охватит паника и вы закроете сделку раньше времени.
- В тестере же вызовы Sleep() не задерживают процесс тестирования.
- Вы можете выполнить ручное тестирование, распечатав графики обменных курсов или просмотрев графики онлайн.
- Хотя в настройках вы можете добавить только один индикатор или советник, после включения тестера можно нанести на график и другие, совместив их.
- При досрочном завершении тестирования со стороны пользователя (кнопка “Отмена”), а также при закрытии клиентского терминала все локальные агенты тут же прекращают свою работу и выгружаются из памяти.
- Такое достоверное моделирование развития истории в тестере не вызывает вопросов до тех пор, пока используются режимы тестирования “Все тики” и “1 minute OHLC”.
В режиме реального времени значения индикаторов вычисляются на каждом тике. Тиковые данные могут не совпадать с минутными барами по различным причинам. Например, из-за обрывов связи или иных сбоев при передаче данных от источника в клиентский терминал. При тестировании минутные данные считаются более достоверными. Достаточно определить момент поступления цены Open и затем анализировать следующий тик, чтобы определить что перед нами – High или Low.
Цифрами обозначены опорные точки (вдаваться в подробности расчета не стоит). Проверка «По всем тикам» заставляет обращаться к тестеру в случае каждого изменения цены внутри бара. Наиболее точный метод тестирования, занимающий много времени. Работая с этой программой, вы вскоре узнаете, что одни и те же подходы показывают совершенно разные результаты, в зависимости от того, на каком инструменте и временном периоде вы работаете. Поймёте, почему так часто не срабатывают вроде бы нахваленные методы. Осознаете, что нельзя использовать ни один индикатор, ни одну стратегию просто потому, что её кто-то порекомендовал – сначала нужно проверить.