Session Reaction Map [AGPro Series]Session Reaction Map
🔷 OVERVIEW
Session Reaction Map is a premium intraday study that maps how price reacts to the most important daily and weekly reference levels right at the opens of the Asia, London and New York sessions. Each session open is evaluated inside a fixed measurement window, and the resulting reaction is broken down into four dimensions: dominant move, close follow-through, wick rejection and counter-move penalty. The output is a single 0-100 reaction score that is then translated into tier-coded labels, premium reaction zones, an active reference band and a compact status panel, so you can instantly read what happened at each session open without scrolling through candles.
The indicator is designed for discretionary traders, systematic traders, SMC and price action practitioners who want a clean, consistent and quantitative way to read session open behaviour around PDH, PDL, PDM, Daily Open and Weekly Open. Reactions are drawn as directional zones (bull zones above the reference and bear zones below), with up or down pointing labels centered on the reaction, so orientation is always unambiguous.
🧭 UNIQUE EDGE
Most session open tools only mark time windows or highlight levels. Session Reaction Map goes further and quantifies the quality of the reaction itself. Four independent dimensions are measured against a fixed ATR-normalized baseline, and the final score determines not only whether a label is shown but also how prominent it is. Elite scores (80+) get the strongest visuals; strong scores (70-79) get a slightly softer treatment; watch scores (55-69) are coded as caution; anything below 55 is filtered out by default.
This separation between detection (a session open near a reference) and evaluation (the reaction quality score) is the core edge. It lets you focus only on the best intraday reactions and discard noise automatically, while still being able to audit every component by adjusting the ATR length, touch tolerance, evaluation window and score thresholds.
⚙️ METHODOLOGY
Session detection uses the chosen timezone and three session windows (Asia, London, New York), each with its own editable open range. When a session open occurs, the script checks whether the open price is within an ATR based touch tolerance of any enabled reference level (Previous Day High, Previous Day Low, Previous Day Mid, Daily Open or Weekly Open). If so, a reaction window is engaged on that bar and tracked for a configurable number of bars.
During the reaction window, the live zone, reference band and dashed reference line are updated in real time. When the window completes, the final score is computed as:
• Dominant move score (up to 45 points) - scaled against 1.20 x ATR
• Close follow-through score (up to 30 points) - scaled against 0.90 x ATR
• Wick rejection score (up to 15 points) - scaled against 0.50 x ATR
• Counter-move penalty (up to -20 points) - scaled against 1.00 x ATR
The sum is clamped into the 0-100 range and mapped into four tiers: Elite, Strong, Watch and Weak. The dominant direction of the reaction (up or down) is determined by comparing the upside excursion from the reference to the downside excursion from the reference during the window.
🎯 SIGNALS AND VISUALS
• Reaction zones - rectangular areas connecting the reference level with the reaction extreme, tier-coded by score and bias
• Active reference band - a thin accent band around the current reference level during a live reaction window
• Dashed reference line - marks the exact reference price while the reaction is being measured
• Tier-coded labels - up-pointing labels below bullish reactions and down-pointing labels above bearish reactions, centered on the reaction window
• Session dots - small colored markers that optionally display only on valid events, keeping the chart clean
• Active measurement highlight - an ultra-soft background shade on bars inside a live reaction window
Labels use a ring buffer overlap check, so dense multi-session conditions do not pile labels on top of each other. When two labels would visually conflict, the higher-scored reaction wins.
🛠️ KEY INPUTS
Sessions - enable/disable and edit Asia, London and New York session windows, each with its own color and timezone.
Reference Levels - individually toggle PDH, PDL, PDM, Daily Open and Weekly Open.
Reaction Logic - ATR length, touch tolerance in ATR, evaluation bars, label score filter, minimum label score, overlap reduction (bars and vertical ATR gap).
Visuals - show/hide reference levels, session dots, dots only on valid events, reaction zones, minimum score for zones, zone transparency and extension, live reaction zone, active reference band with its ATR size and transparency, active measurement highlight, level width, label size, label offset in ATR and label background transparency.
Panel - show/hide, position (six anchor points), Dark or Light theme, font size, optional guide row.
All numerical inputs carry professional English tooltips explaining their role, so the script can be tuned for any symbol, timeframe and trading style.
📘 HOW TO USE
1. Apply the script on an intraday timeframe. It is designed for intraday use and will stay passive on daily/higher timeframes.
2. Recommended starting timeframe is 4H for swing intraday context, and 1H for tactical intraday work. Lower timeframes (15m, 30m) work too but may produce dense output.
3. Start with the default settings. Observe which sessions and which reference levels generate the most Elite and Strong reactions on your symbol.
4. Use the panel to monitor the current state: last session, last reference, bias, score, tier, label filter, zone filter and the active reaction status.
5. Treat Elite (80+) and Strong (70-79) reactions as the main signals. Watch tier is informative and Weak tier is generally discarded.
6. Align with your own confluence: higher timeframe bias, structure, orderflow, or whatever your primary framework is. The script does not issue buy or sell calls - it scores reactions, and you decide.
⚠️ LIMITATIONS AND TRANSPARENCY
• This is not a strategy and does not place orders. No backtest statistics are implied.
• Reaction scores are computed after the evaluation window completes, so they are not repainting but are confirmed with a lag equal to the evaluation window size.
• The live reaction zone updates during the window and is finalized when the window closes.
• Session behavior varies significantly by symbol (crypto vs FX vs equities) and by volatility regime. Inputs should be tuned per symbol.
• Daily and Weekly references use standard request.security with barmerge.lookahead_off to avoid look-ahead bias.
• The script is not a forecasting tool. It is a post-event quantification of how price has just reacted to a known reference level.
🛡️ RISK DISCLOSURE
Trading involves substantial risk. Past reactions, patterns, zones or scores do not guarantee future performance. This script is provided for educational and analytical purposes only and is not financial advice. Always combine any tool with your own research, a defined risk plan and proper position sizing. You are solely responsible for your trading decisions. Indicator

Reaction Efficiency Meter [AGPro Series]Reaction Efficiency Meter
A pure observation lens that scores every pivot-based support and resistance reaction from 0 to 100 and classifies it as WEAK, LIMITED, FAIR, STRONG or EFFICIENT. Designed to answer one specific question on any chart: how well did price actually react when it touched that level? Not a strategy, not a signal generator — a quality meter for S/R reactions.
🔹 Overview
Reaction Efficiency Meter watches pivot-based support and resistance levels and, the moment price touches any of them, opens a fixed reaction window to observe what happens next. At the end of that window the reaction is scored from 0 to 100 using four weighted components — strength, speed, cleanliness, follow-through — and then classified into a five-tier hierarchy. The result is printed directly on the chart as a color-coded label (BULL or BEAR), while a side panel keeps a live summary of the last bullish reaction, last bearish reaction and the currently active event window. The indicator is built as a post-event quality lens for traders who already work with horizontal levels, pivot zones, or structural S/R and want an objective readout of reaction quality instead of a subjective eyeball assessment.
🔸 Unique Edge
Most support and resistance indicators stop at drawing lines or zones. Reaction Efficiency Meter goes one step further and evaluates the reaction itself on a fixed, reproducible scale. Four distinct quality dimensions are blended into a single 0-100 score, and a separate adverse-excursion penalty reduces the score when price violated the level before reacting. The result is a transparent number tied to a five-tier verbal classification (WEAK / LIMITED / FAIR / STRONG / EFFICIENT), which makes reactions directly comparable across symbols and timeframes. There are no repainting signals, no lagging smoothers and no hidden strategy logic — the scoring is purely descriptive and fires only after the reaction window closes on a confirmed bar.
🔹 Methodology
The engine has four clear stages:
1. Level detection. Classic pivot highs and lows are tracked as dynamic resistance and support. Only the most recent N levels per side stay active — older ones are retired, so the chart never clutters.
2. Touch detection. A touch is registered when the bar's range enters a tolerance band around any active level (expressed in ATR units so the logic auto-scales across volatility regimes). A cooldown of N bars between tests on the same level prevents noise from restarting an event too quickly.
3. Event tracking. Once a touch fires, a reaction window of N bars is opened. During that window the script tracks (a) the best favorable excursion in ATR units, (b) the worst adverse excursion in the wrong direction, (c) which bar produced the peak favorable move, (d) the net retained move at window close.
4. Scoring and classification. At window close the four components are combined with a penalty:
• Strength (0-35): best favorable excursion relative to 1.5 ATR reference.
• Speed (0-20): how early the peak favorable bar occurred inside the window.
• Cleanliness (0-20): reduced linearly by adverse excursion.
• Follow-through (0-15): how much of the peak move was retained at window close.
• Adverse penalty (up to -15): applied when price broke through the level.
Final score is clamped 0-100 and mapped to: WEAK (<25), LIMITED (25-44), FAIR (45-64), STRONG (65-79), EFFICIENT (80+).
🔸 Signals & Alerts
The indicator does not emit buy or sell alerts. Its outputs are purely descriptive:
• A color-coded reaction label (BULL or BEAR with score and tier) plotted after each completed window.
• Active zone rectangle and reaction corridor drawn around the touched level while the window is open.
• Touch markers on the bar where a new event begins.
• Live status tag showing BULL WINDOW x/N or BEAR WINDOW x/N during an active event.
• A stateful side panel with Status, Last Bull, Last Bear, Window progress and Mode rows.
All visuals render on confirmed bars only, so the score and tier of a completed reaction do not change afterwards.
🔹 Key Inputs
• Pivot Length — bar distance used to qualify pivot highs and lows.
• Max Active Levels / Side — how many recent resistance and support levels stay active.
• ATR Length — volatility reference for tolerance, corridor depth and scoring.
• Touch Tolerance (ATR) — how close to the level a bar must come to count as a touch.
• Reaction Window Bars — fixed observation length per event.
• Minimum Bars Between Tests — cooldown on the same level.
• Reaction Corridor Depth (ATR) — vertical span of the reaction corridor drawn during the window.
• Display group — toggles for levels, tags, markers, labels, active zone, corridor, panel.
• Theme & Layout — panel theme (Auto / Dark / Light), position, font size, line width and opacity controls.
🔸 How to Use
The indicator is intended as a companion lens, not a standalone system. Typical workflows include:
• Confluence study. Compare reaction scores at different levels on the same chart to see which zones historically produced stronger reactions.
• Bias assessment. Watching whether BULL and BEAR labels on a given timeframe skew toward higher or lower tiers can inform directional bias for discretionary decisions made elsewhere.
• Framework validation. Add it on top of an existing S/R, order block or pivot framework to quantify whether the levels those tools produce actually generate efficient reactions.
• Multi-timeframe scanning. Running the indicator on multiple timeframes shows where strong reactions cluster — often useful for context, not entry timing.
The tool is descriptive and retrospective. It is not designed to replace risk management, structural analysis or the user's own trading plan.
🔹 Limitations & Transparency
• The reaction window is fixed per event. Very fast V-reversals may still register as WEAK if most of the favorable move happens after the window closes; conversely, slow grind reactions may score lower on the Speed component even when the net outcome is good.
• Pivot-based levels are, by definition, confirmed with a lag equal to Pivot Length bars.
• Scores are descriptive — a STRONG tag on a past reaction does not imply that the next test of the same level will also react strongly.
• All scoring uses confirmed-bar logic, so the indicator is non-repainting by design.
🔸 Risk Disclosure
This indicator is provided for educational and analytical purposes only. It is not financial advice, not a trade signal generator, and not a recommendation to buy or sell any instrument. Trading involves substantial risk of loss. Past reactions do not guarantee future reactions. Users are solely responsible for their own trading decisions and risk management. Indicator

