Индикатор DivergenceViewer

 

Для автоматического поиска и отображения дивергенций на одном, текущем, графике выбранного символа используется индикатор DivergenceViewer.

 

Логика поиска экстремумов

Метод определения дивергенции основан на проведении двух линий: на ценовом графике и на графике базового индикатора. Для построения каждой из таких линий необходимо найти две опорные точки - два экстремума одного и того же типа (два максимума или два минимума). Индикатор DivergenceViewer производит такой поиск, двигаясь по графику справа налево. Поэтому сначала проверяется наличие экстремума как можно ближе к текущему бару. Такой бар отстоит от текущего на два бара влево (см. рис. 1).

 

Рис. 1. Ближайший возможный экстремум.

В этой ситуации максимум еще нельзя учитывать, т. к. он может быть пробит формирующимся баром. А вот минимум уже сформирован - справа от него имеется законченная свеча. Поэтому его можно принимать в качестве первой опорной точки для линии дивергенции, если таковая вообще может быть построена.

При поиске первой опорной точки, соответствующей текущему бару, индикатор рассматривает наличие экстремума только на втором баре слева. Если экстремум отсутствует на ценовом графике и на графике базового индикатора, то на этом поиск дивергенции для текущего бара заканчивается. При наличии экстремума на ценовом графике производится поиск соответствующего типа экстремума на графике базового индикатора и, наоборот, при наличии экстремума на графике базового индикатора будет совершен поиск такого же экстремума на ценовом графике.

Найденная пара экстремумов вовсе необязательно должна принадлежать одному и тому же бару. Допускается смещение экстремумов на некоторое количество баров. Величина этого смещения указывается трейдером в специальном параметре "Price ext. to ind.ext / От экст. цены до экст. инд." По умолчанию используется значение 10. Если требуется точное совпадение экстремумов, то в этом параметре следует указать 1. Значение 0 не допускается.

 

Рис. 2. Смещение соответствующих экстремумов друг относительно друга.

На рис. 2. показана ситуация смещения максимумов соответствующих экстремумов цены и базового индикатора на 5 баров (если бар экстремума считать первым). В этом случае для регистрации экстремумов как соответствующих друг другу в упомянутом параметре необходимо указать значение 5 или более. Минимумы на рис. 2 смещены на 2 бара. Таким образом, для регистрации этих экстремумов в качестве соответствующих друг другу значение параметра должно быть более 1.

После нахождения первой пары экстремумов индикатор приступает к поиску следующей пары экстремумов цены и базового индикатора того же типа экстремума, который был обнаружен. Расстояние, на котором будет производиться поиск второй пары экстремумов, указывается в параметре "Depth of 2nd ref. point search / Глубина поиска 2ой оп. точки". Имеется в виду расстояние между баром, вторым от текущего, и баром, на котором найден ближайший экстремум из второй пары экстремумов (см. рис. 3).

 

Рис. 3. Глубина поиска второй опорной точки.

В показанной ситуации второй минимум базового индикатора отстоит от первого экстремума на 16 баров, но второй минимум ценового графика ближе - в 15-и барах от первого экстремума. Поэтому для такого случая хватит глубины поиска экстремумов, равной 15 баров.

Фиксацию экстремумов цены индикатор DivergenceViewer может проводить в двух вариантах: "по максимумам и минимумам баров" и "по ценам закрытия" (см. рис. 5 и 6 в материале Понятия: "дивергенция" и "базовый индикатор"). Первый вариант будет работать, если в параметре "Applied price of market / Используемая рыночная цена" выбрать значение "High/Low". Соответственно, для поиска экстремумов по ценам закрытия следует указать значение "Close/Close".

 

Параметры базового индикатора

Индикатор DivergenceViewer в качестве базового индикатора может использовать один из десяти включенных в его алгоритм индикаторов. Указать используемый индикатор трейдер может в параметре "Base indicator / Базовый индикатор". Параметры базового индикатора устанавливаются в блоке настроечных параметров "The base indicator parameters / Параметры базового индикатора". Ниже в таблице приведен список используемых индикаторов и соответствие параметров индикатора DivergenceViewer параметрам каждого из базовых индикаторов.

N

Индикатор

"Первый период расчета"

"Второй период расчета"

"Третий период расчета"

"Цена расчета индикатора"

"Метод расчета среднего"

1

RSI

Период расчета RSI

-

-

Применить к

-

2

MACD

Быстрое EMA

Медленное EMA

-

Применить к

-

3

Momentum

Период расчета Momentum

-

-

Применить к

-

4

RVI

Период расчета RVI

-

-

-

-

5

Stochastic по ценам Low/High

Период %К

Период %D

Замедление

-

Метод МА

6

Stochastic по ценам Close/Close

