Билл Вильямс StructureBreakoutSwing Levels Доступно в Builder

Fractals

Fractals mark confirmed swing highs and lows — a bar whose extreme is more extreme than the two bars on each side. They are the only common MT5 indicator that publishes nothing most of the time, which changes how an EA has to read them.

Pattern
5 bars
Confirmation lag
2 bars
Inputs
None
OverboughtOversoldCentreline 50Divergence

Иллюстративно — синтетические данные, не реальная котировка.

What Fractals tell you

A fractal is a definition, not a forecast: the middle bar of five had the highest high, or the lowest low. Once two bars have closed on the right-hand side the pattern is fixed and cannot change. That is what makes fractals useful as structure — and what makes them permanently late by exactly two bars.

  • An upper fractal is a confirmed swing high, not a sell signal
  • The level is fixed forever once printed
  • The confirmation always arrives two bars after the extreme itself
  1. 1 Take five consecutive bars
  2. 2 Check whether the middle one holds the extreme
  3. 3 Mark the level once the right side closes
Показать формулу и детали расчёта

A fractal is a five-bar pattern with a strict definition and no parameters:

  1. Take five consecutive bars.
  2. An upper fractal exists when the middle bar’s high is higher than the highs of the two bars before it and the two bars after it. The value published on UPPER_LINE (buffer 0) is that high.
  3. A lower fractal exists when the middle bar’s low is lower than the lows of the two bars on each side. The value goes on LOWER_LINE (buffer 1).
  4. On every other bar both buffers hold the indicator’s empty value, and MT5 draws nothing.

The two-bar right side is what makes a fractal confirmed rather than provisional: once those bars have closed, the pattern is settled permanently and the level never moves. It is also why the information always arrives two bars after the extreme it describes — the price at the fractal is history by the time the fractal exists.

That emptiness is the practical difference from every other indicator in this catalogue. RSI has a value on every bar; a fractal does not. Any rule that reads the buffer has to search backwards for the most recent real value, and a rule written as though index 0 always holds a number will compare against nothing at all without raising an error.

In MQL5 the call is iFractals(symbol, period) — no periods, no applied price, no options — and it returns a handle to two buffers. Bill Williams introduced fractals alongside the Alligator and the Awesome Oscillator as the structural element of his system.

Сигналы

Отдельные сигналы, поддающиеся бэктестингу, которые даёт Fractals — и режим рынка, подходящий для каждого.

Fractal Breakout

Готово в Builder
Условие
Price trades through the most recent fractal high or low
Лучший режим
Breakouts
Типичное применение
Enter at a level the market itself defined

Swing Level Hold

Готово в Builder
Условие
Price returns to a fractal and turns away
Лучший режим
Trending markets
Типичное применение
Join a trend at structure rather than at a fixed distance

Stop Placement

Готово в Builder
Условие
Stop set just beyond the last opposite fractal
Лучший режим
Any
Типичное применение
Anchor risk to structure instead of an arbitrary pip count

Higher Highs / Lower Lows

Продвинутая логика
Условие
A sequence of fractals ordered in one direction
Лучший режим
Trend confirmation
Типичное применение
Read market structure across several swings

Реализация в MT5

Что MetaTrader 5 действительно вычисляет и рисует — основа для каждого правила на этой странице.

Буферы

Индекс Буфер Как рисуется в MT5 Что содержит
0 UPPER_LINE Arrow above the bar The high of a confirmed swing high. Empty on every bar that is not one — which is the large majority.
1 LOWER_LINE Arrow below the bar The low of a confirmed swing low. Also empty on most bars.

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

Работает лучше всего / использовать осторожно

Ни один индикатор не имеет универсального преимущества. Вот где Fractals помогает — и где вводит в заблуждение.

Работает лучше всего

  • Defining breakout levels
  • Anchoring stops to structure
  • Higher timeframes
  • With a volatility or trend filter

Использовать осторожно

  • Treating a fractal as a reversal signal
  • Low timeframes where every wiggle prints one
  • Ignoring the two-bar confirmation lag
  • Reading structure without a rule for which fractal counts

Создать стратегию Fractals

