← All indicators
Free Market-Structure Indicator

SteelyStructure

NinjaTrader 8 Indicator  ·  Free License · Close-Confirmed Swings, CHoCH & BOS  ·  Built on the SteelyKerze Structure Engine

SteelyStructure is a free NinjaTrader 8 indicator that marks market structure on the chart: each confirmed swing labeled HH, HL, LH or LL, change-of-character (CHoCH) and break-of-structure (BOS) on the bar whose close confirms them, and a shaded no-edge zone while a reversal is still unresolved. A compact HUD shows the current trend, the protected level and the latest structure events. It runs the structure engine from SteelyKerze, without Kerze's candle setups and their trigger, invalidation and projection lines.

Free license License key and download at whop.com/steelysystems within minutes License terms One-page guide (PDF)

Free LicenseHH · HL · LH · LLCHoCH & BOSNo-Edge ZonesCompact HUD
SteelyStructure · NinjaTrader 8
SteelyStructure chart screenshotClick to enlarge
FreeFree license
Free toolsSwings, CHoCH & BOS
NT8NinjaTrader 8 indicator
WhopKey + download within minutes
On the Chart

What You See

Every mark traces back to a close-based rule. Wick-only moves do not meet the close condition; confirmation rules determine when a label appears.

Swing Labels

Each confirmed two-bar swing is labeled HH, HL, LH or LL against the previous swing of the same type (the first one is H or L) — highs in khaki, lows in light blue.

CHoCH Lines & Labels

When a close breaks the protected level, a line marks that level from its swing to the CHoCH bar, with a CHoCH▲ or CHoCH▼ label.

BOS Markers

BOS▲ or BOS▼ on the bar whose close breaks the last HH or LL.

Reversal Steps

①LH / ①HL for step 2 of a reversal, ②REV▲ / ②REV▼ when it confirms, and REV✘ when it fails and the old trend resumes.

No-Edge Zone

A low-opacity box over the unresolved range — from the CHoCH bar to the current bar while a reversal is pending, or between the latest swing high and low before the first trend is set.

Compact HUD

A draggable panel with Trend, Last CHoCH, Last BOS and Last Rev (direction and time), the Protected level and the No-Edge status. Six anchor presets, a remembered drag position and adjustable opacity.

CHoCH Screen Flash

In real time, the chart flashes green on a bullish CHoCH and red on a bearish one. Never on historical bars, and it can be turned off.

Click-Through Marks

Clicks and right-clicks pass through everything the indicator draws, so right-click always opens the chart menu. A setting restores NinjaTrader's standard click-to-select.

GPU Rendering

Marks are drawn with Direct2D by default, keeping the most recent 500 labels and markers and 200 CHoCH lines. With GPU Render off, they are standard NinjaTrader drawing objects instead.

Chart Example

SteelyStructure On the Chart

NinjaTrader 8 chart example: swing labels, BOS markers and the HUD.

SteelyStructure chart screenshotClick to enlarge
Reading the Tool

Confirmed, Not Predicted

Each label is placed only after its rule is met, on the bar the rule applies to.

Keep in mind: A swing label sits on the swing bar itself, but it appears only once the swing confirms two bars later. With the default bar-close calculation, CHoCH, BOS and reversal markers appear when the bar that confirms them closes. A historical label should not be mistaken for something that was visible before its confirmation.

What It Does

What It Does

Market structure is the sequence of swing highs and lows that shows which way a market is leaning. The hard part is deciding, the same way every time, what actually counts as a break.

SteelyStructure answers that with one rule: the bar's close. A wick through a prior swing is not a break. Only when a bar closes beyond the protected level does the structure state change — first into a transition, then, if the move follows through, into a confirmed reversal. If price closes back beyond the old extreme instead, the reversal is cancelled.

The trend state, the protected level and the latest CHoCH, BOS and reversal are drawn on the chart and mirrored in a draggable HUD. It is the structure layer of SteelyKerze, offered free on its own.

Important Notice: SteelyStructure is educational and informational decision-support software only. Its structure states, labels and HUD readings are analytical aids that describe price behavior under a fixed rule set; they are not financial advice, trading recommendations, or a solicitation to buy or sell any instrument. Whether, when, and how to act on any structure read is solely the user's decision. Past behavior of any analytical method is not indicative of future results.

The Structure Map

Every Swing, Named

