Untested Levels - PD Highs, Lows & GapsUntested Levels automatically maps the session prices futures traders commonly mark by hand: previous regular-session highs and lows, current and prior overnight highs and lows, previous closes and unfilled gap levels, plus the all-time high.
The purpose is simple: spend less time redrawing levels every morning and keep important price context visible as the market develops. Each line begins where its high, low, or close was established and is labeled with both its name and exact price.
The indicator is designed around the session structure of CME equity index futures, particularly Nasdaq futures (NQ/MNQ) and S&P 500 futures (ES/MES). Its session times are fully configurable, so the same framework can be used with other futures markets whose trading sessions are defined appropriately.
WHY IT IS DIFFERENT
Many session-level tools either show only the most recent day or remove a level as soon as price reaches it. This indicator maintains a structured history and treats a level's first breach separately from its display timing.
By default, a prior level that is breached during the current trading day remains visible until the day rolls over. This preserves the line for the rest of the session, allowing you to see whether a former high or low is subsequently respected, rejected, or used as support or resistance. If you prefer immediate removal, the "Hide breached levels immediately" setting is available.
Regular-session highs and lows, overnight highs and lows, and prior closes each have their own lookback setting. You can retain more history for one class of level without overcrowding the chart with every other class.
The calculations are session-defined rather than chart-defined. They are built from the symbol's extended-hours feed, so switching the chart between Regular Trading Hours and Electronic Trading Hours does not change the underlying levels. An RTH chart can therefore remain visually clean while still displaying the overnight high and low.
LEVEL NAMES
The numbering follows trading days, not calendar dates. The overnight session belongs to the same trading day as the regular session that follows it.
YD High / YD Low
Yesterday's regular-session high and low.
PD 2 High / PD 2 Low
The regular-session high and low from two trading days ago.
PD 3, PD 4, and later numbers continue in the same way.
YD is effectively the first prior trading day, so there is no separate
"PD 1 High" or "PD 1 Low" label.
ON High / ON Low
The current trading day's overnight-session high and low.
These update while the overnight session is forming.
ETH 1 High / ETH 1 Low
The overnight high and low associated with yesterday's regular session.
ETH 1 therefore pairs with YD.
ETH 2 High / ETH 2 Low
The overnight high and low from two trading days ago.
ETH 2 pairs with PD 2, ETH 3 pairs with PD 3, and so on.
YD Close
The most recent configured session close. This level always displays when
previous-close levels are enabled.
PD 2 Close, PD 3 Close, etc.
Older configured closes that remain unfilled by a later regular session.
These levels identify still-open historical gaps within the selected
gap lookback.
ATH
The all-time high. If a displayed high is also the all-time high, its
normal label receives an ATH prefix. If the all-time high is not one of
the displayed session levels, a separate ATH line is drawn.
SESSION CALCULATIONS
Each configured trading day is divided into three parts:
Overnight session:
Trading-day start to the regular-session open.
This produces ON and ETH highs and lows.
Regular session:
Regular-session open to regular-session close.
This produces YD and PD highs and lows.
Post-close tail:
Regular-session close to the next trading-day start.
This does not create a new session high or low, but its price action can
breach an existing level.
The default times are expressed in Pacific Time:
Trading day starts: 15:00
Regular session opens: 06:30
Regular session closes: 13:15
Close candle opens: 13:55
The time zone and all session boundaries can be changed in the settings. The "Close candle" input identifies the opening time of the candle whose closing price will be stored. If that exact candle is unavailable, the script uses the last available candle before the selected time.
WHAT COUNTS AS UNTESTED
A prior regular-session high remains unbreached until later price trades above it. A prior regular-session low remains unbreached until later price trades below it. The calculation considers price action after the level's own regular session, including that day's post-close tail, later overnight sessions, and later regular sessions.
An overnight high or low is evaluated only against price action after that overnight session ends. This prevents the price action that created the level from also invalidating it.
By default, an exact touch does not count as a breach; price must trade through the level. Enable "Exact touch counts as a breach" if you want a touch to invalidate it.
YD High, YD Low, ON High, ON Low, and YD Close remain available as current reference levels even when tested. Older PD and ETH levels are filtered according to their breach status and your selected display timing.
PREVIOUS CLOSES AND GAPS
YD Close always shows when enabled. Older closes appear as PD n Close only while their gap remains unfilled.
Gap status is based on later regular-session price action. Overnight and post-close-tail activity do not fill a close gap. This keeps the gap logic aligned with the cash-session context rather than allowing overnight movement alone to remove the level.
An alert condition is included for price touching or crossing YD Close during the regular session.
ALL-TIME HIGH
The ATH calculation combines available chart history, extended-hours intraday history, and extended daily history. If the ATH matches a displayed high, that label is prefixed with ATH and emphasized. Otherwise, the indicator creates a standalone ATH level so the price remains marked even when it falls outside the selected session lookbacks.
LOOKBACKS AND DISPLAY CONTROLS
The indicator provides independent controls for:
• Regular-session high/low lookback
• Overnight high/low lookback
• Prior-close and gap lookback
• YD, PD, ON, ETH, close, ATH, and label visibility
• Immediate or end-of-day removal of breached levels
• Exact-touch breach behavior
• Session times and time zone
• Colors, line style, line width, label size, and label offset
Separating the lookbacks makes it possible to retain a broad history of untested highs and lows while using a shorter window for overnight levels or gaps.
RTH AND ETH CHART BEHAVIOR
All session values are requested from extended-hours data, so the same calculated levels appear whether the chart is displaying RTH or ETH candles.
PulseWire scripts only execute when the chart receives a bar. An RTH chart therefore cannot update live while its chart session is closed. To handle this, "Roll levels at the regular session close" is enabled by default. It advances the labels and removes levels breached during the completed day on the final regular-session bar, leaving a frozen RTH chart in the correct end-of-session state. The extended-hours feed completes the normal rollover when the next chart session begins.
For live overnight development of ON High and ON Low, use an ETH chart.
HOW TO USE THE LEVELS
These lines identify historically significant prices; they do not predict which level price will visit or how price will react when it gets there. Traders may use them as context for targets, breakouts, failed breakouts, support/resistance flips, gap fills, and confluence with their own trade setups.
The retained-line behavior is especially useful after a breach: instead of losing the reference immediately, you can observe whether price returns to the level and changes its behavior around it later in the same session.
LIMITATIONS
This indicator is intended for intraday charts. Its session calculations use an extended-hours intraday feed, set to five minutes by default. Available lookback depth depends on the amount of intraday history PulseWire provides for the symbol and the user's plan.
Session defaults are designed for the stated CME equity index futures workflow. Confirm and adjust the time zone, trading-day start, regular-session boundaries, and close-candle time before using the indicator on another market.
Holiday schedules, shortened sessions, missing bars, exchange data differences, and delayed feeds can affect the levels. Use standard price charts and verify the settings for the instrument being traded.
Untested Levels is a charting and market-context tool, not a trading system. It does not provide entries, exits, profit targets, or guarantees of future support or resistance. Indicator

ATH/ATL Fibonacci Retracement - Labels, Golden Pocket & AlertsPlots Fibonacci retracement levels anchored to the all-time high and all-time low of the loaded chart history. The range updates automatically as new highs or lows print, so the levels always reflect the full extent of price action without manual redrawing.
Features:
- Auto ATH/ATL tracking — the 0% and 100% anchors update dynamically across all available history.
- Flip toggle — switch 0% between the top (all-time high) and the bottom (all-time low) to suit your bias or the direction of the move you're measuring.
- Standard Fib levels — 0%, 23.6%, 38.2%, 50%, 61.8%, 78.6%, and 100%, each color-coded.
- On-chart labels — every level shows its retracement percentage alongside the exact price, placed to the right of the last bar. Adjustable offset.
- Golden pocket shading — the 61.8%–78.6% reaction zone is highlighted for quick visual reference. Toggle on/off.
- Built-in alerts — alert conditions on crosses of each major level, plus a golden-pocket entry alert, ready to wire up from the Create Alert dialog.
Notes: Levels are based on the chart's loaded history, so the all-time high/low depends on how far back your data goes and your timeframe. This is an analysis tool, not financial advice — use it alongside your own process and risk management. Indicator

