STRATA is a multi-timeframe ICT / SMC confluence engine for TradingView. It finds order blocks, fair value gaps, breakers, rejection blocks, session highs and lows, daily fib and previous day/week levels from M15 to Weekly, turns each one into a single price you can trade against (MT, CE, near edge), and fades out anything the higher timeframes don't back up. Lite shows you where things line up: OB and FVG across M15, H1 and H4, for free. Full is what you trade from — every level type in the pool, plus rejection blocks that print a defined entry price right on the chart.
7-day trial for $1 on STRATA Full · cancel anytime · Lite stays free forever · view Full on TradingView →
Save 30% on your first month with code LAUNCH30
Every order block and fair value gap gets checked against the higher-timeframe pool. Whatever doesn't line up fades; what stays bright is a spot the timeframes agree on — a price you can act on, not a fuzzy zone, with your stop sitting just beyond it. Full takes it from there and walks the rest of the top-down read with you, from the first higher-timeframe glance down to an entry price on the chart. Seven days of the full build for $1.
Plotted as prices, not boxes: the mean threshold (MT) and the near edge. Blocks whose breakout left an FVG are tagged DOB — displacement — and a switch hides everything that lacks it.
Three-candle imbalances, drawn at the near edge and the consequent encroachment (CE) — the gap's 50% level, same math as an order block's MT.
Rejection blocks flag the wicks price refused, with the wick's CE as the level to lean on — and STRATA prints a defined entry price right there, refined by an optional OTE Fibonacci on the rejection wick. The full model runs on M15; H1 / H4 / Daily / Weekly add MT-only rejection blocks that form off a same-or-higher-timeframe block or gap. You pick how they're detected — PDA rejection, a strict three-bar swing fractal, or both — and your M15 entries feed the confluence pool, so a higher-timeframe level with a rejection entry sitting on it stays bright. The point is you get a price to act on and a level to set your risk against, not "somewhere in the zone".
Order blocks that failed. Once price breaks fully through, demand flips to resistance and supply to support — tracked on M15 by default, H1 through Weekly optional. Continuation levels for when a level you were watching gives way.
Each order block and FVG is measured against every higher-timeframe block and gap in the pool. If it's within the distance you set of a higher level, it stays bright; if not, it fades. The distance takes decimals, so it works on indices and Forex alike — and what's left lit up are the prices two timeframes actually agree on.
A ⭐ marks a level price hasn't come back to yet, on M15 and HTF alike; it drops the first time price genuinely returns to it. HTF detection runs on confirmed closes, so nothing repaints on you after the fact. And how a level gets retired is your call: a wick touch, a body-close through the far edge (default), or the stricter CE body-close, where one confirmed close through the midpoint is enough.
Daily and Weekly join M15 / H1 / H4, so confluence is measured against the full top-down context rather than the intraday slice alone.
Lite anchors confluence to M15. Full can drop the anchor entirely: any level checks against any other, regardless of type. An H4 order block against a Daily FVG, a breaker against a session low — with a minimum cluster size you set, only the spots where levels genuinely stack stay bright.
Asia and London with configurable times, plus an optional custom range; session highs and lows plotted as levels. Add NDOG / NWOG, previous day and week highs/lows, and LVNs from a per-day 1-minute volume profile. All of it counts in the confluence pool.
A separate "dim when not confluent" switch per level type: HTF OB/FVG, breakers, M15 and HTF rejection blocks, wick CE, sessions, fib, opening gaps, previous day/week, LVN. You decide what fades without confluence and what stays bright no matter what.
Premium, discount and equilibrium over the current day's high-to-low range. Whether a level sits in premium or discount is read straight off the chart, not estimated.
An H4-led read of the delivery, H1 as fallback, shown as a label and optional context box. Display-only by design: it frames the session, it never moves, gates or dims a level.
One alert, on purpose: it fires once when a new M15 rejection-block setup forms, and you can hold it to your session window and timezone. The chart calls you; there's no signal feed to babysit.
Lite shows you where the levels agree: OB and FVG across M15, H1 and H4, free. Full turns that agreement into a real entry and checks it against the whole level pool, not just OB and FVG.
| Feature | Lite (free) | Full |
|---|---|---|
| Order Blocks (+MT, DOB) | ✓ | ✓ |
| Fair Value Gaps (+C.E.) | ✓ | ✓ |
| Freshness ⭐ + mitigation | ✓ | ✓ |
| Mitigation trigger | Body-close | Wick · Body-close · CE body-close |
| Non-repainting HTF | ✓ | ✓ |
| Timeframes | M15 · H1 · H4 | + D · W |
| Confluence filter | M15-anchored | Any-layering |
| Rejection blocks | — | ✓ |
| Printed entry prices (KTBT) | — | ✓ |
| RB detection basis | — | PDA · swing fractal · both |
| Breaker blocks | — | ✓ |
| Daily Fibonacci (P/D/E) | — | ✓ |
| Session highs & lows | — | ✓ |
| NDOG/NWOG · PD/PW | — | ✓ |
| LVN (1-min volume profile) | — | ✓ |
| Directional bias (display-only) | — | ✓ |
| Per-type independent dimming | — | ✓ |
| Alerts | — | ✓ |
Two rejection blocks, each with its entry already printed — level and price were on the chart before price got there. Both played out on the same chart.
How a confluence read comes together on the chart — from the higher-timeframe level down to a defined entry.
STRATA draws levels, not a wall of boxes: each order block and fair value gap comes down to its MT or CE and its near edge — a price you can put a stop behind. Under the hood, the engine re-scans every timeframe on each bar, rebuilds the pool of blocks and gaps, and runs the proximity check across all of it, tracking every level's midpoint, freshness and mitigation on its own. Higher-timeframe structure is read off confirmed closes, so it doesn't repaint on you later. Keeping that many live levels honest across five timeframes, inside Pine Script's limits, is exactly where most multi-timeframe scripts start to repaint, lag or quietly drop levels — and staying accurate there is most of the work.
A five-timeframe indicator only stays reliable if someone keeps it that way, so STRATA is worked on continuously — tested, fixed and refined in tight cycles, with every release checked on live NQ charts before it reaches you. When a level lands a few points off or shows up a candle late, it gets caught and corrected, not shipped and forgotten. That upkeep is the point: a tool you can rely on tomorrow, not just the day you installed it.
Curious what it takes to build a non-repainting five-timeframe engine inside Pine Script's limits? Read the engineering story.
STRATA is a confluence visualizer for decision support. It prints no buy/sell signals, makes no claim about win rate or future performance, and is not financial advice. Always combine it with your own analysis and risk management.