Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Советники

ExpertZZLWA - эксперт для MetaTrader 5

Просмотров:
2852
Рейтинг:
(29)
Опубликован:
2017.12.26 11:24
\MQL5\Experts\ \MQL5\Include\
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Указания по установке

Для тестирования советника необходимо скачать демо-версию индикатора ZigZagLW Addition. Файл ZigZagLW Addition.ex5 должен находиться в директории MQL5\Indicators\Market. Также необходимо скачать библиотеку IsNewBar, в директории MQL5\Include должен находится файл isnewbar.mqh. Далее необходимо скачать файл эксперта ExpertZZLWA.mq5, открыть его в редакторе и скомпилировать. Модель готова к испытаниям.


Испытания

Цель данной публикации - продемонстрировать потенциальную прибыльность индикатора ZigZagLW Addition, кратко охарактеризовать который можно как "указатель тренда". Желающих ознакомиться с алгоритмом работы данного индикатора милости просим сюда https://www.mql5.com/ru/market/product/2647. Для разработки модели МТС, торгующей по указанному индикатору возьмем следующий эксперт https://www.mql5.com/ru/code/19102. В теле данного эксперта я ничего не удалял, все, что было не нужно, я закомментировал и добавил необходимые блоки, так же изменил название. Изменения выделены комментариями следующего вида:

//**************************

...

//**************************

Как это работает: эксперт покупает и продает при получении соответствующих сигналов, но это не переворотный эксперт: ордер закрывается по Stop Loss и Take Profit, открывается столько ордеров, сколько было сигналов.

Определимся с основным критерием оценки потенциально прибыльной модели механической системы и с тем, как эту оценку произвести. На начальном этапе мы имеем лишь модель и хотим понять, стоит ли на базе данной модели что-либо строить. Для меня положительным ответом на этот вопрос является форма кривой баланса на длительном интервале тестирования. Если кривая показывает неуклонный восходящий тренд, это дает определенные основания для рассмотрения данной модели в качестве основы системы, вокруг которой можно добавить на свой вкус фильтры, индикаторы, Money Management и т.д. В общем, основа должна быть устойчивой, чтобы выдержать весь этот "балласт".

Чтобы вручную не гонять по всем параметрам, оценивая кривую баланса, зададим разумные границы оптимизации и, опираясь на здравый смысл, постараемся выбрать (угадать) наиболее перспективные наборы параметров.

Здесь следует обратиться к классикам, тем более что пишут они, по смыслу, одно и то же. Не скажу, что выбрал с первого раза данную книгу, но точно не с десятого. Понравился нумерованный список правил для трейдера. У других эти мысли изложены непоследовательно, разбросаны по тексту. Итак, это "Дорога к трейдингу"" Джона Пайпера. Открываем главу 9 и читаем:

Секреты трейдинга:

  1. Отсекайте убытки;
  2. Дайте прибыли накапливаться;
  3. Торгуйте избирательно;
  4. Торгуйте в направлении тренда.

Что применительно к нашему случаю означает:

  1. Stop loss должен быть небольшим;
  2. Take profit должен быть большим;
  3. В модели никак не запрограммировано;
  4. Когда сигнал на покупку - покупаем, когда сигнал на продажу - продаем.

Три из четырех и широкое поле для деятельности, о чем еще мечтать? Хотя по поводу последнего пункта есть замечания, сигналы здесь не указатели продолжительного тренда. Пока цена проходит путь до Take Profit, сигнал изменяется несколько раз. Здесь сигнал скорее играет роль стохастика, но неоспоримые его свойства - это раннее оповещение и обязательное формирование при зарождении тренда, тренд не может начаться без сигнала. Так что правильнее будет сказать, что применением обсуждаемого индикатора мы частично покрываем пункты 3 и 4, но ни один из них полностью. Проблема же с указателями продолжительного тренда это - катастрофическое запаздывание, но и они могут найти свое применение, например, для доливки в момент формирования сигнала.

Итак, первый скриншот - это параметры оптимизации. Оптимизируем по двум параметрам stoploss и takeprofit, все остальные не трогаем:

parameters

Параметр Level это то, какой уровень индикатора ZigZagLW Addtion мы используем, а mode - выбор режима работы советника. В original_mode советник работает, как его прародитель MT45, в addition_test_mode - по сигналам индикатора ZigZagLW Addtion и, наконец, при ma_test_mode - по сигналам, возникающим при пресечении скользящих средних.

Оптимизация велась на терминале МetaТrader 5 на данных сервера access.metatrader5.com:443 как рекомендуется в данной статье https://www.mql5.com/ru/articles/385#files, на интервале 1.01.2000 - 31.12.2016 в режиме контрольных точек на 15 минутном таймфрейме это мы видим в установках на втором скриншоте:

settings

Результат оптимизации прикреплен в материалах к публикации под названием: complete period.xml.

Рассмотрим наибольший результат он очевидно имеет проблемный продолжительный период в конце тестирования и выделен оранжевым.

first test

Проведем оптимизацию на периоде с 1.01.2012 - 31.12.2016. Результат находится в файле под названием partial period.xml.

Выберем лучший результат и посмотрим, как эти параметры работают на всем интервале 1.01.2000 - 31.12.2016.

second test

Для сравнения я добавил третий режим работы эксперта ma_test_mode. В этом режиме в качестве сигналов используются пересечения скользящих средних. Целью было получить примерно столько же сделок, чтобы сравнить результаты и оценить степень влияния торговых сигналов на итог с теми же параметрами stoploss и takeprofit.

third test


Общие соображения

Кому-то результаты покажутся обнадеживающими, кому-то нет. Отметим лишь неоспоримые факты:

  • Модель соответствует рекомендациям опытных трейдеров по отсеканию убытков и накоплению прибыли, что на кривой баланса отражается превышением линии средств над линией баланса;
  • Кривая средств показала неуклонный возрастающий тренд с незначительными просадками, на продолжительном интервале времени;
  • Используется чисто механическая модель с малым количеством параметров оптимизации.

Параметры, принятые за оптимальные StopLoss=3600, TakeProfit=6700, Level=Long_term1, конечно же, являются компромиссными, интересно взглянуть на параметры в более полной мере соответствующие советам трейдеров скажем StopLoss=500, TakeProfit=8000.

fourth test

Сравним эти же параметры для сигналов по пересечению скользящих средних

fifth test

Вариант модели с параметрами StopLoss=500, TakeProfit=8000 наиболее близок к тому, что советуют бывалые трейдеры, но и психологически он наиболее сложен: продолжительные плато на кривой баланса и продолжительные серии проигрышных сделок (достигает 145) очевидным образом приводят к тому, что очень немногие способны следовать советам (может быть поэтому это все еще работает).

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

Одни механические системы значительно отличаются от других при тех же параметрах выставления ордеров, с примерно равным их количеством на выбранном интервале (кто бы мог подумать).

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

Exp_ColorJFatl_Digit_Tm_Plus Exp_ColorJFatl_Digit_Tm_Plus

Торговая система, построенная на сигналах индикатора ColorJFatl_Digit с возможностью удержания позиций точно фиксированное время.

Arrows and Curves EA Arrows and Curves EA

Советник по индикатору "Arrows&Curves".

AroonOscillator_Histogram AroonOscillator_Histogram

Индикатор AroonOscillator, выполненный в виде цветной гистограммы.

SVS_Trend_HTF SVS_Trend_HTF

Индикатор SVS_Trend с возможностью изменения таймфрейма индикатора во входных параметрах.