Liquidity Side Bias Engine [AGPro Series]Liquidity Side Bias Engine
🧠 Core Idea
Which side of resting liquidity is the more likely near-term draw right now: the buy-side above, or the sell-side below?
This script is built to answer that one question with structure instead of guesswork.
📌 Overview / What It Does
Liquidity Side Bias Engine is a forward-looking, two-sided liquidity planner for smart-money and ICT-style analysis. Most price action leaves resting liquidity on both sides of the market: buy-side liquidity above old highs and equal highs, and sell-side liquidity below old lows and equal lows. At any moment, one of those two sides usually has the stronger pull. This tool maps the nearest untapped liquidity on each side and weighs it into a single, readable side lean.
Concretely, it identifies the closest buy-side pool above price and the closest sell-side pool below price from equal-highs and equal-lows clusters, the prior higher-timeframe high and low, and unmitigated swing points. It then scores each side from 0 to 100 using proximity, pool strength, trend context, and premium-discount range position, and reports which side is leaning, by how much, where the primary draw sits, and which opposite level would flip the read.
It does NOT predict price, generate buy or sell signals, or automate trades. It organizes a two-sided liquidity picture into a structured bias so the chart is easier to read and plan around. Every output is analytical context, not a recommendation.
🎯 Purpose & Design Philosophy
Liquidity tools usually fall into two buckets: reactive sweep detectors that mark a liquidity grab after it already happened, and static maps that draw every pool on the chart and leave interpretation entirely to the trader. Both are useful, but neither answers the practical question a planner actually asks before the move: of the two sides, which one is the market more likely leaning toward next?
This engine was built to fill that gap. It is for the trader who already understands liquidity but wants a clean, consistent way to frame the two-sided picture without manually weighing five different factors on every chart. It supports a patient, context-first mindset: read the lean, understand why it leans, watch the primary draw and the flip level, and let broader market context confirm or deny the idea. The goal is intentional, structured thinking, not a shortcut around it.
⚡ Why This Script Is Different
Most liquidity tools focus on what already happened, marking sweeps and grabs after the candle closes, or they paint a dense map of every pool and stop there.
This script does NOT try to call tops and bottoms, does NOT fire trade signals, and does NOT bury the chart in unlabeled levels.
Instead, it looks forward. It treats buy-side and sell-side liquidity as a two-sided tug-of-war and resolves it into one lean score from 0 to 100, with a clear dominant side, a primary draw target, an opposite flip level, the pool type in play, and a premium-discount range read. The leaning side is drawn solid and emphasized; the opposite side is drawn faint as the flip reference. The result is a single, calm decision-support read instead of a wall of levels or a backward-looking alert.
⚙️ Methodology
1. Context Detection
An ATR baseline, an EMA trend backbone with a slope check, and a premium-discount dealing range are computed to describe the current environment.
2. Reference Mapping
The nearest untapped buy-side pool above price and sell-side pool below price are located from equal-highs and equal-lows clusters, the prior higher-timeframe high and low, and unmitigated swing points. The prior period adapts to the chart: prior day on intraday, prior week on daily, prior month on higher timeframes.
3. Reaction Evaluation
Each side is scored from 0 to 100 across four factors: proximity (closer pools pull more), pool strength (cluster size, prior-period magnetism, freshness), trend context (the direction-aligned side is weighted), and range position (discount weights the buy-side draw, premium weights the sell-side draw). The two scores are compared into a single lean; a small balance gap is treated as two-sided.
4. Visual Output
The leaning side, its primary draw, the opposite flip level, pool type, distance, and a next-action read are rendered into a clean panel, two side lines, a centered bias badge, and moderate alternating event labels.
🗺️ How to Read the Chart
- Side lines: the buy-side line sits above price, the sell-side line below. The leaning side is solid and bold; the opposite side is faint and dashed, marking the flip reference.
- Bias badge: a compact badge near current price shows the leaning state and its 0-100 score.
- Target tag: a single right-edge tag marks the primary draw price on the leaning side.
- Faint pool lines: lighter dotted lines show other untapped pools as a soft liquidity map.
- Labels: green relates to buy-side context, pink to sell-side context, amber to balanced.
- Panel: a fixed readout of state, bias score, primary draw, pool type, range, flip level, and action.
🚦 Signals & States
- Buy-Side Lean → buy-side liquidity above is currently the leaning near-term draw.
- Sell-Side Lean → sell-side liquidity below is currently the leaning near-term draw.
- Balanced → both sides are close in score; no clear leaning side.
- Buy-Side Taken / Sell-Side Taken → a liquidity side was traded through (mitigated).
These are interpretive states, not instructions. A Buy-Side Lean does not mean buy; it means the upside pool is the weighted draw in the current context.
🔔 Alerts Logic
Three optional alerts are available:
- Buy-Side Lean: triggers when the dominant side flips to buy-side above the active threshold.
- Sell-Side Lean: triggers when the dominant side flips to sell-side above the active threshold.
- Liquidity Side Taken: triggers when a buy-side or sell-side pool is traded through.
Alerts are attention markers that point you back to the chart for context. They are not trade instructions and carry no guarantee of any outcome.
🧩 Confluence Logic
The lean is itself a confluence read. When proximity, pool strength, trend alignment, and range position agree on one side, that side scores higher and the lean is more pronounced. When they disagree, the score stays moderate and the state may resolve to Balanced, which is information in itself: the two-sided picture is unresolved.
📊 When to Use
- Trending markets, to frame whether the trend-aligned liquidity remains the dominant draw.
- Ranging markets, to read which range extreme is the more likely draw from the current premium-discount position.
- Around prior-period highs and lows, to gauge which side carries the stronger pull.
- As a planning overlay alongside your own structure, entries, and risk framework.
⚠️ When NOT to Use
- In very low-liquidity symbols or sessions, where swing points and pools are unreliable.
- In extremely noisy or news-driven conditions, where levels are violated erratically.
- As a standalone entry trigger, or in isolation from market structure and risk context.
- On data with large gaps or thin history, where pool detection has too little to work with.
🎛️ Key Inputs
- Swing Strength: how strong a swing must be to qualify as a pool. Higher keeps only major swings.
- Pool Memory: how many recent swings are retained per side.
- Equal Level Tolerance: ATR width for grouping nearby levels into an equal-highs or equal-lows cluster.
- Use Prior-Period Pools: includes the adaptive prior-period high and low as pools.
- Trend Backbone EMA and Slope Bars: define the directional context weighting.
- Premium-Discount Range: lookback for the dealing range that drives the range-position factor.
- Max Draw Distance, Pool Freshness Window: shape how distance and age affect the score.
- Active Bias Score and Balanced Gap: thresholds for an active lean versus a balanced read.
- Visual, label, and panel controls: side lines, badge, target tag, pool map, label density, panel location, theme, and font size.
🖥️ Interface & Visual Design
The panel is the primary readout, leading with the leaning state and 0-100 score, then primary draw, pool type, premium-discount range, flip level, and a concise action line. On the chart, visual hierarchy favors the leaning side: it is solid and emphasized, while the opposite side stays faint. Labels are kept moderate and strictly alternating so the chart reads cleanly at a glance. Panel location, theme, and font size are adjustable; the panel is shown by default for readability.
🧪 Practical Usage Workflow
1. Read the panel: note the leaning state and the bias score.
2. Check the primary draw and the flip level: where is the weighted draw, and what would invalidate the read.
3. Read the premium-discount range line: is price in discount or premium, and how far is the draw in ATR.
4. Confirm with your own market structure, higher-timeframe context, and risk framework before any decision.
🔍 Interpretation Guidelines
Think of the lean as a weighted opinion about the two-sided liquidity picture, not a forecast. A higher score means the factors agree more strongly; a moderate score or a Balanced state means the picture is mixed and patience is warranted. The flip level is a structural reference, not a hard line. Always interpret the lean inside the broader market context rather than in isolation.
🚫 What This Script Is NOT
- It is NOT a prediction engine and does not forecast price direction.
- It is NOT financial advice or a recommendation to buy or sell.
- It is NOT an automated trading system.
- It does NOT produce guaranteed signals or outcomes.
⚠️ Limitations & Transparency
Outputs depend on detected swing structure and may differ across timeframes and symbols. Volatility, liquidity, and changing market conditions affect how pools form and how they are taken. Prior-period pools rely on higher-timeframe data and shift as new periods print. The tool describes current structure; it cannot know the future, and any level can be exceeded or fail to be reached.
🧠 Market Context Notes
Liquidity tends to rest where many participants place stops and pending orders: above equal highs, below equal lows, and around prior-period extremes. In an uptrend, price in discount often leans toward the buy-side draw above; in a downtrend, price in premium often leans toward the sell-side draw below. This engine encodes that two-sided logic into a single read, but market context always has the final word.
🧾 Use Case Examples
- Price is in discount within its range, trend is up, and the nearest buy-side pool is a prior-week high: the engine shows a Buy-Side Lean with the prior-week high as the primary draw.
- Price is in premium, momentum is fading, and equal lows rest below: the engine may show a Sell-Side Lean with those equal lows as the primary draw and a high above as the flip level.
- Both sides score closely: the engine reports Balanced, signaling an unresolved two-sided picture.
🧱 System Philosophy
This tool reflects the AGPro Series approach: convert a familiar but messy concept into a calm, structured, decision-support read. Liquidity is everywhere on a chart; the value is in organizing it into a single, honest lean that respects the trader's own judgment rather than replacing it.
🔐 Non-Promise Statement
This script makes no promise of profit, accuracy, or any specific result. It is an analytical and organizational tool. No certainty is offered or implied.
📉 Risk Disclosure
Trading involves substantial risk, and most participants can lose money. This script is provided for educational and analytical purposes only and does not constitute financial advice. All decisions, positions, and outcomes remain entirely your own responsibility. Always manage risk and trade within your own plan.
📚 Educational Note
Used as intended, the engine can sharpen how you think about two-sided liquidity: where it rests, which side is weighted, and what would change the picture. Treat it as a lens for structured analysis, and keep building your own market understanding alongside it.
Indicator

Draw On Liquidity Planner [AGPro Series]Draw On Liquidity Planner
🧠 Core Idea
Of all the liquidity resting around price, which single pool is the dominant draw right now, how strong is that draw, and what level would put it in question?
📌 Overview / What It Does
Draw On Liquidity Planner is a chart-first liquidity decision tool. Instead of drawing every high and low on the screen, it studies the untapped liquidity pools sitting on both sides of price and decides which one is acting as the dominant "draw on liquidity," then frames a complete read around it.
It maps buy-side liquidity above price and sell-side liquidity below price from three sources: clusters of equal highs and equal lows, the prior higher-timeframe high and low, and unmitigated swing points. It tracks which pools are still untapped and which have already been swept. It then scores each side from 0 to 100 and selects the single dominant draw, presenting a clear state, the target pool price, the draw distance in ATR, the pool type, a structural invalidation reference, and a plain next-action read in a clean panel.
The script does not predict price, generate buy or sell signals, or automate trades. It organizes scattered liquidity into one structured draw decision so the chart can be read with intent instead of guesswork.
🎯 Purpose & Design Philosophy
This planner was built to close a specific gap. Many liquidity tools fall into one of two traps: they map every level at once until the chart is unreadable, or they only flag a sweep after it has already happened. Neither answers the first question a liquidity-focused trader actually asks: of everything resting around price, which side is the real magnet, and how convinced should I be?
Draw On Liquidity Planner is designed for patient, context-driven traders who think in terms of where liquidity rests and where price is being pulled. It supports a planning mindset rather than a reflex: identify the dominant draw, note the target and the invalidation, gauge conviction from the score, and then wait for the market to confirm or reject that context. It is a decision-support layer, not a trigger.
⚡ Why This Script Is Different
Most liquidity tools either print a dense map of every swing high and low, or they detect a sweep only once it is complete and leave the interpretation to you.
This script does NOT flood the chart with every level, and it does NOT claim to know the next move.
Instead, it ranks both sides of liquidity into a single dominant draw with a transparent 0-100 score, shows one clean target, one structural invalidation, and a light reference map of the remaining pools, and keeps the detailed read in a premium panel so the price area stays clear. The decision layer — which side, how strong, what would invalidate it — is the product. The raw levels are just the inputs.
⚙️ Methodology
The internal logic runs in clear, rule-based steps:
1. Pool Detection
Swing highs and swing lows are detected with an adjustable swing strength and stored as candidate liquidity pools. The prior higher-timeframe high and low can be included as significant pools, and the period adapts to the chart: prior day on intraday charts, prior week on daily charts, and prior month on higher timeframes.
2. Mitigation Tracking
A buy-side pool is marked as taken once price trades through it, and a sell-side pool once price trades under it. Only untapped liquidity is treated as an active draw, so the read reflects what is still resting rather than what has already been consumed.
3. Cluster Evaluation
Nearby untapped levels are grouped using an ATR-based tolerance to recognize equal highs and equal lows. More touches at a level mean stronger resting liquidity, which contributes a higher draw quality.
4. Draw Scoring
Each side receives a 0-100 score built from four components: pool quality (cluster strength and prior-period status), proximity in ATR, directional context from a trend backbone, and pool freshness. The weighting favors quality and proximity while still respecting trend alignment and how recently the pool formed.
5. Dominant Draw Selection
The higher-scoring side becomes the active draw. When the two sides are close, the context is treated as balanced two-sided liquidity rather than forcing a single direction.
6. Visual Output
The active draw is drawn as a thin highlighted zone with a centered badge, a target line, a structural invalidation line, a light reference map of the remaining pools, a single right-edge target tag, and a complete summary panel.
🗺️ How to Read the Chart
- Draw Zone: the thin highlighted band around the dominant liquidity target, with a centered badge showing the state and the 0-100 score.
- Target Line: the solid line at the active draw pool price.
- Invalidation Line: the dashed line at the opposite-side structural reference (the nearest swing on the other side); losing that level weakens the current draw lean.
- Faint Pool Lines: dotted reference lines marking the other untapped pools on each side, as a light liquidity map.
- Target Tag: a single right-edge tag with the active draw target price.
- Event Labels: compact markers that print when the dominant draw flips side or when a liquidity pool is swept. They alternate by side and stay clear of the candles.
- Panel: state, draw score, target, distance, pool type, invalidation, and action.
Colors follow the AG Pro palette: teal for buy-side draws, pink for sell-side draws, and amber for balanced or lower-conviction context.
🚦 Signals & States
• Buy-Side Draw → untapped liquidity above is the dominant magnet
• Sell-Side Draw → untapped liquidity below is the dominant magnet
• Two-Sided → both sides are roughly balanced, with no single dominant draw
• No Draw → no qualifying untapped pool is currently in range
States describe liquidity context only. They are not trade instructions and carry no guarantee of direction.
🔔 Alerts Logic
Alerts are available for:
- Buy-Side Draw: the dominant draw establishes on the buy side with a qualifying score
- Sell-Side Draw: the dominant draw establishes on the sell side with a qualifying score
- Liquidity Pool Swept: a tracked pool is traded through
Alerts are attention markers that flag a change in liquidity context. They are not signals to enter or exit a position, and each alert should be interpreted within the broader market picture.
🧩 Confluence Logic
The draw score is itself a confluence measure. A high score means pool quality, proximity, directional context, and freshness are aligning on the same side. When the active draw also agrees with your higher-timeframe bias and the prevailing structure, the context is stronger. When they disagree, the read deserves more caution, and the score will usually reflect that with a lower value.
📊 When to Use
• Trending markets, where price tends to reach for liquidity in the direction of the trend
• Range edges, where equal highs or equal lows build obvious resting liquidity
• Charts with a clear prior-period high or low acting as a reference draw
• Planning phases, when defining a target and an invalidation before committing to a view
⚠️ When NOT to Use
• Very low-liquidity symbols or thin sessions, where swing structure is unreliable
• Extreme volatility events, where levels are torn through without reaction
• Very low timeframes dominated by noise, where pools form and break too quickly
• As a standalone entry trigger, with no regard for broader context
🎛️ Key Inputs
• Swing Strength → how strong a swing must be to become a pool
• Pool Memory → how many recent pools are retained
• Equal Level Tolerance → how loosely nearby levels merge into a cluster
• Use Prior-Period Pools → include the prior higher-timeframe high and low (day, week, or month by chart)
• Trend Backbone EMA and Slope → the directional context used in scoring
• Max Draw Distance → distance beyond which a pool is treated as too far to be an active draw
• Active Draw Score → minimum score for an emphasized, alert-eligible draw
• Two-Sided Balance Gap → score gap below which liquidity is treated as balanced
• Visual and panel settings → control zones, lines, labels, density, location, theme, and font size
🖥️ Interface & Visual Design
The interface is intentionally restrained. One dominant draw zone, one target line, one structural invalidation reference, a light pool map, and a single target tag keep the chart readable. Event labels alternate by side and point at the candle that produced them, so the chart reads as a clean sequence rather than a cluster. The panel carries the detailed read, and its first row is a single merged brand header. Panel location, theme, and font size are all adjustable, and the panel is shown by default for clarity.
🧪 Practical Usage Workflow
1. Read the panel: note the state and the draw score.
2. Locate the target: confirm the highlighted draw zone and the target line.
3. Check the invalidation: note the opposite-side structural reference.
4. Confirm context: compare with your higher-timeframe bias and structure before acting on any view.
🔍 Interpretation Guidelines
Treat the draw score as a measure of how clearly liquidity leans to one side, not as a probability of profit. A strong, aligned draw is context to plan around. A balanced or weak read is a reason to wait rather than to force a trade. Every output is meant to be interpreted inside the broader market picture, never in isolation.
🚫 What This Script Is NOT
- It is NOT a prediction engine.
- It is NOT financial advice.
- It is NOT an automated trading system.
- It does NOT generate guaranteed signals or outcomes.
⚠️ Limitations & Transparency
Liquidity context behaves differently across timeframes, symbols, and volatility regimes. Pools can be ignored, swept and reversed, or run through without reaction. Swing detection depends on the chosen settings, and prior-period references behave differently across symbols and session types. This tool organizes context and frames a decision; it does not guarantee how price will respond to any level.
🧠 Market Context Notes
Liquidity tends to rest where many participants place stops: above equal highs, below equal lows, and around prior-period extremes. Price often gravitates toward these areas, but the timing and the reaction are never certain. The structure and volatility around a pool shape how meaningful any reaction near it is likely to be, which is why the score blends proximity and trend context rather than distance alone.
🧾 Use Case Examples
• In an uptrend, the planner highlights a buy-side draw at a cluster of equal highs above price, with a recent swing low as the structural invalidation below and a score that reflects how aligned and how close that draw is.
• In a range, the planner shows two-sided liquidity, signaling that no single side is dominant and that patience is warranted until one side resolves.
• After a deep move, the prior-period high or low can become the dominant draw, giving a clear reference target while the invalidation marks where that lean would weaken.
🧱 System Philosophy
The AG Pro approach favors decision-support tools over raw indicators. Each script is built to answer a specific question, present a clean read, and respect the chart. Draw On Liquidity Planner reflects that philosophy by turning scattered liquidity into one structured draw decision with a transparent score and a defined invalidation.
🔐 Non-Promise Statement
This tool offers no guarantees and no certainty about future price movement. It is a structured way to read liquidity context and frame a plan, nothing more.
📉 Risk Disclosure
Trading involves substantial risk. This script is provided for educational and analytical purposes only and does not constitute financial advice. All trading decisions and their outcomes are solely the responsibility of the user.
📚 Educational Note
Use this planner to study how price interacts with resting liquidity over time. Watching which draws are respected, swept, or ignored on your own market and timeframe is a practical way to build liquidity-reading skill and a more structured trading process. Indicator

Indicator

HTF Highs & Lows + SessionsHTF Highs & Lows + Sessions
This indicator plots two categories of information on your chart: higher timeframe swing levels and session highs/lows.
HTF Swing Levels
Scans 1H, 4H, and 1D candles for a specific two-bar reversal pattern — a bullish candle followed by a bearish candle (for swing highs) or a bearish candle followed by a bullish candle (for swing lows). When that pattern is found, it marks the extreme of those two candles as a significant price level. It then checks if that level has already been taken out by a subsequent candle — if it has, the level is ignored. If it hasn't, it draws a horizontal ray extending to the right from that price. Each timeframe has its own color (light red for 1H, bright red for 4H, dark red for 1D) so you can quickly identify which timeframe a level belongs to.
If price takes out one of these levels during the sweep window (8am–12pm ET), the ray converts to a dotted line and stops extending, marking it as swept rather than deleting it entirely.
Session Highs & Lows
Tracks the high and low of four sessions in real time — New York (9:30–5pm ET), London (3–8am ET), Asia (6pm–3am ET), and Pre Market (8–9:30am ET). Each session gets a live horizontal line at its current high and low that updates as price moves. When price breaks a session level outside the sweep window the line is deleted. When price breaks it inside the sweep window (8am–12pm ET) it converts to a dotted line instead, preserving the swept level visually. Session lines only display on intraday timeframes and are hidden on the daily and above.
Intended Use
Designed for traders who use higher timeframe liquidity levels as context for intraday entries — particularly identifying which HTF swing points have been swept during the early New York session window, which is a core concept in smart money / ICT-based trading frameworks. Indicator

Stop Cluster Magnet Map [AGPro Series]Stop Cluster Magnet Map
🧠 Core Idea
Where are clustered stops likely sitting, and is price being pulled toward them or rejecting after a sweep?
📌 Overview / What it does
Stop Cluster Magnet Map is a rule-based liquidity and market-structure visualization tool designed to identify repeated swing-high and swing-low areas where stop orders may cluster.
The script maps upper and lower stop-cluster zones, grades their quality, tracks magnet pressure, and highlights potential sweep or rejection behavior after price interacts with those zones.
It does not predict future price direction, automate trades, or claim that any stop cluster must be taken. It only visualizes structural conditions that may deserve attention.
🎯 Purpose & Design Philosophy
This script was built to solve a common chart-reading problem: traders often talk about liquidity above highs or below lows, but many tools do not clearly separate clustered stop areas from random swing points.
The design goal is to make stop-cluster context visible at a glance without turning the chart into a noisy signal machine.
It helps traders who study price action, liquidity sweeps, equal highs, equal lows, stop hunts, and structural reaction zones.
⚡ Why This Script Is Different
Most tools mark every swing high or swing low as if each level has the same importance.
This script does NOT treat every pivot as meaningful liquidity.
Instead, it looks for repeated nearby swing points, builds a mapped stop-cluster zone, grades the cluster, tracks magnet pressure, and separates sweep behavior from simple proximity.
⚙️ Methodology
1. Context Detection
The script detects confirmed swing highs and swing lows using a configurable pivot length.
2. Reference Mapping
Nearby repeated swing highs are grouped into an upper stop cluster, while nearby repeated swing lows are grouped into a lower stop cluster.
3. Reaction Evaluation
The script evaluates distance, recency, number of touches, sweep events, and post-sweep close behavior.
4. Visual Output
The active stop-cluster zones, magnet rail, right-side tags, event labels, and decision panel are displayed using a clean AGPro visual hierarchy.
🗺️ How to Read the Chart
Zones represent areas where repeated highs or lows have created potential clustered stops.
Labels identify important events such as upper stops, lower stops, magnet pressure, and sweep behavior.
Colors follow the AGPro visual language: teal for lower-side or recovery-oriented context, pink for upper-side or risk-oriented context, yellow for neutral attention, and indigo for magnet reference.
The panel summarizes the current magnet state, score, upper/lower cluster quality, cluster prices, sweep risk, next context, and active timeframe.
🚦 Signals & States
• UPPER STOPS → repeated swing highs have formed a valid upper stop cluster
• LOWER STOPS → repeated swing lows have formed a valid lower stop cluster
• UPSIDE MAGNET → price is near a higher-quality upper stop cluster
• DOWNSIDE MAGNET → price is near a higher-quality lower stop cluster
• UPPER SWEEP → price moved above the upper cluster and closed back inside
• LOWER SWEEP → price moved below the lower cluster and closed back inside
• BALANCED CLUSTERS → both upper and lower clusters are active, with no dominant side
🔔 Alerts Logic
Alerts can trigger when a new upper or lower stop cluster becomes valid, when price sweeps a stop cluster and closes back inside, or when the dominant magnet side changes.
These alerts are attention markers only. They are not buy or sell signals.
🧩 Confluence Logic (Optional)
The context becomes stronger when a valid stop cluster has multiple touches, remains recent, price approaches the cluster, and sweep behavior appears with a close back inside the mapped zone.
Cluster quality plus proximity plus reaction behavior creates a stronger read than any single condition alone.
📊 When to Use
• Around equal highs or equal lows
• During range-bound markets where stop pools may form
• Before or after liquidity sweeps
• When price is approaching a visible cluster of prior swing points
• When evaluating whether a move is targeting external liquidity
⚠️ When NOT to Use
• In extremely illiquid markets
• During chaotic news-driven candles
• When price history is too short to build reliable clusters
• When the chart is dominated by random spikes rather than readable structure
• As a standalone entry or exit system
🎛️ Key Inputs
• Swing Pivot Length → controls how swing highs and lows are confirmed
• Cluster Validity Lookback → controls how long a cluster remains relevant
• Minimum Cluster Touches → controls how many nearby pivots are needed
• Cluster Width ATR → controls how wide each stop-cluster grouping can be
• Magnet Nearness ATR → controls how sensitive magnet proximity becomes
• Visual settings → control zones, labels, right-side tags, panel, and font sizes
🖥️ Interface & Visual Design
The interface is designed for fast chart reading.
The panel gives the current decision context. Zones show where clustered stops may sit. Labels mark key events. Right-side tags keep current levels readable without forcing the trader to inspect every candle.
The layout is intentionally clean, premium, and structured for public-chart screenshots.
🧪 Practical Usage Workflow
1. Read the panel to identify the current magnet state.
2. Check whether the upper or lower stop-cluster zone is active.
3. Watch how price behaves near the mapped cluster.
4. Evaluate whether a sweep closes back inside or continues beyond the zone.
5. Use broader market context before making any decision.
🔍 Interpretation Guidelines
A strong stop cluster does not mean price must move there.
A sweep does not automatically mean reversal.
The best interpretation comes from combining cluster quality, distance, market structure, volume behavior, volatility, and the trader's own higher-timeframe context.
🚫 What This Script Is NOT
This script is not a prediction engine.
It is not financial advice.
It is not an automated trading system.
It does not provide guaranteed signals.
It does not know where actual broker stop orders are placed.
⚠️ Limitations & Transparency
The script estimates stop-cluster areas using visible chart structure only.
Different timeframes may show different clusters.
High volatility can expand zones and change quality scores quickly.
Market conditions can shift, and a previously important cluster may lose relevance over time.
🧠 Market Context Notes (Optional)
Stop clusters often matter because repeated highs and lows can become obvious reference points.
When many traders see the same level, price may react around that area, sweep it, reject from it, or continue through it.
This script is designed to make that structural pressure easier to observe.
🧾 Use Case Examples (Optional)
When price approaches an upper stop cluster with a high quality score, the trader can monitor whether the market sweeps above it and closes back inside.
When lower stops cluster beneath a range, the trader can watch whether price is being pulled toward downside liquidity or rejecting before reaching it.
🧱 System Philosophy (Advanced)
The AGPro approach focuses on structured decision support, not hype.
This script turns repeated swing references into a readable liquidity map so traders can evaluate context instead of reacting to isolated candles.
🔐 Non-Promise Statement
No script can guarantee outcomes.
Stop-cluster mapping is a contextual tool, not certainty.
📉 Risk Disclosure
Trading involves risk.
Users are fully responsible for their own analysis, risk management, and trading decisions.
This script is provided for educational and analytical purposes only and does not constitute financial advice.
📚 Educational Note (Optional)
Use this tool to study how repeated highs, repeated lows, sweeps, and reactions appear across different timeframes.
The goal is to improve market observation, not to replace disciplined analysis. Indicator

HH/HL/LH/LL Structure Tracker [AGPro Series]HH/HL/LH/LL Structure Tracker
🔹 Overview
HH/HL/LH/LL Structure Tracker automatically classifies every confirmed swing on your chart using pure Dow Theory — the original price-action framework that precedes and underlies every modern market-structure methodology. Each pivot high is labeled as a Higher High (HH) or Lower High (LH), and each pivot low as a Higher Low (HL) or Lower Low (LL). The sequence of the last four swings derives a live trend state: Bullish, Bearish, or Ranging.
No oscillators. No lagging averages. Just the raw geometry of price.
💎 What Makes This Different
While most "market structure" indicators focus on Break-of-Structure or Change-of-Character logic layered with Smart Money terminology, this script returns to the foundation: the four-swing classification that Charles Dow documented over a century ago. The result is an uncluttered, universally readable overlay that communicates structural context at a glance — regardless of which higher-level methodology you apply next (SMC, Wyckoff, Elliott, or classical technical analysis).
Key differentiators versus generic HH/HL scripts on the public library:
• Live structure range zone that dynamically recolors with the trend state (bullish teal, bearish pink, ranging amber).
• Bull Streak and Bear Streak counters — a quantifiable measure of trend persistence (e.g. "3 consecutive HH-HL swings").
• Semantic break classification: the panel distinguishes a continuation break (HH or LL broken in trend direction) from a reversal break (LH or HL broken against the prior structure).
• Progressive label offset algorithm: when several same-type swings cluster without an intervening opposite swing, each subsequent label is offset further from price, eliminating the overlap that plagues most swing scripts on fast-moving charts.
• AGPro design language: premium info panel, adjustable font size and theme, and a disciplined color palette.
🧠 Methodology
1. Pivot detection. A confirmed swing high is a bar whose high exceeds the preceding and following N bars (N = Pivot Length, default 5). Confirmed swing lows mirror the rule. Confirmation occurs N bars after the pivot bar, never repaints.
2. Swing classification. Each new confirmed high is compared to the previous confirmed high. If greater, it is HH; if lesser, LH. Lows are compared to the previous low: greater means HL, lesser means LL.
3. Trend derivation. If the most recent high is HH and the most recent low is HL, the trend state is Bullish. If LH and LL, Bearish. Any mixed sequence (HH + LL, LH + HL) returns Ranging.
4. Structure range zone. A rectangle is drawn between the most recent swing high and most recent swing low. The zone is always current: as new swings confirm, the zone updates in place. Zone color tracks the trend state.
5. Structure break. A close above the most recent swing high (or below the most recent swing low) fires a break event. The type of swing broken is reported — breaking an LH or HL typically precedes a trend reversal; breaking an HH or LL typically signals continuation.
📊 Signals & Alerts
Three optional alert types are available, each using "once per bar close" frequency to prevent intrabar noise:
• New Higher High confirmed — fires when a fresh HH is classified.
• New Lower Low confirmed — fires when a fresh LL is classified.
• Structure break — fires on a close outside the current structure range, labeled as either (reversal signal) or (continuation).
The live info panel reports: Trend state, Bull Streak, Bear Streak, Last High (with type and price), and Last Break (with type and price).
⚙️ Key Inputs
• Pivot Length — sensitivity of swing detection (2 to 50). Lower values capture minor structure; higher values isolate major swings only. Typical: 3–8 intraday, 5–15 swing trading.
• Max Visible Labels — caps the number of historical labels kept on the chart to preserve a premium uncluttered look.
• Label & Panel Font Size — five sizes from Tiny to Huge, default Normal.
• Label Distance from Price (ATR) — base vertical offset of labels from pivot candles.
• Structure Range Zone — toggle, transparency, and border.
• Trend Background Tint — subtle bullish or bearish chart shading.
• Info Panel — toggle, location (six positions), and theme (Dark or Light).
• Alerts — independent toggles for new HH, new LL, and structure break.
🎯 How to Use
Context tool, not a standalone signal generator. Use the trend state to filter entries from your primary methodology: take long setups only while Trend is Bullish and Bull Streak is building, or vice versa. The structure range zone highlights the active battleground between buyers and sellers — trades taken inside the zone are counter-trend by definition, trades taken on a decisive break of the zone align with the emerging new trend.
Reversal breaks (LH or HL broken) are high-information events — they are often the first objective signal that a prevailing trend is losing conviction, ahead of any moving-average cross or momentum divergence. Continuation breaks (HH or LL broken) are confirmation events that validate staying with the trend.
Works on all markets and all timeframes. Particularly effective on liquid instruments with clear structural rhythm: major crypto pairs, FX majors, index futures, and large-cap equities.
⚠️ Limitations & Transparency
• Pivot confirmation requires N bars after the swing; the most recent unconfirmed swing is never labeled.
• In low-volatility sideways regimes, pivot clustering is inevitable — the Pivot Length input should be raised to filter noise on ranging charts.
• The trend state is derived from only the last two swings; it does not account for higher-timeframe context. Pair with a higher-timeframe version of the same script for multi-timeframe confluence.
• Does not provide entry, stop, or target levels. It is a structural framework, not a complete trading system.
📌 Risk Disclosure
This indicator is for educational and analytical purposes only. It does not constitute financial advice, a trading recommendation, or a guarantee of future performance. All trading involves risk of loss. Past structural patterns do not guarantee future outcomes. Always conduct your own due diligence and use appropriate risk management. Indicator

AG Pro Equal High / Equal Low Sweep Engine [AGPro Series]AG Pro Equal High / Equal Low Sweep Engine
Overview / What it does
AG Pro Equal High / Equal Low Sweep Engine is a price-action overlay designed to detect equal highs (EQH) and equal lows (EQL), track the liquidity pools that form around those levels, and highlight sweep events when price briefly trades through them and then closes back with confirmation. The script focuses on one specific market behavior: clustered highs and lows that tend to attract liquidity, followed by rejection-style sweeps that can mark failed continuation attempts, trap conditions, or local reaction points.
Instead of treating every wick through a prior level as equally important, the script separates untouched pools from already swept pools, applies a configurable tolerance model for defining EQH/EQL structures, and adds close-based confirmation logic so users can filter out weaker events. Short liquidity lines, band-style zones, trap labels, and a compact summary panel are used to keep the information visible without turning the chart into a large box-based map.
This tool is built for traders who want a structured view of repeated highs/lows and the liquidity behavior around them. It is not intended to label every possible swing event on the chart. Its purpose is narrower and more deliberate: identify equal-high / equal-low liquidity pools, monitor whether they remain intact or get swept, and display the sweep in a visually organized way.
Unique Edge
The main distinction of this script is that it does not attempt to map all forms of stop runs or all types of liquidity events. It concentrates specifically on EQH/EQL liquidity pools and the sweep lifecycle around those pools. That narrower scope allows the chart objects to remain more readable while still showing useful structure.
The script also distinguishes between untouched and swept states. This matters because a fresh liquidity pool and a previously swept pool do not represent the same chart condition. Untouched pools can still act as active draw-on-liquidity zones, while swept pools become part of recent context and may be interpreted differently depending on the user's framework.
A second differentiator is the combination of equal-pool detection, close confirmation, and optional quality scoring. Equal highs and equal lows are first identified using pivot logic and a user-defined tolerance percentage. Then, when price trades through the pool, the script can require either any wick, a reclaim close, or a stronger rejection close before confirming the sweep. An optional quality bonus can further weight events when relative volume and rejection characteristics are more supportive.
The visual model is also intentionally selective. Instead of using large generalized rectangles across the whole chart, the script uses shorter liquidity lines and band zones tied directly to the detected pool. This keeps the visuals anchored to the detected structure rather than creating broad areas that may overstate precision.
Methodology
1) Equal High / Equal Low Detection
The script uses pivot highs and pivot lows to build candidate swing points. When two highs or two lows form within the user-defined tolerance threshold and within the required bar spacing, they are treated as an equal-high or equal-low liquidity pool. Multiple nearby pools can optionally be merged into a cleaner combined structure.
2) Liquidity Pool Lifecycle
Once a pool is created, it is tracked as active until one of two things happens: it is swept by price, or it expires after its configured lifetime. The script maintains state so pools can be shown as untouched, swept, or removed when they are no longer relevant.
3) Sweep Confirmation
A sweep is not limited to price piercing the level. The script can require:
- Any Wick: any trade-through qualifies.
- Reclaim Close: price must close back through the level after the sweep.
- Strong Rejection: a stricter close-position filter is applied.
This helps users decide how sensitive or selective they want the engine to be.
4) Quality Logic
When enabled, the script calculates a quality score using rejection characteristics, close position, relative volume behavior, pool freshness, and pivot clustering. This is not a predictive score or a probability model. It is a contextual ranking layer intended to help compare sweeps on the same chart.
5) Visual Presentation
The script can draw:
- short horizontal liquidity lines
- band-style EQH/EQL zones
- optional reaction boxes after selected sweeps
- trap labels on confirmed events
- a summary panel showing current pool and sweep status
Signals & Alerts
The script includes alert conditions for:
- new EQH pool detected
- new EQL pool detected
- EQH sweep confirmed
- EQL sweep confirmed
- any sweep confirmed
These alerts are event-based and depend on the current settings used for confirmation and filtering. If stricter filters are selected, the number of confirmed events will naturally decrease.
Key Inputs
Pivot Strength
Controls how swing highs and lows are confirmed. Higher values usually produce fewer, more structurally significant pools.
EQH / EQL Tolerance %
Defines how close two highs or lows must be to qualify as equal. Lower values make the script stricter. Higher values allow broader matching.
Min / Max Bars Between Pivots
Controls the acceptable spacing between the two pivots that define a pool.
Sweep Close Filter
Lets the user choose between wick-only behavior and more selective reclaim/rejection confirmation.
Quality Bonus
Adds an optional scoring bonus when the sweep also shows stronger contextual characteristics.
Liquidity Line / Zone Length
Controls how far the liquidity structures extend on the chart.
Panel and Visual Settings
Allow the user to tune panel position, label size, color theme, and display density for different chart styles and timeframes.
Limitations & Transparency
This script identifies equal highs and equal lows using pivot-based rules and a configurable tolerance model. Because of that, results depend on the chosen settings, the symbol, the timeframe, and the chart's volatility profile.
A confirmed sweep should not be interpreted as a guaranteed reversal or a complete trade setup by itself. In some market conditions, price can sweep a pool and continue in the same direction. In other conditions, a sweep may mark only a short-lived reaction. The script highlights structural events; it does not forecast outcome.
The quality score is a contextual ranking aid, not a performance promise, win-rate estimate, or statistical edge claim. Different users may prefer different thresholds depending on market regime and execution model.
Band zones and reaction areas are visual approximations derived from the detected pool and post-sweep behavior. They are designed to improve chart readability, not to define exact institutional order blocks or guaranteed execution zones.
Risk Disclosure
This script is an analytical charting tool for studying equal-high / equal-low liquidity behavior and sweep confirmation. It does not provide financial advice, investment advice, or trade recommendations. All trading decisions remain the user's responsibility.
Like any technical tool, it should be used with broader market context, risk management, and independent judgment. No indicator can eliminate uncertainty, and past chart behavior does not guarantee future results.
Indicator

AG Pro Structure Labels [AGPro Series]AG Pro HH HL LH LL Structure Labels
Overview / What it does
AG Pro HH HL LH LL Structure Labels is a clean market-structure reader built to simplify price action without turning the chart into a wall of signals. Its core purpose is straightforward: identify confirmed swing highs and swing lows, classify them as HH, HL, LH, or LL, and connect those points in a visually readable structure path so traders can understand the current sequence of price development at a glance.
Many market structure tools try to do too much at once. They mix structure, signals, zones, pattern scoring, and trade suggestions into a single publication, which can make the chart heavier and the analytical purpose less clear. This script takes the opposite route. It focuses on one job only: making confirmed swing structure easier to read, follow, and interpret in real time as the chart evolves.
That design choice is what gives this script its value. Instead of asking the user to interpret disconnected highs and lows manually, the script builds a visible structure chain from confirmed pivots and labels each important step. The result is a chart that remains visually disciplined while still communicating trend continuation, structural weakening, and flow transitions in a simple and repeatable format.
This script is especially useful for traders who want structure clarity before they bring in any other layer of analysis. It can be used as a standalone structure map, or as a first-pass chart-cleaning tool before applying other concepts such as support and resistance, trend continuation logic, pullback analysis, breakout validation, or discretionary execution rules.
Unique Edge
The unique edge of this script is not that it attempts to predict where price will go next. Its strength is that it organizes confirmed structure in a way that is visually clean, logically consistent, and immediately usable on live charts.
Unlike many AG Pro scripts that are built around event detection, confluence scoring, price-zone visualization, setup quality filtering, or breakout logic, this publication is intentionally narrower and more focused. It is not a BOS/CHoCH event detector. It is not a liquidity-sweep model. It is not an order-block or fair-value-gap engine. It is not a breakout-quality, retest-quality, or pattern-quality scorer. It is also not a fixed reference-level tool such as a prior-day or prior-week high/low mapper. This script is a structure readability tool first and foremost.
That distinction matters.
Previous AG Pro releases often revolve around a specific trading event: a sweep, a break, a retest, a zone reaction, a continuation pattern, or a multi-factor confluence state. This script does not begin from an event. It begins from the swing chain itself. It asks a simpler question: what is the current sequence of confirmed highs and lows, and what does that sequence imply about market flow right now?
Because of that, the script fills a different role in the broader AG Pro library. It is closer to a structural map than a setup engine. It helps answer whether the chart is still printing constructive highs and lows, whether the sequence has started to weaken, or whether the structure is now leaning in the opposite direction. That makes it useful both on its own and as a foundation layer beneath other tools.
Another important differentiator is presentation discipline. The structure path provides continuity between pivots, while the label set communicates classification without unnecessary chart clutter. The compact floating HUD reinforces the current flow state without dominating screen space. Together, these choices make the script visually premium while keeping the chart readable.
Methodology
The script uses a confirmed pivot framework. Swing highs and swing lows are identified using left and right lookback parameters selected by the user. Because pivots require confirmation, labels appear only after the structure point is confirmed by the specified number of bars. This helps reduce noise and keeps the structure map grounded in confirmed rather than speculative swing points.
Once a new pivot high is confirmed, it is compared with the prior confirmed pivot high. If it exceeds the previous confirmed high, it is classified as HH. If it does not, it is classified as LH. The same logic applies on the low side: if a confirmed pivot low is above or equal to the previous confirmed pivot low, it is classified as HL; if it is lower, it is classified as LL.
The script also includes an ATR-based structure filter. This filter is designed to suppress micro-swings that are too small relative to current volatility, which helps maintain visual cleanliness on choppier charts. Instead of drawing every minor fluctuation, the script attempts to keep attention on swings that are more structurally meaningful for the selected sensitivity.
A structure path, shown as a clean zigzag line, connects the confirmed pivots that pass the filter. This gives the user an immediate visual map of the sequence rather than a collection of isolated labels. In practice, this is one of the most useful parts of the script because it turns the market’s swing progression into a readable path.
The floating HUD summarizes the current market-flow bias in a minimalist format. It is not intended to act as a trade signal. Its job is to provide a quick structural read so the user can see whether the recent chain is leaning bullish, bearish, or transitional according to the internal swing logic.
Signals & Alerts
This script is not designed as a one-click entry engine. Its alerts are structural, not predictive.
The publication includes alerts for newly confirmed HH, HL, LH, and LL prints, which can help users monitor structure development without staring at the chart continuously. It also includes alerts for structure-flow transitions when the internal trend state turns bullish or bearish.
These alerts are best understood as workflow alerts. They tell the user that structure has progressed into a new confirmed condition. They do not guarantee continuation, reversal, breakout success, or trade profitability. Their purpose is to improve awareness of structural change, not to replace independent analysis.
Key Inputs
Pivot sensitivity is controlled through left and right lookback values. Higher values usually produce fewer but more mature structure points, while lower values usually produce a faster and denser structure map.
The ATR filter can be enabled to reduce insignificant swings. This can be particularly helpful on lower timeframes or during periods of uneven, noisy price movement.
Users can also control whether the structure path is drawn and can adjust the visual typography for labels and HUD elements. These inputs allow the script to stay visually flexible across different chart styles and screen densities.
How this script differs from other AG Pro scripts
This distinction is central to the publication.
Many AG Pro scripts are built to evaluate the quality of a setup. They may score breakouts, retests, continuation patterns, reversal candles, pressure conditions, or confluence states. Others are built around zones and reactions, such as supply-demand mapping, premium-discount logic, fair value gaps, order blocks, or support-resistance behavior. Others focus on structural events such as BOS/CHoCH changes, liquidity sweeps, inducement traps, or session-specific reactions.
This script does none of those things.
It does not measure the quality of a signal.
It does not score a setup.
It does not project targets.
It does not identify fixed daily or weekly reference levels.
It does not try to map every institutional concept on the chart.
It does not attempt to be an all-in-one decision engine.
Instead, it provides a cleaner foundation: confirmed HH, HL, LH, and LL sequencing with a filtered structural path and a compact market-flow summary.
That is precisely why it is different from the previous AG Pro script as well. If the previous release was anchored to fixed price levels, event detection, or context-specific reactions, this script is anchored to swing continuity. If another AG Pro script answers where price reacted, where a sweep occurred, whether a breakout was strong, or whether a setup deserves a quality score, this one answers a more basic but highly important question: what is the confirmed structure chain doing right now?
In that sense, this script is less about trading events and more about structural readability.
Limitations & Transparency
This script uses confirmed pivots, which means it is not attempting to label unconfirmed structure in advance. As a result, there is an intentional delay equal to the confirmation logic chosen by the user. That delay is not a flaw; it is part of the design tradeoff required to avoid premature structure labels.
Like any pivot-based structure tool, output will vary depending on sensitivity settings, timeframe, market volatility, and symbol behavior. A lower sensitivity may reveal more swing detail but can also make the map denser. A higher sensitivity may create a cleaner structure path but may respond more slowly to local shifts.
The ATR filter is a visual-cleanliness tool, not a universal truth engine. It can help reduce noise, but different traders may prefer different levels of structural compression depending on how aggressively or conservatively they define meaningful swings.
This script should also not be interpreted as a complete trading plan. It does not include position sizing, stop placement, target selection, execution logic, or market-specific risk rules. Users should combine it with their own framework, testing process, and judgment.
Risk Disclosure
This script is for analytical and educational use. It is not financial advice, investment advice, or a recommendation to buy or sell any instrument.
Market structure is an interpretive framework, not a guarantee of future price behavior. A bullish sequence can fail, a bearish sequence can reverse, and a clean structural print can still occur inside a broader context that changes the meaning of the move.
Always use independent judgment, apply appropriate risk management, and evaluate the script in the context of your own market, timeframe, and process.
Summary
AG Pro HH HL LH LL Structure Labels is built for traders who value structural clarity over indicator overload. Its role in the AG Pro catalog is distinct: it is not an event hunter, not a zone engine, and not a quality scorer. It is a clean structure reader designed to make confirmed swing progression easier to see, easier to follow, and easier to integrate into a disciplined chart workflow.
If your goal is to understand whether price is still producing constructive highs and lows, whether that chain is weakening, or whether the flow has shifted into a different structural condition, this script is designed for exactly that task.
Indicator

Indicator

Indicator

Essa - Market Structure Crystal Ball SystemEssa - Market Structure Crystal Ball V2.0
Ever wished you had a glimpse into the market's next move? Stop guessing and start anticipating with the Market Structure Crystal Ball!
This isn't just another indicator that tells you what has happened. This is a comprehensive analysis tool that learns from historical price action to forecast the most probable future structure. It combines advanced pattern recognition with essential trading concepts to give you a unique analytical edge.
Key Features
The Predictive Engine (The Crystal Ball)
This is the core of the indicator. It doesn't just identify market structure; it predicts it.
Know the Odds: Get a real-time probability score (%) for the next structural point: Higher High (HH), Higher Low (HL), Lower Low (LL), or Lower High (LH).
Advanced Analysis: The engine considers the pattern sequence, the speed (velocity) of the move, and its size to find the most accurate historical matches.
Dynamic Learning: The indicator constantly updates its analysis as new price data comes in.
The All-in-One Dashboard
Your command center for at-a-glance information. No need to clutter your screen!
Market Phase: Instantly know if the market is in a "🚀 Strong Uptrend," "📉 Steady Downtrend," or "↔️ Consolidation."
Live Probabilities: See the updated forecasts for HH, HL, LL, and LH in a clean, easy-to-read format.
Confidence Level: The dashboard tells you how confident the algorithm is in its current prediction (Low, Medium, or High).
🎯 Dynamic Prediction Zones
Turn probabilities into actionable price areas.
Visual Targets: Based on the highest probability outcome, the indicator draws a target zone on your chart where the next structure point is likely to form.
Context-Aware: These zones are calculated using recent volatility and average swing sizes, making them adaptive to the current market conditions.
🔍 Fair Value Gap (FVG) Detector
Automatically identify and track key price imbalances.
Price Magnets: FVGs are automatically detected and drawn, acting as potential targets for price.
Smart Tracking: The indicator tracks the status of each FVG (Fresh, Partially Filled, or Filled) and uses this data to refine its predictions.
🌍 Trading Session Analysis
Never lose track of key session levels again.
Visualize Sessions: See the Asia, London, and New York sessions highlighted with colored backgrounds.
Key Levels: Automatically plots the high and low of each session, which are often critical support and resistance levels.
Breakout Alerts: Get notified when price breaks a session high or low.
📈 Multi-Timeframe (MTF) Context
Understand the bigger picture by integrating higher timeframe analysis directly onto your chart.
BOS & MSS: Automatically identifies Breaks of Structure (trend continuation) and Market Structure Shifts (potential reversals) from up to two higher timeframes.
Trade with the Trend: Align your intraday trades with the dominant trend for higher probability setups.
⚙️ How It Works in Simple Terms
1️⃣ It Learns: The indicator first identifies all the past swing points (HH, HL, LL, LH) and analyzes their characteristics (speed, size, etc.).
2️⃣ It Finds a Match: It looks at the most recent price action and searches through hundreds of historical bars to find moments that were almost identical.
3️⃣ It Analyzes the Outcome: It checks what happened next in those similar historical scenarios.
4️⃣ It Predicts: Based on that historical data, it calculates the probability of each potential outcome and presents it to you.
🚀 How to Use This Indicator in Your Trading
Confirmation Tool: Use a high probability score (e.g., >60% for a HH) to confirm your own bullish analysis before entering a trade.
Finding High-Probability Zones: Use the Prediction Zones as potential areas to take profit, or as reversal zones to watch for entries in the opposite direction.
Gauging Market Sentiment: Check the "Market Phase" on the dashboard. Avoid forcing trades when the indicator shows "😴 Low Volatility."
Confluence is Key: This indicator is incredibly powerful when combined with your existing strategy. Use it alongside supply/demand zones, moving averages, or RSI for ultimate confirmation.
We hope this tool gives you a powerful new perspective on the market. Dive into the settings to customize it to your liking!
If you find this indicator helpful, please give it a Boost 👍 and leave a comment with your feedback below! Happy trading!
Disclaimer: All predictions are probabilistic and based on historical data. Past performance is not indicative of future results. Always use proper risk management. Indicator

Essa's Sessions IndicatorOverview
This powerful tool is designed to visually map out the key trading sessions: Asia, London, and New York directly on your chart. By highlighting these periods and plotting their respective highs and lows, it helps you identify critical price levels, gauge market sentiment, and pinpoint potential breakout opportunities with ease.
What It Does
Visualizes Key Trading Sessions: Automatically draws colored backgrounds for the Asia, London, and New York sessions to show you exactly when the most important market activity is happening.
Plots Session Highs & Lows: Displays precise horizontal lines for the highest and lowest prices reached during each session, acting as key support and resistance levels.
Dual Timezone Mode: Easily switch between London (GMT/BST) and New York (EST/EDT) timezones with a single click. The indicator automatically adjusts all session times for you, ensuring accuracy no matter where you are.
Interactive & Informative Labels: Hover over any session high or low label to see a detailed tooltip containing:
The exact price level.
The session's price range (calculated in pips or points).
The total daily price range for broader context.
A simple volatility gauge (from "Low Vol 😴" to "High Vol 🔥").
Customizable Alerts: Enable breakout alerts to receive instant notifications the moment the price closes above a session high or below a session low.
Simple, powerful, and highly informative, this indicator is an essential tool for traders looking to build strategies around session-based price action. Indicator

Indicator

Strategy

Indicator

Indicator

Indicator

Indicator

Indicator

Indicator

Indicator
