Skip to content

Structural Decoder User Guide

BlackChart Suite · Indicator Manual

Structural Decoder

The market's skeleton on one chart: where liquidity rests, which higher-timeframe levels matter, where structure shifts, whether price sits in premium or discount, and which classic chart patterns its swings are drawing. A clean map of context — so you always know where you are before deciding what to do.

Platform TradingView · Pine v6 Works on any symbol · any timeframe Type Overlay · structure map

What it maps

Ten layers of context

Each layer is an independent module you can switch on or off. Together they draw the structural picture of the market.

01

Liquidity Levels

Swing highs & lows where stops rest — fading once price sweeps them.

02

MTF Levels

Previous Day, Week & Month highs and lows (PDH/PDL · PWH/PWL · PMH/PML).

03

Daily & Midnight Opens

The session and midnight opening prices — key intraday references. Off by default.

04

Market Structure

CHoCH & BOS labels marking each close-confirmed, momentum-filtered shift and continuation.

05

Equal Highs / Lows

EQH & EQL — clustered liquidity, a common sweep target. Off by default: switch it on in Equal Highs / Equal Lows.

06

Premium / Discount

The dealing range split at equilibrium (50%) — expensive vs cheap.

07

Session Boxes

Asia, London & New York, plus two opening-range windows — each with its high/low.

08

Floating MTF Candles

Higher-timeframe candles (W · D · 4H) parked beside price.

09

Range Projection

Mark a congestion and project its range — ±deviations and the 50% equilibrium. Cause & Effect.

10

Chart Patterns

Head and shoulders, double and triple tops and bottoms, cups, triangles, flags — drawn on their own swings, then marked ✓ when structure breaks their line, or ✕ when price takes their invalidation level first.

Structural Decoder on a Nasdaq futures 1-hour chart with liquidity levels, CHoCH and BOS, premium and discount, a double bottom confirmed by structure and the dashboard, every element annotated.
The full map. Nasdaq 100 futures (NQ1!), 1-hour chart, bar replay stopped at 01:00 on 23 September 2026 (chart time, UTC+2), with Liquidity Levels, CHoCH / BOS, Premium / Discount and Chart Patterns (label size Normal) on, previous day levels and session boxes off. Premium / Discount: the current swing range, from the swing low before the change of character (below the chart) to the last break of structure, split by the dashed EQ 50% line — premium above, discount below. CHoCH, then BOS: the change of character at 10:00 on 17 September turns the trend up, and the BOS labels that follow continue it. Double Bottom (2B) ✓: two lows at 03:00 and 18:00 on 18 September; the ✓ sits on the first candle of the new week, 00:00 on 21 September, where a BOS closes above the double bottom's breakout line, the high between the two lows. The PATTERN row of the dashboard reads 2B CONFIRMED. Liquidity Levels: the active swing-low levels below price, not swept yet, including the two at the lows of the double bottom.The faint lines are levels already swept (the red ones are swing highs), and LIQ ▲ shows “—” because no swing-high level is active above price. The rise that followed the ✓ is a hindsight example, not a forecast.

Quick start

Up and running in three steps

Add it to the chart

Open it from your indicator list in TradingView and apply it. It draws as an overlay on price.

Turn off what you don't need

It opens clean — a few essential layers on, the rest one toggle away. In the settings each module has its own on/off switch; keep the layers that fit how you trade.

Read the dashboard

Top-right panel gives you the structural trend and your distance to the key levels at a glance — the fastest orientation on the chart.

Reading the chart

Every mark, decoded

Here's what each layer looks like and what it's telling you.

Liquidity levels

Solid lines at swing highs (red) and lows (green) — where resting orders sit. A line appears a few candles after its swing, once the swing is confirmed by closed candles. When a candle's wick goes through a level, at that candle's close the line stops there and fades: that liquidity has been taken. To delete swept lines instead, keep Mitigated Display ticked and set the menu beside it to Remove — unticking the box does not hide them. Liquidity Display Limit counts the untouched lines on each side; faded lines are not counted, and untouched levels that grow very old are removed.

PDH
D-OPEN
PDL

MTF levels & opens

Dotted lines for previous Day / Week / Month highs and lows (only Day is on by default). Dashed lines for the opens — gold for the Daily open, dark grey for the Midnight open — both off by default. Only the current levels are drawn. The Daily Open is taken at the first candle from the Session Start Hour (18:00 New York by default, as on CME futures): on markets closed at that hour, such as most stocks, set the hour of their open or it will not appear. The reference points higher-timeframe traders watch.

CHoCHBOSCHoCHBOS

Market structure — CHoCH / BOS

