Create your own
Lesson illustration

Classifying Developing Highs and Lows with Pivot-and-Displacement Rules

Hello. In the previous lesson you fixed the chart contract: one market-feed combination, stable candle construction, independent timeframe ledgers, and role-based definitions of external, internal, and protected structure. That prevents one major source of disagreement. This lesson addresses the other: time.

A high can look obvious only because the bars that confirm it have already printed. Your task is to preserve what was actually knowable at each bar close. By the end, you will have a fixed rule for recording a developing extreme as a pivot candidate, a provisional range extreme, or a confirmed external swing—without promoting it merely because later price made the decision look correct.


The central distinction: event time is not recognition time

A pivot has two dates:

  • Event time: the bar where the actual high or low occurred.
  • Recognition time: the later bar close at which your rule has enough right-side evidence to confirm it.

This distinction is the antidote to most hindsight structure analysis.

A EUR/USD daily chart shows pivot-high arrows drawn above three historical highs. Each arrow visually appears on the high bar, but a pivot rule requiring later bars could only have identified that high after those later bars closed.

The arrows in the image are useful as retrospective annotations, but dangerous if treated as real-time signals. A trader viewing the chart live did not know at the first marked high that it would remain the high for the next several candles.

Concepts / Repainting

Read TradingView’s “Repainting” documentation to separate a historical chart annotation from information that was available live. This is a platform-technical explanation, but its “plotting in the past” example is directly relevant to structure indicators and manually drawn SMC swings.

In the “Introduction,” read the definition and example of historical versus real-time behavior. Then go to the “Plotting in the past” section and read the pivot plotting example. Focus on the gap between the pivot bar’s timestamp and the bar on which the pivot became detectable.

A chart can legitimately show a marker at the original pivot bar for visual clarity, provided its journal also says “identified two bars later” or “identified five bars later.” What creates a misleading record is acting as though the marker was available at the pivot itself.


Use two separate questions, not one vague label

When price makes a fresh high or low, traders often ask, “Is that external?” Too much is being asked of one word. Separate the decision into two questions:

  1. Is there a mechanically detectable local turn?
    This is the pivot question.

  2. Did that turn produce an externally meaningful structural consequence?
    This is the external-promotion question.

A third label is needed for the edge of a live range, because price may be extending before either question has been settled.

LabelWhat it saysWhat it does not say
Pivot candidateThe bar currently meets the left-side condition for a possible pivot.That the bar will remain a high or low.
Provisional range extremeThis is the current furthest high or low of the active, unfinished range or leg.That it is a confirmed swing or a tradable reversal point.
Confirmed external swingA confirmed pivot subsequently produced a predeclared, qualifying break of the relevant external reference level.That price cannot later violate it.

These are not perfectly exclusive labels. A fresh running high can be both:

  • the provisional upper range extreme, and
  • a pivot-high candidate if it has already exceeded the required bars on its left.

That overlap is normal. The labels answer different questions.

For journal shorthand, use this priority order when you need one headline label:

  1. Confirmed external swing;
  2. Otherwise, provisional range extreme;
  3. Otherwise, pivot candidate;
  4. Otherwise, no structural label.

Keep the underlying fields separately. Do not erase “candidate” merely because the same bar is also today’s range high.


A fixed baseline rule: P2–D5–B20

You need one rule that is strict enough to replay, but not so elaborate that you override it visually. The following is a starting operational specification, not a claim that these parameters are universally optimal.

Use it unchanged for a defined sample, such as 100 replayed instances on one instrument and one timeframe. If you later alter it, create a new contract version rather than silently rewriting old labels.

1. Pivot rule: P2

Let the possible pivot occur on completed bar .

A pivot high is confirmed only at the close of bar when:

A pivot low is confirmed only at the close of bar when:

Here, is a bar high and is a bar low.

This is a two-bars-left, two-bars-right rule:

  • At bar , a possible high is only a pivot-high candidate if it is higher than the two preceding highs.
  • It becomes a confirmed pivot only after two subsequent completed bars both have lower highs.
  • The low rule is the mirror image.

