ForexBestRobots.comCompare EAs →

MARKET STRUCTURE · GUIDE 2

Forex BOS and CHoCH: Closed-Bar Breaks Without Hindsight

Read BOS and CHoCH in Forex with confirmed swing references, strict Bid closes, two timed H1 examples and a journal that separates a break from a reversal.

17 min readReviewed by ForexBestRobots Editorial Team
Two alternative invented EUR/USD H1 paths from an advancing structure: the upper reference is 1.1040 and the lower reference 1.0960. Wicks at the 13:00 close do not qualify; the 14:00 closes confirm BOS above or a CHoCH warning below.EUR/USD · H1 · Bid closesKnown level → closed break → separate follow-up

A break describes an event; a reversal requires more evidence.

A candle can cross a visible swing level while the chart still tells you very little about what comes next. BOS and CHoCH are useful only when the reference, the previous structure and the moment of confirmation are explicit. This guide follows two alternative H1 paths from the same known structure, so you can distinguish a wick, a first closed break and a later response without borrowing information from the future.

1. Define the labels before reading the chart

BOS means break of structure; CHoCH means change of character. Analysts use these labels differently, including wick-based breaks, body closes and different swing scales. MSS, or market structure shift, is another label whose conditions must be stated. The names alone do not define a reproducible test.

Here, BOS is the first strict Bid close beyond a frozen reference in the direction of a previously classified structure. CHoCH is the first strict Bid close beyond the opposite reference: a warning that the earlier structure's reference has failed. Neither label asserts that a new trend is established.

In an advancing HH/HL snapshot, a close above the latest confirmed high is continuation BOS; a close below the latest confirmed low is a CHoCH warning. In a declining LH/LL snapshot, a close below the low is continuation BOS; a close above the high is the warning. If the starting structure is unclassified, record a level break without either directional label.

2. Fix the price side and the swing scale

The exercise uses ordinary EUR/USD H1 Bid OHLC from one hypothetical broker feed and server clock. A pip is 0.0001. Keep the symbol, timeframe, feed and clock fixed; a smaller-timeframe break cannot silently replace an H1 break.

Use the first Market Structure guide's strict five-bar pivots: a high above all four neighbouring highs, or a low below all four neighbouring lows, with two completed bars on each side. Ties fail the respective test; a dual high/low event is ambiguous X. Keep all raw events, including consecutive same-type events.

Classify the latest four events only if they alternate H → L → H → L or L → H → L → H. Both highs and lows must rise for HH/HL, or both must fall for LH/LL. Equal, mixed, ambiguous or insufficient events leave the context unclassified. This is a stated reading convention, not a universal definition of BOS.

3. Use a level only after it becomes known

A pivot marked on an earlier candle is not available while that candle forms. For a central candle opening at 08:00, its two right-hand candles finish at 10:00 and 11:00. Under this rule, the pivot becomes confirmed only at 11:00.

For the next 11:00–12:00 candle, use references whose confirmation time is at or before 11:00. Save that pre-bar snapshot before inspecting the candle's final high, low or close. A pivot first confirmed at the tested candle's close belongs to the following snapshot, not to an earlier decision.

Once MT4 receives the first quote of a new H1 bar, the completed candle is shift 1 and the current forming candle is shift 0. A nominal hour boundary is not proof that a quote arrived then. Store the candle's scheduled close and the actual observation time separately; do not claim a fill at a historical close.

4. Freeze a reference pair for one reading exercise

At the start, record the classified context and the latest confirmed high R_H and low R_L, with their pivot identities and confirmation times. The preceding completed close must be inside or exactly on that pair. A chart already closing outside is not evidence that a new break occurred on the candle you are reviewing.

This worked exercise freezes the pair until the first qualifying closed break, then retires it. Later candles are follow-up observations, not additional BOS or CHoCH events against that same pair. An equality close or wick does not retire the pair. This one-event convention prevents repeated candles outside the level from inflating the event count.

A continuous implementation needs its own explicit re-arming rule. One conservative extension is to require a new classified snapshot with both latest pivot identities changed and a completed close back inside the new pair. It may miss events; it is not used or performance-tested here. Moving references or counting every recross is a different research definition.

5. Distinguish a touch, a wick and a strict close

For the active pair, an upper closed break requires Close_Bid > R_H; a lower closed break requires Close_Bid < R_L. Equality at either reference does not qualify. A high or low beyond the level with the close inside is only a wick excursion under this convention.

The close can finish beyond only one of two distinct references, even if a wide candle's high and low crossed both. Record both wick excursions if relevant, but OHLC alone cannot tell you their intrabar order. Do not invent a sequence of two confirmed breaks inside that candle.