CHoCH (Change of Character) flags the first shift against the current structure; BOS (Break of Structure) marks continuation in the same direction. Green = up, red = down. A label is placed at the close of the breaking candle, and only when the break has enough momentum and is not too close to the previous one; weaker breaks get no label and do not change the trend. Off by default: switch the labels on in SMC - Market Structure (the trend in the panel works with the labels off).

EQH
EQL

Equal Highs / Lows

Gold EQH / EQL mark two highs (or lows) at nearly the same price, with no trade beyond the first in between (on a long gap only the candles closest to the second are checked) — pooled liquidity that price may come back to sweep. Off by default: switch it on in Equal Highs / Equal Lows.

EQ 50%

Premium / Discount

The current dealing range, split at the 50% equilibrium. Above EQ = premium (expensive); below = discount (cheap). Frames where price is relative to its own range. It is an equilibrium reference: in a strong trend the range re-extends on each BOS and the equilibrium keeps moving — read it as “where price sits in the range”, not as a standalone reversal signal. It appears after the first CHoCH and shows only the current range, from the CHoCH candle to just past the last candle. Off by default: switch it on in Premium / Discount.

+1x
CAUSE H
EQ 50%
CAUSE L
-1x

Range Projection — Cause & Effect

It measures a range's high/low (the Cause) and projects whole multiples of its height — +1x and -1x, +2x and -2x by default — plus the 50% equilibrium (the Effect): a measured-move frame read as Wyckoff's Cause and Effect, a heuristic and not a target. In Auto (weekly) the range starts at the open of the instrument's trading week; in Manual (drag) you mark the start and end by dragging the anchors on the chart. Off by default; for a genuine read, anchor it on a real congestion, not an impulse.

NY HNY L

Session boxes

Translucent boxes for Asia, London and New York, plus two opening-range windows (gold, off by default) for the first minutes of the European and US opens — from 09:00 and 15:30 in the session Time Zone, Europe/Rome by default (on a 15-minute chart the window takes two candles). Each box tracks its own high and low; the H / L labels appear when the session ends. Times follow the chosen Time Zone: in the weeks when Europe and the US change clocks on different dates, the New York boxes sit one hour late. Not drawn on daily and higher timeframes. Opening-range boxes read best on low timeframes.

W
D

Floating MTF candles

The live Weekly / Daily / 4H candles parked to the right of price. Higher-timeframe bias without leaving your chart's timeframe. Each candle is labelled with its timeframe as set (W, D, 240). Off by default: switch them on in Floating MTF Candles (Enable MTF Candles).

H&S✓2B✕

Chart patterns

Classic figures drawn as a thick outline on their own wave swings, one colour per family, with a short code (H&S, 2B, 3T, F+…) — hover it for the full name. The dashed line is the breakout line (neckline or boundary). A ✓ marks the candle where a close-confirmed, momentum-filtered break of structure (CHoCH or BOS) closes beyond that line in the pattern's direction; a ✕ marks the candle where price takes the pattern's invalidation level first. If either happened while the last swing was still being confirmed, the mark sits on the candle where the pattern appears (its tooltip says how many candles earlier). A pattern appears only when its last swing is confirmed, a few candles after it; one that gets neither mark within a span as long as the pattern itself stays unmarked (EXPIRED in the panel). With Allow overlapping patterns off (the default) patterns never overlap — except that a head and shoulders or a triple is drawn even around a weaker pattern, as long as it does not overlap another head and shoulders or triple. Off by default: switch it on in Chart Patterns.