Use strict inequality. Equal highs or equal lows receive no pivot label under this version of the rule. That may seem severe, but it prevents a discretionary choice of which member of an equal-high cluster is “the real” swing. You can later test an equal-high policy, but it must be a separately named rule version.

Zig Zag — TradingView

TradingView’s “Zig Zag” support page gives a concise technical account of left-side and right-side pivot confirmation, including how a chart can display an unconfirmed projected pivot in real time.

Read the “Calculation” section, especially the pivot-leg explanation. Then read the “Projected pivots” subsection. Compare its projected, unconfirmed pivot with your pivot-candidate label: both can update as new price arrives, whereas a confirmed pivot cannot.

The platform’s Zig Zag example uses five bars on both sides when its total “Pivot legs” setting is 10. Your P2 rule is deliberately faster because you intend to inspect 1H and 15m execution structure. Faster recognition comes with more noise; that is not a defect if the external-promotion gate remains strict.

2. Displacement rule: D5

A confirmed pivot alone is not a provisional external swing. It may simply be an internal turn in a consolidation.

Use the platform’s standard on the same chart timeframe. For a pivot low at bar , record bullish displacement only if, within bars through , at least one completed bullish bar satisfies:

For a pivot high, reverse the directions. Within five bars after , at least one completed bearish bar must satisfy:

This rule has three useful properties:

  • The move must occur soon enough to be plausibly associated with the pivot.
  • It requires a meaningful body, not only a wick.
  • It normalizes the move to current volatility rather than applying the same pip threshold to EUR/USD, gold, and BTC.

If a pivot has no qualifying displacement by the close of bar , keep it as a confirmed internal pivot in the internal record. Do not later revive it as an external swing just because price eventually trends away weeks afterward.

3. Break-and-promotion rule: B20

A displaced pivot becomes an external swing only if it produces a qualified break of the appropriate existing external reference within 20 completed bars of the pivot.

For a potential bullish external low, the reference is the latest confirmed external high. For a potential bearish external high, the reference is the latest confirmed external low.

For this lesson’s provisional promotion gate, require a completed breakout bar that meets all three conditions:

Potential swingRequired closeRequired breakout body
Pivot low seeking bullish external statusBullish body at least
Pivot high seeking bearish external statusBearish body at least

is the relevant confirmed external reference level.

The small buffer avoids treating a close precisely at the old high or low as a clean structural resolution. The -bar deadline prevents a very old pivot from gaining external status merely because a much later move eventually crossed a level.

The next module will examine wick-through versus close-through evidence and distinguish internal continuation, external BOS, and potential CHoCH. For now, this is simply your promotion gate: no confirmed external swing without a predeclared close-and-displacement break.


The real-time state sequence

Consider a bullish external state. The latest confirmed external high is , and price sells off.

Information available at the current closeCorrect record
A bar makes a lower low than the two bars to its left.Pivot-low candidate. If it is also the lowest price of the unfinished leg, it is the provisional lower range extreme.
Two later bars close, each with a higher low than the candidate bar.Confirmed pivot low, recognized now—not at the original low bar.
Within five bars of that low, a bullish bar satisfies D5.Provisional potential external low, provided it is still the lower range extreme of the active leg.
Price produces a B20-qualified close above .Confirmed external low. Log both the original pivot bar and the later promotion bar.
Price never produces D5 or B20 within its deadline.Confirmed internal pivot or expired provisional candidate; never promote it retrospectively.

The bearish sequence is exactly symmetric: a pivot high needs bearish displacement and then a qualifying close below the latest confirmed external low.

The important implication is that a current high is often only a provisional range extreme even after it looks visually finished. If a bullish leg is making new highs, its upper endpoint is a live, moving boundary. It is not automatically a confirmed external high. It may later become one only if a confirmed pivot high forms and then causes a qualifying bearish break.

This is the precise answer to a common SMC confusion:

A high can later become an external high without having been an external high when it first printed.