Период %К

Период %D

Замедление

-

Метод МА

7

Standard Deviation

Период расчета StdDev

-

-

Применить к

Метод МА

8

Производная

(см. "Производная функции цены")

Период расчета Derivative

-

-

-

-

9

William Blau

(см. "Эргодический MACD-осциллятор")

Медленное EMA

Быстрое EMA

Период сглаживания

Цена расчета

-

10

Тело к тени

(Close - Open) / (High - Low)

-

-

-

-

-

 

Пользовательские индикаторы

В тех случаях, когда в качестве базового индикатора требуется использовать такой индикатор, который не относится к вышеперечисленным индикаторам, включенным в код DivergenceViewer, следует воспользоваться блоком параметров "Custom indicator / Пользовательский индикатор". При этом в параметре "The base indicator parameters / Параметры базового индикатора" должно быть указано значение "Custom / Пользовательский".

К сожалению, в качестве пользовательского индикатора нельзя использовать любой индикатор. Он должен относиться к линейному (индикаторы типа RSI, RVI, Momentum) или гистограммному (типа Bears Power, Volumes) типу, т. е. значения индикатора должны составлять непрерывный поток данных, без пропусков. Индикаторы вроде ZigZag и различные стрелочные индикаторы не подойдут.

Для подключения индикатора в качестве пользовательского необходимо удостовериться в том, что индикатор доступен в терминале МТ4. Проверяется методом присоединения исследуемого индикатора к любому графику. Если индикатор нормально присоединяется к графику и отображается на нем, то можно переходить к следующему этапу.

В настроечных параметрах индикатора DivergenceViewer следует указать имя подключаемого пользовательского индикатора (параметр "The name of indicator / Имя индикатора") без расширения и точки (".mq4" или ".ex4" указывать не нужно). В параметре "Amount of ind. parameters / Кол-во параметров индикатора" указывается число настроечных параметров, используемое пользовательским индикатором, а в нижеследующих строках задаются нужные значения параметров пользовательского индикатора в том порядке, в котором они следуют в индикаторе.

Параметр "Index of data buffer / Индекс буфера для съема данных" указывает индекс буфера пользовательского индикатора, с которого необходимо получать значения для поиска опорных точек линий дивергенции. Чаще всего, здесь нужно оставить значение 0. Но в некоторых случаях нужная линия индикатора располагается в другом буфере. Для определения требуемого индекса достаточно зайти на закладку "Цвета" пользовательского индикатора и, найдя нужный цвет линии, посмотреть индекс, который соответствует этому цвету. Этот индекс и есть нужный индекс буфера. К примеру, индексы буферов для линий индикатора Alligator определяются так (см. рис. 4).

 

Рис. 4. Буферы индикатора Alligator.

Красная линия - линия зубов - индекс 1, синяя линия - линия челюстей - индекс 1, зеленая линия - линия губ - индекс 2.

По умолчанию параметры пользовательского базового индикатора настроены для использования индикатора Sentiment.

 

Отображение и оповещение

Индикатор DivergenceViewer позволяет отдельно настраивать отображение дивергенций разных классов. К примеру, для дивергенций класса А в блоке "Divergence class A / Дивергенции класса А" необходимо перевести переключатель "Show / Отображать" в положение "Yes / Да", а в двух следующих параметрах указать цвет для линий бычьей и медвежьей дивергенций. Аналогичным образом настраивается отображение дивергенций класса В, С и скрытой дивергенции.

При обнаружении какой-либо дивергенции индикатор может произвести оповещение трейдера об этом событии. Комплектация индикатора предполагает два вида оповещения: звуковой и отправка Push-сообщения. При активации звукового оповещения (переключатель "Alert on divergence? / Сигнал при дивергенции?" переведен в положение "Yes / Да") обнаружение дивергенции сопровождается звуком и появлением информационного окна (см. рис. 5).

 

Рис. 5. Информационное окно.

Push-сообщение с содержанием, аналогичным показанному на рис. 5, будет получено на мобильном устройстве в случае перевода переключателя "Notification on divergence? / Уведомлять при дивергенции?" в положение"Yes / Да" и предварительной настройки возможности отправки Push-сообщений в клиентском терминале.

Процесс поиска и отображения дивергенций является достаточно ресурсоемким. По этой причине в стандартной поставке индикатора глубина поиска ограничена всего лишь 10 000 баров. В том случае, если трейдеру недостаточно такой глубины обработки истории котировок (или, наоборот, требуется меньшая глубина), имеется возможность изменения этого ограничения при помощи параметра "The number of bars to display / Количество баров отображения". Использованию всей доступной истории котировок соответствует значение 0 этого параметра.

 

См. также Фильтры дивергенций.