Индикатор Klinger Oscillator (KO) — Осциллятор Клингера

Осциллятор Клингера (Klinger Oscillator, KO), иногда его еще называют Осциллятор объема Клингера (Klinger Volume Oscillator, KVO) — технический индикатор объёма, разработанный Стивом Клингером (Stephen Klinger) в 1977 году. Цель — выявлять долгосрочные тренды движения денежных средств, для выявления краткосрочных колебаний и предсказывать развороты цены, сопоставляя направление ценового движения и объёмы торгов; особое внимание уделяется суммарному потоку капитала («volume force») — состоит из самого объёма, ценовых трендов и темпа, а также разнице между краткосрочной и долгосрочной сглаженными величинами — двух скользящих средних, которые основаны не только на цене, но и на временных рамках.
Осциллятор Клингера состоит из двух линий:
1. Клингер Осциллятор (KO или KVO): Это основная линия, рассчитываемая на основе разницы между объемом растущего и падающего периодов.
2. Сигнальная линия: простая скользящая построенная по самому индикатору Klinger Oscillator.
По функционалу Осциллятор Клингера относится одновременно к классам:
— Осцилляторы (momentum/oscillators) — индикатор даёт колебания вокруг нулевой линии и измеряет «сигнал/импульс».
— Объёмные индикаторы (volume-based indicators) — основывается непосредственно на объёмах торгов (Volume Force, KCV).
— Трендовые индикаторы (trend-following component) — через EMA34/EMA55 от накопительной линии он показывает долгосрочную тенденцию объёма и её изменения.
Расчет индикатора Klinger Oscillator (KO)
Шаги расчёта (популярная формула)
1. Определяем Trend (тенденция) для текущего периода (обычно для бара/свечи i):
— Typical Price (TP) = (High + Low + Close) / 3.
— Direction (DM): сравниваем текущий TP с предыдущим TP (TP_prev).
Если TP > TP_prev, то Direction = +1 (восходящая тенденция),
если TP < TP_prev, то Direction = −1 (нисходящая),
если равны — берут Direction = 0 (иногда = +1 или сохраняют предыдущее значение — вариации).
2. Вычисляем Volume Force (VF):
— VF = Volume × Direction × (2 × TP − High − Low) / (High − Low)
Пояснение: множитель (2×TP − High − Low)/(High − Low) измеряет смещение Typical Price внутри диапазона бара;
если TP ближе к High — множитель положительный, если ближе к Low — отрицательный. В источниках встречаются варианты формулы (в частности, без деления на диапазон или с другими нормировками). Важны направление (Direction) и пропорциональность объёму.
Упрощённый/альтернативный вариант (часто используется):
— VF = Volume × Direction × (Close − Close[i−1]) / (High − Low)
или
— VF = Volume × Direction — простая версия, но менее точная.
Замечание: в реальных реализациях встречается несколько версий VF; ключевая идея — совместить объём, направление и положение цены в диапазоне бара.
3. Накопительная линия KCV (Klinger Cumulative Volume):
— KCV = KCV[i−1] + VF
Обычно KCV_0 = 0 (или начинается с первого VF).
4. Вычисляем две экспоненциальные скользящие средние KCV:
— EMA_short = EMA(KCV, n1) — короткая EMA, стандарт n1 = 34 периодa (в оригинале Клингер использовал 34).
— EMA_long = EMA(KCV, n2) — длинная EMA, стандарт n2 = 55 периодов (в оригинале 55).
В разных источниках используются SMA, EMA или WMA; EMA наиболее распространена.
5. Klinger Oscillator:
— KO = EMA_short − EMA_long
Получаем осциллятор, колеблющийся относительно нуля. Когда короткая EMA выше длинной — положительное значение (бычий сигнал), и наоборот.
6. Сигнальная линия:
— Signal = EMA(KO, n3), где обычно n3 = 13 (или 13-периодная EMA). Сигнал к действию генерируется при пересечении KO и Signal, либо при дивергентных расхождениях между ценой и KO.
Пример расчёта (упрощённый, шаги для нескольких баров)
— Пусть для бара i: High=110, Low=100, Close=108, TP=(110+100+108)/3=106, Volume=1000.
— Для предыдущего бара TP_prev = 103 → Direction = +1.
— VF = 1000 × (+1) × (2×106 −110 −100)/(110−100) = 1000 × (212 −210)/10 = 1000 × 2/10 = 200.
— KCV добавляет 200; затем рассчитываем EMA34 и EMA55 от KCV и их разницу = KO.
Торговля с индикатором Klinger Oscillator (KO)
— Пересечение нуля: когда KO пересекает ноль снизу вверх — подтверждение бычьего тренда (объём поддерживает рост) — момент входа в покупки; наоборот при пересечении осциллятором KO нулевой линии сверху вниз — медвежье – момент открытия коротких позиций.

