Module 1 — Market structure · Lesson 1 of 23 · 10 min

Market structure: swings, highs and lows read objectively

What swing highs and swing lows are, how to mark them without subjectivity, the difference between internal and external structure and how to read a trend by looking at price alone.

Before talking about order blocks, liquidity or fair value gaps, one thing has to be put in order: reading structure. Every concept in the SMC/ICT approach (Smart Money Concepts and Inner Circle Trader) only makes sense inside a correct reading of what price is doing. If you can't say precisely what phase the market is in, every "setup" you draw will be an ornament on the chart. In this lesson you learn to mark structure in an objective, repeatable way, which is also the first step towards being able to test and automate it later.

Why we start from structure

Structure is the sequence of price turning points. It's an objective method because it describes what price has done, not what it "should" do. A trader working on structure asks three questions, always in the same order:

  1. What is the prevailing direction on the timeframe I'm looking at?
  2. Where are the points that, if broken, would change this reading?
  3. Is price moving with or against the structure?

The answers aren't forecasts: they're the context in which to evaluate any signal.

Swing high and swing low: the precise definition

A swing high is a high with lower highs on both its left and right. A swing low is a low with higher lows on both sides. In practical terms, the middle candle of a group (of 3, 5, 7 candles...) has the highest high (or lowest low) of them all.