No minimum distance, displacement filter or entry buffer is added here. A close barely beyond the level qualifies descriptively and can fail immediately afterwards. If you add a tolerance, candle-body filter or a second confirming close, set it in advance and evaluate that separate variant.

6. Establish the common starting context

All dates and prices are invented for explanation. The example starts from 64 valid, consecutive completed H1 candles ending at 11:00 on 2026-10-09. The latest four strict pivots are listed below; their prices and availability times are checked against the full invented OHLC sequence.

The highs rise 1.1000 → 1.1040 and the lows rise 1.0920 → 1.0960: 40 pips in each comparison. The HH/HL snapshot becomes available at 11:00, with R_H = 1.1040 and R_L = 1.0960. The preceding close 1.0974 is inside the pair.

The two paths below start from that same snapshot, then diverge. They are alternatives, not consecutive stages of one historical chart. References stay frozen during each exercise, so neither path is allowed to choose a more convenient later pivot.

EventPivot opensKnown after closeBid price
Earlier high H_A2026-10-08 08:002026-10-08 11:001.1000
Earlier low L_A2026-10-08 13:002026-10-08 16:001.0920
Higher high H_B2026-10-08 18:002026-10-08 21:001.1040
Higher low L_B2026-10-09 08:002026-10-09 11:001.0960
Two alternative invented EUR/USD H1 paths from an advancing structure: the upper reference is 1.1040 and the lower reference 1.0960. Wicks at the 13:00 close do not qualify; the 14:00 closes confirm BOS above or a CHoCH warning below.
The two panels are alternative paths, not a single sequence. Both use the same frozen references known at 11:00. Each panel shows the 12:00 and 13:00 candles on its own labelled Bid price scale. The first candle crosses a reference with its wick; only the next candle closes strictly beyond it, at 14:00. The larger separation between the two references is not drawn to scale across panels. Prices are invented; no entry or trade outcome is shown.

7. Alternative A: a wick, then continuation BOS

At the 13:00 close, the candle's high 1.1045 is beyond 1.1040, but its close 1.1038 is still inside. There is no closed BOS. At 14:00, the next candle closes 1.1043: strictly above the frozen high by 3 pips. This is the exercise's continuation BOS, first knowable after that candle finishes.

Opens → closesOpenHighLowCloseReading at close
11:00 → 12:001.09741.10341.09721.1030Inside; pair active
12:00 → 13:001.10301.10451.10281.1038Upper wick only; pair active
13:00 → 14:001.10381.10481.10361.1043First upper closed break: BOS; pair retired
14:00 → 15:001.10431.10521.10411.1047Follow-up outside; no second event
15:00 → 16:001.10471.10491.10351.1037Return inside; original BOS retained

The 15:00 close 1.1047 is follow-up outside the same level, not a second event. At 16:00, the close 1.1037 returns inside. Record that return separately. It does not erase the earlier BOS, and the earlier BOS did not promise continued price appreciation.

The event timestamp is 14:00; the candle opened at 13:00. An indicator may place its marker on the opening time, but a journal must retain the confirmation time. An entry at that candle's open would precede the evidence used to confirm the event.

8. Alternative B: a wick, then a CHoCH warning

At 13:00, the candle reaches 1.0956 below the confirmed low 1.0960, but closes back at 1.0964. Under the same strict close rule, the pair remains active. At 14:00, the next close 1.0957 is below that low by 3 pips: the advancing context's opposite reference has failed.

Opens → closesOpenHighLowCloseReading at close
11:00 → 12:001.09741.09801.09621.0968Inside; pair active
12:00 → 13:001.09681.09721.09561.0964Lower wick only; pair active
13:00 → 14:001.09641.09671.09541.0957First lower closed break: CHoCH warning; pair retired
14:00 → 15:001.09571.09701.09551.0966Return inside; no established reversal

Log this as a CHoCH warning relative to the starting HH/HL snapshot. A lower close is not a confirmed swing low, and the candle's high is not automatically a confirmed lower high. The warning does not yet supply the alternating confirmed pivots needed for a complete LH/LL classification.

At 15:00, the close 1.0966 reclaims the old low. Preserve both observations: the earlier closed break and the later return. Calling only the winning-looking branch a reversal would use hindsight; neither branch contains a tested trade.

9. Keep an opposite break separate from a reversal

A reversal claim needs a declared definition beyond one opposite close. Under the strict classification used here, wait for four alternating confirmed events with both highs and lows declining before assigning LH/LL. The relevant pivots may not be confirmed until several later candles have closed.

Do not rename the earlier CHoCH a certain reversal once later prices fall. At its original observation time, it was a warning with the information then available. A later declining snapshot is a separate observation with its own availability time.

Terms such as protected high or protected low also need a rule linking a swing to a preceding break. This exercise simply uses the latest confirmed pair; it does not claim that every selected low is protected in all other structure frameworks, or that a wick proves a liquidity sweep or institutional intention.

10. Separate Bid confirmation from executable quotes

At an illustrative quote after the upper break, Bid 1.1043 / Ask 1.1045 gives 2 pips of spread. The Ask quote is not the Bid candle close and cannot be substituted into Close_Bid > R_H. For example, Bid 1.1040 / Ask 1.1042 still does not show a strict Bid close above 1.1040.

A market buy opens at Ask and closes at Bid; a market sell opens at Bid and closes at Ask. Pending-order triggers and position exits can therefore occur on a different price side from the reference chart. An order triggered intrabar does not certify a closed-bar BOS.

The prices in the event tables are completed chart observations, not executable fills. A strategy must separately handle the first available quote, spread, slippage, commission, financing, stops, targets and volume. Nothing in these descriptive labels specifies a lot size or expected return.

11. A journal that can be replayed

  1. Fix the symbol, H1 timeframe, ordinary Bid OHLC, feed and server clock; check completed bars and timestamps before assigning structure.
  2. Save each strict pivot's identity, type, price, opening time and confirmation time. Keep ties, X events and same-type sequences explicit.
  3. At the exercise start, save the latest four events, context, R_H and R_L. Confirm that the preceding completed close lies inside or on the pair.
  4. For each later completed candle, store its opening time, scheduled close, actual observation time and OHLC. Test the close against the frozen pair.
  5. Log the first qualifying upper or lower break and its label relative to the saved context. Retire the pair; do not count later outside closes again.
  6. Record returns and subsequent newly confirmed structure separately. Preserve the original event, including an unfavourable follow-up; keep any trade ledger separate.

12. Check the event logic before testing a strategy

Replay one completed bar at a time, keeping the original pre-bar reference snapshot. Verify that the event can be reproduced using only information available then. A chart redrawn with later pivots must not alter an already logged reference or move the event earlier.

Useful checks include a wick with an inside close, equality at the reference, the first strict outside close, repeated outside closes, a return inside, a dual-wick candle, unclassified starting context and a missing hourly bar. Each case tests a distinct source of misleading labels.

A gap or invalid OHLC stops this exercise's event classification until the data are reconciled and a fresh starting snapshot is established. Do not let a function's nearest-bar fallback silently fill an absent hour. Scheduled market closures and session gaps require their own declared treatment.

The supplied example checks arithmetic, chronology and one-event counting. No profitability backtest was run. MT4's traditional tester uses Bid history and can model Ask with a configured spread; bar data alone cannot establish the original tick sequence, historical variable spread or execution quality.

13. Frequent BOS and CHoCH mistakes

  • Drawing the reference from a pivot that was confirmed only after the tested candle.
  • Calling a wick or an equality close a strict closed break, then applying close-based statistics to it.
  • Counting every later outside candle as another BOS against the same reference pair.
  • Using an opposite break to declare a completed reversal before the required swings exist.
  • Replacing a failed frozen reference with a newer one after seeing the result.
  • Mixing timeframes, Bid and Ask, candle opening times and event confirmation times.

14. BOS and CHoCH questions

Must every BOS close be far beyond the level?

Not under this descriptive convention. Any strict close beyond qualifies. A minimum distance or displacement requirement changes the definition and must be specified before testing; a small break gives no assurance of continuation.

Does CHoCH always come before a profitable reversal?

No. It is an opposite-break warning under the stated starting context. The example can reclaim the old level, and a full new swing sequence may never form. No probability or profit claim follows from the label.

Can one candle confirm both upper and lower closed breaks?

Not against a valid pair with distinct ordered references: one closing price cannot be simultaneously above the high and below the low. Both wicks may cross, but their order is unknown from OHLC alone.

Why freeze the pair instead of following the newest swing?

It makes this one-event exercise auditable and prevents retrospective reference changes. A continuous indicator can update levels at declared times, but its reference-update, invalidation and re-arming rules need a separate specification.

Can I trade immediately when the marker appears?

This guide defines chart events only. A marker may appear late or be plotted on an earlier candle. A trading application needs its own executable timing, order handling, exits, cost model and risk controls.

15. Primary sources and their scope

These sources support five-bar swing mechanics, bar-time lookup, Bid/Ask order mechanics and tester limitations. They do not standardise BOS, CHoCH or MSS, validate this frozen-pair convention, or demonstrate a trading edge. The operational definitions and invented examples are editorial choices for a reproducible guide.

16. Keep the level, event and later evidence separate

A useful BOS or CHoCH record says which structure existed, which confirmed reference was frozen, when the tested candle closed and what happened afterwards. That record remains valid even if the next move disappoints. Learn the event first; test a separately defined trading strategy only with appropriate data and risk controls.