— Пересечение с сигнальной линией (EMA/SMA KO): похожие сигналы, но более сглаженные. Если основная линия KO пересекает сигнальную снизу вверх – это благоприятный момент для входа в покупки. В случае, когда основная линия индикатора KO пересекла сигнальную сверху вниз – благоприятный момент для открытия коротких позиций.

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

— Дивергенции: если цена делает новый максимум, а Осциллятор KO не подтверждает (меньший максимум) — медвежья дивергенция, возможен разворот вниз. Обратная ситуация — если значение индикатора движется вверх даже при падении цены ценной бумаги, это считается бычьей дивергенцией.

В первом (“#1”) мы видим тенденцию к росту цен, а осциллятор – показатель объема, учитывая, что он является частью его входных данных, имеющих тенденцию к снижению. Когда 13-периодная EMA (“signal line”) пересекала осциллятор, когда он находился в нисходящем тренде, это посылало медвежий торговый сигнал (обозначаемый первой стрелкой). Его сняли после того, как 13-периодная EMA пересекла осциллятор, когда он находился в восходящем тренде (вторая стрелка).
Цена и осциллятор на тот момент были сонаправлены. Таким образом, никакая торговля не была бы предпринята на основе расхождений на пересечении, который вышел из короткой торговли.
Вторая сделка (“#2”) была долгой. Мы не видим большой дивергенции, но какая-то ее степень тем не менее есть. Цена была боком, а осциллятор резко возрастал. Тенденция была повышена на основе скользящего среднего за 50 периодов. (Это не обязательно часть системы, но чем больше у вас факторов, идущих в пользу вашей торговли, тем лучше.)
— Подтверждение тренда: KO помогает отличать «ложные» ценовые пробои, указывая, поддерживается ли движение объёмом.
Пример комбинирования сигналов по осциллятору KO и скользящей на графике цены.

— Сделка на продажу:
Осциллятор пересек свою и сигнальную линию над отметкой 0. Это дало нам первый сигнал к продаже. Мувинг на самом графике подтвердил продажу, так как пересек график сверху вниз. В качестве точки выхода из сделки использовался уровень поддержки, нарисованный на самом осцилляторе.
— Сделка на покупку:
Осциллятор пересек свои линии под отметкой 0, что дало первый сигнал на покупку. Там же оказался и наш уровень поддержки, только в этом случае он уже был сопротивлением. Это дало второй сигнал на покупку, а также, указало на более точную точку входа. Мувинг на самом графике подтвердил начало восходящего тренда, а также, указал более безопасную точку входа на покупку. В качестве точки выхода в этот раз использовался уровень сопротивления, но уже нанесенный на самом графике.
Ограничения и советы
— Чувствительность к настройкам и волатильности: разные структуры VF/нормировок дают разные сигналы. Необходима оптимизация параметров под инструмент и таймфрейм.
— Запаздывание: как и все скользящие, индикатор даёт запаздывающие сигналы; рекомендуется использовать в сочетании с ценовыми уровнями, свечными моделями и другими индикаторами.
— Работа в боковом рынке: в диапазонном рынке KO может давать ложные сигналы.
— Объёмные данные: на некоторых рынках (форекс) объём — это тик-объём (не реальный объём сделок), что снижает информативность.
Компоненты и логика
— Volume Force (VF) — первичная величина, связывающая изменение цены, направление движения и объём. Идея: если цена растёт и закрытие выше средних значений, то объём «поддерживает» рост (положительный VF), если цена падает — объём «поддерживает» падение (отрицательный VF). VF накапливается (или суммируется) в виде накопительной линии (Klinger Cumulative Volume, KCV), а затем из KCV вычисляют два скользящих средних с разными периодами и берут их разницу — собственно осциллятор.


















