← Все идеи
#035Возврат к среднемуСвинг

W-дно по Боллинджеру: два минимума у нижней полосы и chandelier-стоп

Первый минимум уходит за нижнюю полосу Боллинджера, второй остаётся внутри неё. Входим только после подтверждения разворота и ведём позицию chandelier-стопом. Поиск минимумов и подтверждение формализовали мы.

The Algorithmic Advantage · John Bollinger · Смотреть видео

Рынки

Акции, Индексы

Таймфрейм

D1

Данные

OHLC

Правила

Частично формализовано

Сложность

Средняя

Статус

Не проверено

Часть правил дописали мы, это помечено в тексте.

TradingView переносится напрямую
EasyLanguage есть ловушки
MetaTrader 5 есть ловушки

Идея коротко

John Bollinger придумал полосы в начале 80-х и называет их прибором, а не системой. Полосы отвечают на один вопрос: дороги цены или дёшевы относительно недавней волатильности. У нижней полосы цена низкая по определению. Поверх этого автор строит ценовые паттерны, и самый любимый из них W-дно.

Рынок падает и делает первый минимум с сильным импульсом, за нижней полосой. Потом отскакивает, снова падает и проверяет ценовой минимум. Второй минимум по цене рядом с первым или даже чуть ниже, но уже внутри полосы. Цена вернулась к тем же уровням, а сила падения относительно волатильности уменьшилась. Первый минимум снаружи полосы и второй внутри: по определению автора это W-дно.

Сам паттерн для автора только alert. В сделку он входит, когда ралли действительно началось. Дальше ставит chandelier-стоп от минимума и даёт сделке развиваться. M-вершины он торгует реже: вершины формируются дольше, они размыты, а их вариант «три толчка к максимуму» менее точен.

Почему это может работать

Объяснение автора: эмоции на дне острее и чётче, чем на вершине, поэтому донные паттерны резче. Первый минимум за полосой это панический выброс. На втором минимуме продавцы уже не могут вытолкнуть цену за пределы обычной волатильности. Полосы сами подстраиваются под волатильность, поэтому одно определение подходит для разных бумаг и лет без подбора порогов в пунктах.

Правило подтверждения автор называет ключевым принципом всей своей работы. По его словам, одно лишь ожидание подтверждения поднимает точность системы с 65% до 67–69%, а маленькая прибавка точности даёт большую разницу в P&L. Это общая цифра из интервью. Отдельного теста W-дна автор не показывал, графиков в открытой части выпуска нет.

Правила

Структура паттерна, подтверждение как принцип и chandelier от минимума названы автором. Период полос, поиск минимумов, допуски, критерий подтверждения и параметры chandelier в видео не прозвучали, их задали мы.

Полосы и %b

Mid   = SMA(Close, 20)                     // Finetiq: стандартные 20 и 2, в видео не названы
Upper = Mid + 2 * StdDev(Close, 20)        // генеральное стандартное отклонение
Lower = Mid - 2 * StdDev(Close, 20)
PctB  = (Close - Lower) / (Upper - Lower)  // автор: 1 у верхней полосы, 0 у нижней, 0.5 у средней
ATR14 = ATR(14)                            // Finetiq: для допусков

Свинг-минимум (Finetiq)

// бар, который был i баров назад, считается свинг-минимумом, если
Low[i] <  Low[i+1], Low[i+2], Low[i+3]     // ниже трёх баров слева
AND Low[i] <= Low[i-1], Low[i-2], Low[i-3] // не выше трёх баров справа
// о минимуме узнаём только через 3 бара после него, раньше в расчёт не берём
// в момент подтверждения запоминаем цену минимума, номер бара и Lower на том баре

W-дно: alert

L1 = предпоследний подтверждённый свинг-минимум
L2 = последний подтверждённый свинг-минимум
Peak = Highest(High) между L1 и L2

