Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
DoubleZigZag 2 - эксперт для MetaTrader 5
- Просмотров:
- 3225
- Рейтинг:
- Опубликован:
- 2020.02.08 07:17
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Принцип работы
Это вторая версия (первая версия опубликована здесь: DoubleZigZag).
Новое в версии 2:
- Money management: Lot OR Risk - подробнее в разделе Управление размером позиции (расчёт лота)
- The value for "Money management" - подробнее в разделе Управление размером позиции (расчёт лота)
- Only one positions - в рынке всегда только одна позиция
- Reverse - переворот торгового сигнала
- Close opposite - закрытие позиций противоположных торговому сигналу, причём сначала идёт гарантированное закрытие противоположной позиции и только потом открытие новой позиции в направлении сигнала
- На баре может быть только одна сделка 'вход в рынок' (это внутренний параметр, он не вынесен во входные параметры и это не имеет отношения к параметру ' Only one positions').
Советник использует для анализа два индикатора ZigZag, "младший" с параметрами (13,5,3) и "старший", у которого все параметры больше в восемь раз (13*8,5*8,3*8).
//--- create handle of the indicator iCustom handle_iCustom=iCustom(Symbol(),Period(),"Examples\\ZigZag",13,5,3); //--- if the handle is not created if(handle_iCustom==INVALID_HANDLE) { //--- tell about the failure and output the error code PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d", Symbol(), EnumToString(Period()), GetLastError()); //--- the indicator is stopped early return(INIT_FAILED); } //--- create handle of the indicator iCustom handle_iCustomX8=iCustom(Symbol(),Period(),"Examples\\ZigZag",13*8,5*8,3*8); //--- if the handle is not created if(handle_iCustomX8==INVALID_HANDLE) { //--- tell about the failure and output the error code PrintFormat("Failed to create handle of the iCustomX8 indicator for the symbol %s/%s, error code %d", Symbol(), EnumToString(Period()), GetLastError()); //--- the indicator is stopped early return(INIT_FAILED); }
Для принятия решения о торговле анализируем два катета последней вершины старшего ZigZag (13*8,5*8,3*8) — считаем, сколько вершин младшего ZigZag (13,5,3) содержится в этих двух катетах.
При получении сигнала на открытие BUY закрываем все позиции SELL. И наоборот: при получении сигнала на открытие SELL закрываем все позиции BUY.
Параметры советника
- Coefficient 1 — соотношение количества вершин младшего зигзага в катетах старшего;
- Coefficient 2 — соотношение разницы цен в вершинах старшего зигзага.
Пример
Красным цветом показан старший ZigZag (13*8,5*8,3*8), желтым — младший ZigZag (13,5,3).
Соответственно, ABC — это вершины старшего ZigZag (13*8,5*8,3*8).
Всего катеты AB и AC содержат девять вершин младшего ZigZag (13,5,3).
Подробнее о настройках советника:
Торговые настройки
В советнике нет ни Stop Loss, ни Take Profit ни Trailing Stop.
Дополнительные возможности
- Only one positions - в рынке всегда только одна позиция
- Reverse - переворот торгового сигнала
- Close opposite - закрытие позиций противоположных торговому сигналу, причём сначала идёт гарантированное закрытие противоположной позиции и только потом открытие новой позиции в направлении сигнала
Обратите внимание: торговый сигнал имеет наивысший приоритет! Ограничить его исполнение можно только при помощи параметра Only one positions. Если Only one positions равен "true" и количество позиций открытых этим советником на данном символе больше "1" - тогда торговый сигнал игнорируется.
Параметр Close opposite равен "true": сначала ЗАКРЫВАЕМ противоположную позицию, потом отрабатываем торговый сигнал.
Управление размером позиции (расчёт лота)
Лот может быть как постоянный (Money management установить в Constant lot и задать размер лота в The value for "Money management") так и динамический - в процентах риска на сделку ( Money management установить в Risk in percent for a deal и задать процент риска в The value for "Money management"). Также можно задать постоянный лот равный минимальному лоту - Money management установить в Lots Min.
Индикатор iCCI (Commodity Channel Index, CCI) выполненный в стиле рисования DRAW_FILLING
Plan X version 2Советник сравнивает разницу между ценой закрытия Close бара #1 и ценой закрытия Close бара #Candle shift.
Вторая версия индикатора "LifeHack Balance Equity" - теперь отображение данных только в момент рождения нового бара
New Day New Pending Order 2Отложенные ордера выставляются каждый день в индивидуальное время. Развитие первой версии