SteelyStructure puts the language of market structure directly on the bars, so the trend, its pullbacks and its turning points read the same way every time you look.

LabelWhat it marks on the chart
H / L — First SwingThe first confirmed swing high or low, before there is an earlier swing of the same type to compare it with.
HH — Higher HighA confirmed swing high above the previous swing high.
HL — Higher LowA confirmed swing low above the previous swing low. In an uptrend, the pullback low the trend is defending is the protected level.
LH — Lower HighA confirmed swing high at or below the previous swing high. In a downtrend, the pullback high the trend is defending is the protected level.
LL — Lower LowA confirmed swing low at or below the previous swing low.
CHoCH — Change of CharacterA bar closes past the protected level — the first sign the trend may be turning. A line marks the broken level, with a CHoCH▲ or CHoCH▼ label on the bar.
BOS — Break of StructureA bar closes beyond the last HH (uptrend) or LL (downtrend) — the trend continuing. The pullback swing in between becomes the new protected level.

A swing must be a strict extreme against the two bars on each side, so it confirms two bars after it prints. Every break is judged on the close — a wick through a level doesn't count.

Structure Engine

A State Machine, Not Just Swing Labels

SteelyStructure tracks one structural state at a time and moves between states only when a close confirms the move. A pending reversal is shown as a no-edge zone until it is confirmed or cancelled.

StateMeaning
HorizontalNo trend yet. The first close beyond the latest confirmed swing high or low sets the trend and marks a BOS. Until then, while price closes between those two swings, that range is shaded as a no-edge zone.
BullishHigher-low structure. The pullback low (HL) is the protected level; a close above the last HH is a BOS.
BearishLower-high structure. The pullback high (LH) is the protected level; a close below the last LL is a BOS.
Reversing (CHoCH)Step 1. A close past the protected level fires a CHoCH. The HUD shows REVERSING and the window from the CHoCH bar is shaded as a no-edge zone.
Step 2 — ①LH / ①HLAfter the CHoCH leg's low (high), a swing forms against the new direction without reaching the old trend's extreme. It is marked ①LH or ①HL.
Confirmed Reversal — ②REVStep 3. A close beyond the CHoCH leg's extreme flips the trend, marked ②REV▲ or ②REV▼. The step-2 swing becomes the new protected level.
Failed Reversal — REV✘A close back beyond the old trend's last high (low) cancels the reversal. The old trend resumes, marked REV✘.

Require Full Reversal is on by default. Turn it off and the trend flips on the CHoCH alone, with no reversal steps and no no-edge zone after a CHoCH. Either way, every move is fixed to the close.

Structure vs Kerze

Why Some Traders Add SteelyKerze

SteelyStructure is the structure engine from SteelyKerze with Kerze's candle-setup layer removed. If the structure map is what you want, Structure covers it. SteelyKerze draws its candle setups on top of the same kind of map.

SteelyStructure · Free

  • Confirmed swings: HH · HL · LH · LL
  • CHoCH, BOS and the three-step reversal
  • No-edge zone shading
  • HUD and CHoCH screen flash

SteelyKerze adds

  • Kerze candle setups — a near-wickless rejection candle (within half a tick), read only in line with a confirmed trend.
  • Trigger, invalidation and projection reference lines for each setup, with Tap Window, Min Invalidation Distance, Invalidation Buffer and Projection Ratio settings.
  • News blocker — suppresses setups within a set window around scheduled release times you list.
  • Signal-bar highlight and separate on/off settings for CHoCH marks and setup marks.

SteelyKerze is sold on its own ($159) and is part of the Complete Suite. See SteelyKerze →

Use Cases

How Traders Use It

Built for the trader who wants one consistent definition of structure to anchor everything else on the chart.

A Free Structure Map

HH, HL, LH and LL on confirmed swings, with CHoCH and BOS at the turns — one consistent structure read on any chart you load it on.

See the Transition

A CHoCH moves the chart into a shaded no-edge zone and the HUD reads REVERSING, so a pending reversal is visible as pending — not yet confirmed.

Context Under Other Tools

The trend state and protected level give a visual context layer underneath setups, levels and momentum tools elsewhere in the workspace.

Technical Specifications

Indicator Specs

Settings