Подключите сигнал к правилам входа и выхода, затем экспортируйте компилируемый EA MT5 — без кода.

  1. Upper fractal (last 50 bars)
  2. Lower fractal (last 50 bars)
  3. Fast ATR above slow ATR
  4. Price breaks the upper fractal → Open Buy · SL 50 / TP 100
  5. Price breaks the lower fractal → Open Sell

Совместить Fractals с другими индикаторами

Один индикатор редко работает в одиночку. Эти сочетания покрывают слепые пятна Fractals.

Fractals + ATR

  1. Price breaks the last fractal
  2. Fast ATR above slow ATR
  3. Buy
Зачем
Only take a structural breakout while volatility is genuinely expanding, so a break on a dead bar never triggers the trade
Лучший режим
Breakout
Создать эту стратегию →

Fractals + Alligator

  1. Lines fanned up
  2. Price breaks the last fractal high
  3. Buy
Зачем
Use Bill Williams' own regime tool to decide whether a break is worth taking, which is how the two were designed to be read
Лучший режим
Trend start

No single-flow template pairs Fractals with the Alligator. Start from Fractal Breakout and add Alligator nodes with a Cross.

Открыть Builder →

Fractals + ADX

  1. ADX > 25
  2. Price breaks the last fractal high
  3. Buy
Зачем
Require measurable trend strength before trading a break, since fractals print constantly inside a range and every one of them looks like a level
Лучший режим
Trending

No single-flow template pairs Fractals with ADX. Start from Fractal Breakout and add an ADX node with a Compare at 25.

Открыть Builder →

Параметры

Начальные значения для проверки на вашей паре и таймфрейме — не гарантированные настройки.

Параметр По умолчанию Рекомендуемый диапазон тестирования Что делает
Pattern length 5 bars Fixed in the indicator. iFractals takes no arguments at all — the five-bar definition cannot be changed without writing a custom indicator.
Line Upper / Lower Which buffer a rule reads. A buffer selector, not a numeric setting.
Search bars 50 20–200 Not an indicator input — the Builder node's own window for scanning back to the most recent non-empty fractal. Too short and the node finds nothing on quiet stretches.

Начальные пресеты

Standard 5 bars The only configuration — iFractals has no inputs

Примеры на рынке

Где Fractals работает, где не работает и как фильтр меняет результат.

Работает

Break of a real level

Price consolidates, prints a clear fractal high, and then trades decisively through it with volatility expanding — the case the template trades.

Не работает

Fractals inside the chop

In a tight range a fractal prints every few bars and price crosses each one immediately. Every level looks structural and none of them is.

Отфильтровано

Volatility filter suppresses the break

The same fractal is crossed while ATR sits at a local low, the trade is skipped, and price drifts back inside the range.

FAQ

Is a fractal a buy or sell signal?
Neither on its own. A fractal is a definition — the middle bar of five held the extreme — so it marks a level, not a direction. What you do with the level is the strategy: break through it, fade it, or put a stop behind it. Treating the arrow itself as an entry is the most common misreading.
Why is the fractal always two bars behind?
Because the pattern needs two bars on each side of the middle one, so it cannot be confirmed until the right-hand side has closed. That lag is structural and cannot be removed. It also makes fractals a common source of accidental look-ahead in backtests — a test that reads the value at the extreme's own bar is using information that did not exist yet.
Can I change the number of bars in a fractal?
Not through iFractals, which takes no arguments at all. Variants that use seven or nine bars exist as custom indicators. The upside of the fixed definition is that there is nothing here to overfit, and a fractal on your chart is the same object as a fractal on everyone else's.
Why does my fractal rule read an empty value?
Because most bars have no fractal, and both buffers are empty on those bars. Unlike every other indicator here, reading index 0 usually returns the empty value rather than a number. A rule has to scan backwards to the most recent printed value — the Builder's Fractals node does this with its search-bars window.
Can I build a Fractals EA without coding?
Yes for breakouts and structure-anchored stops. The Fractal Breakout template scans back for the most recent upper and lower fractal and compares price against them, gated on expanding volatility. Reading a sequence of fractals as market structure — higher highs, lower lows — needs to hold several past levels and requires custom MQL5.
How should I validate settings before going live?
Backtest on quality tick data first, then run the EA on a demo account before risking money. With fractals specifically, check that the test respects the two-bar confirmation lag — results that look unusually clean are often reading a level before it existed. When optimising anything around the signal, hold back data the search never saw.

Glossary

Ключевые термины