Reference Price Operating Map [AGPro Series]Reference Price Operating Map
🔹 OVERVIEW
Reference Price Operating Map is a focused overlay that consolidates the four most universally watched reference prices — Daily Open, Weekly Open, Monthly Open, and Previous Close — into a single operating map. It tracks how price interacts with each level in real time, attributes control to the reference currently leading price action, groups overlapping references into confluence clusters, and fades distant context so the active map stays clean.
The chart answers one direct question at a glance: which reference is controlling the session right now.
Built for intraday operators, swing traders, and position traders who anchor their bias to session and period opens. Works on any symbol and any intraday or daily timeframe.
🔸 WHAT MAKES IT DIFFERENT
Most open-line indicators simply draw horizontal lines for Daily, Weekly, Monthly, and Previous Close and stop there. This script goes further by adding four layers on top of those lines:
• State tracking — each reference is classified as Untouched, 1st Touch, Tested, Held, Reclaimed, or Rejected, and the state updates bar by bar as price interacts with the level.
• Control attribution — a proximity-weighted scoring system selects one reference as the current "controller" of price action, highlighted with a dominant-row background in the panel and a thicker line on the chart.
• Confluence grouping — when two or more references sit within 0.5 ATR of each other, they collapse into a single cluster label (for example "D-Open + W-Open + PClose") instead of stacking separate labels on top of each other.
• Distance-aware rendering — references far from current price are demoted to a thin gray zone with a dotted line, keeping them visible as structural context without crowding the active map.
The engine also includes a far-aware state machine: references that price has not meaningfully engaged stay in the Untouched state instead of being forced into misleading classifications.
🔷 METHODOLOGY
Reference levels are pulled directly from the higher timeframe open (Daily, Weekly, Monthly) and the previous daily close using lookahead-safe security calls on confirmed bars.
Distance classification uses ATR(14) as a volatility scale. A reference is considered "near" when price is within a configurable ATR multiple and "far" when it exceeds the far-distance threshold. This adapts the map to both low-volatility ranges and high-volatility expansions without manual tuning.
State transitions are driven by a finite state machine with six states. Key transitions:
• Untouched → 1st Touch when price enters the touch zone (default 0.25 ATR) or wicks through it.
• 1st Touch / Tested → Held when price moves cleanly away from the level on the same side.
• 1st Touch / Tested → Reclaimed when price closes on the opposite side (optionally requiring multi-bar confirmation).
• Any engaged state → Rejected when a large wick rebounds from the level with more than 60 percent wick ratio.
• Held / Rejected → Reclaimed on a confirmed cross.
The control score combines proximity (how close price is to the reference relative to ATR) with a state weight (Reclaimed and 1st Touch score highest, Held scores lowest). The reference with the highest score is tagged as controller; if no reference has meaningful engagement the panel reports No Active Control.
🔶 SIGNALS AND ALERTS
Three alert conditions are exposed:
• Reference Touched — fires the first time any reference is touched in its period.
• Reference Reclaimed — fires when any reference transitions into the Reclaimed state.
• Reference Rejected — fires when a large-wick rejection bar is registered at any reference.
On-chart, first-touch diamond markers are placed on recent bars to make period engagement easy to spot in screenshots and reviews. The panel footer reports the current controller and updates in real time.
🔹 KEY INPUTS
Reference Lines — independent toggles for Daily Open, Weekly Open, Monthly Open, and Previous Close.
Display — Show Active References Only (hide untouched references for a cleaner map), Strict Reclaim Confirmation (require multiple confirmation bars for Reclaim), Label Density (Minimal shows only the dominant reference, Normal shows all active, Detailed appends state names to labels), Show Reaction Bands, Mark First Touches.
Panel — position (four corners), font size, label font size. All default to Normal per AG Pro Series visual standards.
Sensitivity — Touch Threshold (ATR multiple defining a touch), Reclaim Confirm Bars (strict-mode confirmation count), Band Width (reaction band width in ATR), Far Distance (ATR multiple beyond which references are faded to context).
All parameters are ATR-scaled so defaults transfer cleanly across instruments and timeframes.
🔸 HOW TO USE
1. Open the panel and read the controller. If the footer shows "D-Open Controls" with a Bull bias, intraday operators treat Daily Open as the session pivot and trade with that bias until the state changes.
2. Watch the confluence label. A grouped label such as "D-Open + W-Open + PClose" means three references are stacked — a cluster of this kind is typically a higher-conviction zone than a single isolated reference.
3. Use state transitions as triggers. A Rejected state at Monthly Open during a rally is a different signal than a Reclaimed state at the same level. The state tells you what just happened at the level, not just where the level is.
4. Use the far zone as context. A Monthly Open plotted as a gray zone five ATR away from price is not an execution level — it is orientation. When price approaches it, the zone transitions into an active band and the state engine re-engages.
5. Combine with your own structure work. This map is designed to sit underneath price action analysis, order flow, or trend tools, not replace them.
🔷 LIMITATIONS AND TRANSPARENCY
• This is an indicator, not a strategy. No entries, exits, position sizing, or backtesting is performed.
• Reference prices are sourced from higher timeframe candles using confirmed lookahead. Results on intraday charts should match the official Daily, Weekly, and Monthly opens of the exchange the chart is connected to.
• State classifications are heuristic. They describe observed behavior at each level in historical terms and should not be read as forecasts. A Reclaimed state is a description of what just happened, not a prediction of what comes next.
• ATR-based thresholds mean the map adapts to volatility but can feel different on very low-volume or very thinly traded instruments. Adjust the touch threshold and far distance inputs if defaults feel too loose or too tight.
• Confluence grouping uses a 0.5 ATR window. On very wide-range days this window can become large; on very narrow ranges it can feel tight.
🔶 RISK DISCLOSURE
This indicator is provided for informational and educational purposes only. It does not constitute financial advice, investment advice, trading advice, or any other form of advice. Past performance of any level, state, or methodology shown on the chart does not guarantee future results. Trading and investing involve substantial risk of loss. You alone are responsible for your decisions, for managing your risk, and for complying with the laws and regulations that apply to you. Test any tool on a demo account or in paper trading before using it with real capital. Indicator

Volume Shelf Reaction Map [AGPro Series]Volume Shelf Reaction Map
🔷 OVERVIEW
Volume Shelf Reaction Map is a structural price-action tool that identifies horizontal zones where volume has historically stacked — "volume shelves" — and classifies, in real time, how price reacts each time it returns to them. Instead of showing a static S/R line, it answers a sharper question: when price revisits this level, does it hold, get reclaimed, get rejected, or lose the level entirely? Fresh shelves (never revisited) are visually separated from reused ones, so the chart communicates not just where the levels are, but which ones still carry unused participation behind them.
🧭 UNIQUE EDGE
Most support/resistance and volume tools stop at drawing a zone. This script adds a reaction-state layer on top of shelf detection:
• Five reaction states per shelf: TOUCH, HELD, RECL (reclaimed), REJ (rejected), LOST
• Fresh vs Reused classification — shelves that have already been tested at least once are faded, so untouched structural levels stand out immediately
• Sticky state logic — a shelf keeps its reaction color until a new transition actually occurs, preventing flicker between bars
• Passive-window coloring — shelves whose last reaction is older than the user-defined active window fade to the neutral accent color, keeping old/stale levels visible without dominating the chart
• Strongest-shelf-only reaction tags with cooldown — reaction labels are printed only for the highest-strength shelf and only on actual state transitions, producing a clean chart even on long histories
The result is a volume-aware reaction map rather than a crowded S/R overlay.
🧪 METHODOLOGY
1. Pivot detection — standard pivot highs and lows over a configurable pivot length act as shelf candidates.
2. Volume qualification — each pivot bar is checked against a rolling 20-bar volume average; bars above the Volume Filter multiplier contribute extra weight to shelf strength.
3. ATR-based clustering — candidates within a configurable ATR multiple of an existing shelf are merged using a touches-weighted mean price, stabilizing the shelf location as evidence accumulates.
4. Confirmation — a shelf must reach the Minimum Touches threshold before it is rendered; weak candidates are pruned after one-third of the lookback window.
5. State machine — on every confirmed bar, a shelf's reaction is updated against the prior close's side (support vs resistance context), using an ATR-scaled buffer to distinguish genuine holds and losses from noise.
6. Ranking and rendering — on the last bar, shelves are sorted by strength; only the top N are drawn, with fresh shelves rendered solid and reused shelves rendered thinner and faded.
🔔 SIGNALS & ALERTS
Three alert types, each debounced per shelf so the same state cannot spam consecutive bars:
• Shelf Touched — price range intersects a confirmed shelf for the first time since its last transition
• Shelf Respected — price HELDs, RECLs, or REJs at a shelf (reaction in favor of the shelf)
• Shelf Lost — price closes through a shelf with the required ATR buffer
Reaction tags on the chart (HELD / RECL / REJ / LOST) are printed only for the strongest shelf and only on a true state transition, with a user-adjustable cooldown for historical cleanliness.
⚙️ KEY INPUTS
Shelf Detection
• Lookback Window (bars) — how far back the pivot scan reaches
• Pivot Strength — bars required on each side of a pivot
• Cluster Distance (x ATR) — how tightly nearby pivots merge
• Minimum Touches — confirmation threshold
Filters & Cleanup
• Volume Filter (x average) — participation threshold for strength weighting
• Show Fresh Shelves Only — hide already-revisited shelves
• Max Shelves to Display — cap visible shelves for chart cleanliness
• Fade Reused Shelves — dim reused shelves so fresh ones stand out
• Reaction Sensitivity (x ATR) — ATR buffer used by the state machine
• Active Window (bars) — how recently a reaction must have occurred to show in full color
Visuals
• Label & Panel Size — Tiny / Small / Normal / Large (default: Normal)
• Show Reaction Tags — toggle on-chart state labels
• Tag Cooldown (bars) — minimum bars between tags on the same shelf
Panel
• Show Info Panel, Panel Location (6 anchors), Panel Theme (Dark / Light)
Alerts
• Shelf Touched, Shelf Respected, Shelf Lost
🧰 HOW TO USE
1. Add the indicator to any liquid symbol and timeframe. Volume-aware markets (crypto, index futures, major FX) and timeframes from 15m upward tend to produce the most structured shelves.
2. Start with defaults. The Active Window of 30 bars is a reasonable middle-ground; reduce it on intraday charts (around 20) or raise it on daily/weekly (30–60).
3. Read the panel:
• Active Shelves — how many of the eligible shelves are currently drawn
• Strongest Shelf — the top-ranked shelf by strength
• Current State — live reaction state of the top shelf
• Fresh / Reused — how the displayed shelves split between untested and already-tested levels
4. Use fresh shelves as higher-quality reaction candidates; treat reused shelves as context, not primary triggers.
5. Combine the HELD / RECL / REJ / LOST reactions with your own trigger logic (e.g. break-retest, liquidity sweeps, momentum shifts). This script is a location and reaction tool — not a standalone trade system.
🧱 LIMITATIONS & TRANSPARENCY
• This indicator describes historical structure and live reactions; it does not forecast price direction.
• Pivot-based detection requires the Pivot Strength window to complete on both sides, so fresh pivots appear with a natural lag equal to the pivot length.
• On very low-volume symbols or illiquid timeframes, shelves may be sparse or unstable.
• The state machine is bar-close based; intrabar wicks can temporarily intersect a shelf without changing its state until the bar confirms.
• Max drawing limits (max_lines_count, max_labels_count, max_boxes_count) are set to 120; extremely long histories combined with large lookbacks may drop the oldest drawings.
⚠️ RISK DISCLOSURE
This script is provided for educational and analytical purposes only. It is not a strategy, not a buy/sell signal generator, and not financial advice. Trading involves substantial risk of loss. Past behavior of levels, volume, or reactions does not guarantee future outcomes. Always apply your own risk management, position sizing, and independent judgment. The author and AGProLabs accept no responsibility for decisions made based on this indicator. Indicator

