SMC Market Structure (HH/HL/LH/LL + BOS/CHoCH/MSS)
Dec 30, 2025

The SMC Market Structure (HH/HL/LH/LL + BOS/CHoCH/MSS) indicator is a comprehensive price-action tool that automatically identifies and labels key structural events, helping traders navigate Smart Money Concepts with a clean and organized visual layout.
Usage
The indicator can be used to define market trends, identify potential reversals, and filter out minor price fluctuations through displacement requirements.
- Trend Following: Users can monitor the progression of Higher Highs (HH) and Higher Lows (HL) for bullish trends, or Lower Lows (LL) and Lower Highs (LH) for bearish trends. A Break of Structure (BOS) confirms that the prevailing trend is continuing.
- Reversal Detection: A Change of Character (CHoCH) serves as an early warning for a potential trend shift. For a more robust signal, the Market Structure Shift (MSS) requires price to close beyond the level with significant momentum (displacement).
- Multi-Timeframe Analysis: Traders often use the indicator on higher timeframes to establish macro bias and on lower timeframes to time entries using CHoCH or MSS signals.
Details
The script utilizes confirmed pivot points based on a user-defined "Swing Length" to ensure labels do not repaint once confirmed. Structure breaks are calculated based on these historical pivots:
- BOS: Occurs when price breaks a swing level in the direction of the current trend.
- CHoCH: Occurs when price breaks a swing level against the current trend.
- MSS: A specialized version of CHoCH that requires a candle body larger than the Average True Range (ATR) multiplied by a displacement factor, ensuring the shift happens with high participation.
Settings
Core Logic
- Swing length (pivot left/right): Determines the sensitivity of pivot detection. Higher values result in fewer, more significant swings.
- Break confirmation: Choose between "Wick" or "Close" to determine when a level is considered broken.
MSS Displacement Filter
- ATR length (MSS filter): The period used to calculate volatility for the displacement requirement.
- Displacement: body > ATR ×: The multiplier that determines how large a candle body must be relative to the ATR to qualify as an MSS.
Display Options
- Show HH/HL/LH/LL (swing labels): Toggles the visibility of individual swing point labels.
- Show BOS/CHoCH/MSS: Individual toggles for each market structure event label.
- Show EQH/EQL: Optional labeling for equal highs and equal lows.
Visuals
- BOS/CHoCH/MSS label position: Determines if labels appear in the middle of the break line or at the break bar.
- Text offset (ticks): Adjusts the vertical distance of labels from the price levels.
- Max structure objects kept: Limits the number of lines and labels on the chart to maintain performance.
FAQ
How do I access SMC Market Structure (HH/HL/LH/LL + BOS/CHoCH/MSS)?
You can get access on the LuxAlgo Library for charting platforms like TradingView, MetaTrader (MT4/MT5), and NinjaTrader for free.
Why do some swing labels appear delayed?
The script uses confirmed pivots, meaning a label only appears after the "Swing length" number of bars has passed to ensure the high or low is valid and won't repaint.
What is the difference between CHoCH and MSS?
While both represent reversals, CHoCH is the first break against the trend, whereas MSS is a stricter signal requiring a close break and a specific displacement threshold.
Free indicator
Get free access to this indicator on the platforms below.
Unlock the entire LuxAlgo Library
Every indicator, every strategy, full charts, and complete access to Quant — our AI agent.