NinjaTrader Market Structure (BOS & CHOCH) Indicator
NinjaTrader Market Structure (BOS & CHOCH) Indicator analyzes market structure by tracking Break of Structure (BOS) and Change of Character (CHoCH) based on precise swing sequences. It identifies trend continuation and potential reversals only when the full context of bullish or bearish structure is respected, preventing false entries caused by analyzing swings in isolation from the overall trend and structure.
Already a subscriber or have purchased a product?
What the Market Structure (BOS & CHOCH) Indicator Does
The NinjaTrader BOS & CHOCH Indicator is built on one of the fundamental concepts of price action analysis — the study of market structure. At its core, the indicator tracks two key elements: Break of Structure (BOS) and Change of Character (CHoCH). Together, they form the foundation for understanding how trends are established, maintained, and eventually reverse.
From a structural perspective, a BOS occurs when the price decisively breaks a key high or low in the direction of the prevailing trend. This confirms trend continuation and reflects the current state of the underlying order flow. CHoCH, on the other hand, marks the first structural break in the opposite direction — a visual indication that market sentiment may be shifting and the prevailing trend structure could be transitioning into a new phase.
In practice, these elements form the basis for Smart Money Concepts (SMC), Inner Circle Trader (ICT) methodologies, and other approaches grounded in structural analysis.
The significance of BOS and CHoCH lies in their ability to contextualize market movements. Instead of treating every breakout as meaningful, the methodology places these market events within a broader sequence of higher highs / higher lows (bullish structure) and lower highs / lower lows (bearish structure). This distinction is crucial: BOS confirms the continuity of the current trend structure, while CHoCH identifies a potential shift in market character.
The BOS & CHOCH Indicator for NinjaTrader allows traders to integrate this logic into their analytical process, preserving methodological rigor in structure identification.
This version of the BOS & CHoCH Indicator for NinjaTrader is designed to strictly follow the correct definition of BOS and CHoCH patterns, based on the precise sequence of swing points that indicate a change in market character.
Many similar indicators simplify the logic and interpret BOS and CHoCH as any local breakout, without verifying the necessary swing sequence. This approach ignores the overall market context and the preceding Bullish or Bearish structure, often resulting in unreliable data points and inconsistent structural identification.
In this solution, BOS and CHoCH are identified only when the full swing sequence is respected. Each breakout is considered in the context of the complete structure, not as an isolated event. This helps capture changes in market character in line with the complete swing structure, supporting systematic structural analysis.
BOS and CHoCH Identification Rules
| Type BOS / CHoCH | Classic Version | Allowable Deviation |
|---|---|---|
| Bullish BOS | HL → HH → break HH ↑ | HL → HH → HL → break HH ↑ |
| Bearish BOS | LH → LL → break LL ↓ | LH → LL → LH → break LL ↓ |
| Bullish CHoCH | LL → LH → break LH ↑ | LL → LH → HL/LL → break LH ↑ |
| Bearish CHoCH | HH → HL → break HL ↓ | HH → HL → LH/HH → break HL ↓ |
Market Structure (BOS & CHOCH) Indicator — Key Features
The NinjaTrader Market Structure (BOS & CHoCH) Indicator provides tools allowing traders to adjust settings for different trading styles and approaches.
Strong & Weak Swing Detection
The indicator detects and displays Strong Swings and Weak Swings, distinguishing major structural pivots from minor pullbacks.
Strong Swings highlight key price turning points with higher structural significance, while Weak Swings reflect secondary movements within the trend. Both swing types can be enabled together or independently, allowing traders to reduce noise or analyze full price structure context.
Separate BOS and CHoCH
The indicator allows traders to separately enable or disable the display of BOS (Break of Structure) and CHoCH (Change of Character).
This flexibility is convenient because some traders prefer to focus only on market continuation events (BOS), while others concentrate on potential reversal points (CHoCH). By customizing the display, users can adapt the tool to match their personal trading approach without unnecessary visual clutter.
Swing Point Visualization on the Chart
For better understanding and validation, the indicator provides a clear visualization of Swing Points directly on the chart.
This makes it easy to track how market structure is forming and how BOS and CHoCH points appear in real time. Such visualization helps traders verify the sequence of swing highs and lows, providing additional clarity for structure identification. If the trader finds the display distracting, Swing Point marks can be easily turned off.
With swing points
Without swing points
Alerts & Visual Markers
The indicator includes flexible options for event notifications and visual markers.
Traders can enable or disable alerts depending on whether they require active notifications or only visual confirmation of a structural break. Similarly, on-chart markers can be switched off when the indicator is used as part of a broader analytical framework with multiple tools. This provides full control over the information flow and prevents cluttering the chart or trading workspace.
With visual markers
Without visual markers
Flexible Confirmation Settings for BOS and CHoCH
Traders can fine-tune the logic for confirming BOS and CHoCH by choosing whether to rely on candle closes or high/low levels.
This option accommodates different trading styles: some strategies prioritize candle closes as a conservative confirmation, while others prefer high/low extremes for more sensitive execution timing within their methodology. This adaptability makes the indicator suitable for both aggressive and conservative traders.
Close confirmation
High/Low confirmation
Threshold-Based Validation
The indicator includes the ability to define a threshold for BOS and CHoCH confirmation.
This allows the user to set a minimum breakout distance that must be achieved before a structural event is validated. By adjusting this threshold, traders can filter out minor price fluctuations, refine the detection criteria, and align the indicator’s logic with their specific analytical methodology.
Built-In MFE/MAE Tracker
The indicator includes an MFE/MAE Tracker module that measures how price has moved after each signal — how far it moved in the favorable direction and how far it moved against it, tracked across several configurable holding periods at once.
Results are shown directly on the chart as a dashboard and can be exported to CSV, giving a way to review signal behavior across a large sample rather than relying on visual impression from scrolling the chart. See how the MFE/MAE Tracker is calculated and how to read the dashboard →
Indicator Settings & Parameters
Full parameter reference, grouped by configuration area.
| Parameter | Description |
|---|---|
| Swing Detection | |
| Swing Strength | Defines the number of bars the indicator considers when identifying local highs and lows based on fractal logic. A higher value increases the strictness of the swing definition, as the extreme must be surrounded by more bars with lower highs (for a top) or higher lows (for a bottom). |
| BOS & CHoCH | |
| Enable BOS | Activates the detection of Break of Structure (BOS) on the chart. |
| BOS Confirmation Price Type | Specifies which price type is used to confirm BOS.
|
| Enable CHoCH | Activates the detection of Change of Character (CHoCH) on the chart. |
| CHoCH Confirmation Price Type | Specifies which price type is used to confirm CHoCH.
|
| Threshold | |
| Enable Break Confirmation Threshold | Enables threshold-based confirmation for BOS and CHoCH. A breakout of a swing point is validated only when the price exceeds it by the predefined threshold. |
| Threshold Type | Sets the unit for threshold measurement.
|
| Alerts | |
| Alerts | Configure various types of alerts. |
Plot Outputs for Strategy Builder & Automation
The indicator provides a set of exposed analytical plot outputs designed for structured integration with third-party strategy builders and automation tools such as BloodHound and BlackBird (SharkIndicators), as well as other algorithmic trading environments.
Direction
- Weak Long> 0
- Weak Short> 0
- Strong Long> 0
- Strong Short> 0
Structure Events
- Weak Bullish BoSValue
- Weak Bearish BoSValue
- Weak Bullish CHoCHValue
- Weak Bearish CHoCHValue
- Strong Bullish BoSValue
- Strong Bearish BoSValue
- Strong Bullish CHoCHValue
- Strong Bearish CHoCHValue
Weak Swings
- Weak Swing HHValue
- Weak Swing LHValue
- Weak Swing EHValue
- Weak Swing LLValue
- Weak Swing HLValue
- Weak Swing ELValue
Strong Swings
- Strong Swing HHValue
- Strong Swing LHValue
- Strong Swing EHValue
- Strong Swing LLValue
- Strong Swing HLValue
- Strong Swing ELValue
- Strong Leg High PivotValue
- Strong Leg Low PivotValue
MFE/MAE Tracker
- Long MFE/MAE Period 1Value
- Short MFE/MAE Period 1Value
- Long MFE/MAE Period 2Value
- Short MFE/MAE Period 2Value
- Long MFE/MAE Period 3Value
- Short MFE/MAE Period 3Value
- Long MFE/MAE Period 4Value
- Short MFE/MAE Period 4Value
- Long MFE/MAE OppositeValue
- Short MFE/MAE OppositeValue
Plot output names are technical identifiers intended solely for software integration purposes and do not constitute trading advice, signals, or recommendations.
System Requirements & Installation
What you need to run the indicator, how to download and install it in NinjaTrader 8, and how the license works.
System Requirements
- Platform
- NinjaTrader 8 (Desktop)
- Operating system
- Windows 10 or Windows 11
- Instruments
- Futures, forex, stocks and ETFs supported by NinjaTrader
- Data
- NinjaTrader’s native data connections
Not available on NinjaTrader Web or Mobile. NinjaScript indicators run in NinjaTrader Desktop only.
License Terms
- Lifetime License
- This indicator only, 1 PC, one-time payment, free updates included.
- All-Access Subscription
- All indicators and trade copiers, billed monthly, cancel anytime, updates included while the subscription is active.
- Free trial
- 5 days on the subscription plan. If not cancelled, the subscription starts automatically.
- License binding
- Linked to your email and to the computer on which it was first activated.
- Moving to another computer
- Available on request through support.
Installation
- Get access
Start the free trial, subscribe, or buy a lifetime license on this page.
- Download
The indicator is not sent by email. Open (top right of this page) and enter the email you used for your trial, subscription or purchase. The installation file (.zip) downloads to your computer.
- Import into NinjaTrader 8
In the Control Center, go to
Tools → Import → NinjaScript Add-Onand select the downloaded .zip file. Do not unzip it. - Add to a chart
Open a chart, click Indicators, select the indicator from the list and apply it.
- Activate the license
In the indicator settings, enter the same email. On first activation, the license is linked to that email and to your computer.
Updating: When a new version is released, download it again through and import it the same way over the existing version.
Installation questions? Contact support, Monday to Friday.
"Best Seller" and "Trending" reflect Nordman Algorithms sales and usage data, January–September 2026.
Disclaimer — Software Use & Risk Disclosure
Nordman Algorithms is a trade name of Nordman Algorithms OÜ (Reg. No. 14435535), registered in Tallinn, Estonia.
Software Use
Software Nature & User Responsibility — Nordman Algorithms provides algorithmic software tools for technical analysis. Nordman Algorithms is not a financial advisor and is not liable for any losses. All trades conducted based on the software’s output are executed at the user’s sole discretion and risk.
Visual Markers & Signal Disclosure — This software may display visual markers (such as arrows, dots, or alerts) when predefined mathematical conditions are met. These markers are provided for educational and analytical purposes only, must not be interpreted as financial guidance, and do not constitute a recommendation to buy, sell, or hold any financial instrument. Users must independently validate all visual cues within their own trading methodology.
No Financial Advice — Nordman Algorithms does not provide discretionary trading signals, investment advice, or managed signal services. Our software represents a mathematical visualization of historical and real-time data. The appearance of a visual marker does not guarantee a profitable trade or predict future market behavior.
Read the full Terms of Service →Risk Disclosure
Trading Risk Warning — Futures, Forex, and options trading involve significant risk. Risk capital is money that can be lost without jeopardizing financial security. Only risk capital should be used for trading. Past performance is not indicative of future results. An investor could potentially lose all or more than the initial amount committed.
ESMA Risk Warning — Financial instruments, especially those involving leverage such as CFDs and Forex, are complex and carry a high risk of rapid financial loss. Our software provides analytical outputs and visual markers based on predefined mathematical conditions and does not mitigate or reduce inherent market risks. You should carefully consider whether you understand how leveraged financial instruments work and whether you can afford the high risk of losing your capital.
CFTC Rule 4.41 — Hypothetical or simulated performance results have inherent limitations. Unlike actual performance records, simulated results do not represent real trading. Because trades have not actually been executed, these results may under- or over-compensate for the impact of market factors such as liquidity. Simulated results are also subject to the benefit of hindsight. No representation is being made that any account will achieve profits or losses similar to those shown.
Read the full Risk Disclosure →Trademark Notice — NinjaTrader® is a registered trademark of NinjaTrader Group, LLC. No NinjaTrader company has any affiliation with the owner, developer, or provider of the products or services described herein, or any interest, ownership or otherwise, in any such product or service, or endorses, recommends or approves any such product or service.
Need a different setup?
We can customize this indicator to your workflow, or convert it into a fully automated trading strategy with risk management and trailing-stop logic. Fixed-price quote before development begins.




