BearishDivergence
Функция BearishDivergence ищет возникновения максимумов в ценах (например, High, Close и т.д.), которые не сопровождаются возникновением максимума для индикатора (например, RSI и др.). Если такая ситуация имеет место, то функция возвращает +1, в противном случае функция возвращает 0. Такая ситуация называется Swing High, а бар, на котором она произошла - Swing Bar.
Функция BearishDivergence вызывает функцию SwingHighBar. Функция SwingHighBar возвращает номер бара, на котором произошло самое недавнее возникновение вышеописанной ситуации. Эта функция также может быть настроена, чтобы возвращать предпоследнее и еще более ранние возникновения ситуации, описанной в первом абзаце.
Синтаксис: BearishDivergence(PRICE, OSCILLATOR, STRENGTH, LENGTH)
PRICE – определяет, какую цену актива использовать в расчетах. OSCILLATOR – определяет используемый индикатор. STRENGTH – требуемое число баров по каждую сторону от Swing Bar. LENGTH – длина в количестве периодов, используемая для расчета функции.
Если ситуация, описанная в первом абзаце, произошла, то функция возвращает 1. В противном случае функция возвращает ноль.
Использование функции: Четыре параметра функции BearishDivergence связаны с двумя вызываемыми функциями SwingHighBar. Параметры PRICE, STRENGTH и LENGTH используются одной функцией SwingHighBar, а параметры OSCILLATOR, STRENGTH и LENGTH – другой.
Параметры PRICE и OSCILLATOR показывают, какие данные используются в расчетах. Вместо параметра PRICE обычно ставится какая-либо цена бара (например, Close, High или Low) . Параметр OSCILLATOR показывает, какой индикатор используется для расчетов.
Параметр STRENGTH показывает число баров с каждой стороны от Swing Bar. Чем больше этот параметр, тем на большем числе баров ищется Swing Bar. Например, при параметре STRENGTH=1 требуется 3 бара, чтобы найти Swing Bar, а при STRENGTH=3 потребуется 7 баров.
Параметр LENGTH показывает, сколько баров функция должна анализировать за один раз. Если Swing Bar не найден на этом числе баров, то функция возвращает -1 и переходит к следующему бару. Например, если имеется 30 баров для анализа, а параметр LENGTH равен 5, то сначала проверяются бары с 1 по 5, затем с 2 по 6 и так далее до баров 26 – 30.
Используя функцию SwingHighBar, функция BearishDivergence определяет номера баров для последнего и предпоследнего нахождений Swing Bar, а также значения параметров PRICE и OSCILLATOR для этих баров. Затем функция сравнивает значение парметра PRICE для последнего и предпоследнего нахождения Swing Bar, проверяя, больше ли последнее нахождение, чем предпоследнее. Функция также сравнивает значения параметра OSCILLATOR для последнего и предпоследнего нахождения Swing Bar, проверяя, меньше ли значение для последнего нахождения, чем для предпоследнего. Если оба эти условия выполняются, то функция возвращает 1. Если оба условия не выполняются, или выполняется только одно, то функция возвращает ноль.
|