Индекс переменчивости (Choppiness Index): как настроить фильтр тренда и флэта без ложных входов
Оглавление
- Что показывает Индекс переменчивости: логика шкалы от 0 до 100
- Почему Индекс переменчивости нельзя путать с индикаторами волатильности (ATR)
- Математический аппарат: формула Дрейсса и практический расчет на 14 свечах
- Рабочие торговые системы на базе Choppiness Index
- Стратегия 1. «CHOP Breakout + EMA 20»: вход в зарождающийся импульс
- Стратегия 2. Фильтрация отскоков от уровней поддержки и сопротивления
- Управление капиталом: расчет безопасного объема позиции
- Специфика применения на разных рынках
- Ограничения алгоритма: 4 сценария, когда CHOP дает сбой
- Платформы и терминалы: сравнительный анализ реализаций
- Код индикатора для TradingView (Pine Script v5)
- Чек-лист проверки торгового сетапа
- План действий: как внедрить инструмент в торговлю
- Ответы на частые вопросы (FAQ)
Choppiness Index (CHOP) — математический индикатор рыночного режима, разработанный товарным трейдером Э. Дрейссом в 1993 году. Инструмент не прогнозирует направление движения актива (вверх или вниз). Его единственная задача — измерить внутреннюю структуру графика и отделить направленный импульс от хаотичного бокового распила.
Аналогия с одометром:
Представьте прибор, измеряющий извилистость маршрута. Автомобиль проехал 100 км по прямой магистрали между двумя городами — коэффициент извилистости минимален, перед нами мощный направленный тренд. Если тот же автомобиль преодолел те же 100 км, петляя по дворам одного жилого квартала и вернувшись в исходную точку, показатель окажется максимальным. Рынок потратил энергию, но остался в границах коридора — это чистый флэт.
Базовое правило инверсии:
- Значения у дна шкалы (<38.2): рынок движется по прямой, в разгаре устойчивый тренд.
- Значения у вершины шкалы (>61.8): рынок совершает хаотичные колебания, продолжается накопление объема.
Самостоятельных торговых сигналов на покупку или продажу CHOP не дает — его используют строго в связке с направленными фильтрами.
| Уровень CHOP (шкала 0–100) | Фаза рынка | Текущий режим движения | Базовое действие трейдера |
|---|---|---|---|
| Выше 61.8 | Консолидация / Боковик | Рыночный распил, накопление объема | Отключить трендовые советники, сократить плечи, работать строго от границ диапазона или оставаться вне рынка |
| 38.2 – 61.8 | Переходная зона | Сжатие пружины, зарождение фазы | Удерживать безубыточные позиции, не наращивать рабочий объем, ожидать подтверждения пробоя границ |
| Ниже 38.2 | Направленный импульс | Монолитный тренд (бычий либо медвежий) | Работать строго по тренду в связке с EMA/SuperTrend, полностью исключить контртрендовые сделки |
Что показывает Индекс переменчивости: логика шкалы от 0 до 100
Опираясь на постулаты нелинейной динамики и концепцию фрактальной геометрии Бенуа Мандельброта, Э. Дрейсс спроектировал алгоритм для математического разграничения случайного блуждания цен и направленного движения.
Диапазон осциллятора нормирован от 0 до 100. В качестве ключевых барьеров Дрейсс выбрал коэффициенты золотого сечения Фибоначчи — 38.2% и 61.8%:
- Уровень 38.2% получается делением числа последовательности Фибоначчи на число, стоящее через одну позицию правее (34/89 ≈ 0.382).
- Уровень 61.8% рассчитывается делением текущего числа последовательности на следующее за ним (34/55 ≈ 0.618).
| Диапазон шкалы CHOP | Состояние рыночной среды | Внутренняя динамика актива | Допустимые сценарии торговли |
|---|---|---|---|
| 61.8 – 100.0 | Высокая переменчивость | Флэт, боковой распил, накопление позиций крупными участниками | Сеточные стратегии (Grid), торговля отскоков от внешних границ, нейтральные опционные спреды |
| 38.2 – 61.8 | Буферный баланс | Перераспределение объема, подготовка к выбросу волатильности | Выжидание, сопровождение ранее открытых позиций скользящим стопом |
| 0.0 – 38.2 | Направленный импульс | Устойчивый прямолинейный тренд (восходящий либо нисходящий) | Торговля на пробой, добавление к прибыльным позициям, трейлинг вдоль скользящих средних |
Ключевая характеристика инструмента — его ненаправленная природа (directionless). Траектория кривой CHOP падает к нижним рубежам как во время мощного бычьего ралли, так и при отвесном паническом обвале котировок. Осциллятор фиксирует степень спрямления ценового вектора: чем ближе пройденное суммарное расстояние к чистому отрезку между максимумом и минимумом, тем ниже опускается значение индикатора.
Почему Индекс переменчивости нельзя путать с индикаторами волатильности (ATR)
Распространенная ошибка в анализе — причисление CHOP к классу осцилляторов волатильности. Смешение этих понятий искажает оценку рынка и приводит к открытию неоправданных позиций:
- Волатильность показывает физический размах ценовых колебаний (в пунктах, долларах или процентах) за единицу времени.
- Переменчивость (choppiness) отражает упорядоченность структуры движения — соотношение полезного прогресса цены к пройденному пути независимо от размера баров.
Если на открытии биржевой сессии актив формирует свечи размахом в 500 пунктов, хаотично чередуя взлеты и падения внутри диапазона, индикатор Average True Range (ATR) резко взлетает, а полосы Боллинджера распахиваются. Однако суммарный направленный прогресс равен нулю. Индикатор CHOP в этой ситуации поднимется выше 65–70 пунктов, предупреждая о широком боковике.
| Критерий сравнения | Choppiness Index (CHOP) | Average True Range (ATR) | Bollinger Bands (BB) |
|---|---|---|---|
| Что измеряет алгоритм | Степень упорядоченности структуры (тренд против хаоса) | Абсолютную величину ценового диапазона за период в пунктах | Относительное отклонение цены от скользящей средней |
| Поведение при широком распиле | Растет к максимумам (>61.8), предупреждая о ловушке | Резко возрастает из-за длинных свечей, имитируя «сильный тренд» | Полосы резко расширяются в противоположные стороны |
| Реакция на плавный монолитный тренд | Снижается к минимумам (<38.2), подтверждая структуру | Снижается или остается низким из-за небольших тел свечей | Полосы умеренно наклонены параллельно вектору хода |
| Риск неверной трактовки | Попытка контртрендового входа на минимальных значениях | Вход по трендовой системе прямо внутрь широкого распила | Преждевременный вход на отбой при касании внешней полосы |
Предупреждение по рискам:
Высокий показатель ATR подтверждает лишь широкий размах свечей, но не гарантирует наличие тренда. Запуск трендовых советников или торговля на пробой полос Боллинджера без фильтра CHOP во время широкого боковика регулярно приносит череду убыточных сделок из-за ложных пробоев границ.
Математический аппарат: формула Дрейсса и практический расчет на 14 свечах
Формула Choppiness Index сопоставляет суммарный пробег истинных шагов цены за выбранный интервал времени с чистым диапазоном между абсолютными экстремумами того же интервала:
CHOP = 100 × log10(∑ TRi / (MaxHighn - MinLown)) / log10(n)
Составляющие формулы:
- TRi (True Range / Истинный диапазон) — максимальное значение из трех величин:
- текущая разница между максимумом и минимумом: Highi - Lowi;
- модуль разницы между прошлым закрытием и текущим максимумом: |Highi - Closei-1|;
- модуль разницы между прошлым закрытием и текущим минимумом: |Lowi - Closei-1|.
- ∑ TRi — суммарная дистанция, пройденная котировкой за n баров со всеми внутренними колебаниями.
- MaxHighn - MinLown — чистый интервал между наивысшей и наинизшей точкой за исследуемое окно в n свечей.
- log10 — десятичный логарифм. Преобразует фрактальное отношение в линейную зависимость. Деление на log10(n) нормирует итоговый результат в шкалу от 0 до 100 независимо от выбранной длины окна n.
Сквозной расчет: сравнение двух рыночных состояний (n=14)
Для стандартного периода n=14 постоянный делитель равен:
log10(14) ≈ 1.14613
Актив планомерно растет почти без глубоких откатных теней.
Суммарная длина диапазонов за 14 свечей: ∑ TR = 35 пунктов.
Экстремумы интервала: MaxHigh = 150, MinLow = 121.
Чистый ценовой размах: 150 - 121 = 29 пунктов.
Вычисляем внутренний коэффициент отношения:
35 / 29 ≈ 1.2069
Находим десятичный логарифм:
log10(1.2069) ≈ 0.08167
Нормируем показатель к шкале 0–100:
CHOP = 100 × 0.08167 / 1.14613 ≈ 7.13
Результат: значение 7.13 находится глубоко под уровнем 38.2 — инструмент подтверждает сильный прямолинейный импульс.
Котировка совершает резкие движения вверх и вниз в пределах узкого диапазона.
Суммарный истинный пробег из-за частой смены вектора свечей: ∑ TR = 48 пунктов.
Экстремумы интервала: MaxHigh = 108, MinLow = 100.
Чистый размах: 108 - 100 = 8 пунктов.
Вычисляем отношение:
48 / 8 = 6.0
Находим десятичный логарифм:
log10(6.0) ≈ 0.77815
Нормируем показатель:
CHOP = 100 × 0.77815 / 1.14613 ≈ 67.89
Результат: значение 67.89 закрепилось выше отметки 61.8 — на рынке неэффективная консолидация, трендовые стратегии заблокированы.
Рабочие торговые системы на базе Choppiness Index
Стратегия 1. «CHOP Breakout + EMA 20»: вход в зарождающийся импульс
Система исключает ранние входы: осциллятор CHOP регистрирует выход цены из фазы накопления, а 20-периодная экспоненциальная средняя (EMA 20) задает направление позиции.
| Этап торгового плана | Условие срабатывания | Практическое действие трейдера |
|---|---|---|
| 1. Фаза накопления | Линия CHOP находится выше 61.8 не менее 5–7 свечей подряд | Подготовить ордер, очертить границы торгового диапазона |
| 2. Триггер импульса | Линия CHOP пробивает горизонт 61.8 сверху вниз | Оценить положение сигнального бара относительно EMA 20 |
| 3. Вход в LONG | Свеча закрылась телом выше линии EMA 20 | Открыть длинную позицию (Buy Market) на закрытии бара |
| 4. Вход в SHORT | Свеча закрылась телом ниже линии EMA 20 | Открыть короткую позицию (Sell Market) на закрытии бара |
| 5. Расчет Stop-Loss | Защитный стоп выносится за противоположный экстремум боковика | Зафиксировать риск на уровне не более 1–2% от капитала |
| 6. Фиксация профита | Индикатор заходит в зону <38.2, после чего разворачивается вверх | Закрыть позицию целиком либо перевести остаток в трейлинг |
Стратегия 2. Фильтрация отскоков от уровней поддержки и сопротивления
Сетап применяется для торговли внутри сформированных коридоров:
- Сценарий отбоя: ЕСЛИ цена тестирует подтвержденный горизонтальный уровень, а CHOP стабильно удерживается выше 61.8, ТО разрешен вход на возврат к центру канала. У рынка нет энергии для истинного пробоя.
- Блокировка сделки на отбой: ЕСЛИ котировка подошла к границе коридора, но CHOP начал снижаться и пробил уровень 61.8 сверху вниз, ТО сделки на отскок запрещены. Накоплен объем для истинного пробоя.
- Идентификация ложного пробоя: ЕСЛИ бар пробил границу диапазона, но кривая CHOP продолжает расти или остается выше 65.0, ТО перед нами сбор ликвидности. Входить в сторону пробоя нельзя.
Управление капиталом: расчет безопасного объема позиции
Применение CHOP позволяет адаптировать торговую нагрузку под текущий рыночный режим:
Position Size = (Capital × Risk %) / |Entry Price - Stop-Loss Price|
Пример расчета:
- Депозит трейдера: $10,000.
- Допустимый риск на сделку: 1.5% ($150).
- Точка входа в Long по BTC/USDT при пробое 61.8 сверху вниз: $64,000.
- Защитный Stop-Loss за нижней границей коридора: $62,500.
- Дистанция риска на единицу актива: $64,000 - $62,500 = $1,500.
Position Size = ($10,000 × 0.015) / $1,500 = $150 / $1,500 = 0.10 BTC
Правило адаптации: базовый рабочий объем составляет 0.10 BTC. Если вход выполняется при нахождении CHOP в переходной зоне (между 38.2 и 61.8), расчетный объем сокращается на 50% — до 0.05 BTC во избежание просадок при затянувшемся боковике.
Специфика применения на разных рынках
Использование стандартных параметров на активах с разной волатильностью и структурой ликвидности приводит к ложным сигналам:
| Рыночный сегмент | Рабочий таймфрейм | Рекомендуемый период (N) | Пороговые уровни | Практические нюансы |
|---|---|---|---|---|
| Криптовалюты (BTC, ETH, альткоины) | H4, Daily | N=20..24 | 61.8 / 38.2 | Сглаживание единичных сквизов ликвидаций; обязательное подтверждение всплеском объема |
| Фондовые акции (РФ / США) | H1, Daily | N=14 (стандарт) | 61.8 / 38.2 | Оценка выхода из многодневных зон накопления перед началом регулярной торговой сессии |
| Форекс (валютные пары) | M30, H1 | N=14 | 60.0 / 40.0 (сглаженные) | Отсечение ложных микропробоев в моменты стыков европейской и американской сессий |
| Срочный рынок (фьючерсы) | M5, M15 | N=18..20 | 65.0 / 35.0 (жесткие) | Фильтрация ложных срабатываний в периоды клиринга и низкой внутридневной ликвидности |
Заметка практика по крипторынку:
На криптовалютных деривативах каскадные ликвидации часто формируют свечи с длинными тенями (более 3–4%), после чего цена возвращается в диапазон. Базовый период N=14 на таймфрейме H1 воспринимает такой всплеск как начало направленного тренда и обрушивает кривую CHOP вниз. Увеличение периода расчета до N=20..24 сглаживает единичные ликвидационные тени и страхует от преждевременного входа.
Ограничения алгоритма: 4 сценария, когда CHOP дает сбой
Любая аналитическая модель дает сбои в нестандартных фазах рынка. Четыре сценария требуют обязательного ручного вмешательства:
1. V-образный разворот цены
- Механика сбоя: при мгновенной смене тренда без предварительной стадии консолидации размах MaxHigh-MinLow остается широким, а сумма истинных диапазонов (TR) продолжает нарастать.
- Последствия: индикатор запаздывает на 3–5 свечей. Сигнал на вход по новому тренду формируется тогда, когда импульс уже исчерпан и цена входит в фазу коррекции.
- Решение: при появлении разворотных свечных формаций («поглощение», «пин-бар») с аномальным торговым объемом входить по рыночному паттерну, не дожидаясь отклика от CHOP.
2. Расширяющийся клин (мегафон)
- Механика сбоя: котировки совершают резкие разнонаправленные колебания с обновлением локальных максимумов и минимумов. Разность экстремумов растет быстрее суммы шагов, и кривая CHOP опускается ниже 38.2.
- Последствия: индикатор ложно рапортует о тренде, хотя на графике развивается агрессивный распил. Попытка войти на пробой приводит к мгновенной фиксации убытка обратной волной клина.
- Решение: если границы движения цены образуют расходящиеся линии, любые сигналы CHOP деактивируются.
3. Ложный старт (синдром 1–2 свечей)
- Механика сбоя: линия осциллятора опускается ниже 61.8 всего на 1–2 бара, после чего разворачивается и возвращается обратно в зону распила.
- Решение («Правило трех свечей»): входить в позицию только тогда, когда линия CHOP удерживается под отметкой 61.8 на протяжении 3 закрытых свечей подряд. Если индикатор вернулся выше 61.8 до истечения этого срока, сигнал отменяется.
4. Влияние спреда на младших таймфреймах (<M5)
- Механика сбоя: на сверхмалых интервалах (M1–M3) биржевой спред составляет ощутимую долю величины свечи. Сумма TR искусственно раздувается из-за постоянных колебаний спреда.
- Последствия: значение CHOP зависает в верхней зоне (85–100), реагируя на шум и не определяя даже сильный локальный импульс.
- Решение: переключиться на рабочий таймфрейм от M15 и выше либо использовать сглаженный расчет на тиковой истории без учета спреда.
Платформы и терминалы: сравнительный анализ реализаций
| Платформа | Инструмент / Версия | Назначение и настройки | Преимущества | Подводные камни |
|---|---|---|---|---|
| TradingView | Встроенный Choppiness Index (Pine Script v5) | Базовый расчет по формуле Дрейсса (N=14), пороговые уровни 61.8 и 38.2 | Доступен «из коробки», поддерживает динамическую окраску и алерты | Требует ручной настройки оповещений для связки с EMA |
| MetaTrader 4 / 5 | Кастомный MQL-скрипт (MQL4/MQL5) | Установка в отдельном подокне, ручной ввод пороговых уровней | Легко интегрируется в автоматические торговые советники (роботы) | Не входит в стандартный пакет, требует ручной загрузки файла в папку терминала |
| QUIK | Lua-скрипт | Адаптирован под рынок акций и срочную секцию Мосбиржи | Прямая интеграция в рабочий терминал российских брокеров | Требует подключения через скрипты Lua, отсутствует штатная визуализация |
Код индикатора для TradingView (Pine Script v5)
Скрипт вычисляет Choppiness Index по классической формуле Э. Дрейсса, динамически окрашивает линию в зависимости от рыночной фазы и выводит пороговые уровни Фибоначчи:
//@version=6
indicator(title = 'Advanced Choppiness Index [Filter]', shorttitle = 'CHOP_Filter', overlay = false)
// 1. Входные параметры
length = input.int(14, minval = 1, title = 'Период расчета (N)')
// 2. Расчет формулы Дрейсса
priceRange = ta.highest(high, length) - ta.lowest(low, length)
sumTrueRange = math.sum(ta.tr(true), length)
ci = 100 * math.log10(sumTrueRange / priceRange) / math.log10(length)
// 3. Цветовая индикация фаз
chopColor = ci >= 61.8 ? color.red : ci <= 38.2 ? color.green : color.gray
plot(ci, 'Choppiness Index', color = chopColor, linewidth = 2)
// 4. Пороговые уровни Фибоначчи
h_upper = hline(61.8, 'Флэт / Консолидация', color = color.red, linestyle = hline.style_dashed)
h_lower = hline(38.2, 'Направленный тренд', color = color.green, linestyle = hline.style_dashed)
// 5. Заливка нейтрального диапазона
fill(h_upper, h_lower, color = color.new(color.blue, 92), title = 'Буферная зона')
Чек-лист проверки торгового сетапа
Перед отправкой ордера в терминал проверьте выполнение условий:
- [ ] 1. Статус CHOP: линия опустилась ниже 38.2 (тренд в разгаре) либо пробила 61.8 сверху вниз (выход из накопления).
- [ ] 2. Фильтр 3 свечей: кривая CHOP удерживается под отметкой 61.8 в течение 3 закрытых баров подряд.
- [ ] 3. Направление (EMA 20): для длинной позиции бар закрылся выше скользящей; для короткой — ниже скользящей.
- [ ] 4. Рыночная геометрия: на графике нет расширяющегося клина с одновременным раздвижением экстремумов.
- [ ] 5. Объемы: пробой границы диапазона подтверждается ростом вертикального объема выше среднего 20-периодного значения.
- [ ] 6. Контроль риска: Stop-Loss установлен за противоположной границей диапазона; расчетный риск на позицию не превышает 1–2% депозита.
- [ ] 7. Психологическая дисциплина: значение CHOP < 20 воспринимается как признак зрелого тренда, а не сигнал к ловле контртрендового отката.
План действий: как внедрить инструмент в торговлю
- Подключение: в терминале TradingView откройте вкладку «Индикаторы», введите в поиске «Choppiness Index» и добавьте базовый алгоритм на рабочий график.
- Калибровка уровней: проверьте параметры пороговых отметок — они должны соответствовать значениям 61.8 и 38.2.
- Добавление трендового фильтра: наложите на ценовой график скользящую среднюю EMA с периодом 20 для однозначного определения вектора входа.
- Анализ истории: отмотайте график на 150–200 баров назад и найдите 5 последних эпизодов выхода CHOP из зоны выше 61.8, обращая внимание на положение свечей относительно EMA 20.
- Тестирование на практике: выполните серию из 15–20 сделок на демо-счете по правилам сетапа «CHOP Breakout + EMA 20», соблюдая правило трех закрытых свечей и ограничение риска до 1.5% на сделку.
Ответы на частые вопросы (FAQ)
Почему при паническом обвале цен линия CHOP падает вниз, а не поднимается?
Индикатор является ненаправленным. Падение осциллятора к нижним отметкам отражает прямолинейность движения графика независимо от его знака. При отвесном медвежьем падении дистанция MaxHigh-MinLow стремительно расширяется, знаменатель формулы растет, и итоговое логарифмическое значение устремляется к минимальным отметкам шкалы.
Можно ли торговать исключительно по сигналам Choppiness Index?
Нет. CHOP диагностирует только рыночный режим (импульс либо боковик), но не показывает сторону сделки. Попытка изолированной торговли приведет к открытию коротких позиций посреди сильного бычьего ралли или покупкам на обвальных падениях. CHOP обязательно должен дополняться направленным фильтром: EMA, SuperTrend или Parabolic SAR.
На каком таймфрейме индикатор работает точнее всего?
Наиболее качественную фильтрацию инструмент показывает на таймфреймах H1, H4 и Daily. На интервалах ниже M5 истинный диапазон свечей размывается величиной спреда и шумом микроструктуры, из-за чего осциллятор может зависать в верхней зоне даже при наличии локального импульса.
Зачем используются уровни 38.2 и 61.8 вместо привычных 30 и 70?
Значения 38.2% и 61.8% представляют собой пропорции золотого сечения Фибоначчи. Автор индикатора Э. Дрейсс интегрировал их для согласования логарифмической шкалы фрактальной размерности с естественными фазами расширения и затухания рыночных колебаний. Уровни 30 и 70 подходят для классических осцилляторов импульса (RSI), но в фрактальных алгоритмах они вызывают чрезмерное запаздывание сигналов.
Что означает падение CHOP ниже уровня 20?
Значение ниже 20 указывает на кульминацию направленного движения. Это повод подтянуть защитный стоп-ордер в безубыток или зафиксировать часть накопленной прибыли. Открывать контртрендовые сделки при таких значениях нельзя: на сильном рынке экстремально низкие значения CHOP могут сохраняться на протяжении десятков свечей подряд.