Structure
Require Full Reversal (on by default)
Display
Swing labels · structure markers · no-edge zone (each on/off)
HUD
Show HUD · 6 anchor presets + Custom · opacity 0.1–1.0
Colors
Bull structure · Bear structure · No-edge zone
Alerts
Flash Screen on CHoCH (real time only)
Rendering
GPU Render (on) · Select by clicking chart (off)

Engine & Output

Swing Detection
Strict 2-bar extreme · confirms 2 bars later
Structure Basis
Bar close (wicks don't count)
States
Horizontal · Bullish · Bearish · Reversing (NO EDGE)
Chart Marks
Swing labels · CHoCH lines · BOS / REV markers · No-edge zone box
HUD Rows
Trend · CHoCH · BOS · Rev · Protected · No-Edge
Calculation
On bar close (default)
Platform
NinjaTrader 8 (live or sim data)

Requirements

Platform
NinjaTrader 8 · version 8.1.x · Windows
Market Data
A live or sim market data connection in NinjaTrader 8.
Companion Tools
None required — runs standalone
License
Free · per user, personal trading use · License terms

Delivery

Price
Free — no purchase
Availability
Available now · Get it free
License Key
Free license through Whop · key at whop.com/steelysystems
Install
Tools → Import NinjaScript Add-On
Updates
Compatibility patches included with the license
Support
Email install support · [email protected]
Refund
Free — nothing to refund

Important Notice: SteelyStructure is an educational and informational charting tool. Its structure states, labels and HUD readings are analytical in nature — they describe price behavior under a fixed, mechanical rule set and do not constitute financial advice, trading recommendations, or a solicitation to buy or sell any instrument. All trading decisions are made solely by the user. Past performance of any analytical method is not indicative of future results. Educational and informational only; not a recommendation to buy or sell.

FAQ

Common Questions

What do I need to run SteelyStructure?

NinjaTrader 8, version 8.1.x, on Windows. A live or sim market data connection in NinjaTrader 8. No other SteelySystems indicator is required — it runs standalone.

Is SteelyStructure really free?

Yes. It comes with a free license and key, delivered through Whop — there is nothing to buy. It is also included in the Complete Suite ($1,800, all 12 paid indicators plus the free SteelyNewsPanel and SteelyStructure — $2,362 bought one at a time).

How do I get it?

Claim the free license through Whop: get it free. Your license key and the download then appear at whop.com/steelysystems, normally within minutes.

How is it delivered and installed?

You claim the free license through Whop; your license key and the download appear at whop.com/steelysystems, normally within minutes. Import the file in NinjaTrader 8 via Tools → Import NinjaScript Add-On, enter the key, and add the indicator to a chart. Email install support is included.

When does a label or marker appear on the chart?

A swing label sits on the swing bar but appears only after the swing confirms, two bars later. With the default bar-close calculation, CHoCH, BOS and reversal markers appear when the bar that confirms them closes. Labels and markers are not moved once drawn. With GPU Render on, the most recent 500 labels and markers are kept, so the oldest ones disappear when you scroll far back.

How is it different from SteelyKerze?

SteelyStructure is the structure engine from SteelyKerze on its own. Kerze adds its Kerze candle setups — a near-wickless rejection candle read in line with the confirmed trend — with trigger, invalidation and projection reference lines, a news blocker and a signal-bar highlight. Kerze is sold on its own ($159) and is in the Complete Suite. See SteelyKerze.

Is there anything to refund?

No. SteelyStructure is free, so there is no payment to refund. Use of the indicator is covered by the License Agreement.

Does SteelyStructure tell me when to trade?

No. Every label, marker, zone and HUD reading is an analytical aid, not a trade instruction. The indicator organizes context; the decision, the risk and the outcome are yours. Read the full disclosure before use.

Do you use AI?

Yes, heavily, and on purpose. We use leading AI models and our own custom AI tooling in modeling, analysis and development, including the research behind the DI Briefs and Helix. AI doesn't generate trade signals and doesn't place trades. The indicators run rules we designed and can show on your chart. Everything is tested in simulation and in our own trading before it ships.

Get Started

Structure, Free on Your Chart

SteelyStructure reads market structure through one rule — the bar's close — and walks each leg through a visible state machine of break-of-structure, change-of-character and confirmed reversal. One consistent definition of a break, on the chart and in the HUD, at no cost.

Free license License key and download at whop.com/steelysystems within minutes License terms One-page guide (PDF)