Ярослав Суков – Структура против Хаоса: Трендовый индикатор ZigZag (страница 1)
Ярослав Суков
Структура против Хаоса: Трендовый индикатор ZigZag
ВВЕДЕНИЕ
Почему рынок — это структура, а не хаос
В 2010 году я сидел напротив одного из лучших квантов с Уолл-стрит. Он смотрел на экран, где цены прыгали, как иглы сейсмографа при землетрясении. «Это белый шум», — сказал он, отворачиваясь.
Он был неправ. И в этом заключалась его слабость.
Мы воспитаны на идее, что рынки случайны. Нам внушали это со времен бакалавриата, когда нам показывали «случайное блуждание». Но если вы бросите кубик 1000 раз, вы никогда не получите тренд. Вы получите равномерное распределение. Рынок же рождает кластеры, расширения, импульсы и коррекции.
Рынок — это не хаос. Рынок — это сложная структура, пораженная шумом.
Задача гения — не предсказывать хаос. Задача гения — отфильтровать шум, чтобы увидеть под ним идеальный скелет движущей силы: спрос и предложение, страх и жадность, накопление и распределение.
Мы будем использовать инструмент, который ненавидят академические экономисты (потому что он режет их гладкие кривые) и обожают практики-алгоритмисты (потому что он работает). Это ZigZag.
ZigZag как инструмент «очистки» графика
Представьте, что вы смотрите на ночное небо невооруженным глазом. Миллионы точек. Хаос. Теперь представьте, что кто-то соединил звезды в созвездия. Внезапно появляется смысл. Появляется Ковш, Орион, Кассиопея.
ZigZag — это ваш астрономический соединитель звезд. Он игнорирует метеоры (шумовые всплески) и показывает только те повороты, которые имеют значение: движения, превышающие заданный порог.
Без ZigZag вы видите логарифмическую спираль нейрона. С ZigZag вы видите скелет динозавра — логику, повторяемость, закон.
От линий к логике: как видеть движение цены
Большинство трейдеров видят линии. Они рисуют уровни поддержки и сопротивления, как будто цена обязана отскочить от прямой, нарисованной на песке.
Но растущий рынок не может быть описан прямыми линиями. Он описывается волнами.
- Волна A: Импульс (агрессия покупателей)
- Волна B: Коррекция (фиксация прибыли / затягивание продавцов в ловушку)
- Волна C: Расширение (шорт-сквиз или паника)
ZigZag в паре с концепцией FVG (Fair Value Gap) превращает чертеж волны в инженерный план. FVG — это разрыв справедливой стоимости. Место, где рынок двигался так быстро, что оставил пустоту. А природа не терпит пустоты. Цена вернется в эту зону. Не потому, что так решил Бог, а потому что алгоритмы и маркет-мейкеры обязаны ликвидировать дисбаланс.
ZigZag показывает где. FVG объясняет *почему.
Как работать с этой книгой
Эта книга состоит из двух слоев, как ДНК.
1. Верхний слой (для мышления): Истории, философия, нейробиология трейдинга. Читайте в метро, на пляже, перед сном. Это меняет вашу картину мира.
2. Нижний слой (для действий): Псевдокод, логика алгоритмов, математические фильтры, чек-листы. То, что вы закопаете в своих торговых роботах или торговом плане.
Вы можете читать книгу линейно. Или вы можете сначала погрузиться в философию, а потом использовать техническую часть как справочник. Но главное правило: Не пропускайте исторические аналогии. Именно в них спрятан ключ к адаптации стратегии под любой рынок — от форекса до биткоина.
ЧАСТЬ I. ОСНОВЫ ИНДИКАТОРА ZIGZAG
Глава 1. Что такое ZigZag
Концепция фильтрации шума
В 1940-х годах инженеры столкнулись с проблемой: как отличить сигнал от радара от статических помех? Они изобрели фильтр. Рынок — это радар человеческих эмоций. В каждой секунде тика — 99% эмоций и 1% смысла.
ZigZag — это фильтр низких частот в финансах.
Его работа описывается простой формулой, за которой стоит глубокая философия:
«Пока изменение цены меньше X% (или Y пунктов) — игнорируй. Как только изменение превысило порог — зафиксируй вершину или впадину. И жди следующего движения в обратную сторону на ту же величину.»
Это жестоко. Это радикально. Это насилие над данными. Но именно насилие порождает порядок.
Представьте, что вы картограф. Вам нужно нарисовать береговую линию острова. Если вы будете учитывать каждый камешек, каждый выступ, каждая волна, вы сойдете с ума (и линия станет бесконечной, как парадокс береговой линии). Вы вводите порог: «Я буду соединять только точки, удаленные друг от друга на 10 метров по прямой». Вы получаете полигональную аппроксимацию — узнаваемый, полезный силуэт. ZigZag — это ваш порог в 10 метров, превращающий фрактальный хаос в понятную структуру.
Как индикатор «упрощает» рынок
График цены без ZigZag — это джунгли. Слышны крики, свист, движение, но вы не видите хищника. ZigZag вырубает подлесок и оставляет только тропы, протоптанные крупными игроками.
Когда вы смотрите на обычный график, ваш мозг (зеркальный) начинает дергаться. Вы видите «ложные пробои», «тени», «шпили». Ваша дофаминовая система перегружена. Вы начинаете торговать шум.
Когда вы накладываете ZigZag, происходит когнитивный шок. Вы видите всего 5–10 движений за день. И внезапно понимаете: рынок — это серия простых трендов, соединенных резкими разворотами.
ZigZag превращает случайный процесс в марковскую цепь второго порядка — где будущее зависит только от последнего значимого поворота. А это уже можно алгоритмизировать.
Почему ZigZag не предсказывает
Здесь мы подходим к самому важному философскому слою. 99% трейдеров ненавидят ZigZag. Они говорят: «Он перерисовывается! Это индикатор прошлого!»
Они правы. И именно поэтому они бедны.
ZigZag — это не хрустальный шар. Это скальпель.
Пророк предсказывает «цена вырастет до 100». Он всегда ошибается или попадает случайно.
Хирург говорит: «Вот скелет текущей структуры. В этом месте (FVG) кость сломана. Есть 73% вероятность, что восстановление справедливой цены произойдет отсюда».
ZigZag не говорит вам, куда пойдет цена завтра. Он говорит вам, где цена находится сегодня в структуре глобальной волны: мы в импульсе? В коррекции? В расширении?
Используя не перерисовывающуюся версию ZigZag (закрытый бар за закрытым баром), вы получаете не прогноз, а байесовскую вероятность. Вы говорите: «Основываясь на последних 4 вершинах (A,B,C,D), вероятность того, что следующее движение продолжится на 38.2% глубины коррекции, в 2.3 раза выше, чем полный разворот».
Это асимметрия. Это и есть алгоритмическое преимущество.
ПРАКТИЧЕСКИЙ БЛОК К ГЛАВЕ 1 (ДЛЯ КОДА И АНАЛИЗА)
Определение ZigZag для алгоритмиста
Пусть у нас есть ценовой ряд `Price[t]`. Введем параметры:
- `depth` = минимальное изменение в пунктах/процентах.
- `backstep` = минимальное количество баров для валидации экстремума.
**Псевдокод логики:**
Инициализируем массив Extrema = []
Для каждого нового бара t:
1. Находим локальный High за последние (lookback) баров.
2. Если текущий High > предыдущего High на depth:
- Если с момента последнего Extrema прошло > backstep:
Добавляем вершину (High) в Extrema.
Ищем следующий поворот вниз.
3. Аналогично для Low.