Ярослав Суков – Структура против Хаоса: Трендовый индикатор ZigZag (страница 4)
При `depth = 3` и `backstep = 2`, бар 3 не будет зафиксирован, потому что бар 6 (через 3 шага) его побил. В non-repainting версии вы увидите линию только от бара 1 к бару 6. В перерисовывающейся — сначала линия к 3, потом она перескочит к 6. Разница колоссальна.
Здесь мы подходим к выбору системы измерения. Это не техническая деталь — это онтологический выбор: считаете ли вы рынок абсолютным (пункты) или относительным (проценты).
3.2.1. Пунктовый подход (абсолютный)
Определение: `Depth = N` пунктов, где пункт — минимальное изменение цены (например, 0.0001 для EURUSD, 1.0 для S&P 500, 1 сатоши для BTC).
Когда использовать:
- Форекс с фиксированной волатильностью в пунктах.
- Торговля внутри дня, когда важна абсолютная величина стоп-лосса в деньгах.
- Когда вы работаете с биржевыми фьючерсами с фиксированным тиком.
Преимущества:
- Простота: вы точно знаете, что движение в 10 пунктов — это всегда 10 долларов на мини-лоте.
- Не зависит от текущей цены: порог постоянен.
Недостатки:
- Неадаптивность: при цене 1.0000 движение 10 пунктов — 0.1%. При цене 1.2000 те же 10 пунктов — 0.083%. Индикатор становится менее чувствительным на высоких ценах.
- Крах на разных таймфреймах: то, что на M1 — сильное движение, на D1 — незаметная рябь.
3.2.2. Процентный подход (относительный)
Определение: `Depth = P%` от текущей цены. Например, `0.5%` от цены 2000$ за акцию = 10$.
Формула пересчета в пункты:
Depth_in_points = Price_current * (Percent_depth / 100) / Point_Value
(для форекса Point_Value = 0.0001 для большинства пар)
Когда использовать:
- Криптовалюты (цена может быть 20000 или 60000, проценты универсальны).- Акции и ETF, особенно с разной ценой.
- Долгосрочный анализ, где важна пропорция.
Преимущества:
- Адаптивность: порог масштабируется с ценой.
- Сравнимость между разными инструментами: 0.5% на Microsoft и 0.5% на Apple означают одну и ту же волатильность по отношению к цене.
- Естественен для человеческого восприятия: «цена упала на 10%» понятнее, чем «на 2000 пунктов».
Недостатки:
- Вычислительная сложность: каждое обновление цены требует пересчета.
- Может давать ложные сигналы при резких гэпах (когда цена меняется на 5% за секунду, порог мгновенно растет, и индикатор может пропустить важный экстремум).
3.2.3. Гибридный метод: адаптивный к ATR
Это высший пилотаж. Мы не используем ни фиксированные пункты, ни проценты, а динамическую волатильность.
Depth = ATR(14) * K ,
где `K` — коэффициент чувствительности (обычно от 0.5 до 2.0).ATR (Average True Range) — это средний истинный диапазон, мера волатильности за последние N баров.
Почему это гениально:
- В спокойном рынке (ATR маленький) Depth маленький — вы видите детали.
- Во время новостей (ATR огромный) Depth увеличивается — вы не реагируете на каждый чих.
Это превращает ZigZag в самонастраивающийся фильтр Калмана для чайников.
Формула для кода:
ATR_14 = average_true_range(14)
depth = ATR_14 * 0.618 // золотое сечение как коэффициент
Теперь самый важный раздел. Мы возьмем один и тот же участок рынка (EURUSD, часовая свеча, 1000 баров) и покажем, как меняется «скелет» при изменении параметров.
Пример 3.1: Изменение `Depth` (фиксированные пункты)
| Depth | Количество вершин за 100 баров | Визуальный образ | Интерпретация |
| 5 пунктов | 87 | Зубья пилы, почти непрерывная линия вверх-вниз | Шум. Вы не видите тренда, только микро-откаты. Торговать невозможно. |
| 15 пунктов | 34 | Много небольших волн, но просматриваются локальные тренды | Скальпинг. Хорошо для входа на 5-15 минутах. FVG будут мелкими и частыми. |
| 30 пунктов | 12 | Четкие волны, 6-7 значимых поворотов | Интрадей. Оптимум для большинства трейдеров. FVG видны как четкие разрывы. |
| 60 пунктов | 5 | Только три тренда: вверх, коррекция, вниз | Свинг. Вы упускаете входы внутри коррекций, но ловите главное движение. |
| 120 пунктов | 2 | Почти прямая линия (один восходящий тренд, один нисходящий) | Позиционная. Только для анализа векового тренда. |
### Пример 3.2: Влияние `backstep` (для non-repainting версии)
| backstep | Эффект | Когда использовать |
| 1 (минимальный) | Почти как перерисовывающийся, но с лагом в 1 бар. Много ложных экстремумов, которые потом удаляются. | Только для очень быстрых систем, где каждый бар на счету. |
| 3 (стандартный) | Идеальный баланс. 90% ложных пиков отфильтрованы. Линия гладкая. | Большинство интрадей и свинг-систем. |
| 5-7 | Очень консервативный. Только сильные развороты. Запаздывание на 5-7 баров. | Долгосрочные системы, где качество важнее скорости. |
Пример 3.3: Сравнение процентного и пунктового на волатильном рынке (криптовалюта)
Возьмем Bitcoin в 2021 году: цена выросла с 30000 до 60000 за три месяца.
- Пунктовый подход с `Depth = 500 points`: в начале (30000) 500 пунктов = 1.67%; в конце (60000) 500 пунктов = 0.83%. Индикатор становится вдвое чувствительнее к концу периода. На пике вы увидите больше мелких вершин, чем в начале. Это искажает анализ: может показаться, что рынок стал более волатильным, но на самом деле просто изменился масштаб.
- Процентный подход с `Depth = 1%`: всегда верно 1%. Структура ZigZag останется одинаковой на всем участке при одинаковой процентной волатильности. Вы сможете честно сравнить ранний и поздний периоды.
Углубимся в теорию сигналов. Ценовой ряд можно разложить на:
Price(t) = Trend(t) + Cycle(t) + Noise(t)
- Trend(t) — долгосрочный дрейф.
- Cycle(t) — колебания с периодом от нескольких дней до нескольких месяцев.