The original real-time record stays “provisional upper range extreme” or “pivot-high candidate.” Only the later promotion state changes, at the later bar where the evidence becomes available.


Worked example: a low earns promotion

Assume a 1H chart with price unit. The latest confirmed external high is .

Bar stateObserved informationLedger action at that moment
Bar Low reaches , below the prior two lows.Record a pivot-low candidate. It is also the provisional lower range extreme.
Bars and Both lows remain above .At the close of , confirm the pivot low at .
Bar Bullish bar opens , closes . Its body is , and its close is above the pivot low.D5 is satisfied. Record the low as a provisional potential external low. It is not yet external because remains intact.
Bar A bullish bar closes at , with a body.B20 is satisfied: the close exceeds , the buffered external reference. Promote the pivot low at to confirmed external low.
Bar Price reaches .This is a provisional upper range extreme. It is not automatically a confirmed external high.

Notice what was not done:

  • The low was not called external at bar .
  • It was not called external merely because two higher lows appeared.
  • It was not called external merely because a strong bullish candle formed.
  • It earned external status only when the later structural consequence occurred.

That delayed status is not indecision. It is an honest accounting of available information.


Where the common “liquidity” rule fits

Justin Bennett’s explanation gives a useful discretionary insight: a low that takes internal lows and later produces a break is more structurally interesting than a minor pullback that does neither. Watch the two excerpts as a conceptual comparison, but retain the explicit P2–D5–B20 record rather than substituting an undefined phrase such as “liquidity was properly taken.”

Internal vs External Highs and Lows (SMC Made Simple)

In “Internal vs External Highs and Lows (SMC Made Simple),” Justin Bennett explains the central SMC claim that an external low or high needs a later structural consequence. The examples are useful, but treat “internal liquidity” as a descriptive observation unless you have independently specified its exact pivot and break conditions.

Watch the first rule, where the external-low claim is tied to a later break of structure. Then watch the live example, where a low that appears meaningful remains unconfirmed because the required higher reference has not been closed through. Compare that delay with the promotion gate in this lesson.

For your journal, do not write only “swept internal liquidity.” If you want to include the observation, write it in auditable form:

Internal-pivot sweep observed:
- Reference: confirmed P2 pivot low at [price, timestamp]
- Evidence: wick / close / both
- Overshoot: [price distance or ATR fraction]
- Result: descriptive only; no external promotion until B20 is met

This keeps liquidity language from silently becoming a second, discretionary promotion rule.


Minimum ledger fields for every developing extreme

Until the next lesson builds the full two-ledger hierarchy, use a compact event record:

Timeframe / contract:
Direction: high or low
Pivot bar timestamp and price:
Candidate recognized at:
P2 confirmation at:
Current range-extreme status: yes / no
D5 status: pending / passed / failed
External reference level:
B20 status: pending / promoted / expired
Final record: internal pivot / confirmed external swing

Two timestamps are non-negotiable:

  • the pivot bar timestamp, where price turned;
  • the recognition or promotion timestamp, where your rule allowed you to know what it was.

If your charting tool draws an arrow back on the pivot bar, add the recognition timestamp in the label, screenshot filename, or journal. That one habit makes replay results substantially more trustworthy.


Operational takeaways

A visible high or low is not automatically structure. Under the P2–D5–B20 baseline:

  • A pivot candidate has only satisfied the left-side test and can still be invalidated by later price.
  • A provisional range extreme is the current edge of the unfinished leg; it may update repeatedly and does not predict reversal.
  • A confirmed pivot requires two completed right-side bars under P2.
  • A confirmed external swing requires both a confirmed pivot and its later, deadline-bounded, displacement-qualified break of the appropriate external reference.
  • Historical arrows must never erase the delay between the event, confirmation, and promotion bars.

In the next lesson, you will turn this into a two-ledger hierarchy: one ledger for external swings and another for the confirmed internal swings inside the active external leg. That will make “which low is protected?” a recorded state question rather than a visual guess.

Can't find a good explanation? Sign up and we'll make it for you

Sign up