This is also called a fractal (Bill Williams' indicator is a particular case with 2 candles per side). The number of candles per side, n, determines the sensitivity:

Candles per side (n)Swings detectedTypical use
1-2Many, even small (noise)Internal structure, very low timeframes
3-5Balance between detail and significanceGeneral use, a good starting point
7-10Few but importantExternal structure, high timeframes

There is no "right" value: what matters is choosing one rule per timeframe and always applying it the same way. The subjectivity that makes so much analysis unreliable comes precisely from changing criteria from one chart to another.

Uptrend, downtrend and range

Looking at swings you read three situations:

  • Uptrend: a sequence of higher highs (HH) and higher lows (HL). Each pullback stops above the previous low.
  • Downtrend: lower highs (LH) and lower lows (LL).
  • Range (sideways): price oscillates between a high and a low without producing lasting new extremes.

A trend is "healthy" as long as the sequence holds. The point that, if broken, invalidates it is, in an uptrend, the last HL (the last low that originated the last high).

External structure and internal structure

Price is fractal: the same structure repeats at every scale. In SMC language we distinguish:

  • External structure (swing structure): the main swings of the timeframe you're using (for example those with n = 7-10). It defines the "major" trend.
  • Internal structure: the smaller moves inside a wave of the external structure (for example with n = 2-3).

A pullback in the major uptrend can be, at a lower scale, a small downtrend with its own falling highs and lows. Knowing which level you're looking at avoids enormous confusion: many "contrary signals" are simply internal structure inside a bigger move.

Which swings really matter

Not all swings weigh the same. A swing is significant when:

  • it originated a break of structure (the move after the swing exceeded the previous swing);
  • it was preceded by a large move (measurable in ATR multiples);
  • it coincides with an already important area (an old high or low).

A simple, objective way: treat as a "major swing" one that, after forming, was followed by a move of at least 2 times the ATR(14) on the timeframe considered.

A numerical example

Now try it on a real chart: use the drawing tools on the left to mark the swings with your rule (for example 5 candles per side) and write HH, HL, LH or LL next to each.

TradingView…
EUR/USD on 4 hours, real data. Mark the last 8 swings with the same rule and state the current structure and the level that would invalidate it. Chart provided by TradingView.

The most common mistakes

  • Changing the marking rule from one chart to another.
  • Treating every small zigzag as structure: without a filter, every chart looks full of trends and breaks.
  • Marking in hindsight with the full chart: the "it was obvious" reading isn't replicable in real time.
  • Ignoring the higher timeframe: an H1 rally inside a daily downtrend is often just a pullback.
  • Mixing wicks and bodies: decide whether you work on absolute highs/lows (with wicks) or on bodies, and stay consistent.

The ATR filter method: separating important swings from noise

The fractal with n candles per side is simple but has a flaw: it treats a 5-pip zigzag and a 150-pip wave alike. A widely used method to make it "smarter" is the amplitude filter: a swing is considered only if it lies at least **k times the ATR** from the previous opposite swing (for example k = 1.5 or 2). It's a simplified version of the so-called ZigZag.

There are two advantages: your rules become less sensitive to noise and adapt to volatility (on quiet days the threshold drops, on lively days it rises). The drawback: you introduce one more parameter (k). As always, use "round" values (1.5 or 2) and don't optimise them.

"Protected" and "unprotected" swings

In many SMC descriptions you'll hear of strong high / strong low and weak high / weak low. Behind the names there's a simple, useful idea, which you can state objectively:

  • In an uptrend, the protected swing low (strong low) is the low that originated the last higher high: if price breaks it on a close, the uptrend loses its structure. It's the invalidation point.
  • The most recent high in an uptrend is instead a "weak" high in the sense that, by definition, it's the candidate to be exceeded (BOS) or to mark the end of the wave.

In other words: the level protecting the trend is on the opposite side to where price is heading. Knowing which one it is gives you two things: the point where to place a stop consistent with the reading, and the point where to change your mind.

The complete sequence of a wave

An uptrend is made of waves that we can name, to think in an orderly way:

  1. Impulse (expansion leg): from the protected low to the new high.
  2. Retracement (correction): from the high to the new low that, if it holds, will be the next HL.
  3. New impulse: exceeds the previous high (BOS).

When you record swings, note for each retracement how far it retraced as a percentage of the previous impulse (for example 38%, 50%, 62%). After fifty cases you'll have your own statistic on the average behaviour of retracements on the pair and timeframe you trade. This statistic is far more useful than any number read in a book.

How to assess the "quality" of a trend

Not all trends are equal. Some objective criteria:

  • Impulse/retracement ratio: in a healthy trend impulses are wider and faster than retracements.
  • Number of candles: long, laborious retracements with short impulses indicate weakness.
  • Clean breaks: BOS occur with full-body candles or with displacement (see the next lesson).
  • Persistence: how many consecutive HH/HL swings? A trend with 3-4 consecutive swings is more mature (and closer to a possible exhaustion) than a newly born one.

Three ways to mark wrongly

  1. Marking on wick or on body inconsistently. Choose and stick to it.
  2. Skipping a swing because it "doesn't look right". If it fits the rule, it's a swing.
  3. Adding swings in hindsight because the chart "should have" had a low there.

A good objectivity test: have a friend mark the same chart using your written rules. If the two results don't match, the rules aren't yet precise enough.

In short

  • Structure is the sequence of swings: HH/HL = uptrend, LH/LL = downtrend, otherwise range.
  • A swing is defined with n candles per side: choose one rule per timeframe and don't change it.
  • A swing is only known after n candles: beware of look-ahead.
  • Structure is fractal: distinguish external (major) and internal (minor) structure.
  • The level that invalidates a trend is the last "protected" swing (in an uptrend, the last HL).

Practical exercise

  1. On an EUR/USD H4 mark the swings with n = 5 for the last 3 months. Write HH/HL/LH/LL on each.
  2. State the current structure and the level that invalidates it. Repeat on GBP/USD.
  3. Repeat the marking with n = 3 and with n = 8: what changes? Which gives you the most useful reading?

Test what you've learned

1. How is a swing high defined with n = 3?

2. An uptrend is defined by:

3. What is internal structure?

4. Why use a fixed rule for swings?

Have a question or want to share your exercise?

Post in the community, or join the free signals room on Telegram.

Educational content, not financial advice. Trading involves risk. ICT is a term referring to the materials of Michael Huddleston: this course is independent and not affiliated.