Liquidity Void Navigator [AGPro Series]Liquidity Void Navigator
🔹 OVERVIEW
Liquidity Void Navigator identifies impulsive price displacements that were produced with disproportionately low volume participation — the institutional footprint of a true liquidity void. Unlike geometric gap concepts that rely purely on wick-to-wick imbalance, this engine measures the efficiency of each impulsive bar: how much price moved relative to how much volume was transacted. When price travels faster than the order book justifies, a magnet zone is born. These zones frequently act as high-probability retest and mean-reversion targets for SMC and ICT traders.
🔹 UNIQUE EDGE
Most gap-based tools on PulseWire detect Fair Value Gaps using a 3-bar geometric pattern. This indicator uses a fundamentally different signature:
- Volume Efficiency Ratio (core innovation): efficiency = (volume / avgVol) / (range / ATR). Values below the threshold reveal bars where price displacement outpaced volume effort — the statistical definition of a liquidity void.
- Body-based zones, not wick-to-wick: the void box spans the impulsive candle body, excluding wicks that represent liquidity sweeps.
- Dynamic lifecycle management: zones are tracked from birth through mid-line mitigation, with configurable trigger modes (close cross, wick touch, or full fill).
- Strongest-void emphasis: the lowest-efficiency active void automatically receives a bold neutral-colored border, giving traders an at-a-glance view of the most reliable magnet on the chart.
🔹 METHODOLOGY
Each completed bar is evaluated against four quality filters:
1. Range Expansion — bar range must exceed ATR × configurable multiplier (default 1.3).
2. Volume Efficiency — the efficiency ratio must fall below the configurable cap (default 0.85).
3. Minimum Height — void must be at least a fraction of ATR to filter micro-noise (default 0.5×).
4. Body Dominance — the candle body must represent at least 50% of the total range, confirming directional conviction rather than indecision.
Qualifying bars create a directional void zone spanning the body. An optional next-bar gap confirmation adds stricter FVG-style filtering. Active zones are continuously evaluated against the selected mitigation mode and updated in real time. Oldest active voids are pruned when the per-side cap is exceeded, keeping the chart focused on recent, actionable structure.
🔹 SIGNALS & ALERTS
Four alert conditions are available:
- New Bullish Liquidity Void — an upward impulsive void is detected.
- New Bearish Liquidity Void — a downward impulsive void is detected.
- Bull Void Mitigated — closing price crosses the mid-line of an active bullish void from above.
- Bear Void Mitigated — closing price crosses the mid-line of an active bearish void from below.
Each alert fires only on bar close to eliminate repainting concerns. Alert messages include the ticker and timeframe for multi-chart workflows.
🔹 KEY INPUTS
Void Detection
- Volume Baseline Lookback — window for average volume and range calculations.
- Min Range Expansion (×ATR) — minimum impulsive bar size.
- Max Volume Efficiency Ratio — core void qualification threshold.
- Min Void Height (×ATR) — filters micro-voids.
- Require Gap with Next Bar — optional strict confirmation.
- Mitigation Trigger — choose between Close Cross (institutional default), Wick Touch (strict), or Full Fill (swing).
Lifecycle
- Max Active Voids per Side — visual cap to prevent chart clutter.
- Zone Right Extension — how far zones project to the right.
- Show Mitigated Voids — optionally display filled zones in gray.
Visuals
- Bullish / Bearish / Mitigated colors, mid-line toggle, projection arrow toggle, label size.
Panel
- Show / position / font size.
🔹 HOW TO USE
Trend-aligned reversion entries: When price returns to an unmitigated void in the direction of the higher-timeframe trend, watch for rejection at the mid-line or far edge as a potential long (bull void) or short (bear void) trigger.
Breakout continuation context: Newly formed voids in the direction of a breakout often indicate institutional participation. Waiting for a retest of the void zone can provide improved risk-to-reward compared to chasing the breakout bar.
Strongest-void bias: The yellow-bordered void on the chart represents the lowest-efficiency (statistically strongest) active zone. Traders can treat it as the highest-probability magnet for price revisits.
Fill Rate context: A persistently high fill rate on a given symbol or timeframe indicates that voids fill rapidly — more suitable for scalping. A lower fill rate suggests that unfilled voids accumulate meaningfully, offering swing-style opportunities.
Multi-timeframe workflow: Identify voids on a higher timeframe (4H or 1D) as strategic bias zones, then use a lower timeframe (15m or 1H) for tactical execution when price approaches those higher-timeframe voids.
🔹 LIMITATIONS & TRANSPARENCY
- This indicator is built for liquid markets with reliable volume data. Thinly traded symbols or instruments without accurate volume feeds (some spot FX, certain indices) will produce unreliable results.
- Not every detected void will be retested or filled. Voids are statistical zones of interest, not guarantees.
- The indicator is a visualization and analytical tool, not a trading strategy. It does not generate buy or sell recommendations.
- Fill rate statistics are computed over the visible history of active and mitigated voids and are approximate; they are intended as a relative gauge of symbol behavior, not as a backtested performance metric.
- Mitigation triggers are bar-close based to avoid repainting. Intrabar signals may appear and disappear until the bar confirms.
- Zones have a fixed right extension from their birth bar; the indicator does not extend zones infinitely.
🔹 RISK DISCLOSURE
Trading financial markets involves substantial risk of loss and is not suitable for all investors. Past performance of any technical indicator, including this one, is not indicative of future results. This tool is provided for educational and analytical purposes only and does not constitute financial advice, investment recommendations, or solicitation to trade. Users are solely responsible for their own trading decisions, risk management, and outcomes. Always conduct independent analysis and consult with a qualified financial advisor before making investment decisions. Indicator

Breaker Block Engine [AGPro Series]Breaker Block Engine
Overview
Breaker Block Engine is a dedicated detection and tracking tool for one of the
most misunderstood concepts in Smart Money trading: the Breaker Block. A
breaker block is an order block that has failed and flipped role — a bearish
order block broken upward now behaves as bullish support, and a bullish order
block broken downward now behaves as bearish resistance. The engine does not
just draw them; it validates each break with displacement strength, tracks
every retest, scores how well each breaker has held its role, and surfaces the
dominant bullish and bearish breakers through a clean info panel.
Unique Edge
Most breaker block scripts stop at drawing a flipped zone. This engine goes
further:
- Each break is validated using an ATR-scaled close-based displacement filter,
optionally combined with above-average volume confirmation, to reject weak
wick-based breaks.
- Every retest of a breaker is counted and evaluated as Held or Lost, and the
state label on the chart shows a live retest hold percentage for each
breaker (for example "Bull Breaker | Held x6 (100%)").
- An invalidation buffer prevents single-wick noise from prematurely killing
otherwise healthy breakers, while genuinely violated zones fade into a gray
"Lost" state and are removed from tracking shortly after.
- Intra-side and cross-side confluence grouping automatically clean up
overlapping labels so the chart stays readable even when several breakers
cluster within half an ATR.
- The info panel summarises the whole picture in one glance: dominant side,
active counts per side, nearest breaker distance in both price and ATR
multiples, and overall retest hold percentage.
Methodology
1. Swing Detection. Confirmed pivot highs and pivot lows are identified using
a configurable pivot length. These pivots anchor the search for order
block candidates.
2. Order Block Candidate. For each confirmed pivot high, the script walks
back up to ten bars looking for the last bearish candle — this is the
bearish order block candidate. The symmetrical process identifies bullish
order block candidates around pivot lows.
3. Break Validation. A candidate is promoted to a breaker only when price
closes past the opposite edge of the order block by at least a
user-defined ATR multiple (default 0.75 × ATR). An optional volume
confirmation filter can additionally require the break candle to trade
above its volume moving average.
4. Retest & Hold Scoring. After formation, each breaker is checked every bar.
If price re-enters the zone and the close respects the breaker's intended
direction, a Hold is recorded; otherwise the retest is counted but not
held. A minimum bar spacing prevents consecutive bars of a sustained
retest from inflating the counter.
5. Invalidation. If price closes past the far edge of the breaker by more
than the invalidation buffer (in ATR), the breaker is marked Lost,
visually faded, and removed from active tracking after a short grace
period.
6. Confluence Grouping. On the most recent bar, breakers whose mid-points
sit within max(0.5 × ATR, 0.5 % of price) of each other have their
overlapping state labels resolved: dead labels yield to alive labels,
older labels yield to newer ones. A cross-side pass prevents stale
opposite-side labels from sitting on top of active ones.
Signals & Alerts
The script provides three alert events:
- New Breaker: fires on the bar a bullish or bearish breaker is confirmed.
- Retest Hold: fires when price retests an active breaker and the close
respects the zone direction.
- Invalidation: fires when an active breaker is broken in the opposite
direction beyond the invalidation buffer.
On-chart signals include the zone itself (coloured by side), a small
directional triangle at the break point, and a dynamic state label on the
right edge showing the breaker's test count and hold percentage.
Key Inputs
- Swing Pivot Length: bars on each side used to confirm swings. Higher values
produce fewer but structurally stronger swings.
- Max Active Breakers per Side: hard cap on simultaneously tracked bullish
and bearish breakers; oldest are pruned when the limit is reached.
- Displacement Strength: ATR multiple required for a close-based break to
validate. Higher values produce fewer, stronger breakers.
- Require Volume Confirmation: when enabled, the break candle must trade
above its volume moving average.
- Invalidation Buffer: ATR buffer added beyond the breaker edge before the
breaker is considered invalidated. Prevents wick-based noise kills.
- Min Bars Between Retests: minimum bar spacing between consecutive retests
of the same breaker, keeping counters from inflating on sustained visits.
- Zone Transparency, Colours, Label & Panel Sizes: full visual control.
- Panel Location, Theme, Far Zone Threshold: the info panel can be placed in
any of six positions, switched between Dark and Light theme, and the
threshold for labelling distant zones as "Far" is user-configurable.
How to Use
- On mid-to-high timeframes (15m and up), leave the defaults. The engine is
tuned for 15m to 4h out of the box but works on any timeframe and
instrument.
- Use the state label hold percentage as a quality gauge. A breaker with a
long history of holds (for example "Held x6 (100%)") has demonstrated
institutional interest at that level; a breaker with mixed results deserves
more caution.
- Use the panel to orient quickly. If the dominant side is Bullish and the
nearest bullish breaker sits within a fraction of an ATR, the chart is in
a supportive regime for long bias; if both nearest values show "Far",
price is floating between structures and caution is warranted.
- Combine with higher-timeframe context. A bullish breaker on the 1h that
aligns with a bullish breaker on the 4h is a stronger zone than either
alone.
Limitations & Transparency
- This is an indicator, not a strategy. It draws zones and tracks their
behaviour; it does not generate buy or sell orders, manage positions, or
calculate performance statistics against a price series.
- Pivot-based detection is inherently lagging by the pivot length: a swing
is only confirmed once the configured number of bars have printed past it.
- Results depend on input choices. Different displacement multipliers, pivot
lengths, and retest gaps will produce different breaker sets. The defaults
are a starting point, not a recommendation.
- No indicator can guarantee future behaviour. A breaker that has held ten
times in the past can fail the next time it is tested.
Risk Disclosure
This script is provided for educational and research purposes only. It is not
financial advice and does not constitute a recommendation to buy, sell, or
hold any instrument. Trading carries substantial risk of loss. Users are
solely responsible for their own trading decisions and risk management. Past
behaviour of a breaker, or of any zone shown by this script, does not
guarantee future results. Indicator

BTC CME Weekend Gap TrackerBTC CME Weekend Gap Tracker
Automatically detects and tracks weekend gaps on CME Bitcoin futures (BTC1!). When CME closes Friday evening and reopens Sunday/Monday, any price movement in spot during that window creates a gap — this indicator marks those gaps directly on your chart.
What it shows
Red boxes — weekend gap down (CME reopened lower than Friday close)
Green boxes — weekend gap up (CME reopened higher than Friday close)
Gray boxes — filled gaps (price has since traded back through the range)
Key features
Weekend-only filter — ignores daily maintenance gaps, only tracks the meaningful Friday-to-Monday gaps (and extended holiday closures)
Price levels labeled at the right edge of each unfilled gap so you can see exact gap boundaries at a glance
Date and percentage size shown inside each box
Unfilled gaps extend right until filled, then fade to gray
Stats table tracking total gaps, fill rate, gap-up vs gap-down fill rates, average fill time, and average gap size
How to use
Apply to any BTC chart (BTCUSD, BTCUSDT, BTCUSDT.P) on daily or intraday timeframes. The script pulls CME data automatically. Use unfilled gaps as potential price targets — historically, the majority of CME gaps fill over time, though large gaps in strong trends can remain open for extended periods.
Settings
Minimum gap size threshold (filter noise)
Max bars to track (history depth)
Toggle price levels, percentages, and dates independently
Customize gap colors
Alerts
Two alert conditions included: new weekend gap up and new weekend gap down. Set these up to get notified when CME reopens Monday with a gap.
Indicator

Indicator

Indicator

Indicator

HOLO EngineOverview
This is a Pine Script v5 conversion of the HOLO concept originally coded by thi4gon for MetaTrader 4. Full credit to thi4gon for the original systems logic and mean-reversion framework — this publication brings that idea into PulseWire with a fully rebuilt engine, multi-timeframe support, signal filtering, an info panel, and alert conditions.
HOLO stands for Highest Open / Lowest Open. The core idea: the highest and lowest opening prices recorded by intraday bars since the day started act as significant mean-reversion levels. Price tends to return to these open extremes after deviating from them. The HO is a potential sell level; the LO is a potential buy level. Stop-loss reference is the current day's running high (for sells) and running low (for buys).
How It Works
At the start of each new day, the engine resets and begins tracking the highest open and lowest open printed by H1 candles (or any selected timeframe). These levels are not highs and lows of the candle — they are the open prices, making them distinct from standard session high/low tools.
A trade setup occurs when:
A bar opens inside the zone between the HO/LO and the corresponding daily extreme (sell zone = between HO and Daily High; buy zone = between Daily Low and LO)
Price touches the HO or LO level during that bar
Price has not broken outside yesterday's high/low range (breakout filter)
The current H1 bar is not the bar that created the HO/LO (breakout bar filter)
Today's range has reached at least 50% of the daily ATR (optional, enabled by default)
All signal evaluation is done on confirmed closed bars only — no repainting.
Features
H1 HO/LO primary levels with multi-timeframe options (H4, M30, M15, M5, M1)
Shaded buy and sell zones with readable area labels
Daily High/Low as stop-loss reference lines
Yesterday's High/Low as breakout boundary
Optional Previous Day HO/LO, Weekly High/Low, and Monthly High/Low
Equidistant pip-projection lines from the HO or LO level
Confirmed-bar signal arrows with ATR range filter and tolerance input
Info panel: live status, Range/ATR %, day range in pips, ATR in pips, entry and SL levels, bar countdown timer
Color-coded legend table
8 individual alert conditions including dynamic price alerts
Timeframe warning when applied to daily or higher charts
Duplicate price filter to prevent overlapping labels
All drawings rendered at the last bar for performance
Apply on intraday timeframes (M5 to H1 work best)
Primarily designed for Forex — pip value is auto-calculated from syminfo.mintick
Works on any instrument but pip labeling is calibrated for 5-digit and 3-digit FX pairs
The indicator does not provide financial advice. All levels are reference points — manage risk independently
Credits
Original HOLO concept and MetaTrader 4 indicator by thi4gon. This PulseWire implementation was built from the ground up in Pine Script v5 by the Amorphos team, adding multi-timeframe support, signal filtering, dynamic alerts, and a full visual dashboard on top of thi4gon's original framework. Indicator

Indicator

SPX Levels Mapper (Auto-Calibrating v3)SPX Levels Mapper (Auto-Calibrating v3)
Plot S&P 500 levels directly on any chart — converted automatically using a live rolling linear regression between SPX and your instrument.
How it works:
The indicator pulls real-time SPX data and runs a rolling linear regression against whatever ticker you're charting over a configurable lookback window. Any SPX level you input gets converted to its equivalent price on your chart — no manual slope or intercept needed.
Features:
Auto-calibrating regression that updates every bar
Works on any correlated instrument (NQ, MNQ, ES, MES, individual stocks, etc.)
8 configurable level slots, each with its own color, label, and settings
Per-level gamma toggle (Positive / Negative) with ⚠ warning labels for negative gamma
Per-level Hard Stop toggle — marks levels where price should stop with a 🛑 label
Optional padded zones (±10 points default) to visualize the area of influence around each level
Per-level zone transparency control so you can dial up intensity on key levels and fade out the rest
Info box showing live regression stats (slope, intercept, R²)
Use cases:
Map SPX gamma/GEX levels from Unusual Whales, SpotGamma, etc. onto any chart
Distinguish between positive and negative gamma environments per level
Mark hard stops where market maker positioning suggests price rejection
Visualize zones of influence with adjustable padding and intensity
How to use:
Add to any chart that correlates with SPX
Enter SPX levels in the settings — each level has its own group
Toggle gamma type, hard stop, zone visibility, and transparency per level
Lines and zones appear at the equivalent price on your chart, updating in real time
Built for traders who read SPX flows but execute on other instruments. Indicator

NBSG_DayTradingSuiteAn all-in-one day trading overlay designed by a futures trader for futures traders. It consolidates the key levels, anchored VWAPs, session volume profiles, and structural references that intraday traders typically spread across 3-5 separate indicators into a single, configurable script.
Built and defaulted for CME futures (ES, MES, NQ, MNQ, and similar instruments), but the session times are fully adjustable in settings. Traders on equities, crypto, or forex can adapt the indicator to their instrument by configuring the session windows to match their market's electronic trading hours.
The default session times are set for a trader operating in US Central Time (Chicago time). If you trade in a different timezone, adjust the session inputs accordingly.
This indicator is not a signal generator. It plots structure so you can make your own decisions.
FEATURES
Multiple Anchored VWAPs
The indicator plots two independent session-anchored VWAPs, each with optional standard deviation bands:
Overnight VWAP (VWAP 1) anchors at 17:00 CT (CME session open) and accumulates across the entire futures trading day through 16:00 CT. It resets cleanly each session. Optional 1SD and 2SD bands with fill show the statistical envelope around the developing VWAP.
NY Session VWAP (VWAP 2) anchors at 08:30 CT (Regular Trading Hours open) and accumulates through 16:00 CT. It includes a leapfrog mechanic: when the new RTH session begins, the prior session's VWAP is preserved and continues to plot as "Prev NY VWAP," giving you a reference for how price relates to yesterday's value during overnight trading.
Prev NY VWAP: This is the previous day's NY Session VWAP, which continues accumulating through the overnight session after the NY VWAP resets at 08:30. It provides a critical structural reference, particularly during the premarket and early RTH, showing where the prior session's volume-weighted equilibrium sits relative to current price. Many traders use the relationship between current price, the active NY VWAP, and the Prev NY VWAP to gauge directional bias.
All VWAPs use separate source, color, and line size settings.
Higher Timeframe VWAPs
Optional Weekly and Monthly VWAP overlays provide broader context without cluttering the chart. Disabled by default.
Session Volume Profiles (SVP)
Volume is distributed across the bar's high-low range using a configurable tick-based bin size (default: 2 ticks). The script calculates and plots:
Current Session SVP: POC and Value Area (VAH/VAL) for the active session, updating in real time.
Prior Day SVP: POC and Value Area from the previous completed session. These levels carry forward as horizontal references.
Last Week SVP: POC and Value Area from the prior completed week.
Each profile can be displayed as POC Only or POC + VA. The Value Area percentage is configurable (default: 70%).
Static Reference Levels
Prior Day High/Low (PDH/PDL): Previous day's range boundaries.
Last Week High/Low (LWH/LWL): Previous week's range boundaries.
Previous Session Close (PSC): The prior day's closing price.
Premarket High/Low (PMH/PML): Dynamically tracked during the 18:00-08:30 premarket session.
Opening Range (ORH/ORL): The first 15 minutes of RTH (08:30-08:45), with optional fill.
All static levels are individually togglable with independent color and size controls.
Deadzone
A configurable time window (default: 11:00-13:00 CT) highlighted with a background fill and border lines. This marks the midday period where volume and follow-through typically thin out on equity index futures. The time window is adjustable in settings.
Bar Coloring
Optional bar coloring based on the close's relationship to the three primary VWAPs (Overnight, NY, Prev NY). Bars are colored bullish when above 2 of 3, bearish when below 2 of 3, and neutral otherwise. Disabled by default.
Display Modes
A master display mode toggle lets you switch between:
Advanced All-Level: Shows everything you have enabled, the full suite.
Simplified VWAP: Strips the chart down to just the Overnight VWAP, NY VWAP, Prev NY VWAP, and Opening Range. All volume profiles, static levels, and the deadzone are automatically hidden. Useful for cleaner charts or when you want to focus purely on VWAP structure.
Labels
Every plotted level gets a text label with optional price display, offset to the right of the current bar for readability. Labels can be globally toggled on/off.
HOW TO USE
1. Add the indicator to your chart on an intraday timeframe (1m-30m recommended). It is defaulted for CME futures but can be adapted to any instrument by adjusting the session time inputs.
2. The default session times are built for US Central Time (Chicago). If your chart uses a different timezone, adjust the session inputs in the settings to match your market's session boundaries.
3. The default configuration shows most levels. Start by reviewing what each level represents, then toggle off anything that creates noise for your specific approach.
4. For cleaner charts, switch to "Simplified VWAP" mode, which isolates the core VWAP structure and Opening Range only.
CONFIGURATION
All session times, colors, line sizes, and visibility toggles are individually configurable. The settings are organized into numbered groups for clarity:
1. Master Display Mode
2. Session Times
3. NY VWAP Settings
4. Overnight VWAP Settings
5. Opening Range
6. Volume Profiles (SVP)
7. Static Levels
8. Higher Timeframe VWAPs
9. Deadzone
10. Bar Coloring
11. Labels
LIMITATIONS
The default session times are configured for CME futures with the standard 17:00-16:00 CT (close enough) session structure. If you are using this on equities, crypto, forex, or other instruments, you will need to adjust the session time inputs to match your market's electronic trading hours. The indicator will work on any instrument, but the session boundaries must be set correctly for accurate VWAP anchoring and level calculation.
This is a feature-rich script with multiple VWAPs, volume profiles, and level calculations running simultaneously. Tradingview handles it well the vast majority of the time, but on occasion the script may load slowly or display incompletely. If levels appear missing or the indicator looks off, a simple page refresh will typically resolve it.
The session volume profile uses a simplified volume distribution method (volume is evenly distributed across the bar's high-low range in tick-based bins). This is an approximation, not a tick-level volume profile. Accuracy improves on lower timeframes where bars have smaller ranges.
The Overnight VWAP session detection uses an hour-based reset (detecting when the bar's hour enters 17:00 in exchange time) rather than PineScript's built-in session boundary detection. This is intentional: on CME futures, the VWAP session (1700-1600) matches the instrument's native session, which prevents the standard session boundary method from firing correctly.
The deadzone time window relies on your chart's timezone setting. The default of 1100-1300 assumes US Central. Adjust if your chart uses a different timezone.
NOTES
This script is original work, but it stands on the shoulders of giants. The concepts and ideas behind it draw from numerous traders, educators, and open-source contributors who have freely shared their knowledge with the trading community. VWAP, volume profile, session levels, and opening range are not new ideas. What this script attempts to do is bring them together in a thoughtful, configurable way that reflects how an active futures day trader actually uses these tools in practice.
I built this for my own trading first. I am sharing it as open source because the open-source community on Tradingview gave me the foundation to learn, and this is my way of giving back what I have been given.
This is a structural tool, not a trading system. It does not generate buy/sell signals, alerts, or backtest results. Use it as a framework for building your own context around price action.
It's all risky, so you may as well make the bet.
Indicator

Indicator

AG Pro Liquidity Heatmap [AGPro Series]AG Pro Liquidity Heatmap
Overview / What it does
AG Pro Liquidity Heatmap is a visual liquidity-mapping tool designed to project areas where resting stop interest is more likely to be concentrated. Instead of focusing on a single pattern or a one-bar signal, this script builds a forward-looking heatmap from clustered pivot behavior and displays that information as persistent horizontal liquidity bands on the chart.
The core idea is simple: repeated reactions around similar price levels often create zones where traders place stops, breakout orders, or defensive exits. When those levels begin to cluster, they can become structurally important. This script converts that clustering behavior into a heat score and renders it as layered Fire / Ice bands so traders can quickly identify where liquidity concentration may be building above or below current price.
The script is not built as a prediction engine, and it does not attempt to claim where price must go next. Its purpose is to help traders organize the chart, monitor the nearest active liquidity bands, and understand which nearby levels appear more saturated, more persistent, or already mitigated. In that sense, it is best used as a market-structure context tool rather than as a standalone entry model.
This script is also intentionally different from traditional support/resistance overlays, breakout detectors, and liquidity sweep labels. It does not merely mark recent highs and lows. It clusters pivot-derived levels, weights them into a dynamic heat score, extends them cleanly to the right side of the chart, and then updates or extinguishes them as price interacts with those zones.
Unique Edge
The unique edge of this script is that it treats liquidity as a developing field rather than a static line. A normal horizontal level script may show one prior high or one prior low. AG Pro Liquidity Heatmap instead tracks repeated pivot concentration, merges nearby levels into composite zones, scores those zones, and then visualizes the result as a layered heat structure.
A second differentiator is the lifecycle logic. Once a band has been interacted with, the script does not leave every level unchanged forever. Depending on the selected behavior, a zone can fade or be removed after liquidity is taken. This helps reduce visual clutter and keeps the chart focused on currently relevant liquidity structures rather than a permanently accumulating archive of old levels.
A third differentiator is presentation. The script is designed to produce a clean forward projection area with right-extending heat bands, readable labels, Fire / Ice theme control, a functional heatmap panel, and an optional EQ Magnet line that tracks the balance area between the nearest active upper and lower liquidity bands. The goal is not only analytical clarity, but also a chart layout that remains readable during live use.
Methodology
1) Pivot detection
The script first identifies pivot highs and pivot lows using user-defined left and right pivot lengths. These pivots are treated as candidate liquidity reference points.
2) Cluster merging
If a new pivot forms close enough to an existing level, based on an ATR-driven merge distance, the script merges that information into the existing zone rather than creating unnecessary duplication. This allows nearby pivots to accumulate into a stronger composite band.
3) Heat scoring
Each zone receives a heat score. Repeated clustering increases that score. When volume weighting is enabled, pivots formed with relatively stronger volume can contribute more heavily to the final score. This does not reveal actual order book liquidity, but it can provide a useful proxy for where market attention and stop concentration may be stronger.
4) Layered rendering
Each active zone is rendered as a multi-layer horizontal band. The band thickness and saturation scale with heat score, which makes stronger zones visually heavier than weaker ones. This helps the chart communicate intensity without requiring the user to read every value manually.
5) Liquidity lifecycle
When price reaches a zone, the script can either fade it or remove it depending on the selected extinguish mode. Optional mitigation tracking can leave a visual reminder of where liquidity was taken. This behavior is important because it keeps the heatmap adaptive rather than static.
6) Balance tracking
When both upper and lower active liquidity bands are available, the script can display an EQ Magnet line between the nearest bands. This is not a target call. It is a contextual balance reference that can help visualize the midpoint of the currently nearest active liquidity field.
States & Visual Elements
- Fire bands represent upper liquidity concentration derived from pivot highs.
- Ice bands represent lower liquidity concentration derived from pivot lows.
- Stronger zones become visually denser and more prominent as heat score rises.
- Zone labels display side, heat score, and price information in either compact or detailed mode.
- The Heatmap Panel summarizes active band count, nearest zones, strongest zones, heat balance, last sweep information, and the current extinguish behavior.
- The EQ Magnet line highlights the midpoint between the nearest active upper and lower bands when enabled.
- Optional mitigation tracks can remain on the chart after liquidity is taken.
How to use it
This script is generally most useful as a context layer.
Many traders may choose to use it in one of three ways:
- to map where price may interact with nearby liquidity concentration,
- to judge whether the closest active field is above or below current price,
- to avoid taking impulsive decisions directly into dense opposing liquidity.
The script can also be useful for chart organization. Traders who already use trend tools, structure tools, or trigger models may use the heatmap as a location filter. For example, a setup forming directly into a strong opposing liquidity band may deserve more caution than a setup developing in cleaner space.
Key Inputs
Pivot Left / Right Bars
Controls how pivots are detected. Smaller values can produce more frequent zones; larger values can make the structure more selective.
Cluster Merge Distance (ATR)
Defines how close pivots must be to merge into the same liquidity band. Lower values keep zones more separated; higher values create broader clustering.
Volume-Weighted Mode
Allows higher-volume pivots to contribute more strongly to heat score. This is a proxy weighting mechanism, not direct order-flow confirmation.
Minimum Heat Score To Show
Filters out weaker zones from the visual display.
Visual Saturation Score
Controls how quickly the visual intensity reaches its maximum appearance.
Base Band Height and Horizontal Band Density
Shape the visual footprint of each zone and determine how rich or minimal the rendered band structure appears.
Label controls
Allow the user to choose label mode, font size, theme, label offsets, and label density.
Panel controls
Allow the user to change panel visibility, location, theme, and font size.
Liquidity Taken Behavior
Determines whether mitigated zones fade or are removed.
Limitations & Transparency
This script does not access order book data, exchange liquidation feeds, or hidden liquidity information. The displayed heatmap is derived from chart-based pivot clustering and optional volume weighting. For that reason, the bands should be understood as technical liquidity proxies rather than direct measurements of real resting orders.
The heat score is also relative to the script's own internal logic. It is a ranking mechanism inside this model, not an absolute market-wide score. A higher score means a zone has accumulated more structural weight within the selected settings; it does not guarantee a reaction.
Like any chart tool based on pivots, the behavior of the script depends on the chosen timeframe, the selected sensitivity inputs, and the structure of the instrument being analyzed. Lower timeframes can create more noise, while higher timeframes can produce fewer but broader zones.
The EQ Magnet line is a contextual midpoint reference only. It should not be interpreted as a fixed target, a required destination, or a directional forecast.
Risk Disclosure
This script is a visual analysis tool for chart study and trade planning. It is not financial advice, not an execution system, and not a promise of future price behavior. Liquidity zones can fail, be overrun, or be ignored by price entirely.
No indicator should be used in isolation. Traders should consider market structure, volatility, risk management, execution quality, and their own process before making trading decisions. Always test settings carefully and use position sizing appropriate to your own risk tolerance.
Indicator

AG Pro PDH PDL PWH PWL Engine [AGPro Series]AG Pro PDH PDL PWH PWL Engine
Overview / What it does
AG Pro PDH PDL PWH PWL Engine is a price-reference overlay built to track prior day, prior week, and prior month high / low levels in a clean and structured way. The script can display PDH, PDL, PWH, PWL, and optionally PMH / PML, together with midpoint equilibrium levels for the selected ranges.
The main purpose of the script is not to predict direction, generate guaranteed entries, or replace a complete trading plan. Its role is narrower and more practical: it helps traders keep important prior-period reference levels visible on the chart, distinguish which levels remain active, and identify which ones have already been traded through. In many markets, prior highs and lows are widely monitored as liquidity, reaction, and reference areas. This script organizes those areas into a format that is easier to read in live conditions.
A core design goal of this tool is chart hygiene. Many prior-level indicators become visually noisy when several daily, weekly, and monthly references are drawn together. This script was designed to keep the structure readable by using a minimal label system, right-extended lines, a swept / unswept state model, and an optional dashboard that summarizes the nearest active daily, weekly, and monthly levels.
The result is a workflow-oriented overlay that helps with context. Instead of forcing interpretation through aggressive signals, it presents a structured map of where important prior-period levels are located, whether they are still untouched, and whether current price is approaching one of them. That makes it suitable for traders who want an objective level engine rather than a directional prediction tool.
Unique Edge
The script focuses on presentation quality and state clarity rather than simple level plotting. Prior highs and lows are not rare concepts, but the practical usefulness of such levels depends heavily on how they are filtered, displayed, and maintained on the chart. This script aims to improve that usability in several ways.
First, it separates active levels from swept levels. This matters because a previously untouched level and a level that has already been traded through do not carry the same contextual value for many traders. By visually differentiating unswept and swept references, the overlay can help reduce ambiguity when reviewing current structure.
Second, it combines multi-period references in one coherent engine. Daily, weekly, and optional monthly levels can all be displayed together, while preserving a relatively clean visual hierarchy. This is particularly useful for traders who want to see whether current price is interacting with short-term references inside larger higher-timeframe ranges.
Third, it includes proximity logic. The script can highlight levels when price is near them using a threshold defined in ticks, percentage, or ATR terms. This does not imply a trade signal by itself. Instead, it acts as a situational awareness feature that helps traders notice when price is entering a predefined level zone.
Fourth, the script offers session and timezone controls. That allows the user to adapt the level-building logic to the exchange clock or to a chosen session definition. For traders who care about session-based construction and consistency across instruments, this can be an important operational detail.
Finally, the panel is designed as a compact summary rather than a decorative feature. It reports the nearest active daily, weekly, and monthly references, shows counts for active and swept levels, and keeps session / timezone / label mode settings visible. The goal is to reduce chart scanning time and make the script easier to use during live analysis.
Methodology
The engine tracks highs and lows from completed prior periods and then projects those values forward as reference lines. Depending on the enabled settings, it can build:
- Previous Day High and Previous Day Low
- Previous Week High and Previous Week Low
- Previous Month High and Previous Month Low
- Optional equilibrium midpoints for each enabled range
Each level is created only after the relevant source period is completed. In that sense, the level itself is based on completed historical range data. Once created, the line is monitored for its state. If price trades through a high reference or a low reference, the script marks that level as swept and changes its visual treatment accordingly.
The script also maintains historical periods up to the number defined in the settings. This makes it possible to preserve a limited amount of recent structure without keeping an unlimited number of stale objects on the chart.
The equilibrium option adds the midpoint of the corresponding prior range. Some traders use these 50% areas as balance references or as secondary context between the prior high and low. Because that midpoint is optional, the user can keep it visible when needed or disable it for a cleaner chart.
The proximity engine measures how close current price is to an active level using one of three methods:
- Tick distance
- Percentage distance
- ATR-based distance
This feature is meant to flag nearness, not to define trade quality on its own. A prior level being near price does not automatically make the setup actionable. It only states that price is close to a tracked reference according to the selected threshold logic.
States / Signals / Alerts
This script is primarily a level-state and context tool. It is not a directional forecasting model. Its most important outputs are state-based:
1) Active level
A level is considered active when it has been created from a completed prior period and has not yet been traded through by price.
2) Swept level
A level is considered swept when price trades through that reference. Visually separating swept levels from active ones helps the chart communicate which prior references remain untouched.
3) Near-level condition
When enabled, the script can highlight active levels that are close to current price according to the user-defined threshold method. This can help traders focus attention on nearby reference zones without scanning the entire chart manually.
4) Compact dashboard state
The panel summarizes the nearest active daily, weekly, and monthly levels, along with active count, swept count, near count, selected timezone, session configuration, and label mode.
The included alert conditions are intentionally simple and state-based:
- Price is near one of the active levels
- At least one tracked level was swept on the current bar
These alerts are meant to support monitoring. They are not, by themselves, a complete trading trigger. Users should interpret them together with structure, volatility, session context, confirmation rules, and their own risk process.
Why this script can be useful
This script can be useful because prior highs and lows often matter most when they are easy to monitor and hard to misread. In practice, traders do not only need the raw numbers; they need a chart presentation that allows those numbers to remain readable during fast market conditions.
A clean prior-level map can help in several common situations:
- Evaluating whether price is approaching an untouched daily or weekly reference
- Checking whether a local move is happening inside a larger higher-timeframe level framework
- Distinguishing still-relevant references from already-tested ones
- Monitoring potential reaction zones without crowding the chart with excessive objects
- Organizing reference structure across intraday and swing workflows
The script is also designed to remain practical over time. Instead of drawing everything with equal visual importance, it uses state logic and summary logic to keep the display more structured. That can make the tool easier to integrate into a routine where prior-period references are part of the trader's contextual process.
Another useful aspect is that the script stays objective. It does not attempt to label every market move with a strong opinion. It shows completed prior-period levels, their current state, and whether price is approaching them. Many traders prefer this kind of neutral reference framework because it can be combined with other methodologies without forcing one interpretation.
Key Inputs
Timezone
The script can use the exchange timezone or a selected timezone. This affects how period transitions are interpreted.
Use Custom Session Filter
When enabled, highs and lows are built only from bars inside the selected session. This allows the user to adapt the range construction to a chosen session framework.
Session
Defines the custom session window when session filtering is enabled.
Show Previous Day / Week / Month Levels
Each group can be enabled or disabled independently so the user can decide how much structure to display.
Show Equilibrium Midpoints
Adds the 50% midpoint of each enabled prior range.
Historical Periods to Keep
Controls how many past periods remain visible on the chart for each enabled level family.
Proximity Threshold Type
Lets the user define nearness by ticks, percentage, or ATR.
Threshold Value / ATR Length
Controls the sensitivity of the proximity logic.
Highlight Levels When Near
Allows visual emphasis when price approaches an active level.
Line Style and Extension Settings
Controls the appearance of unswept and swept lines and whether active lines extend to the right.
Minimal Label Mode
Allows labels to be turned off, restricted, or shown for active levels, depending on the user's preferred chart cleanliness.
Panel Controls
The dashboard can be enabled or disabled and its size, position, and colors can be adjusted.
Example use cases
This script can be used in different ways depending on the trader's workflow.
Intraday context mapping:
A trader may monitor PDH and PDL together with PWH and PWL to understand whether intraday price is moving into untouched daily liquidity while still operating inside a broader weekly range.
Reaction-zone awareness:
A trader may use near-level highlighting to notice when price is approaching an unswept prior high or prior low and then look for separate confirmation with their own method.
Structure filtering:
A trader may ignore swept references and focus mainly on active levels that remain intact, especially when trying to simplify the chart during live sessions.
Session-based reference building:
A trader who prefers a specific session logic can use the session filter so the constructed ranges better match their market framework.
Dashboard monitoring:
A trader may use the panel as a quick situational summary to identify which daily, weekly, or monthly reference is closest without manually reading every line.
Limitations & Transparency
This script does not know why price interacts with a level. It only identifies prior-period references and tracks whether they are active, near, or swept according to the rules defined in the code.
A prior level is not automatically support or resistance in every market condition. Some reactions are meaningful, some are shallow, and some levels are passed through with little response. For that reason, the script should be treated as a structured reference map rather than a self-sufficient trade decision engine.
The near-level logic depends on user-defined thresholds. Different threshold types and values can materially change how often levels are classified as near. Traders should calibrate these settings according to instrument volatility and their own workflow.
Session and timezone choices also matter. The same market can produce different prior-period values depending on how the session is defined. Users should select settings that match the way they analyze the instrument.
Historical object limits, chart timeframe, and chart compression can influence how dense the display appears. A setting that looks clean on one instrument or timeframe may feel crowded on another. The script provides controls to manage that, but users should still adapt it to their own use case.
The midpoint equilibrium lines are optional because not every trader uses 50% references the same way. Their inclusion does not imply that the midpoint has universal predictive value. It is simply provided as an additional structural reference.
This script is intentionally conservative in what it claims. It does not claim to detect institutional intent, hidden order flow, or guaranteed reversals. It displays prior completed reference levels and their current state on the chart.
Risk Disclosure
This script is for chart analysis and educational use. It does not provide financial advice, investment advice, or trade recommendations.
Prior-period highs, lows, and midpoint references can be useful market context, but they are not guarantees of reaction, reversal, continuation, or liquidity behavior. Market conditions can change quickly, and price can move through any level without producing a tradable setup.
Users should combine this tool with their own confirmation process, execution rules, position sizing framework, and risk management. No indicator should be used as the sole basis for entering or exiting a trade.
Before using any chart tool in live markets, it is important to understand how its settings affect output, how it behaves on the instrument being traded, and how it fits into a broader decision process.
AG Pro PDH PDL PWH PWL Engine is designed to help organize prior-period level information in a cleaner and more operational format. Its value comes from clarity, state tracking, and context support, not from predictive certainty.
Indicator

Round Number Scale📌 A clean round-number scale that adapts to your chart, your zoom, and your market.
▌WHY IT'S USEFUL
Round numbers matter.
They often act as visual anchors for price reading, execution planning, reaction zones, and overall chart structure. But the native price scale does not always make these levels obvious enough, especially when you zoom in, zoom out, switch timeframes, or work on instruments with very different price behaviors.
This indicator builds a dedicated round-number scale directly on the chart and automatically adapts its density to the visible range, so the display stays readable instead of becoming overcrowded or too sparse.
It is designed to help you read price structure faster, keep important psychological levels visible, and maintain a cleaner visual framework across multiple chart conditions.
▌QUICK START
1. Add the indicator to your chart.
2. If the scale seems hidden, right-click the indicator name.
3. Go to Visual order → Bring to front.
4. Choose whether the scale is displayed on the left or right side.
5. Adjust the Size and Offset settings if you want a wider, tighter, or shifted display.
6. Optionally enable short numbers, labels, ruled lines, or a different visual theme.
▌MAIN SETTINGS
• Scale
Choose the side of the chart, the visual theme, the wall size, and the horizontal offset.
• Labels
Show or hide labels, increase or reduce their size, and switch to short number formatting such as 1K / 1M / 1B.
• Lines
Show or hide grid lines, adjust line thickness, and enable ruled lines for a lighter alternating visual structure.
• Themes
The indicator includes multiple visual styles and automatically adapts to the chart background for better contrast.
▌HOW IT WORKS
The script detects the currently visible chart window and computes an adaptive round-number grid based on the instrument, the timeframe, and the visible price range.
It then:
- builds a dedicated side scale,
- selects visible round-number levels,
- highlights the strongest levels,
- draws matching horizontal guide lines on the chart,
- and filters label density automatically to keep the display readable.
On lower timeframes, it can also display finer subdivisions of the round-number structure when relevant.
▌WARNINGS & LIMITS
If the scale is not visible, this is usually only a display-order issue:
Visual order → Bring to front.
The indicator automatically adjusts round-number density to the visible chart range, but no fully dynamic layout can be perfect in every possible situation.
In particular, adaptation may be less precise when combining:
- very high timeframes,
- very large historical ranges,
- strong volatility,
- or logarithmic scaling.
If needed, try one of the following:
- switch back to a linear scale,
- zoom slightly in or out,
- use a lower timeframe,
- adjust the Scale size parameter.
This indicator is mainly designed as a visual chart-reading tool. It does not generate trading signals or alerts by itself. Indicator

Indicator

Indicator

Volume Bubble Levels [BackQuant]Volume Bubble Levels
Overview
Volume Bubble Levels is a volume-expansion and liquidity-mapping tool designed to identify statistically significant participation events and project them forward as actionable structural levels.
Instead of treating volume as a secondary confirmation metric, this indicator treats volume spikes as primary events and builds a framework around them:
Detect abnormal volume relative to a rolling baseline.
Classify those events into tiers based on intensity.
Visualize them directly on price using scalable “bubble” markers.
Project their high and low as forward levels (“naked levels”).
Track whether those levels remain untouched, get retested, or are invalidated.
The result is a system that highlights where meaningful participation occurred , and more importantly, whether the market has returned to those areas .
This shifts the focus from “what price did” to “where size traded and what has or hasn’t been revisited since.”
Core idea
Markets move through phases of normal participation and abnormal participation . Most bars are noise. Occasionally, a bar prints with volume significantly above its baseline, indicating:
Aggressive positioning,
Large order execution,
Liquidity events,
Absorption or distribution,
Forced flows (liquidations, stops, news reactions).
These events often leave behind structural footprints.
Volume Bubble Levels captures those footprints and answers:
Where did abnormal participation occur?
How strong was it relative to recent history?
Have those levels been revisited?
Are there still “untouched” zones where liquidity may remain?
Volume baseline and normalization
The first step is establishing what “normal” volume looks like.
The script computes a rolling moving average of volume:
volMa = MA(volume, volMaLen, volMaType)
You can choose the type:
SMA for stable baseline,
EMA for faster adaptation,
RMA for smoother response,
WMA for weighted emphasis on recent bars.
Then the script computes a ratio:
volRatio = volume / volMa
This is the key metric.
Interpretation:
volRatio ≈ 1 → normal participation.
volRatio > 1 → above-average participation.
volRatio >> 1 → abnormal participation.
Everything in the script is built off this ratio.
Tiered volume classification
Instead of treating all volume spikes equally, the script classifies them into three tiers:
Tier 1 — Elevated : moderate expansion above baseline.
Tier 2 — High : strong participation.
Tier 3 — Extreme : major volume event.
Defined as:
Tier 1: volRatio ≥ t1Mult
Tier 2: volRatio ≥ t2Mult
Tier 3: volRatio ≥ t3Mult
Each higher tier overrides the lower:
Tier 3 > Tier 2 > Tier 1
This creates a hierarchy of importance:
Tier 1 = “noticeable”
Tier 2 = “significant”
Tier 3 = “structural”
Directional context (bull vs bear volume)
Each volume event is also classified directionally:
Bull = close ≥ open
Bear = close < open
This matters because:
Bull volume spikes often represent aggressive buying or short covering.
Bear volume spikes often represent aggressive selling or long liquidation.
So every event carries two dimensions:
Magnitude (Tier 1 / 2 / 3)
Direction (bull / bear)
Bubble visualization (what the circles mean)
Volume events are plotted directly on price as circular “bubbles.”
Key properties:
Position: plotted at the closing price of the bar.
Color: determined by tier and direction.
Size: determined by how far the volume exceeds the threshold within its tier.
Size bucketing within tiers
Each tier is subdivided into five size buckets:
Tiny
Small
Normal
Large
Huge
This is done by splitting each tier’s range into equal steps.
Example:
Tier 1 spans from t1Mult → t2Mult.
That range is divided into 5 segments.
Higher volRatio within that tier = larger bubble.
So a large Tier 1 bubble may still be smaller than a small Tier 2 bubble, preserving hierarchy.
What bubbles represent in practice
Each bubble is a localized participation event .
Interpretation:
Cluster of bubbles → sustained participation.
Single large bubble → isolated liquidity event.
Tier 3 bubble → major structural event, often worth tracking.
They are not signals by themselves. They are markers of where something important happened .
Naked levels: projecting volume events forward
The core feature of this script is not the bubbles themselves, but what happens after them.
For every qualifying volume event, the script creates:
A horizontal line at the bar’s high.
A horizontal line at the bar’s low.
These are called naked levels .
Why both high and low:
High captures the upper boundary of the event.
Low captures the lower boundary.
Together, they define the full price range where abnormal volume occurred.
What “naked” means
A level is “naked” if:
Price has not yet traded back through it.
These are important because:
They represent unresolved areas.
Liquidity may still be resting there.
Market participants involved in the original event may still be positioned around that level.
Level lifecycle
1) Creation
On a volume event:
High line and low line are created.
Stored with metadata:
- price
- tier
- direction
- creation bar
2) Extension
Each level extends forward in time:
Updated every bar.
Projected to the right until resolved.
3) Takeout (resolution)
A level is considered “taken” when price trades through it:
High level taken when: high > level price
Low level taken when: low < level price
Once taken:
The line is terminated.
Removed from active tracking.
4) Expiry
Levels also expire after a fixed number of bars:
If (current bar - birth bar) > extendBars → level is removed.
This prevents infinite clutter and ensures relevance.
Why naked levels matter
These levels act like:
Liquidity magnets,
Revisit zones,
Areas of unfinished business.
In practice:
Price often returns to high-volume zones.
Untouched levels can act as targets.
Revisits can trigger reactions, pauses, or reversals.
This aligns with auction market theory:
Markets seek to revisit areas of high participation.
Unfinished auctions tend to get completed.
Tier-aware level significance
Not all levels are equal:
Tier 1 levels = weaker, more frequent.
Tier 2 levels = meaningful.
Tier 3 levels = major structural zones.
The script reflects this visually:
Tier 3 lines are thicker.
Colors differ by tier and direction.
So you can quickly identify:
Which levels matter most.
Color system
Each tier has separate bull/bear colors.
This allows:
Bullish volume zones vs bearish volume zones.
Visual distinction between accumulation-type and distribution-type activity.
Because:
A high-volume bullish bar and a high-volume bearish bar represent very different order flow contexts.
Line styling
You can choose:
Dotted
Dashed
Solid
This does not affect logic, only readability.
What this indicator is NOT
It is important to understand what this tool is not doing:
It is not a volume profile.
It does not aggregate volume by price level.
It does not measure cumulative delta.
It does not predict direction directly.
Instead, it is:
Event-based , not distribution-based.
Forward-projecting , not historical summarizing.
Structure-focused , not signal-focused.
How to use it
1) Identify important zones
Focus on:
Tier 2 and Tier 3 bubbles.
Clusters of bubbles.
These represent areas of significant participation.
2) Track naked levels
Watch:
Untouched levels ahead of price.
Levels near current price.
These often act as:
Targets,
Reaction zones,
Liquidity pools.
3) Watch level interactions
When price approaches a level:
Rejection → confirms level relevance.
Clean break → invalidates it.
Chop around level → absorption.
4) Combine with structure
This tool works best with:
Trend context,
Support/resistance,
Market structure,
Other flow indicators.
Example interpretations
Scenario 1: Strong bullish bubble cluster
Multiple Tier 2–3 bullish bubbles form.
Price moves away without revisiting.
Interpretation:
Strong accumulation zone.
Untouched lows may act as future support or targets.
Scenario 2: Price returns to naked level
Price revisits a previously untested level.
Interpretation:
Liquidity is being re-engaged.
Potential reaction point.
Scenario 3: Level invalidation
Price blows through a level with strong continuation.
Interpretation:
That level no longer holds structural significance.
Market has repriced beyond that participation zone.
Strengths
Highlights meaningful participation events.
Projects actionable forward levels.
Separates noise from structural volume.
Works across assets and timeframes.
Limitations
Depends on volume quality (less reliable on low-liquidity assets).
Does not indicate direction by itself.
Can produce many levels in volatile environments.
Requires interpretation, not plug-and-play signals.
Summary
Volume Bubble Levels transforms abnormal volume events into forward-projected structural levels. By measuring volume relative to its own baseline, classifying it into tiers, and projecting both the high and low of those events, the indicator builds a dynamic map of where meaningful participation occurred and whether those areas remain unresolved. The bubbles highlight the event, but the real value comes from the naked levels, which act as evolving liquidity zones that can influence future price behavior. Indicator

AG Pro Support Resistance Reaction Map [AGPro Series]AG Pro Support Resistance Reaction Map
Overview / What it does
This indicator maps horizontal support and resistance zones from confirmed price structure, then evaluates how price reacts when it returns to those zones. Instead of treating every level touch as equally important, the script focuses on whether the interaction looks constructive, weak, or potentially broken.
The core objective is to make structural reactions easier to read on-chart. Confirmed pivot highs and lows are converted into zones, nearby levels are merged, older levels can expire, and the chart prioritizes the most relevant active zones on each side of price. When price re-enters a zone, the script grades the reaction and can display labels such as Clean Hold, Sharp Reject, Soft Bounce, or Break Confirmed.
This publication is designed as an indicator, not as an execution engine. It does not place trades, predict future returns, or guarantee that a level will hold. Its purpose is to help traders organize structural context and evaluate reaction quality in a more systematic way.
Unique Edge
Support and resistance is a classic concept, so the difference here is not the concept itself but the workflow built around it.
This script is not a generic auto-drawing tool that tries to plot every possible line. It is a reaction map. The emphasis is on how price behaves inside a structural zone, not on covering the chart with as many levels as possible.
The script differs from tools that are primarily centered on pivot formulas, breakout-retest grading, moving-average reclaim logic, or channel structure. Here, the focus is horizontal structural memory and the quality of the live interaction with that memory. In practice, that means the script is trying to answer questions such as:
- Is this support still reacting constructively?
- Is this resistance rejecting cleanly or absorbing pressure?
- Is the latest touch just noise, or is it a more meaningful retest?
- Which nearby intact levels still deserve attention right now?
Another important distinction is the panel logic. The compact panel does not attempt to summarize all historical levels. It highlights the nearest intact support below price and the nearest intact resistance above price, along with their state, raw versus qualified touch count, and the latest recorded reaction.
Methodology
1) Structural level detection
Confirmed pivot highs and lows are used to create horizontal support and resistance zones. The script waits for confirmation rather than guessing unfinished pivots.
2) Zone construction
Each level is converted into a zone using an ATR-based width. This keeps the plotted area adaptable instead of forcing the same fixed width on all markets and all volatility environments.
3) Merge logic
Nearby levels of the same type can be merged when they fall within the selected merge distance. This helps reduce duplication and keeps the map cleaner.
4) Age and visibility control
Older levels can expire, broken levels can be hidden or faded, and the script visually prioritizes the nearest intact zones. This is intended to improve readability rather than preserve every historical level forever.
5) Reaction scoring
When price newly enters a live zone, the script evaluates the interaction using factors such as penetration depth, close location inside or outside the zone, candle body bias, impulse, and whether the touch is the first qualified retest. The result is translated into a reaction label and a quality score.
6) Touch accounting
The script tracks both Raw and Qualified touches. Raw touches represent zone entries. Qualified touches are stricter and require a fresh entry plus cooldown spacing, which helps avoid counting clustered bars as repeated independent retests.
Signals & Alerts
The script can generate labels and alerts around the most important structural interactions.
Main reaction labels:
- Clean Hold
- Sharp Reject
- Soft Bounce
- Break Confirmed
- Failure Risk
Main alert conditions:
- Bullish Level Reaction
- Bearish Level Reaction
- Level Break Confirmed
These labels and alerts are descriptive, not predictive. They summarize the current structural interaction detected by the script. They are not trade instructions and should not be interpreted as a promise of continuation or reversal.
Key Inputs
Levels
- Pivot Strength
- Maximum Active Levels
- Zone Width (ATR Multiplier)
- Merge Distance (ATR Multiplier)
- Level Expiry (bars)
Reaction Engine
- Retest Cooldown (bars)
- First-Touch Bonus
- Keep Broken Levels Visible
Visuals
- Show Reaction Labels
- Show Compact Panel
- Visible Zones Per Side
- Emphasize Nearest Levels
- Show Soft Bounce Labels
- Minimum Label Score
- Minimum Bars Between Side Labels
- Label Stagger (bars)
- Broken Level Fade
- Base Zone Opacity
- Label Offset (ATR)
- Label Size
- Panel Text Size
Panel
- Panel Location
- Panel Theme (Dark / Light)
Limitations & Transparency
- Pivot-based levels are confirmed after the selected pivot strength completes, so the script is intentionally reactive rather than anticipatory.
- Zone width is ATR-based, which means the visual footprint of levels will change with volatility.
- Raw and Qualified touch counts are intentionally different. Qualified touches are filtered by entry logic and cooldown, so they will usually be lower than raw counts.
- The compact panel is selective. It shows the nearest intact support and the nearest intact resistance, not a full inventory of every level on the chart.
- Visibility controls are designed to keep the chart readable. As a result, some valid but lower-priority levels may be de-emphasized or hidden from the main view.
- Support and resistance remains interpretive by nature. No horizontal level works in isolation across all symbols, timeframes, or market regimes.
Risk Disclosure
This indicator is a chart-analysis tool. It is not a broker, a signal service, or an automated trading system. It does not provide investment advice and it does not guarantee that any level will hold, reject, or break in a particular way.
All markets involve risk. Price can invalidate a structural zone quickly, especially during news events, regime shifts, or low-liquidity conditions. Use the script as one part of a broader decision process that includes market context, liquidity conditions, timeframe alignment, and risk management.
Indicator

Psych Level Mirror - Futures <-> CashPsych Level Mirror — Futures ↔ Cash
See the hidden levels that move your market.
Futures and cash/CFD instruments trade at different prices due to the spread (carry, funding, roll). A round number on the cash index — like NAS100 20,000 or SPX500 5,600 — doesn't land on a round number on the futures chart. But cash traders are still reacting to those levels. This indicator makes them visible.
WHAT IT DOES
Psych Level Mirror draws two layers of psychological price levels on your chart:
Native psych levels — The round numbers of whatever you're charting (e.g. ES 5650, 5700). These are drawn as full zones with support/resistance state tracking: green when acting as support, red when resistance. Zones flip color when price breaks through and retests — exactly how institutional levels behave in practice.
Mirrored companion levels — The round numbers from the other side of the pair, projected onto your chart using the live spread. On an ES chart, you'll see where SPX500 cash round numbers (5,600, 5,650, 5,700) actually sit on the futures price scale. These are marked with a dashed center line and dotted green/red borders so they're visually distinct from your native levels.
WHY THIS MATTERS
Large portions of the market trade the cash index (CFDs, spot, options on SPX). When NAS100 hits 20,000 or SPX500 hits 5,600, that triggers activity from cash traders — but on your NQ or ES futures chart, that level shows up at an odd number like 20,034 or 5,628. Without this indicator, you'd never know why price stalled or reversed at a seemingly random level.
FEATURES
Auto-detection — Drop it on any supported chart and it identifies the correct pair. Works on NQ, MNQ, ES, MES, YM, MYM, RTY, M2K, GC, MGC, and their cash/CFD counterparts (NAS100, SPX500, US30, US2000, XAUUSD).
Live spread calculation — The futures-cash spread shifts throughout the session. Mirror levels update automatically as the spread moves.
State tracking on all levels — Both native and mirrored zones track whether price is above (support/green) or below (resistance/red), and change color on confirmed breaks and retests.
Major & minor levels — Major round numbers (e.g. every 1000 on NQ, every 100 on ES) and minor levels (half-steps) are drawn separately with different visual weight.
Auto-scaling — Level intervals adjust automatically based on the instrument's price. Works correctly on everything from Russell 2000 (~2,100) to NQ (~20,000) to Gold (~3,000).
Manual override — Set a fixed spread offset or force a specific pair via the dropdown if needed.
Info table — Shows detection mode, chart side (futures/cash), companion symbol, live spread, and level intervals at a glance.
HOW TO READ IT
Colored zone (green/red box) = Native psych level — your instrument's own round numbers
Dashed center line through zone = Exact round number of the native level
Dashed/dotted colored line with tag = Mirrored companion level projected onto your chart
Green dotted border (mirror) = Top of the mirrored zone
Red dotted border (mirror) = Bottom of the mirrored zone
Dark green tag box = Companion level acting as support (price above)
Dark red tag box = Companion level acting as resistance (price below)
SUPPORTED PAIRS
NQ1! / MNQ1! ↔ NAS100
ES1! / MES1! ↔ SPX500
YM1! / MYM1! ↔ US30
RTY1! / M2K1! ↔ US2000
GC1! / MGC1! ↔ XAUUSD
Custom ↔ Custom
SETTINGS
Instrument Pair — Auto (recommended), named preset, or Custom with your own symbols
Native Psych Levels — Toggle major/minor, adjust intervals and zone widths, set number of levels above/below
Mirrored Levels — Toggle on/off, major-only option
Spread — Auto (live) or manual fixed offset
NOTES
The spread between futures and cash is not constant. It narrows into expiry and fluctuates with funding/carry. Auto mode handles this — levels shift slightly throughout the session, which is accurate to reality.
Best used on intraday timeframes (1m–15m) where the spread offset matters most. On daily+ charts the spread becomes negligible relative to the level intervals.
This indicator is an overlay — it works alongside your existing setup without conflict.
ORIGIN
This indicator is built from concepts taught by Student Alpha (Shawn) , who describes the relationship between correlated instruments with a simple but powerful idea: "The tail wags the dog."
The cash index and the futures contract are tethered together, but they don't move tick-for-tick in lockstep. When the cash market reacts to a psychological round number, that reaction ripples into the futures — and vice versa. The "tail" (the correlated instrument you're not charting) wags the "dog" (the one you're trading). Understanding where those hidden levels sit on your chart gives you an edge that most traders never see.
Psych Level Mirror was built to make that concept visual and automatic — no more manual math, no more guessing where the cash 20,000 lands on your NQ chart. Indicator