Liquidity levels on a Nasdaq futures 5-minute chart, with an equal-lows pool swept in three numbered steps.
Liquidity levels and an equal-lows sweep. Nasdaq futures (NQ1!), 5-minute chart, live on 23 October 2026 (chart time, UTC+2), with Liquidity Levels and Equal Highs / Lows on, previous day levels and session boxes off. Equal Lows (EQL) Swept, step by step: (1) a first swing low — its liquidity level starts here (04:05); (2) a second swing low at the same price with no sweep in between: EQL (12:00); (3) a closed candle wicks below both and closes back above: both levels are swept, their lines stop and fade (12:50). Active Liquidity Levels: not swept yet, so they extend to the right.The other EQH and EQL labels, with the dotted line between their two swings, mark other equal pairs; the faint lines are levels swept earlier.
Previous day and week levels, daily and midnight opens, session boxes and floating weekly, daily and 4-hour candles on a Nasdaq futures 15-minute chart.
Previous-period levels, opens, sessions and floating candles. Nasdaq futures (NQ1!), 15-minute chart, live on 23 October 2026, with the previous day and week levels, the Daily and Midnight Opens, the three default session boxes and the floating higher-timeframe candles on, Liquidity Levels off. Previous Day / Week Levels: PDH, PWL and PDL; the previous week high is far above, off the chart — the dashboard gives its distance. Daily & Midnight Opens: D-OPEN, the open of the trading day (from 18:00 New York by default), with the Midnight Open — the calendar day in New York — just above. Session Boxes: Asia, London and New York, each with its high and low. Floating HTF Candles: weekly, daily and 4-hour, still in progress — they change until the higher-timeframe candle closes.
A change of character followed by three breaks of structure, with the premium and discount range, on a gold futures 15-minute chart.
Market structure and premium / discount. Gold futures (GC1!), 15-minute chart, bar replay stopped at 01:45 on 13 October 2026 (chart time, UTC+2), with CHoCH / BOS and Premium / Discount on, Liquidity Levels off; the view ends at about 19:30 on 12 October. Change of Character (CHoCH): the 08:15 candle on 12 October closes below the last swing low while the trend is up. Break of Structure (BOS): the three later breaks in the same direction, at 10:00, 11:30 and 14:15 — the downtrend continues. Premium / Discount: the swing range from the CHoCH, split at EQ 50%, from the swing high at 03:00 down to the lowest point after the last BOS. Dashboard Trend: BEARISH, following the breaks of structure.The two green BOS labels on the left are the bullish breaks of the uptrend before the change of character; their ranges are not drawn, because only the current one is kept.
Range Projection in Auto on a gold futures 1-hour chart: this week's range with its 50% equilibrium and the +1x and -1x projections.
Range Projection — Cause & Effect. Gold futures (GC1!), 1-hour chart, live on Friday 23 October 2026, with only Range Projection on, in Auto (the current week) with two projections. Cause: This Week's Range: CAUSE H / CAUSE L, the high and low since the weekly open, with the EQ 50% line in the middle. Effect: +1x / -1x Projections: whole multiples of the range height — a heuristic, not a target.The +2x and -2x projections are drawn too, outside the visible price range.
i

How to read the patterns. A pattern describes the shape the swings have drawn — it is a reading, not a signal. The ✓ says that structure has broken the pattern's line in its direction; it does not say how far price will travel. On gold, S&P 500 and Nasdaq futures (hourly bars 2023–2026, 5-minute bars June–September 2026, every figure on), after a ✓ price reached a move equal to the pattern's height before returning to its opposite extreme about as often as it did from random candles over the same distances — about half the time in both cases, and slightly less often for head and shoulders: use the patterns to read the shape of the market, together with the levels and the structure, not as a reason on their own. To see fewer, cleaner patterns, set Pattern precision to Strict or lower the Double / triple tolerance (% of height).

A head and shoulders confirmed by a break of structure below its neckline, on a Nasdaq futures 15-minute chart.
Chart patterns, confirmed by structure. Nasdaq 100 futures (NQ1!), 15-minute chart, bar replay stopped at 01:45 on 15 October 2026 (chart time, UTC+2), with Chart Patterns (default patterns, label size Normal) and CHoCH / BOS on; the PATTERN row of the dashboard reads H&S CONFIRMED. Head and Shoulders (H&S): shoulders at 00:30 and 10:15, head at 05:15 on 14 October; the dashed line is the neckline, its breakout line. Confirmed by Structure ✓: the 14:30 candle closes below the neckline with a bearish BOS; the CHoCH a few candles earlier had already turned the trend down, but it did not close below the neckline. After the ✓: price kept falling, and the BOS labels that follow mark the continuation — a hindsight example, not a forecast.The green CHoCH and BOS on the left are bullish breaks on the way up to the head, before the trend turned down.
An inverse head and shoulders invalidated when price takes the head's low before any break above the neckline, on a Nasdaq futures 15-minute chart.
The opposite case: invalidated. The same chart and settings, bar replay stopped at 22:45 on 16 October 2026; the PATTERN row reads iH&S INVALIDATED. Inverse Head and Shoulders (iH&S): shoulders at 22:45 on 15 October and 08:30 on 16 October, head at 02:15 on 16 October; its head is the invalidation level, and the dashed line is the neckline. Invalidated ✕: the 15:30 candle trades below the head's low before any break above the neckline. After the ✕: price fell instead of rising — a hindsight example, not a forecast.The red CHoCH on the left, on the way down to the head, is a bearish break while the pattern was forming. The green CHoCH at the top of the pattern falls on the candle of the neckline's second high, before the right shoulder: only breaks after the pattern's last swing point count, and it closed below that high anyway, so it gave no ✓. The red CHoCH and BOS on the right are the bearish breaks that followed.
i

