Фракталы (Fractals)
Все рынки характеризуются тем, что в течение большей части времени цены на них сильно не меняются и лишь в течение небольшого времени (15–30 процентов) наблюдаются трендовые изменения. Наиболее благоприятны для извлечения прибыли периоды, когда цены на рынках изменяются в соответствии с определенным трендом.
Фракталы (Fractals) — это один из пяти индикаторов торговой системы Билла Вильямса, позволяющий обнаруживать дно или вершину. Техническое определение фрактала вверх — это серия из минимум пяти последовательных баров, в которой перед самым высоким максимумом и за ним находятся по два бара с более низкими максимумами. Противоположная конфигурация (серия из пяти баров, в которой перед самым низким минимумом и за ним находятся по два бара с более высокими минимумами) соответствует фракталу вниз. На графике фракталы имеют значения High и Low и отмечены стрелками вверх или вниз.
Fractal вниз – это также совокупность пяти свечек, но средняя – это минимум значений всех пяти.
Таким образом, фракталы похожи на пять пальцев человеческой руки: приложите свою ладонь на экран с графиком валютной пары и вы увидите, что комбинация из пяти пальцев – это фрактал из пяти свечек.
Конечно, для формирования фрактала три свечи направленные в одном направлении и две в противоположном — это не обязательное условие. Для построения фрактала важно, чтобы из комбинации пяти свечей, средняя была выше остальных. При этом, боковые свечи фрактального образования, могут располагаться даже в горизонтальном положении относительно друг друга.
Билл Вильямс даже предусмотрел вариант, когда на одном уровне формируется два максимума или минимума, которые могут быть вершиной или дном фрактала. В этом случае, автор разработал правило, при котором второй максимум или минимум цены не будет учитываться при расчете фрактала.
Расчет Фракталов
Ниже — ясное и краткое объяснение расчёта индикатора «Фракталы» (Fractals), как его применяют в техническом анализе (в том числе версия Билла Вильямса, наиболее распространённая).
Коротко
— Индикатор «Фракталы» отмечает локальные экстремумы цены: верхние фракталы (локальные вершины) и нижние фракталы (локальные впадины). Каждый фрактал — это паттерн из пяти последовательных баров (с центром в третьем баре).
— Верхний фрактал появляется, когда центральный бар имеет максимальную цену High больше, чем High двух соседних баров с каждой стороны.
— Нижний фрактал появляется, когда центральный бар имеет минимальную цену Low меньше, чем Low двух соседних баров с каждой стороны.
Формальные правила (версия Билла Вильямса)
— Рассматриваем последовательность баров с индексами i−2, i−1, i, i+1, i+2 (i — центр фрактала).
— Верхний фрактал (Up Fractal) в баре i:
High(i) > High(i−1)
High(i) > High(i−2)
High(i) > High(i+1)
High(i) > High(i+2)
(иногда допускают >= для соседних баров, но чаще используют строгое >)
— Нижний фрактал (Down Fractal) в баре i:
Low(i) < Low(i−1)
Low(i) < Low(i−2)
Low(i) < Low(i+1)
Low(i) < Low(i+2)
Визуализация и отрисовка
— На графике верхний фрактал часто отмечают стрелкой/точкой над баром; нижний — под баром.
— Поскольку паттерн требует двух баров после центра, фрактал может быть подтверждён только спустя 2 бара после его возможного возникновения. То есть индикатор обычно рисуется «с запаздыванием»: вы узнаёте, что бар i был фракталом только после появления баров i+1 и i+2.
Варианты и уточнения
— Параметр «ширина» паттерна: классический случай — ширина = 2 (используются 2 бары слева и 2 справа). Можно обобщить: для ширины k проверяют k баров слева и k баров справа; центральный бар должен быть экстремумом относительно этих 2k соседних баров.
— Условия сравнения: некоторые реализации используют >= вместо > (учтите при работе с одинаковыми High/Low).
— Применение к любым ценовым сериям: Close, High/Low (обычно используют High/Low), можно применять к свечным паттернам разных таймфреймов.
— Комбинации: фракталы часто комбинируют с индикатором Alligator (Вильямс), уровнем стоп/профит, каналами и пр.
Пример (пошагово)
1. Имеются бары с High/Low на индексах 1..7. Возьмём i = 4 (центр).
2. Сравнить High(4) с High(2), High(3), High(5), High(6). Если High(4) больше всех — верхний фрактал.
3. Аналогично: сравнить Low(4) с Low(2), Low(3), Low(5), Low(6). Если Low(4) меньше всех — нижний фрактал.
4. Фрактал можно подтвердить только после появления баров 5 и 6 (в нашем примере это индексы i+1 и i+2).
Код (упрощённо, псевдокод / Python-подобно)
# width = 2 (классика)
def is_up_fractal(High, i, width=2):
for j in range(1, width+1):
if High[i] <= High[i-j] or High[i] <= High[i+j]:
return False
return True
def is_down_fractal(Low, i, width=2):
for j in range(1, width+1):
if Low[i] >= Low[i-j] or Low[i] >= Low[i+j]:
return False
return True
Практические замечания
— Часто фракталы дают много ложных сигналов в шумном рынке — используют фильтры (трендовые индикаторы, объем, подтверждение пробоя уровня).
— Фракталы формируют уровни поддержки/сопротивления: верхний фрактал — потенциальный уровень сопротивления; нижний — поддержки.
— Для целей автоматизации учитывайте запаздывание: фрактал фиксируется только спустя width баров.
Как пользоваться индикатором Fractals в торговле
У Билла Вильямса фрактал использовался для торговли на прорыв покупателей и продавцов. Вход на продажу осуществлялся на один пункт ниже фрактала вниз, а вход на покупку – на один пункт выше фрактала вверх.
В современной работе с фракталами, трейдеры чаще используют такое понятие, как фрактальный уровень. Фрактальным уровнем называют совокупность фракталов на одном уровне, где по их значениям можно нарисовать уровни поддержки и сопротивления. Так вот, именно прорыв фрактального уровня – это один из распространенных способов работы позиционных трейдеров, которые применяют Fractals на практике своей торговли.
Еще одним способом применения Fractals на практике является использования уровней фрактала для установки страховочного ордера стоп лосс. Часто у трейдеров возникают проблемы с определением ключевого минимума или максимума в момент расчета зоны выставления ордера стоп лосс. Обычно большинство трейдеров ставят стоп за ближайшим максимумом или минимумом. Однако, с помощью фрактала, ключевой максимум или минимум определить легче.
Поэтому во время покупок ордер стоп лосс рекомендуется ставить за минимумом предыдущих двух фракталов вниз, а при продажах – за вторым фракталом вверх. Конечно, ордер стоп лосс можно ставить и за границей первого фрактала, однако, за вторым фракталом – более безопасное место для страховочного ордера.
Важно помнить, что индикатор фракталов лучше показывает переломы рынка на старших таймфреймах: Н1, Н4, D1. Поскольку на младших таймфреймах комбинации из пяти свечек позволяют индикатору Fractals очень часто рисовать фракталы, что сильно запутывает трейдера в принятии управленческих решений для входа в рынок.
Третьим способом применения индикатора Fractals на практике является использование фракталов для следования за трендом. Поскольку фракталы показывают переломы движения, то два нисходящих или два восходящих фрактала позволяют нарисовать линии каналов на графике инструмента и работать на пробой нижнего или верхнего фрактала в сторону движения цены.
В связи с тем, что индикатор Фракталов очень часто отображает фракталы, трейдеры придумали фильтровать ложные фракталы с помощью индикатора Аллигатор. Другими словами, не следует заключать сделку на покупку, если фрактал находится ниже Зубов Аллигатора, и не следует заключать сделку на продажу, если фрактал находится выше Зубов Аллигатора. После того, как сигнал фрактала сформирован и имеет силу, что определяется его позицией вне Пасти Аллигатора, он остается сигналом до тех пор, пока не поражается, либо до той поры, пока не возникает более свежий сигнал фрактала.
Преимущества работы с индикатором Fractals:
-Индикатор Фракталов показывает переломные точки движения цены.
-Индикатор Фракталов формирует фрактальные уровни поддержки и сопротивления.
-Индикатор Фракталов не перерисовывает свои значения.
Недостатки работы с индикатором Fractals:
Индикатор Фракталов, к сожалению, очень часто показывает ложные сигналы на вход во время флэта. Как не крути, а комбинация из пяти свечек на графике бывает всегда, но не всегда удачно рисует фрактал. Поэтому, индикатор Fractals часто используется совместно с другими индикаторами, которые фильтруют его показания.
Если интересен данный индикатор, то на его основе есть примеры готовых роботов:




















