Качество моделирования 99% в тестере стратегий – нужно ли оно и как его получить?

Качество моделирования 99% в тестере стратегий – нужно ли оно и как его получить?

В прошлом уроке мы разобрались, как тестировать советник в терминале МТ4.

Любой кто когда-либо имел дело с советниками либо торговыми роботами под МетаТрейдер 4 (МТ4) сталкивался с обстановкой, в то время, когда результаты в тестере стратегий выглядят легко превосходно, а в настоящей торговле получается совсем вторая картина. Обстоятельств для для того чтобы разительного отличия, по большому счету говоря, возможно большое количество. Сейчас мы поболтаем об одной из таких обстоятельств, которая связана с качеством моделирования тиковой истории котировок в терминале МТ4.

Наилучшее уровень качества моделирования, которое возможно взять в тестере стратегий МТ4 простыми методами, это 90%.  Дабы его взять, нужно выбрать в тестере режим «по всем тикам» и иметь закачанные котировки самого небольшого таймфрейма М1 за целый период тестирования. Однако, кроме того уровень качества моделирования 90% не всегда оказывается достаточным для оценки работоспособности советника.

Давайте разберем, из-за чего такое возможно.

Как известно, исторические котировки всех инструментов сохраняются в МТ4 в виде баров (свечей) разных таймфреймов. Любой бар содержит в себе цену открытия (open), закрытия (close), максимум (high) и минимум (low) за этот временной отрезок. Самый небольшой таймфрейм в МТ4 это минутки M1. Это значит, что о каждой минуте из прошедшей истории терминал МТ4 «знает» не больше 4х стоимостей. А любой трейдер знает, что за кое-какие 60 секунд на рынке форекс успевает случиться очень многое.

При тестировании советника в тестере стратегий в режиме «по всем тикам», тестер старательно пробует заполнить «дырки» между теми стоимостями, каковые у него имеется в распоряжении, расставляя имитированные стоимости легко линейно. Нужно ли сказать, что это не имеет ничего общего с действительностью?

Давайте посмотрим, к чему может привести таковой недочёт моделирования. В сети существует последовательность советников, в большинстве случаев обрисовываемых как «тестерные граали», каковые показывают баснословные результаты в тестере, но с уверенностью сливают на реале. Они кочуют с форума на форум и приводят к массе чувств у новичков. Давайте заберём один из них, советник называющиеся VectorTrader и прогоним его в тестере стратегий с качеством моделирования 90%.

Приобретаем следующую картину.

За неполный месяц 35 тыс. сделок и депозит увеличен в 3.5 раза, при работе постоянным лотом. Хорошо, не правда ли? Но подождем радоваться.

Сперва прогоним тот же советник с теми же настройками за тот же период, но с качеством моделирования 99%. Приобретаем вот что

Строго говоря, в последнем тесте нам нужно было бы поделить тейк-профит и стоп-лосс на 10, т.к. котировки 4х-значные а советник не хорошо написан, но роли это не играется – как бы мы ни подбирали настройки, тест с 99% моделированием будет показывать уверенный слив. Нужно ли пояснять, какой из двух тестов ближе к тому, что получается при торговле на настоящем счете? Пологаю, что нет.

Поясню лишь из-за чего отличие между 90% и 99% такая громадная. Советник VectorTrader (как и другие подобные советники) написан так, дабы торговать В баров М1 – именно в том месте, где тестер при 90% моделировании не имеет точной информации и расставляет тики линейно.

Так что же такое тестирование с качеством моделирования 99%? Существует способ, разрешающий скачать настоящую тиковую историю котировок по валютным парам, сгенерировать ее в формате подходящем для МТ4 и «подсунуть» настоящую тиковую историю тестеру стратегий. Для данной процедуры существует последовательность коммерческих ответов, но я вам поведаю как это возможно сделать идеальной безвозмездно.

Инструкция

1. Во-первых, котировки нужно скачать. Один из немногих провайдеров, каковые безвозмездно предоставляет тиковую историю, это швейцарский брокер Dukascopy. самый удобный метод закачки тиковых котировок от Dukascopy – посредством вольно распространяемого менеджера закачек Tick Data Downloader от StrategyQuant. Скачиваем Tick Data Downloader тут. устанавливаем. Устанавливать менеджер закачек лучше не в Program Files, а в какой-нибудь «обычный» директорий, куда программа может записывать эти без неприятностей.

Запускаем менеджер. Ставим галочки наоборот желаемых валютных пар, выбираем начальную и конечную дату, жмем «Start Download». Процесс отправился…

По окончании того, как котировки скачались, у вас покажется файл с заглавием имя_валютной_пары.csv в поддиректории \tickdata папки  установки Tick Data Downloader. В моем случае это USDCHF.csv.

2. Сейчас нужно преобразовать скачанные котировки в формат, пригодный для МТ4. Для этого вам пригодится терминал МТ4, подключенный к вашему любимому брокеру. Пускай ваш терминал установлен в папку с заглавием MT4_folder. Распакуйте содержимое архива csv2fxt.zip. Положите сам скрипт csv2fxt.mq4 и csv2fxt.ex4 в MT4_folder\experts\scripts\, вспомогательный файл FXTHeader.mqh в папку MT4_folder\experts\include\, библиотеку CsvReader.dll в MT4_folder\experts\libraries\. Убедитесь, что в терминале МТ4 разрешен вызов dll библиотек.

Для этого зайдите в меню Сервис  Настройки Советники. Убедитесь, что все галочки

выставлены, как на рисунке внизу.