What the chart does on its own. Liquidity lines, EQH / EQL and the pattern swings appear a few candles after the high or low that forms them, once the swing is confirmed. Sweeps, CHoCH / BOS, ✓ and ✕ are decided at the close of the candle: on the candle still forming no line fades and no CHoCH / BOS, ✓ or ✕ appears yet. The previous-period levels, the opens, the Premium / Discount zone, the Range Projection and the floating candles show only their current state, redrawn on the last candle — scroll back and you will not find past ones. Only the most recent CHoCH / BOS labels, EQH / EQL marks, session boxes and patterns are kept; older ones are removed as new ones arrive. An EQH / EQL stays on the chart after the level is swept.

The dashboard

Your orientation panel

The Chrome-terminal panel (top-right by default) is the quickest read on the chart. It shows:

Trend

BULL · BEAR · FLAT

The structural trend set by the last CHoCH/BOS; a change shows only once it has held for a few candles, to avoid flip-flopping. FLAT (NO TREND) appears only until the first break of structure on the loaded history: it is not a ranging signal.

SENS

Active sensitivity

The Structure Sensitivity level in use — Scalping · Day Trading · Intraday · Swing · Position (or Auto→level adapted to the timeframe).

Levels

Distance %

How far price sits from each MTF level and open you have switched on — PDH/PDL by default; weekly, monthly and the opens add a row when enabled — as a live percentage. The percentage has no sign: it says how far, not on which side.

Pattern

Last pattern & state

The last pattern drawn and where it stands: PENDING · CONFIRMED · INVALIDATED · EXPIRED (NONE YET until the first pattern). Shown only while Chart Patterns is on.

Liquidity

LIQ ▲ / ▼

Distance to the nearest un-swept high line (▲) and low line (▼), among those drawn on the chart. Shows — with Liquidity Levels off; a lower Liquidity Display Limit can change it.

Volatility

ATR (14) · ATR ÷ DAY

The average true range in price, and the same ATR as a percentage of its own average over as many candles as make up 24 hours on the chart's timeframe (on markets that do not trade around the clock this spans more than one session): green OK at a normal level of activity, red LOW when the market has become clearly quieter than usual, where moves and patterns come out smaller. ATR ÷ DAY shows — on daily and higher timeframes and on non-time charts (Renko, Kagi, Point & Figure, Line Break, Range).

i

Position and size are configurable (Dashboard Settings). It starts at Small; pick Medium or Large for bigger text — or turn it off entirely.

Structural Decoder with its default settings on a Nasdaq futures 15-minute chart: liquidity levels, previous day low, session boxes and dashboard.
The default view. Nasdaq futures (NQ1!), 15-minute chart, live on 23 October 2026, with the indicator just added and no setting changed. Liquidity Levels: unswept swing highs and lows; swept ones fade. Previous Day Low (PDL): the previous day high is far above — the dashboard gives its distance in the PDH / PDL rows. Session Boxes: Asia, London and New York, today only. Dashboard: trend, sensitivity, distances and volatility.

The settings panel

Configuring each module

Open the gear icon. Settings are grouped by module — turn a layer on/off with its own switch, then fine-tune. Sensible starting points below.

i

Changed too many settings, or is the indicator behaving oddly? No problem: open the indicator's Settings (Inputs) and click Reset settings — the button at the bottom-left of the dialog — to return everything to the correct defaults.

