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

MACD с адаптивным определением ценовых экстремумов. - индикатор для MetaTrader 4

Просмотров:
12616
Рейтинг:
(10)
Опубликован:
2010.02.04 12:21
Обновлен:
2014.04.21 14:54
MQL5 Фриланс Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу


От привычного вида MACD индикатор _MACD_Xtr отличатся адаптивными уровнями зон ПК/ПП (серый пунктир), а также окраской баров гистограммы в соответствующие цвета при заходе MACD в эти зоны. (Ха! Вот и я до «раскраски заборов» дошел! «Обычай - деспот меж людей. // К чему напрасно спорить с веком?» (А.С. Пушкин "Евгений Онегин").)))

Принципы работы.
Обычно для адаптации индикатора в качестве регулятора используется сам индикатор. Увеличился, скажем, размах MACD – соответственно возрос и уровень зон ПК/ПП. Беда такого подхода – в фазовой задержке. Т.е. сначала индикатор покажет эту ПК или ПП, а уж потом, с задержкой на сглаживание передвинет зоны на новый уровень. В результате экстремум будет показан в самом начале движения – смысл такой адаптации есть только для последующих экстремумов. А если это V-/\-образные формации, а не W-M? Да и на последних терять выгоду от первого экстремума как-то не хочется. Каков выход? За неимением машины времени разумным представляется использовать источник волатильности с меньшим периодом, чем сам адаптируемый индикатор. В этом случае можно «упредить» движение самого индикатора, передвинув уровни ПК/ПП до того, как он начнет свое движение к ним. Но здесь возникает сложность из-за выполнения двух противоречащих друг другу условий для управляющего сигнала: с одной стороны его нельзя сглаживать, чтоб не внести фазовую задержку при росте волатильности, а с другой необходимо удерживать и фильтровать от шума достигнутый уровень той же волатильности. Для решения этой заморочки используется фильтрация с раздельными сглаживанием для фронта и затухания, принцип которой описан здесь. В данном случае нужна только фильтрация затухания, а фильтрация фронта управляющего сигнала не нужна вовсе. (Уж лучше сам период волатильности увеличить.)))
На картинке поясняется принцип определения зон ПК/ПП. Во втором подокне выведен TR (истинный диапазон), усредненный по 5-ти барам, т.е. – ATR(5), и сглаженный по затуханию EMA(66). Видно, что уровни ПК/ПП, построенные по индикатору из второго подокна, опережают драматические движения MACD.

Входные параметры.
FastMA – период быстрой EMA;
SlowMA – период медленной EMA;
Source – источник волатильности: 0 – объем, 1 – ATR; 2 – стандартная девиация;
BackPeriod – период сглаживания затухания;
xVolatility – масштаб волатильности;
Sens – порог чувствительности в пп.

Последний параметр (Sens) можно оставить равным нулю, т.к. сглаженная по затуханию волатильность, как правило, не доходит до своего шумового порога на ликвидных инструментах.
Что же касаемо источника волатильности (Source), то лучший вариант в этом, конкретном применении, на мой взгляд, - это ATR. Собственно, это вытекает из природы MACD и ATR и подтверждается на практике. Объем использовать можно, но поскольку он не нормирован в масштаб цен, то придется помучаться с масштабным коэффициентом (xVolatility). Так что лучше – не надо.))) Впрочем, как угодно. xVolatility имеет тип double, и подобрать значение можно. Но это выглядит как-то по-мичурински… короче, дело хозяйское.)))
Сглаживание затухания (BackPeriod) по умолчанию стоит 444. Для минуток, с их внутридневными недомоганиями по волатильности – нормально. Для старших тайм-фреймов значение можно уменьшить. Но, можно отметить, что индикатор достаточно устойчив к импровизациям со значением этого параметра (в разумных, ясен пень, пределах – минимум по логике адаптации видится как удвоенное значение периода медленной MA в MACD).

Вызов индикатора из пользовательских кодов:

iCustom(NULL,0,"_MACD_Xtr",FastMA,SlowMA,Source,SourcePeriod,FrontPeriod,xVolatility,Sens, N,i);  

где N - выходные буферы:
0 – MACD;
1 – уровень ПК;
2 – уровень ПП;
3 – бар в зоне ПК;
4 – бар в зоне ПП;
Для использования в ТС интересны последние два.

Для работы индикатора необходим индикатор-поставщик сглаженной волатильности _Volatility_FBA_NR. Он уже бы представлен на картинке. Его поля параметров такие:
Source – источник волатильности: 0 – объем, 1 – ATR, 2 – стандартная девиация;
FrontPeriod – период сглаживания фронта;
BackPeriod – период сглаживания затухания.

TrendLine v3 TrendLine v3

Торгует по трендовым линиям, построенным по zigzag.

Стратегия форекс Session Breakout Стратегия форекс Session Breakout

Основан на пробое сессионных максимумов и минимумов на рынке форекс

Советник на пробитие диапазона Советник на пробитие диапазона

Советник выставляет отложенные ордера недалеко от цены через минимальную дистанцию.

grider grider

Советник "антимартингейл!" - при наращивании позиции уменьшается риск. Позиции наращиваются по ряду Фибоначчи. На данный момент открытие происходит по отложенным ордерам на определённом расстоянии от рынка.