Сейчас отыщите скачанные котировки имя_валютной_пары.csv и перенесите их в MT4_folder\experts\files\. Перегрузите терминал и удостоверьтесь в надежности, что вы подсоединены к брокеру.

Откройте график валютной пары, для которой вы скачали котировки.  Отыщите в разделе скриптов CSV2FXT и перетащите его на график. Среди обилия открывшихся настроек для нас актуальны лишь пара.

Csv File – ко мне возможно ввести имя файла котировок (к примеру, USDCHF.csv). Это нужно сделать, в случае если у вас в терминале «расширенное» имя валютной пары (к примеру, USDCHF.m). В случае если имя пары такое же, как и у файла (USDCHF), то это поле возможно покинуть безлюдным.

FXTGMTOffset – сдвиг времени сервера брокера довольно времени GMT. Возможно покинуть нулем – тогда котировки будут такими, как словно бы у вашего брокера время стоит по Гринвичу.

CreateM1, CreateM5, CreateM15 и т.д. – ставим TRUE для тех таймфреймов, тиковые котировки которых нужно сгенерировать. Генерировать сходу большое количество тиковых котировок направляться с осторожностью, т.к. любой файл может занимать по нескольку гигабайт дискового пространства.

Ожидаем появления окна, информирующего, что процесс окончен. Скрипт предлагает нам перенести файлы в другую папку – отклоняем его предложение. Наблюдаем в папку MT4_folder\experts\files и видим, что скрипт создал один либо пара файлов с расширением .fxt и пара файлов с расширением .hst.

Файлы fxt – это и имеется файлы тиковой истории, а hst файлы содержат котировки разных таймфреймов, каковые соответствуют тиковой истории.

3. Сейчас переходим к заключительному этапу и третьему – настройке терминала МТ4 для тестов с 99% моделированием. Это самый «скользкий» момент, поскольку предполагает не совсем стандартное применение терминала. Нужно заявить, что владелец и автор МТ4, компания MetaQuotes, есть монополистом с очень вредным характером. В первых предположениях терминала МТ4 была особая галочка, которую достаточно было скинуть, дабы отменить необходимый пересчет тиковых котировок тестером.

Уже давно таковой галочки, к сожалению, нет и терминал приходится «патчить», причем патч приходится делать собственный к каждому следующему обновлению терминала, что очень некомфортно.

Исходя из этого мы с вами отправимся следующим методом. Мы установим раздельно ветхую версию терминала, которая будет употребляться лишь для тестов. В данный терминал мы скопируем все нужные нам файлы и приготовленные котировки из нового терминала, присоединенного к брокеру.

Тестовый терминал к брокеру подсоединяться не будет (да и не сможет, поскольку брокеры больше не трудятся со ветхими предположениями терминала).

Сперва нужно узнать наименование сервера брокера, к которому вы подсоединены в новом терминале. Для этого в меню Files выберите пункт Login и в открывшемся окне авторизации запомните имя сервера. В моем случае это RoboForex-Demo

Сейчас нужно распаковать ветхую версию МетаТрейдера 4 (455 билд), что будет употребляться для тестирования с 99% моделированием. Скажем, мы распаковали отечественный МТ4 в папку MT4_test. Напомню, в папке MT4_folder у нас новая версия MT4, подсоединенная к брокеру RoboForex-Demo.

  1. Копируем файл конфигурации сервера MT4_folder\config\RoboForex-Demo.srv   —  MT4_test\config\RoboForex-Demo.srv
  2. Копируем всю папку истории MT4_folder\history\RoboForex-Demo\ —  MT4_test\history\  А позже удаляем из нее все файлы *.hst. Для этого возможно собрать в командной строчке del *.hst
  3. Переносим файлы котировок, каковые мы сгенерировали MT4_folder\experts\files\*.hst  —  MT4_test\history\RoboForex-Demo\
  4. Переносим файлы тиковой истории, каковые мы сгенерировали MT4_folder\experts\files\*.fxt  —  MT4_test\tester\history\

Сейчас запускаем терминал для тестов посредством пакетного файла start_tester.bat в папке MT4_test. Появляется окно авторизации. Нажимаем кнопку Login (содержание полей Login и Password не имеет значения).

Авторизации не происходит (она нам и не нужна), но в поле Market Watch появляются знаки валютных пар. Перегружаем терминал и все готово к работе.

Увижу, что пакетный файл start_tester.bat запускает терминал МТ4 и машинально делает скрипт патча. Вы имеете возможность кроме этого запустить терминал простым образом (дважны кликнув на terminal.не сильный), а позже вручную запустить скрипт патча birts_patch_416, дешёвый в перечне скриптов терминала.

Сейчас попытаемся протестировать какой-не сильный советник. Открываем тестер стратегий (Contrl-R), выбираем тестовый советник Moving Average, выбираем валютную несколько, котировки которой мы сгенерировали, выбираем таймфрем, что мы сгенерировали, выбираем даты теста (в пределах периода сгенерированных котировок), выбираем уровень качества моделирования “все тики” и нажимаем Start.

По окончании окончания теста переходим в закладку Report и контролируем, что полученное уровень качества моделирования вправду 99%. Бинго.

Напоследок скажу, что скрипт для конвертации котировок и скрипт для патча терминала написан один из пионеров 99% моделирования Кристи Дмитриеску aka Birt. Обновленные предположения скриптов возможно поискать у него на сайте http://eareview.net/tick-data/downloads .

Скачать материалы использованные в статье и все

нужное для тестов с качеством 99%.

Создатель: Владимир aka loopsider

Источник: www.argolab.net

Качество Моделирования 99% в тестере стратегий

Важное на сайте:

Самые интересные результаты статей, подобранные именно по Вашим интересам: