Market Structure Shifts and Break of Structure (BOS) in Futures Trading
Overview #
Every futures trader eventually confronts the same problem: price is moving, but you cannot tell whether the move is a pullback in a continuing trend or the beginning of a genuine reversal. The answer lies in market structure — and specifically in two concepts that have become central to modern futures analysis: Break of Structure (BOS) and Change of Character (CHoCH).
BOS and CHoCH are structural labels. BOS signals that the existing trend is continuing. CHoCH signals that the character of price action may be shifting. Together, they form a framework for reading market direction that goes beyond moving averages and indicators, anchoring your bias in the raw structure of price itself.
These concepts originated in ICT (Inner Circle Trader) methodology but reflect principles that experienced futures traders have applied under different names for decades — the underlying logic of higher highs, higher lows, lower lows, and lower highs dates to the foundational work of Dow Theory and auction market analysis. Robert Rhea's The Dow Theory (1932), which formalized Charles Dow's original Wall Street Journal editorials, established the principle that uptrends consist of successively higher peaks and higher troughs while downtrends are defined by the reverse — the same structural logic that BOS and CHoCH codify.
This article covers:
- How market structure is defined and read
- What BOS and CHoCH mean — precisely, not loosely
- How to identify them on ES, NQ, and other futures markets
- The critical role of liquidity sweeps in high-quality setups
- A complete trading workflow from bias to execution
- The most common mistakes and how to fix them
For background context, see the related Academy articles on Auction Market Theory, Liquidity in Futures Markets, and Fair Value Gaps and Price Imbalances.
Market Structure Foundations: HH, HL, LH, LL #
Before BOS and CHoCH can mean anything, you need a clear, consistent definition of market structure. Structure is determined by the sequence of swing highs and swing lows.
Bullish structure exists when price makes a sequence of Higher Highs (HH) and Higher Lows (HL). Each rally pushes above the previous peak, and each pullback holds above the previous trough. This sequence confirms buyers are in control — each new high is a BOS in the bullish direction, and each higher low shows that demand is absorbing supply on the pullbacks.
Bearish structure exists when price makes Lower Lows (LL) and Lower Highs (LH). Each decline pushes below the previous trough, and each bounce fails to reach the prior peak. Sellers are in control, progressively pushing price lower.
The key insight, emphasized consistently by experienced traders on NexusFi, is that structure only has meaning when swing points are defined consistently.
Higher highs, lower highs, double tops, lower lows, higher lows and double bottoms are typically referring to a trend logic. The bars at which the price reverses need to be labeled as structural reference points — without consistent swing labeling, the whole framework collapses into subjective interpretation.
\n> — [Fat Tails — "Coding higher high and Higher Low" (NexusFi)]
This is the first and most important rule: pick a fixed method for identifying swings and apply it mechanically. Common approaches include:
- N-bar pivot logic: A swing high exists when N bars to the left and right are all lower. 3-bar or 5-bar pivot lookback is common for execution timeframes.
- Zigzag or legs: Define a minimum move size before a new swing is recorded
- Visual pivots: Use clearly obvious turning points on your primary trading timeframe
Whatever method you choose, apply it consistently. Changing your swing definition mid-session to "find" the structure you want is a common failure mode.
The structural concepts that matter most:
| Swing Point | Meaning | Structural Context |
|---|---|---|
| HH (Higher High) | New high above the prior high | Confirms bullish BOS — continuation |
| HL (Higher Low) | Pullback holds above prior low | Bullish structure intact |
| LL (Lower Low) | New low below prior low | Confirms bearish BOS — continuation |
| LH (Lower High) | Bounce fails below prior high | Bearish structure intact |
When a market is making HH/HL, it is in bullish character. When it is making LH/LL, it is in bearish character. BOS and CHoCH are events that either confirm this character (BOS) or challenge it (CHoCH).
Swing Definition: The Critical Foundation #
The most common failure in BOS/CHoCH analysis is inconsistent swing definition. Without a fixed method, every trader will find the BOS and CHoCH that confirms what they want to see.
This is not a minor technical point — it is the difference between a reproducible edge and a post-hoc rationalization.
What makes a swing valid for BOS/CHoCH purposes:
- Minimum displacement: The swing must be preceded by a move of meaningful size. On a 15-minute ES chart, a 2-point swing barely qualifies as noise — you need swings that are visually obvious and represent real directional commitment.
- Closure confirmation: A swing high is confirmed when price makes a lower high on both sides — the bar has the highest close and the bars flanking it have lower closes. This prevents labeling intra-bar wicks as swings.
- Contextual relevance: The swing should be meaningful to the timeframe. A swing on a 1-minute chart that was caused by a news spike may not represent real structural intent.
Practical guidance for ES/NQ swing selection:
On a 5-minute chart, use a 3-bar pivot: a swing high exists when the high of bar N is higher than bars N-1, N-2, N+1, and N+2 (confirmed 2 bars later). This gives you objective, reproducible swing identification without requiring judgment calls.
On a 15-minute chart, a 2-bar pivot (1 bar on each side) is sufficient because the larger timeframe naturally filters noise.
The key rule, emphasized repeatedly by experienced NexusFi traders: define your swing logic before the session and do not change it mid-session.
Break of Structure (BOS): Continuation Confirmed #
A Break of Structure occurs when price breaks a meaningful swing high or swing low in the direction of the prevailing trend. It confirms that the trend is continuing, not ending.
Bullish BOS: In an uptrend (HH/HL structure), price breaks above the prior swing high. This confirms the bullish character is continuing. Buyers are still in control, and the sequence of higher highs is extending.
Bearish BOS: In a downtrend (LH/LL structure), price breaks below the prior swing low. This confirms the bearish character is continuing. Sellers are still in control, extending the sequence of lower lows.
The BOS is the most reliable structural event because it is a confirmation, not a hypothesis. The trend has already shown its character, and the BOS is the market proving that character again.
For futures traders, BOS setups tend to offer lower-risk entries because:
- The direction is already established
- The pullback into the prior BOS level often provides a defined entry with clear invalidation
- You are trading with the prevailing order flow, not against it
As @dctrade69 noted in his "Trading Futures with Context" journal — one of the most-followed trading journals on NexusFi:
Fantastic structure today in the NQ. Level to level with pullbacks and re-entry possibilities all the way down today. Overnight we had hung around the key structural level — the first break below that prior swing created the context for the entire day's direction.
\n> — [dctrade69 — "Trading Futures with Context" (NexusFi)]
This illustrates the practical power of BOS in futures trading: once the structural break is established on a higher timeframe, the entire intraday session often organizes itself around that reference level.
Important distinction: BOS is not just any price break. For a break to qualify as a BOS:
- The swing being broken must be a meaningful, visually clear pivot — not a 1-2 point noise spike
- The break should show acceptance — at minimum a close beyond the level, ideally with continuation
- The break should be accompanied by momentum — impulsive movement, not a slow drift through the level
A wick through a swing level is not a BOS until the market accepts and holds beyond it.
Change of Character (CHoCH): The First Shift Signal #
If BOS confirms continuation, CHoCH challenges it. A Change of Character is the first structural break against the prevailing trend — the moment when the market stops acting like it has been acting.
Bullish CHoCH: In a downtrend (LH/LL structure), price breaks above a meaningful lower high. This is the first break against the bearish character. The market has been making lower highs and lower lows; now it is breaking above one of those lower highs, which suggests the downtrend may be losing momentum.
Bearish CHoCH: In an uptrend (HH/HL structure), price breaks below a meaningful higher low. The market has been holding above prior lows during pullbacks; now it is breaking below one of them, suggesting the uptrend character is challenged.
The key nuance: CHoCH is a signal, not a confirmation. It tells you the previous structure is no longer fully intact. It does not guarantee a reversal. Many CHoCH events resolve into deeper pullbacks before the trend resumes. This is why trading directly off a CHoCH — before BOS confirmation — carries much higher failure rates.
For a reversal from bullish to bearish, I look for price to create a HOD just above a price level — floor trader pivot, high value node, yesterday's high/low/close. Price then creates a higher low below this level and then tries to break this prior higher low. I scale in when price breaks below the higher low.
\n> — [GruttePier — "Pull back vs Trend reversal" (NexusFi)]
This describes the CHoCH entry logic from an experienced trader: wait for the specific structural level (the HL in a bullish uptrend), and enter when price breaks it. The key nuance from this veteran trader: he looks for the HOD to form at a significant level first — the sweep context — before the CHoCH carries weight.
Another NexusFi trader, @Brandenton, makes the threshold even clearer:
I don't take any trades until there is confirmation. The only way I truly have that confirmation is when price breaks above or below the previous correction (LH/HL). You need the break of that structural level to shift from pullback mode to reversal mode — guessing is not a system.
\n> — [Brandenton — "Pull back vs Trend reversal" (NexusFi)]
Identifying the correct CHoCH level:
For a bearish CHoCH in an uptrend:
- Identify the current HH/HL sequence
- Find the most recent meaningful HL — the last time price pulled back and held a higher low
- Draw a horizontal line at that HL level
- A bearish CHoCH occurs when price breaks and accepts below that level with displacement
For a bullish CHoCH in a downtrend:
- Identify the current LH/LL sequence
- Find the most recent meaningful LH — the last time price bounced but failed to make a new high
- Draw a horizontal line at that LH level
- A bullish CHoCH occurs when price breaks and accepts above that level with displacement
The structural logic is the mirror image of BOS: where BOS breaks the swing that matters for continuation, CHoCH breaks the swing that matters for the prior trend.
From CHoCH to BOS: The Complete Confirmation Sequence #
The full reversal framework has four phases:
Phase 1: Trend structure established Price makes a clear sequence of HH/HL (bullish) or LH/LL (bearish). The market has character.
Phase 2: CHoCH occurs Price breaks the most recent opposing swing (HL for bearish CHoCH, LH for bullish CHoCH) with clear displacement. This is the first signal of potential reversal. It is not a trade signal yet — it is a bias shift.
Phase 3: Pullback after CHoCH After the CHoCH, price typically retraces toward the broken level. This pullback serves two purposes: it tests whether the broken level will now act as support/resistance (in the new direction), and it provides a lower-risk entry point for traders who want to participate in the potential reversal.
Phase 4: BOS confirmation Price breaks the next meaningful structural level in the new direction. In a bullish reversal sequence, after a bullish CHoCH, the BOS is a break above the next swing high. In a bearish reversal sequence, after a bearish CHoCH, the BOS is a break below the next swing low. This BOS confirms that the reversal has momentum — it is no longer just a potential shift, it is a confirmed new directional structure.
This sequence — CHoCH followed by BOS — is the core of the framework. Trading entries are typically placed:
- Conservative: After BOS confirmation, on the subsequent pullback to the broken BOS level
- Moderate: After CHoCH, with reduced size, adding on BOS confirmation
- Aggressive: On the initial CHoCH break (highest risk, only with strong displacement and liquidity context)
For most ES and NQ traders, the conservative approach — waiting for BOS and then trading the pullback — produces the best risk-adjusted outcomes because it eliminates the high percentage of CHoCH events that fail to follow through.
A trader's goal is to enter at point 2 or point 4 when the pullback stops and the trend continues in the same direction. The framework only works when you track all structural reference points systematically.
\n> — [AR01 — "AR01 Market Structure Basics" (NexusFi)]
This veteran trader's point maps directly onto the CHoCH-to-BOS sequence: the pullback after BOS confirmation is the "point 2 or point 4" entry — the structural entry with the highest probability because it has both CHoCH context and BOS confirmation.
Stop placement:
- For long entries after bullish BOS: Stop below the swing low that formed after the CHoCH (the "protected low")
- For short entries after bearish BOS: Stop above the swing high that formed after the CHoCH (the "protected high")
- Use close-based invalidation — a close back through the stop level — rather than wick-based
Target selection:
- Prior session high/low
- Next HTF structural level
- Equal highs/lows on the opposing side (liquidity target)
- Fixed R-multiple exit (take partials at 1R, trail the remainder)
Liquidity Context: The Fuel for High-Probability CHoCH #
The most important filter for BOS/CHoCH quality is liquidity context. In futures markets, major reversals rarely happen randomly — they tend to occur after price has cleared a pool of resting orders (stops) that provide the liquidity for the reversal move.
Understanding why requires understanding what a liquidity pool is. Traders systematically place stops at predictable locations: below obvious swing lows, below equal lows, below prior session lows. These clusters of stops represent buying orders that will be triggered when price sweeps through them. On CME Globex, stop orders are dormant instructions that activate only when a trade occurs at the specified trigger price — once activated, they enter the order book as either limit or market orders, creating the cascading flow that drives displacement through structural levels. When a large participant wants to buy, they need that liquidity.
Large profitable positions loaded with longs or shorts need large areas of liquidity — stops — to close these positions at a profit without causing a big reversal in price. The 'stop hunt' is often a professional exit mechanism, creating the displacement that precedes the next directional move.
\n> — [Keab — "Stop Hunts - Are they really what the name entails?" (NexusFi)]
This describes the mechanics behind the highest-quality CHoCH setups. The sequence is:
- Liquidity pools form at obvious locations (equal lows, prior session lows, swing lows where retail stops cluster)
- Price sweeps the pool — moves through the stop level, triggering all the resting orders
- Displacement occurs — the stop fills create fuel for the reversal move
- CHoCH forms — price breaks the opposing structure with momentum
- BOS follows — confirmation that the reversal has genuine momentum
Not just one group of traders but all traders actively hunting stops. Stop runs can be caused by a few types of activity — one is when the liquidity provider adjusts their position and triggers cascading stops at predictable levels. This is especially visible at prior session highs and lows in ES.
\n> — [tpredictor — "Stop Hunts - Are they really what the name entails?" (NexusFi)]
The practical implication: a CHoCH that occurs without a prior liquidity sweep has much lower probability than one that follows a sweep. The sweep is the fuel — it creates the aggressive order flow that drives the displacement and confirms the structural break.
Where to look for liquidity pools in ES and NQ:
- Equal highs/lows: Two or more swing highs/lows at approximately the same price attract stop clustering
- Prior session high/low (PDH/PDL): Widely watched levels where stops concentrate
- Overnight high/low (ONH/ONL): RTH traders' stops often sit just beyond these levels
- Obvious round numbers: ES 5000, 5100, etc. attract stop placement
- Prior week high/low: Especially relevant for swing traders holding positions
You will move up to a price where the offers stay firm. Buy market orders continue lifting into that offer but price doesn't move up. That's a line in the sand — and when it finally gives way, the displacement that follows is the structural break you've been waiting for.
\n> — [Jigsaw Trading — "Day Trading Support/Resistance Levels on the E-Mini S&P500 Futures" (NexusFi)]
This real-time market reading from one of NexusFi's most respected educators describes the exact moment when a liquidity pool is being absorbed: price tests the level, fails to push through immediately, and then finally breaks with displacement. That displacement — the sharp, impulsive move after the level gives way — is the signature of a high-quality CHoCH setup.
The quality hierarchy:
| Setup Quality | Characteristics |
|---|---|
| Highest | Liquidity sweep + displacement + CHoCH at significant level + HTF alignment |
| High | Displacement + CHoCH + HTF alignment (no sweep) |
| Medium | CHoCH with acceptance + HTF alignment (no sweep, no strong displacement) |
| Low | CHoCH without clear displacement or HTF context |
Practical Application: ES and NQ Futures #
The ES (E-mini S&P 500) and NQ (Nasdaq-100) are the most actively traded index futures. Their high liquidity creates both opportunities and challenges for BOS/CHoCH trading.
The challenges specific to ES and NQ:
- Algorithmic noise: Both markets are heavily algorithm-driven. Automated systems create frequent small structure breaks that are pure noise.
- Stop-hunt environments: Professional participants actively seek stop clusters, creating many apparent CHoCH events that quickly reverse.
- Session-driven behavior: Market behavior changes much across RTH (9:30 AM - 4:15 PM ET), Globex overnight, and London sessions.
- Correlation: ES and NQ are highly correlated. Internal divergence between the two can sometimes signal structure shifts before either confirms independently.
A practical intraday workflow:
Step 1: Establish HTF bias (before the session) Check the 1H, 4H, and daily structure. Is the market making HH/HL or LH/LL on the daily? Is price trading in premium or discount relative to the recent range? Mark the daily structure and key levels.
Step 2: Mark key levels (before RTH open)
- Previous day high and low (PDH/PDL)
- Overnight high and low (ONH/ONL)
- Opening range high and low (first 30 minutes of RTH)
- Any obvious equal highs/lows from recent sessions
- Value area high/low from the prior session's Volume Profile
Step 3: Identify liquidity pools Based on the key levels, identify where stop clusters are most likely. Equal lows below the current price are likely sell-side liquidity. Equal highs above are likely buy-side liquidity.
Step 4: Watch for the sweep In the first 1-2 hours of RTH, ES and NQ frequently sweep significant levels before establishing directional bias. This is the "hunt and reverse" pattern. When price moves aggressively toward a liquidity pool, the sweep is beginning.
Step 5: Watch for displacement and CHoCH After the sweep, look for impulsive displacement in the opposite direction. If price then breaks the opposing structural level (last LH in a downtrend, last HL in an uptrend), you have a CHoCH.
Step 6: Mark the CHoCH level and wait for BOS Draw a horizontal line at the CHoCH break level. Now wait. Watch for price to pull back (retest the broken level) and then break the next structural level in the new direction. That break is the BOS.
Step 7: Execute on the pullback after BOS The BOS pullback is your entry zone. Wait for price to return to the broken BOS level (or the CHoCH level), show a rejection or hold, and enter with a stop below the swing low that would invalidate the new bullish structure (or above the swing high for shorts).
Timeframe recommendations for ES/NQ:
- HTF bias and structure: Daily + 4H + 1H
- CHoCH and BOS identification: 15-minute or 5-minute
- Entry execution: 3-minute or 1-minute for precise entry timing
- Swing definition for CHoCH/BOS: Use 3-5 bar pivot lookback on the execution timeframe
Session timing:
Not all sessions are equal for BOS/CHoCH setups:
- RTH open (9:30-11:00 AM ET): Highest probability. London + NY overlap creates the most aggressive moves and clearest CHoCH patterns.
- Midday (11:30 AM - 1:00 PM ET): Lower quality. Reduced volume, more choppy structure, frequent false breaks.
- Power hour (3:00-4:15 PM ET): Good probability. End-of-day repositioning creates real structural breaks.
- Pre-market and Globex: Useful for context only. Structural breaks in thin markets often reverse at RTH open.
Common Mistakes and How to Avoid Them #
After years of observing traders struggle with BOS/CHoCH, the failure modes cluster into specific, fixable patterns.
Mistake 1: Treating every wick as a structural break
A wick through a level is not a BOS or CHoCH unless followed by acceptance and continuation. In ES and NQ, stops are swept constantly. The wick that runs a level and immediately reverses is often a liquidity event — and the reversal after it might be the actual CHoCH.
Fix: Require a close beyond the level (on the trading timeframe), or a retest-and-hold after the break.
Mistake 2: Using tiny swings on higher timeframes
On a 15-minute ES chart, a 2-point swing is not a meaningful structural pivot. Using such small swings makes BOS/CHoCH appear constantly and produces constant false signals.
Fix: For a swing to qualify for BOS/CHoCH purposes on the 15-minute timeframe, it should represent a visually obvious turning point that has at least a moderate distance from adjacent bars.
Mistake 3: Trading CHoCH without waiting for BOS
CHoCH is a probability shift, not a trade signal. Entering on every CHoCH means trading setups that fail 40-60% of the time, depending on the timeframe and market context.
Fix: Use CHoCH to shift your bias, then wait for BOS confirmation before entering. Add size or move to an execution entry only after the BOS.
Mistake 4: Ignoring timeframe hierarchy
A 1-minute CHoCH against a strong 1-hour trend is noise. Trading it is counter-trend trading against a strong prevailing structure.
Fix: Always check the HTF structure first. If the 1-hour is clearly in bullish structure (HH/HL), focus only on bullish CHoCH setups on the 5-minute — not bearish ones.
Mistake 5: Mid-range structure breaks
In a balanced market (price acceptance in the middle of a range), BOS and CHoCH events occur frequently and fail just as frequently. The market is balanced — there is no clear edge.
Fix: Focus on structure events near the edges of ranges — at or near obvious support/resistance, prior session levels, or after liquidity sweeps. Mid-range breaks are the lowest-quality setups.
Mistake 6: Using wick-based stop invalidation
In ES and NQ, stops placed exactly at structural levels are routinely swept before the trade moves in the intended direction. This creates emotional exits from valid setups.
Fix: Use close-based invalidation. If the market closes back through your invalidation level (1-3 closes), the structure thesis is wrong. A single wick through the level may be a stop sweep, not invalidation.
Mistake 7: Expecting CHoCH to be immediate and clean
Structure shifts take time. After a CHoCH, price often retraces deeply, tests the prior structure, or consolidates before the BOS confirmation. Traders who exit when the trade "doesn't work immediately" miss the follow-through.
Fix: Plan the full sequence — CHoCH, pullback zone, BOS level, entry zone, stop, target — before the trade happens. If the market provides CHoCH and then creates a pullback, that is not failure, it is the setup developing.
Knowledge Map
Go Deeper
Build on this knowledgeReferences This Article
Articles that build on this topicCitations
- — Trading Futures with Context (2014) 👍 13“Overnight price had bottomed out during Asian session and systematically moved higher throughout the euro session. Same story as CL only on the uptrend instead of down -- worked from below value higher all night and just prior to RTH had broken the prior structural level.”
- — Trading Futures with Context (2014) 👍 11“Fantastic structure today in the NQ. Level to level with pullbacks and re-entry possibilities all the way down today. Overnight we had hung around the key structural level -- the first break below that prior swing created the context for the entire day's direction.”
- — Coding higher high and Higher Low (2020) 👍 8“Higher highs, lower highs, double tops, lower lows, higher lows and double bottoms are typically referring to a trend logic. The bars at which the price reverses need to be labeled as structural reference points -- without consistent swing labeling, the whole framework collapses into subjective interpretation.”
- — Pull back vs Trend reversal (2019) 👍 8“For a reversal from bullish to bearish, I look for price to create a HOD just above a price level -- floor trader pivot, high value node, yesterday's high/low/close. Price then creates a higher low below this level and then tries to break this prior higher low. I scale in when price breaks below the higher low.”
- — Pull back vs Trend reversal (2019) 👍 10“I don't take any trades until there is confirmation. The only way I truly have that confirmation is when price breaks above or below the previous correction (LH/HL). You need the break of that structural level to shift from pullback mode to reversal mode -- guessing is not a system.”
- — AR01 Market Structure Basics (2010) 👍 7“A trader's goal is to enter at point 2 or point 4 when the pullback stops and the trend continues in the same direction. Other terms used: Similar High (SH), Similar Low (SL), Lower Low (LL), Lower High -- the framework only works when you track all structural reference points systematically.”
- — Stop Hunts - Are they really what the name entails? (2019) 👍 7“Large profitable positions loaded with longs or shorts need large areas of liquidity -- stops -- to close these positions at a profit without causing a big reversal in price. The 'stop hunt' is often a professional exit mechanism, creating the displacement that precedes the next directional move.”
- — Stop Hunts - Are they really what the name entails? (2019) 👍 10“Not just one group of traders but all traders actively hunting stops. Actual stop runs can be caused by a few types of activity -- one is when the liquidity provider adjusts their position and triggers cascading stops at predictable levels. This is particularly visible at prior session highs and lows in ES.”
- — Day Trading Support/Resistance Levels on the E-Mini S&P500 Futures (2012) 👍 37“Not all reversals are like this but many are. You will move up to a price where the offers stay firm. Buy market orders continue lifting into that offer but price doesn't move up. That's a line in the sand -- and when it finally gives way, the displacement that follows is the structural break you've been waiting for.”
- — Inner Circle Trading (2022) 👍 8“ICT FVG for Fair Value Gap -- looks like ICT has borrowed some concepts from Market Profile and rebranded them. The underlying principle is the same: displacement creates imbalance, and price eventually returns to fill it. The BOS/CHoCH framework maps directly onto the displacement → rebalance cycle that orderflow traders have tracked for decades.”
- — Dow Theory
- — Futures Order Types
- — Market Profile