Cond1 = L1.Low <  L1.Lower                          // автор: первый минимум снаружи нижней полосы
Cond2 = L2.Low >= L2.Lower                          // автор: второй минимум внутри полосы
Cond3 = abs(L2.Low - L1.Low) <= 1.0 * ATR14         // Finetiq: «ретест» ценового минимума
Cond4 = BarsBetween(L1, L2) >= 4 AND <= 40          // Finetiq
Cond5 = Peak - max(L1.Low, L2.Low) >= 1.0 * ATR14   // Finetiq: между минимумами был отскок

WAlert = Cond1 AND Cond2 AND Cond3 AND Cond4 AND Cond5
// Finetiq: с полосой сравниваем минимум бара.
// Вариант для проверки: закрытие, то есть PctB < 0 на L1 и PctB >= 0 на L2

Подтверждение и вход (Finetiq)

PatternLow = min(L1.Low, L2.Low)

// после WAlert ждём не больше 10 баров
IF Close > Peak AND MarketPosition == 0
    BUY AT NEXT BAR OPEN                  // Finetiq: W достроено, ралли пошло
IF Low < PatternLow THEN CANCEL WAlert    // паттерн сломан
IF прошло 10 баров без подтверждения THEN CANCEL WAlert

Стоп: chandelier от минимума

// автор: chandelier-стоп от минимума паттерна.
// Finetiq: максимум для chandelier отсчитываем с бара L2, числа стартовые
Chandelier = Highest(High, с бара L2 по текущий) - 3 * ATR(22)
StopLevel  = max(StopLevel[1], Chandelier)   // стоп только поднимается
EXIT STOP at StopLevel
// цели нет: автор даёт сделке развиваться

Параметры

Параметр Значение Откуда
Полосы SMA 20 ± 2 стандартных отклонения Finetiq
Первый минимум Low ниже нижней полосы автор (сравнение по Low: Finetiq)
Второй минимум Low не ниже нижней полосы автор (сравнение по Low: Finetiq)
Свинг-минимум 3 бара слева и 3 справа Finetiq
Допуск ретеста 1 × ATR(14) Finetiq
Расстояние между минимумами 4–40 баров Finetiq
Минимальный отскок 1 × ATR(14) Finetiq
Подтверждение закрытие выше максимума между минимумами Finetiq (принцип: автор)
Ожидание подтверждения 10 баров Finetiq
Стоп chandelier от минимума автор
Параметры chandelier ATR 22 × 3, максимум с бара L2 Finetiq
Цель нет автор

Что проверить

  1. Сколько даёт подтверждение. Три прогона: вход на следующем баре после WAlert, вход после закрытия выше Peak, вход после закрытия выше средней полосы. Автор обещает прибавку точности на 2–4 пункта. Смотрите и на ожидание сделки: подтверждение повышает процент прибыльных, но входит выше.
  2. Окрестность по методу самого автора. Автор гоняет среднюю 16–24 вместо 20 и выбрасывает систему, если результаты заметно различаются. Сделайте так же: период полос 16–24, множитель 1.8–2.2, свинг 2–5 баров, допуск ретеста 0.5–1.5 ATR.
  3. Минимум или закрытие. Условия относительно полосы по Low против условий по PctB закрытия. Определение в видео допускает оба прочтения.
  4. Нужен ли второй минимум. Базовая линия без W: закрытие вернулось внутрь полосы после закрытия за ней, тот же вход и стоп. Если W не лучше, двойное дно ничего не добавляет к простому возврату внутрь полос.
  5. Выход. Chandelier 2.5, 3 и 3.5 ATR против двух других трактовок: начальный стоп ровно на PatternLow и выход на верхней полосе (PctB >= 1). Автор ведёт позицию долго, mean reversion с короткой целью может дать другой профиль сделок.
  6. M-вершина зеркально. Первый максимум за верхней полосой, второй внутри. Автор ожидает худшего результата, это стоит подтвердить или опровергнуть на тех же бумагах.
  7. Много бумаг. На одной акции W-дно по таким правилам встречается редко. Прогоните 100–500 ликвидных акций и смотрите на медиану, а не на лучшие примеры.

Особенности платформ

TradingView (Pine Script)

  • ta.stdev по умолчанию генеральное, как и в EasyLanguage StdDev и в MQL5 iBands. Полосы на трёх платформах совпадут.
  • ta.pivotlow(low, 3, 3) возвращает цену минимума на баре, где он подтвердился, то есть через 3 бара. Значение нижней полосы на самом минимуме берите со сдвигом: lower[3]. Рисовать метку задним числом можно, торговать нельзя.
  • ta.atr сглаживает по Уайлдеру. В EasyLanguage и MQL5 встроенный ATR простое среднее, поэтому уровень chandelier на разных платформах разойдётся.
  • Стоп обновляйте каждый бар: strategy.exit("CH", "L", stop = stopLevel), где stopLevel хранится в var и только растёт.

MultiCharts и TradeStation (EasyLanguage)

  • AvgTrueRange это простое среднее TrueRange. Для совпадения с Pine считайте ATR по Уайлдеру сами: ATRw = ATRw[1] + (TrueRange - ATRw[1]) / 22.
  • Встроенные функции свингов тоже подтверждают минимум с задержкой на число баров справа. Значение Lower на баре минимума сохраните в переменную в момент подтверждения, со сдвигом на эту задержку.
  • Sell next bar at StopLevel stop живёт один бар. Отправляйте его на каждом баре, пока есть позиция.
  • Если паттерн ищете на фьючерсе, помните про разницу между дневным баром с settlement и 1440-минутным баром. Касание полосы по Low на них может отличаться.

MetaTrader 5 (MQL5)

  • Буферы iBands: 0 средняя линия, 1 верхняя полоса, 2 нижняя. Берите значения закрытых баров.
  • Стандартный индикатор ZigZag перерисовывает последнее колено. Для поиска минимумов в советнике он не годится: тест увидит минимумы, которых в момент сделки ещё не было. Пишите проверку свинга сами по закрытым барам.
  • iATR простое среднее TR, для совпадения с Pine считайте Уайлдера.
  • Стоп двигайте через изменение SL позиции на новом дневном баре и только вверх. SL задаётся ценой.

Где идея может сломаться

  • От автора в видео две фразы об этом паттерне. Правил поиска минимумов, подтверждения и параметров стопа он не назвал. Наша формализация может отличаться от того, как он торгует на самом деле.
  • Прибавка точности с 65% до 67–69% относится к подтверждению вообще. Для W-дна по нашим правилам её никто не мерил.
  • У автора есть эвристика: система из двух-трёх строк скорее хорошая, из 150 строк почти наверняка плохая. Формализация W-дна тянет за собой пять допусков. Каждый из них лишний шанс подогнать результат, поэтому проверка окрестности обязательна.
  • Паттерн редкий. На одной бумаге за десять лет наберётся мало сделок, и выводы по ней ненадёжны. Нужна вселенная акций и портфельный тест, которого нет в Pine.
  • В том же интервью автор пересказывает Ларри Уильямса: стопы ломают торговые системы. Узкий chandelier на откате после W может выбивать сделки до того, как ралли разовьётся.
  • Разворот от нижней полосы в долгом медвежьем рынке может оказаться паузой. Автор торгует среднесрочно и опирается ещё на индикаторы ширины рынка, которых в этих правилах нет.

Источники

  • Critical formulas for Bollinger Band trading - John Bollinger - 056

    The Algorithmic Advantage · John Bollinger · 2026-09-03

    • 13:45Цены высоки у верхней полосы и низки у нижней
    • 15:45Определение W-дна относительно полос
    • 16:15Подтверждение: точность 65% растёт до 67–69%
    • 16:45Паттерн это alert, а не сигнал
    • 32:45W-дно автор торговал много, M-вершины реже
    • 33:15Подтверждение ралли и chandelier-стоп от минимума
    • 34:30Формула %b
    • 48:00Ларри Уильямс: стопы ломают торговые системы
    • 54:45Проверка окрестности: средняя 16–24 вместо 20

Заявлено автором

Эти цифры и утверждения принадлежат автору. Мы их не проверяли.

  • Ожидание подтверждения поднимает точность системы с 65% до 67–69%. Автор приводит это как общий принцип своей работы, без названия рынка, периода и отдельного теста W-дна.

Похожие идеи

Обновлено: 2026-09-10