GroupWhat it controlsStart with
Liquidity LevelsShow the liquidity levels. High in red, Low in green. The related controls sit in the three groups that follow: Sweep / Mitigation (swept levels fade; tick Mitigated Display and choose Remove to delete them), Display (how many untouched levels to keep on each side) and Liquidity Style (colour, width, style).defaults
Structure SensitivityA single preset setting how reactive structure & liquidity detection is: Scalping · Day Trading · Intraday · Swing · Position · Auto (≤5m Scalping · ≤15m Day Trading · ≤1h Intraday · ≤1D Swing · above Position). Scalping = most reactive; Position = smoothest.Day Trading
MTF Highs/LowsToggle Daily / Weekly / Monthly previous highs & lows, with per-level colour, width and style. Daily green, Weekly blue, Monthly violet.Daily on
Daily & Midnight OpensShow the opens, set the daily-reset hour and timezone (default 18:00 = CME Globex; forex 17:00).defaults
SMC - Market StructureCHoCH/BOS labels and their colours (bullish / bearish).defaults
Equal Highs / Equal LowsShow EQH/EQL and their colour.defaults
Premium / DiscountShow the zone (the dealing range split at the 50% equilibrium) and the premium, discount and equilibrium colours.off
Range Projection (Cause & Effect)Range Anchor: Auto (weekly) anchors the range to the open of the instrument's trading week, or Manual (drag) to mark it by dragging the anchors on the chart. Plus deviations (±N), 50% equilibrium toggle and colours.off · Auto
Session BoxesFive sessions — the three main sessions (on) plus two opening-range windows (off by default). Each with its own on/off, time window, colour and name. Timezone, H/L labels, Max Days Back (0 = all) (days of history to show) and Hide Above TF (minutes, 0 = never) (hide above a timeframe, in minutes).1 day · H2
Floating MTF CandlesUp to three higher-timeframe candles, their timeframes, spacing and distance from price.off · W · D · 4H
Dashboard SettingsShow the panel, its position and size (Small / Medium / Large), and the two ATR rows: ATR (14) and ATR ÷ DAY.Small · ATR on
Chart PatternsClassic chart patterns, drawn on their own wave swings (the swing size follows Structure Sensitivity). Allow overlapping patterns: off = one pattern at a time, except that a head and shoulders or a triple is drawn even around a weaker pattern, unless it overlaps another head and shoulders or triple. Plus the breakout line, the ✓ / ✕ marks, grey-out against the trend, how many to keep, line width and label size.off
Chart Patterns — FiguresOne switch per figure, bullish and bearish side by side: head and shoulders, double and triple tops and bottoms, cup and handle, symmetrical, ascending and descending triangles, rectangles, rising and falling wedges, flags and pennants. Double / triple tolerance (% of height): how level the tops (or bottoms) must be, as a percentage of the pattern height. Pattern precision: Strict · Standard · Loose — how clean the shapes must be: flat lines, shoulders and neckline, cup rims and flag channel. It leaves the double / triple tolerance as set, except that Strict puts a ceiling on it. Not every figure starts on: double top, inverse cup, ascending, descending and bullish symmetrical triangles, rectangles, wedges and the bearish pennant are off.10 · Standard
Chart Patterns — ColoursOne colour per family — head and shoulders, double / triple, cup, triangle, rectangle, wedge, flag / pennant — plus the grey used against the trend.defaults
i

Cleaner session boxes. Two controls in the Session Boxes group keep the chart tidy. Max Days Back (0 = all) limits how many days of boxes and labels stay on screen — 1 = current day only, 0 = no limit by days (on long histories the oldest boxes and labels are still removed). Hide Above TF (minutes, 0 = never) auto-hides boxes and labels (ASIA/LDN/NY H-L) above a chosen timeframe — default 120 minutes (H2), so on H4 and above the chart stays clean without disabling the indicator. Session boxes are never drawn on daily and higher timeframes, even with Hide Above TF at 0.

!

Range Projection in Auto: early in the week you may see little — that's normal. In Auto (weekly) the range starts at the open of the instrument's trading week, in the exchange's timezone and not yours — Monday morning on stocks, Sunday evening on forex and futures, Monday 00:00 UTC on crypto — and restarts on its own every new week: right after it opens the week has moved little, so the zone is small until the week develops — on high timeframes (H4, Daily) it also spans only a few candles. Two ways to read it better: (1) drop to a lower timeframe (e.g. from Daily/H4 to H1/M15) — the week's range is the same on every timeframe, but it is spread over many more candles and the price scale zooms in on it; or (2) switch to Manual (drag) and drag the anchor back to a real congestion. ⚠ Dragging counts only in Manual (drag): in Auto the handle stays visible and draggable — TradingView draws it, not the indicator — but the value is ignored and the anchor does not move. In Manual (drag) the anchors start on a fixed past date: set them on your congestion before reading the levels.

Putting it together

A reading workflow

One repeatable way to use the map. It tells you what to look at, in order — not what to trade.

Fix your bias

Glance at the dashboard trend and, if you have switched them on, the floating higher-timeframe candles. Is structure up or down, and do the higher timeframes agree?

Locate the range

Which MTF levels and opens sit just above and below? With Premium / Discount on: is price in premium or discount?

Mark the liquidity

Where are the nearest un-swept liquidity lines and any EQH / EQL pools? Those are the nearest references.

Wait for structure to confirm

A CHoCH after a sweep signals a possible shift; a BOS confirms continuation. If a pattern is on the chart, a ✓ says structure has broken its line in its direction, a ✕ that price took its invalidation level first; no mark means neither has happened yet, or the pattern expired. Let the map agree before you act.

get started

Align your execution with market reality

Access a professional toolset built on Wyckoff logic, volume, and liquidity. No automation. No simplification. Only structure.