Volumetric Gann StyleVolumetric Gann Style
Overview
Volumetric Gann Style is a rule-based chart visualization tool built around a pivot-anchored Gann structure.
The script organizes its calculations around confirmed structural pivots, then renders a multi-layered Gann framework that can include fan geometry, box/grid structure, heat-zone visualization, volumetric pressure mapping, Square of 9 references, contextual labels, and a structure-based signal layer.
This indicator is designed for visual, structural, and educational analysis.
It is not a financial advisory tool.
It does not provide investment advice.
It does not generate standalone buy or sell recommendations.
It does not guarantee future outcomes, profitability, or market direction.
Any labels, breaks, reclaims, rejections, or alert conditions displayed by the script are derived from predefined structural rules inside the indicator. They should be treated as contextual chart events, not as direct trade instructions.
Image 1 — Full System Overview
Complete chart view showing the main Gann structure, volumetric visual layers, and the overall architecture of the script.
Core Architecture
The script is built around a pivot-based anchor engine.
Confirmed pivots are used to define the active structural framework, and the rendered Gann geometry updates according to that anchor logic. The goal is not to forecast future price behavior, but to display how price interacts with a structured Gann environment derived from chart data.
This framework allows the indicator to maintain a coherent visual relationship between:
anchor points,
fan projections,
box/grid levels,
pressure zones,
volumetric structure blocks,
and structural event labels.
The output is therefore intended as a chart-structure visualization system, not a predictive model.
Image 2 — Pivot Anchor + Fan Structure
Example of how the active anchor logic defines the current fan environment and the main structural framework.
Two Display Engines
Volumetric Gann Style includes two distinct display modes:
1) Volumetric Gann Style
This mode emphasizes the custom visual architecture of the script and its volumetric presentation logic.
Depending on the active settings, it can display:
structured level boxes,
internal pressure segmentation,
volumetric buy/sell pressure presentation inside the active range,
heat-zone logic,
right-side informational elements,
and a denser structural overlay.
This mode is designed to make structural pressure easier to read visually by combining Gann geometry with volumetric distribution concepts inside the displayed framework.
Image 3 — Volumetric Gann Style Mode
The custom volumetric mode with structured boxes, internal pressure layout, and denser visual context.
2) Classic Gann
This mode presents a cleaner and more traditional Gann-style visual framework.
It focuses more directly on the geometric side of the structure while preserving the same underlying anchor logic.
These two modes are alternative visual interpretations of the same structural engine. They are not separate trading systems and they do not represent separate market predictions.
Image 4 — Classic Gann Mode
A cleaner geometric presentation using the same anchor engine and structural logic.
Gann Fan Structure
The indicator can project a Gann fan from the active pivot structure and display its internal angle framework visually on the chart.
The fan is used here as a structural reference layer. It helps users observe how price moves relative to the active angular framework and how that framework evolves when anchor conditions change.
The fan display is a visualization component.
It does not predict direction, define future targets, or produce guaranteed signal quality.
Image 5 — Gann Fan Structure
Visual example of the active fan and its angle relationships inside the current framework.
Gann Box / Grid Structure
The script can also build a Gann box-style environment around the active structure.
This box/grid component is used to visualize:
structural expansion,
internal level relationships,
horizontal and vertical reference alignment,
and interaction areas inside the active framework.
In Volumetric Gann Style mode, this same structural area can also host pressure-oriented visual blocks, allowing the framework to communicate not only geometry, but also internal volumetric balance in a more readable way.
This creates a more readable structural field for observing how price behaves inside the current anchor-defined range.
The box and grid are analytical chart objects only. They are not standalone trade setups, not future projections, and not investment recommendations.
Image 6 — Gann Box / Grid Layout
Structural box and grid presentation around the active range.
Heat Zone and Volumetric Volume Logic
One of the defining visual layers of this script is its volume-oriented display logic.
Depending on the selected mode and settings, the indicator can render:
heat-style emphasis zones,
internal buy/sell volume boxes,
volumetric range-based structure blocks,
total volume information,
level and price information,
and contextual structure mapping inside the active framework.
These elements are intended to make internal structure easier to observe visually.
They do not claim order flow certainty, execution quality, or predictive edge.
They should be interpreted as part of the script’s visual framework rather than as direct trading commands.
Image 7 — Heat Zone and Volumetric Pressure
Example of heat-style emphasis and volumetric pressure distribution inside the active structure.
Signal Engine
The script includes a structural signal layer that can mark events such as:
break-type conditions,
reclaim behavior,
rejection behavior,
and aggressive structural reactions.
These events are generated from predefined internal conditions tied to the active Gann structure.
Important:
These labels are not standalone buy/sell calls.
They are not personalized advice.
They do not replace independent analysis, testing, or risk management.
They are best understood as structure-based chart annotations that highlight how price is behaving relative to the indicator’s active framework.
Image 8 — Signal Layer / Structural Events
Break, reclaim, rejection, or reaction-style labels shown as contextual chart annotations.
Square of 9
The indicator also includes Square of 9 style reference plotting.
This module is used as an additional structural reference layer and can help users visually compare chart behavior against the script’s projected Gann-style numerical framework.
As with the rest of the indicator, this component is informational and visual in nature. It does not imply certainty, future target precision, or directional guarantees.
Image 9 — Square of 9
Additional Gann-style numerical reference structure plotted on the chart.
Trend Score / Panel / Labels
The script may display summary panels, state labels, or trend-score style information derived from its internal logic.
These visual summaries are intended to improve chart readability and to present the current structural state in a more organized way.
They should be treated as descriptive outputs of the indicator’s rule set, not as guaranteed market conclusions.
Image 10 — Trend Panel / Labels
Panel-based summaries and contextual label outputs derived from the current structure.
How to Use
This indicator is best used as a structural chart companion.
Typical use may include:
observing pivot-defined Gann structure,
comparing price position against fan and box geometry,
monitoring volumetric pressure zones and contextual labels,
reviewing structural events on the chart,
and combining the visualization with the user’s own broader analysis process.
It should not be used as a substitute for independent judgment.
What This Script Does
Displays a pivot-anchored Gann framework on the chart
Supports both Volumetric Gann Style and Classic Gann display modes
Visualizes fan, box/grid, heat-zone logic, volumetric pressure structure, and contextual chart behavior
Includes optional structural event labeling
Adds Square of 9 and panel-based context elements
Organizes chart information into a rule-based visual framework
What This Script Does Not Do
Does not provide financial or investment advice
Does not generate standalone buy or sell recommendations
Does not guarantee profitable outcomes
Does not predict future market direction with certainty
Does not replace independent analysis, testing, or risk management
Disclaimer
This script is provided for informational, analytical, and educational purposes only.
All calculations are based on chart data and predefined internal rules. Market behavior can vary, and no visual element in this script should be interpreted as a guarantee, promise, or financial recommendation.
All trading and investment decisions remain solely the responsibility of the user. Индикатор

Индикатор

Trendline Breakout Indicator [Dots3Red]Trendline Breakout Indicator is an upgraded version of the existing "Trendline Breakout with Volume Confirmation ".
What is this indicator for?
The indicator is built to automatically detect and visualize trending price channels, both bullish and bearish . It draws channels (or polygons, optionally) across pivot-based trendlines, tracks them in real time, and signals when price breaks out of them with a certain N% (can be confirmed by volume activity too).
How does it work?
The indicator identifies pivot highs and lows of a configurable length. Consecutive pivots of the same type (lows for bullish, highs for bearish) form a trendline. Each trendline is then extended bar by bar until the price breaks it.
Channel mode draws a parallel channel around the trendline, where the channel width is determined by the maximum price deviation from the trendline within the channel's range - not a fixed offset. This means every channel is fitted to actual price behavior.
Polygon mode instead fills the area between the trendline and the extreme price reached within it, giving a triangular wedge shape that highlights price compression.
Channels are color-coded: cyan/teal for bullish, red/pink for bearish .
Breakout Detection
A breakout is confirmed when:
For bullish channels : price closes below the lower trendline by more than the configured Breakout %
For bearish channels : price closes above the upper trendline by more than the configured Breakout %
When a breakout occurs, the channel is frozen and drawn at its final shape. A BO▲ / BO▼ label marks the breakout bar.
Only channels that have persisted for at least the configured minimum length (in bars) are drawn - this filters out insignificant short-lived moves
Volume Confirmation
Volume is measured relative to its 20-bar moving average. When volume at the breakout bar exceeds the Volume % Breakout threshold, a bar visualization is drawn at the breakout point.
Key Inputs
C hannel / Polygon - Switch between channel and polygon visualization mode
Breakout % - How far price must close beyond the trendline to confirm a breakout
Slope Factor - Minimum slope required for a trendline to be considered a valid trend
Pivot Length - Lookback length for pivot high/low detection
Channel Min Length - Minimum bar length a channel must reach before being drawn
Volume % Breakout - Volume spike threshold relative to the 20-bar average (can be toggle on/off)
The code has been cleaned so as not to contain duplicate execution functions.
Example
Above is the Trendline analysis of the Nvidia stock behaviour.
The following configurable parameters have been chosen:
2.5% for price break out
1.02 for slope factor
3 for Pivot length
20 for min channel's length
30% for min volume % breakout indicaton
It is interesting to observe what happens when two opposite channels overlap. From Jan 2025 to mid May 2025, the stock was in a clear bearish channel, yet a bullish channel started to develop since April 2025. The bearish channel got broken on May 13, 2025, at the time when the bullish channel had already been established - a more powerful signal to enter long.
Changing indicator settings might give different visual interpretations, especially the slope factor and the minimum pivot length. Индикатор

Индикатор

Geass SRV - Support Resistance VolumeGeass SRV - Support Resistance Volume
by MasterTony
Volume profile engine adapted from Zeiirman's work — used with respect and full credit.
Most indicators tell you where price is. This one tells you where the market lives. The Support Band + Volume Profile is built around a single idea: price gravitates toward zones where real participation has happened, and it respects dynamic boundaries defined by the market's own momentum structure. This indicator surfaces both at once — a trend-adaptive zone on price and the volume history behind it.
How It's Calculated
Trend Direction (ADX + 200 SMA)
Market direction is read continuously using the DMI system — DI+ vs DI− for directional dominance, with the 200 SMA as a tiebreaker when they are equal. There is no neutral state. The indicator always commits to bull or bear, and all colors and zone behavior follow from that.
The Support Band (SMA 20 / EMA 21)
The innermost layer is a filled zone between the 20-period SMA and the 21-period EMA. These two averages are nearly identical in length but calculated differently, so the gap between them stays tight — producing a precise dynamic level rather than a wide smear. This is the mean of the recent trend. In a bull market it is the floor price returns to on pullbacks. In a bear market it is the ceiling price fails at on rallies. Green in a bull trend, red in a bear trend.
The Kijun Band — Main Trend Support and Resistance
The outer layer is the primary structural boundary of the indicator. The Kijun-Sen and Tenkan-Sen form a filled zone that acts as the main dynamic support in uptrends and the main dynamic resistance in downtrends, derived from Ichimoku Cloud. When price holds above this band the trend is intact. When price breaks through it and cannot reclaim it, the trend is in trouble.
Both lines adapt their lengths based on market conditions — compressing when momentum is strong and price is trending cleanly, expanding when conditions are weak or choppy. This means the boundary zone tightens in fast trends and widens when the market is uncertain, automatically adjusting to the environment. The lines are colored cyan in a bull regime and magenta in a bear regime, keeping them distinct from the inner band at all times.
The Kijun line within that band is the single most important level to watch. It is the baseline the trend must hold. Everything else in the indicator gives context to what happens at the Kijun.
Volume Profile — Reading the Zones
Volume profile engine adapted from Zeiirman's original work.
The volume profile is drawn to the right of price covering the last 240 bars. It answers the question the bands cannot: how much real participation has happened at each price level. A band sitting on a high-volume node is structurally different from a band sitting in empty space.
Point of Control (POC): The price level with the highest total volume — the market's center of gravity. When the POC aligns with the Kijun or the support band, that level is not just a moving average. It is a price the market has repeatedly chosen, making it the highest-conviction read the indicator can produce.
Value Area: The central 68% of all volume, shown as the brightest bars on the profile. The edges of the Value Area are high-probability reaction levels. Price approaching from outside tends to stall at the boundary or accelerate into the core. When the band zone overlaps a Value Area edge, dynamic structure and volume history are stacked at the same level.
Buy/Sell Split: Every row is divided between buying volume (green) and selling volume (red). When one side exceeds 60% it renders as a strong single color. This shows not just where volume was high — it shows who was in control. A dominant green node below price is demand. A dominant red node above is supply.
Low Volume Gaps: Rows with very little volume are structural gaps. Price moves through them quickly with little friction and accelerates until it hits the next meaningful cluster. When the band sits at the edge of a gap, a break can be fast and directional.
Freshness Fade: Recent volume glows brighter. Older volume fades. This prevents the profile from treating a level from 200 bars ago the same as one from yesterday.
Price Pivot S/R Lines
The last three swing highs and swing lows drawn as horizontal dashed lines — red for resistance, green for support. These are price memory. The exact levels where the market has previously reversed.
Bollingerbands
Custom Bollinger bands that can be toggled on to see outer lines of directional trend
How to Read It
The zone between the support band and the Kijun boundary is the core read. Green means the corridor is support — healthy pullbacks happen here. Red means it is resistance — rallies fail here. A tight narrow zone signals strong trend momentum. A wide zone signals a slower or more uncertain market.
The Kijun line is the level that matters most. A pullback that holds above it and bounces is trend continuation. A close below it is a warning. A reclaim from below is the first sign of a potential reversal. Every trade setup built with this indicator lives or dies at the Kijun.
The volume profile tells you whether the Kijun level carries real weight. A Kijun sitting on a large green volume node has been defended by buyers repeatedly — it has structural backing. A Kijun sitting in thin faded volume is unproven. When the POC and the Kijun are at the same price, that is the strongest signal this indicator can produce.
Value Area edges add a second volume-based reference layer. Watch for the band or Kijun to overlap with the top or bottom of the Value Area — that is confluence of two independent structural forces at the same level.
Pivot lines show the nearest price structure above and below. A green pivot just below the Kijun in a bull trend means two separate historical references are stacked — structural and volume-based support reinforce each other.
How to Trade With It
Bull Trend Pullback
Band is green. Price pulls back into the support band or toward the Kijun. Check the volume profile — is there a high-volume green node or the POC near that level? If yes, the zone has volume backing. Wait for a reversal signal inside the zone. Enter long with a stop below the Kijun. The nearest green pivot below is your hard invalidation.
Bear Trend Rally
Band is red. Price rallies into the band or toward the Kijun. Check the volume profile — is there a high-volume red node or the POC near the Kijun? If yes, the resistance is volume-confirmed. Wait for rejection inside the zone. Enter short with a stop above the Kijun. The nearest red pivot above is your invalidation.
Volume Gap Move
When price breaks out of the band and enters a low-volume section of the profile, expect the move to accelerate. There is no structural resistance in that gap. Price will run until it hits the next meaningful volume cluster. Use the profile to identify where that cluster is and target it.
Trend Change Warning
When the band flips color, stop trading the previous direction. Wait for price to pull back and hold the newly-colored zone on a retest before entering the new direction. Check the POC — if it is already on the new direction's side of price, the flip has volume support and is more likely to hold.
Confluence Filter
The cleanest setups occur when everything agrees: band color matches the trade direction, price is testing the Kijun, the POC or a high-volume node is at or near that level, and a pivot line adds nearby structure. When all of that stacks at one price, the zone is as high-conviction as this indicator gets.
Credits
Volume profile engine — Gaussian volume distribution, buy/sell split, POC calculation, Value Area logic, and freshness fade — adapted from Zeiirman's original work. Full credit to Zeiirman for the foundation that powers the volume layer of this indicator. Индикатор

Стратегия

Prior Day Range BoxPrior Day Range Box
Prior Day Range Box plots the previous trading day’s high and low directly on the current chart and displays that range as a visual box with optional reference lines. The script pulls the prior day’s high and low from the daily timeframe, then projects those levels onto the active chart so traders can track how current price behaves around important higher-timeframe levels.
At the start of each new trading day, the indicator creates a new prior day range using the previous day’s high and low. A box can be drawn between those levels to clearly show the full prior day range, while separate horizontal lines mark the prior day high and prior day low. These levels are widely used by intraday traders as key areas for support, resistance, breakout confirmation, rejection, and liquidity interaction.
An optional midpoint line can also be displayed. This line marks the 50% level of the prior day’s range and can serve as an added reference for balance, mean reversion, or directional bias during the session.
The script also includes an optional historical lookback mode. When enabled, it can display prior day range levels from multiple past sessions, making it easier to study how price reacts to historical daily ranges over time. The number of displayed lookback days can be adjusted to fit the user’s preference.
All visual elements are customizable. Users can choose whether to show the range box, enable the midpoint, extend the prior day high and low across the chart, display historical lookback days, and adjust the colors and line width to match their chart setup.
This indicator is designed for traders who use prior day high and low levels as part of their intraday process and want a clean visual framework for tracking previous session range structure on any intraday chart. Индикатор

Индикатор

Индикатор

Индикатор

CPR MTF StatusMulti-timeframe CPR (Central Pivot Range) dashboard that shows the trend bias across 6 standard timeframe pairs all from a single chart.
── TIMEFRAME PAIRS ──
Each row pairs a chart timeframe with its natural CPR anchor:
5m → 1H CPR
15m → 4H CPR
1H → Daily CPR
4H → Weekly CPR
D → Monthly CPR
W → Yearly CPR
── HOW STATUS IS DETERMINED ──
For each pair, the indicator computes the previous-period CPR and the current developing CPR, then compares their position:
▲▲ Strong Bull — developing CPR entirely above previous CPR (no overlap)
▲ Light Bull — bands overlap, but developing pivot is above previous pivot
— Neutral — pivots are equal
▼ Light Bear — bands overlap, but developing pivot is below previous pivot
▼▼ Strong Bear — developing CPR entirely below previous CPR (no overlap)
The previous CPR uses non-repainting data (prior completed period). The developing CPR repaints to reflect the current state — this is intentional for a live dashboard.
── TIMEFRAME VALIDITY ──
CPR calculations require the anchor timeframe to be strictly higher than the chart timeframe. When you're on a higher TF chart (e.g. Daily), lower anchor pairs (1H, 4H) cannot compute correctly because request.security can't aggregate full-period HLC from a lower timeframe.
The indicator automatically detects this and either hides invalid rows (default) or dims them with "n/a". A hint row appears when rows have been hidden, suggesting you switch to a lower chart timeframe to see all pairs.
── DISPLAY MODES ──
Full Mode (default):
Vertical table with Chart TF, CPR TF, and color-coded Status columns. Optionally shows previous and developing pivot values. The row matching your current chart timeframe is highlighted.
Compact Mode:
Single horizontal row of coloured cells — just the CPR label and a status arrow (e.g. "D▲▲"). Hover any cell for full detail. An optional summary cell at the end shows the net score.
── FEATURES ──
• Toggle individual timeframe rows on/off
• Customizable 5-level color scheme (strong/light bull/bear + neutral)
• Optional pivot value columns (prev + developing)
• Summary row with bull/neutral/bear count and tinted background
• Current chart TF row auto-highlighting
• Status line showing bull/bear TF counts
• Alerts: all 6 bullish, all 6 bearish, 5+ bullish, 5+ bearish
• Table position and text size settings
• Works on any symbol
── USAGE TIPS ──
• Best used on lower timeframe charts (5m or 15m) to see the most rows
• Pairs well with the Vector CPR Bands indicator for full CPR + band analysis
• When all or most timeframes align in one direction, it signals strong multi-timeframe confluence
Индикатор

Reverse ZigZagReverse ZigZag
A reimagined ZigZag indicator that processes price data from the most recent bar backwards, solving the biggest frustration with traditional ZigZag implementations: the inaccurate last leg.
━━━━━━━━━━━━━━━━━━━━━━━━
THE PROBLEM
Standard ZigZag indicators process bars left-to-right. This means the last leg is always "tentative" — it often anchors to the current bar instead of the actual swing extreme. If the true low was 3 bars ago but price has since bounced, the traditional ZigZag either misses it entirely or draws to the wrong bar. This makes the indicator unreliable precisely where it matters most: at the current price action.
THE SOLUTION
This indicator flips the logic. Instead of walking forward through history, it starts at the most recent bar and walks backwards. The result:
→ The last leg is always accurate — it finds the true extreme first, then works outward
→ No tentative or "pending" pivots — every swing point is drawn to the correct bar
→ No repainting — pivots don't shift around as new bars form
→ Clean, consistent results that match what your eyes see on the chart
━━━━━━━━━━━━━━━━━━━━━━━━
HOW IT WORKS
Phase 1 — Initialization
Starting from the current bar, the indicator walks left until it finds a price range that exceeds the deviation threshold. The more recent extreme becomes the first confirmed pivot.
Phase 2 — Backward Walk
From that first pivot, the algorithm continues left, tracking running highs and lows. When price reverses by more than the deviation %, a pivot is confirmed and the direction flips. This continues across the full lookback window.
Phase 3 — Drawing
Lines and labels are drawn between all confirmed pivots. Labels show the price and the magnitude of each swing move.
━━━━━━━━━━━━━━━━━━━━━━━━
SETTINGS
• Deviation % — Minimum reversal required to confirm a new pivot (default: 5%). Lower values capture smaller swings, higher values show only major structure.
• Lookback Bars — How far back to calculate (default: 500). Increase for longer history.
• Show Price Labels — Toggle pivot labels showing price and swing magnitude.
• Line Color / Width — Customize appearance.
• High/Low Pivot Colors — Separate colors for swing highs and lows.
━━━━━━━━━━━━━━━━━━━━━━━━
USE CASES
• Swing traders identifying reversal points and market structure
• Harmonic pattern recognition where accurate pivot placement is critical
• Elliott Wave analysis requiring precise swing labeling
• Support/resistance identification from confirmed swing levels
• Measuring swing magnitude to gauge momentum shifts
━━━━━━━━━━━━━━━━━━━━━━━━
NOTES
• The indicator recalculates on the last bar, so all drawing happens once per bar update — this is efficient and avoids the overhead of managing state across bars.
• Works on any timeframe and any instrument.
━━━━━━━━━━━━━━━━━━━━━━━━
Индикатор

Smart Money: Auto Order Blocks [identityKa]Overview
The Smart Money: Auto Order Blocks is a professional-grade volume and structural mapping tool designed for SMC (Smart Money Concepts) traders. Order Blocks represent areas where large financial institutions have accumulated significant buy or sell positions. Unlike basic pivot indicators that leave cluttered lines on the chart indefinitely, this script introduces a Smart Mitigation Engine that automatically tracks the validity of these institutional zones in real-time.
Core Mechanics & Detection
The algorithm uses pivot sensitivity to locate origin points of major market imbalances:
Bearish Order Blocks (Supply): Detected at the absolute high of a structural swing before a major downward move. The box is drawn from the wick's high to the highest candle body in that cluster, encapsulating the entire institutional sell zone.
Bullish Order Blocks (Demand): Detected at the absolute low of a structural swing before a major upward move. The box encapsulates the wick's low up to the lowest candle body.
The Smart Mitigation Engine
A fundamental rule of SMC is that once an Order Block is fully pierced and the price closes beyond it, the institutional orders within that zone are considered filled or "Mitigated."
This script constantly monitors the closing price. If a candle strictly closes above a Bearish OB, or strictly below a Bullish OB, the algorithm mathematically invalidates the zone.
Upon mitigation, the box is instantly deleted from the chart, ensuring that only "Fresh" and highly reactive unmitigated zones are visible to the trader. This keeps the workspace incredibly clean.
HUD Dashboard & AI Logic
The on-chart intelligence panel evaluates the proximity of the live price to the active Order Blocks:
Dangerous: Displayed actively whenever the current live price is trading inside the coordinates of an unmitigated Order Block. This serves as a warning that the price is in an institutional high-friction area where sharp rejections and high volatility are imminent.
LONG / SHORT: The engine tracks the macro bias based on the last mitigation event. If a Bearish OB was broken upwards (invalidated resistance), the macro bias shifts to LONG. If a Bullish OB was broken downwards, the bias shifts to SHORT.
How to Use It
This tool provides exceptional context for trade entries. When the AI Suggestion reads "LONG," traders should patiently wait for the price to pull back into a green Bullish OB zone. Once the price enters the zone (triggering the "Dangerous" state), traders can drop to a lower timeframe (e.g., 5-minute) to spot a micro-reversal pattern before executing a trade aligned with the macro trend. Индикатор

Dynamic Trendlines & Breakouts [identityKa]Overview
The Dynamic Trendlines & Breakouts is an automated structural analysis tool designed to remove human subjectivity from drawing trendlines. By utilizing mathematical pivot extremes, the script identifies the dominant market geometry in real-time. More importantly, it incorporates a Smart Volume Filter to distinguish between genuine structural breakouts and low-volume retail traps (fakeouts).
Core Engine Mechanics
The indicator operates on two primary algorithmic pillars:
Dynamic Coordinate Mapping: The script calculates the most recent pivot highs and pivot lows based on a user-defined lookback sensitivity. It then draws precision-extended dashed lines connecting these coordinates, forming dynamic Resistance (Upper Line) and Support (Lower Line) boundaries.
Volume-Confirmed Breakouts: The script continuously monitors the closing price relative to these extended lines. However, a crossover is not enough. If the "Volume Confirmation" feature is active, the engine checks a 20-period Simple Moving Average of the volume. A Bullish "B" (Buy) or Bearish "S" (Sell) label is only printed if the breakout candle is accompanied by above-average institutional volume, significantly increasing the probability of trend continuation.
HUD Dashboard & AI Proximity Logic
The integrated on-chart panel tracks the last confirmed breakout state and utilizes an ATR-based proximity sensor to generate the AI Suggestion:
Dangerous: Displayed actively whenever the current price is within a 0.5 Average True Range (ATR) distance of either the upper or lower trendline. This alerts the trader that the price is actively testing a major structural boundary, making new entries highly risky until a clear bounce or volume-confirmed breakout occurs.
LONG / SHORT: Triggered when the last structural breakout was Bullish (LONG) or Bearish (SHORT), provided the price is safely trending away from the immediate resistance/support lines.
How to Use It
This tool is ideal for momentum and breakout traders. When the price approaches a trendline (AI Suggestion reads "Dangerous"), prepare for a setup. Do not front-run the breakout. Wait for the engine to print the "B" or "S" label, confirming that both the structural level has been breached and the volume supports the move. Once confirmed, trade in the direction of the new momentum. Индикатор

Liquidity Magnet Zones [identityKa]Overview
The Liquidity Magnet Zones is an advanced Smart Money Concepts (SMC) indicator that identifies and manages unmitigated pools of liquidity. Institutional algorithms gravitate toward liquidity to fill large orders. This script mathematically plots these high-probability areas—Buy Side Liquidity (BSL) and Sell Side Liquidity (SSL)—and actively manages them, deleting zones the moment they are "swept" to keep the chart clean and relevant.
Core Mechanics: BSL & SSL Detection
The engine uses pivot point analysis to map market extremes:
Buy Side Liquidity (BSL): Formed at major structural highs. Retail traders typically place stop-losses (buy-to-cover orders) above these highs. The script identifies these unmitigated peaks and draws a dashed line projecting into the future.
Sell Side Liquidity (SSL): Formed at major structural lows. Retail traders place sell-stop orders below these lows. The script tracks these valleys as magnetic targets for price action.
Smart Mitigation (The Sweep Engine)
Unlike static drawing tools, this indicator constantly evaluates the live price against the drawn liquidity zones.
If a candlestick wick or body pierces a BSL or SSL line, the liquidity is considered "Swept" (mitigated).
The script instantly removes the line from the chart, triggering a real-time alert that institutional orders have likely been absorbed, opening the door for a structural reversal.
HUD Dashboard & Post-Sweep AI Logic
The integrated on-chart panel evaluates the structural bias based on the most recent liquidity event:
Dangerous: Displayed actively while the price is piercing and sweeping a liquidity line. This warns traders that extreme volatility is present as stop-losses trigger, making it highly risky to enter breakout trades.
SHORT: Triggered after BSL has been swept. SMC logic dictates that Smart Money forces price upward to trigger buy-stops, providing the necessary liquidity to execute large sell orders. Therefore, the post-sweep bias becomes Bearish (SHORT).
LONG: Triggered after SSL has been swept. Smart Money forces price downward to trigger sell-stops, allowing them to accumulate buy orders. The post-sweep bias becomes Bullish (LONG).
How to Use It
This tool is designed for reversal and mitigation trading, not breakout trading. Do not blindly place limit orders at BSL or SSL lines. Instead, wait for the price to hit the line (AI Suggestion reads "Dangerous"). Drop to a lower timeframe (e.g., 1m or 5m) and look for a Change of Character (CHoCH) confirming that Smart Money is indeed reversing the trend after engineering liquidity. Индикатор

Auto Dynamic S/R Zones Pro [identityKa]Overview
The Auto Dynamic S/R Zones Pro is a structural Price Action utility that automatically identifies, draws, and manages Supply (Resistance) and Demand (Support) liquidity zones. Unlike traditional pivot indicators that draw single horizontal lines, this script constructs volumetric "boxes" to represent areas of historical institutional interest. Furthermore, it incorporates a Smart Mitigation Engine that automatically cleans the chart by deleting zones once they have been functionally broken or fully mitigated by price action.
Core Zone Calculation Methodology
The script utilizes historical pivot detection (ta.pivothigh and ta.pivotlow) based on a user-defined lookback/lookforward sensitivity. Once a structural extreme is found, the engine calculates the boundaries of the zone to capture the entire rejection area rather than just the wick tip:
Resistance Zones (Supply): The top of the box is anchored to the absolute high of the pivot candle. The bottom of the box is calculated using the maximum value between the open and close of that same candle (capturing the wick-to-body spread).
Support Zones (Demand): The bottom of the box is anchored to the absolute low of the pivot candle. The top of the box is calculated using the minimum value between the open and close (capturing the lower wick-to-body spread).
The Smart Mitigation Engine (Chart Cleanup)
To prevent chart clutter and outdated data, the script utilizes dynamic arrays to manage the drawn boxes.
The script continuously monitors the closing price relative to all active zones.
If a candlestick closes strictly above the upper boundary of a Resistance box, or strictly below the lower boundary of a Support box, the zone is mathematically considered "Mitigated" (broken).
Upon mitigation, the script instantly deletes the box and its associated label from the chart history, firing a breakout alert and leaving only fresh, untested zones visible.
HUD Dashboard & AI Logic
The integrated on-chart panel evaluates the immediate relationship between the current price and the active S/R arrays:
Dangerous: Triggered whenever the current closing price is actively printing inside the coordinates of any active Support or Resistance box. This indicates price is in a high-friction decision zone where rejections are highly probable.
LONG / SHORT: The engine tracks the most recent structural breakout. If the last mitigated zone was a Resistance, it adopts a "LONG" bias indicating bullish structure. If the last mitigated zone was a Support, it adopts a "SHORT" bias indicating bearish structure, provided the price is not currently stuck inside another zone.
How to Use It
This indicator simplifies top-down analysis. Traders can use a higher timeframe (e.g., 1H or 4H) to let the script automatically map out major untested supply and demand zones. When the price enters an active zone (triggering the "Dangerous" AI state), traders can drop to a lower timeframe to look for reversal patterns. Alternatively, traders can trade the momentum of the breakouts by setting alerts for when a zone is officially broken/mitigated. Индикатор

Smart Pivot Reversals [identityKa]Overview
The Smart Pivot Reversals is a structural Price Action indicator designed to automatically detect and highlight market swing highs (Tops) and swing lows (Bottoms). Instead of relying on lagging moving averages to find reversals, this script uses raw bar-by-bar analysis to identify local structural extremes. To increase signal reliability, it includes optional, mathematically strict filters for macro-trend alignment and momentum exhaustion.
Underlying Concepts & Calculations
At its core, the indicator utilizes the standard ta.pivothigh and ta.pivotlow functions. The detection mechanism is entirely governed by two user-defined parameters:
Left Bars (Sensitivity): The number of preceding bars that must have a lower high (for a Top) or a higher low (for a Bottom). A smaller number detects micro-swings, while a larger number identifies major structural points.
Right Bars (Confirmation): The number of subsequent bars required to validate the pivot. Note on Visualization: The script uses a negative offset equal to the "Right Bars" value. This means the "TOP" or "BOTTOM" label is plotted exactly on the pivot candle historically, only after the confirmation bars have closed.
Smart Validation Filters (Optional Logic)
To filter out noise in ranging markets, traders can enable two concurrent mathematical filters:
Macro Trend Filter (EMA): When activated, the script calculates a standard Exponential Moving Average (default length 200). A pivot low (Bottom) is only validated if the closing price is strictly above the EMA (identifying pullbacks in an uptrend). A pivot high (Top) is only validated if the closing price is strictly below the EMA.
Momentum Strict Mode (RSI): When activated, the script checks the Relative Strength Index (default length 14) at the exact moment the pivot is confirmed. A Top is only valid if the RSI is in the Overbought zone (≥70). A Bottom is only valid if the RSI is in the Oversold zone (≤30).
HUD Dashboard & State Tracker
The script features a built-in, customizable on-chart panel that aggregates the last confirmed structural pivot and outputs an AI-style state suggestion:
LONG: Triggered and sustained when the last confirmed structure was a valid BOTTOM.
SHORT: Triggered and sustained when the last confirmed structure was a valid TOP.
Dangerous: Displayed during periods of transition or neutral states before a definitive structure is confirmed.
How to Use It
This tool is highly effective for traders utilizing Price Action methodologies, particularly on intraday charts (such as 15-minute or 1-hour timeframes). The printed Top/Bottom labels serve as excellent objective points for drawing support/resistance zones or trendlines. Traders can use the optional EMA and RSI filters to mechanically ignore counter-trend setups and only focus on high-probability reversal structures that align with the broader market context. Индикатор

EdgeGate Premarket Breakout LevelsOverview
EdgeGate™ Premarket Breakout Levels is designed for traders who use a premarket breakout strategy and want a simple way to visualize the key levels that often drive early-session momentum.
The indicator automatically plots:
Premarket High
Premarket Low
Previous New York Session High
Previous New York Session Low
These levels help traders quickly identify potential breakout zones, liquidity areas, and key intraday structure without needing to manually mark sessions each day.
What the Indicator Shows
Premarket High / Low
During the premarket session (default 04:00–09:30 ET), the indicator continuously tracks the session range and plots:
Premarket High
Premarket Low
Once the premarket session closes, these levels become fixed and extend across the trading day.
These levels are commonly used by traders watching for premarket breakout setups after the opening bell.
Previous NY Session High / Low
The indicator also plots the previous regular New York session range (09:30–16:00 ET):
Prev NY High
Prev NY Low
These levels often act as important areas of:
support and resistance
liquidity sweeps
breakout continuation or rejection zones
How Traders Use These Levels
Traders using a premarket breakout strategy typically watch for:
Price consolidating below Premarket High before a breakout
Momentum moves through Premarket Low for downside continuation
Reactions at Previous NY Session High or Low
Liquidity sweeps before trend continuation
This indicator helps keep those reference levels clearly visible throughout the trading session.
Customization
Users can customize:
Premarket session times
Line colors
Line styles (solid, dashed, dotted)
Line thickness
This allows the levels to be styled to match individual chart layouts.
🟣 About EdgeGate™
EdgeGate™ builds tools around one principle:
Structure. Liquidity. Execution.
We focus on developing precision-based session and liquidity frameworks designed for intraday traders who care about context, not clutter.
This is Version 1.0.0 of the EdgeGate™ public toolkit — released free to the TradingView community.
More session tools and execution-focused models coming soon.
🟣 Version
EdgeGate™ Premarket Breakout Levels
Version: 1.0.0
Release Type: Initial Public Release
Status: Stable
Build Philosophy: Clean session structure only
Included in v1.0.0
Premarket High / Low tracking (ET)
Previous NY Session High / Low tracking (ET)
Live Premarket High / Low plotting during premarket
Locked Premarket levels after session close
Previous NY session High / Low displayed on current chart
Customizable line colors, widths, and styles
Session-based level framework designed for premarket breakout traders
🟣 Release Standard (EdgeGate™ Framework)
All EdgeGate™ public tools will follow a structured release format:
Version number
Release type (Major / Minor / Patch)
Documented feature set
Defined behavioral philosophy
Transparent future roadmap
🆓 Open Source
This script is released free and open-source for the community.
You’re welcome to modify, improve, and build upon it respectfully.
⚠️ Disclaimer
For educational purposes only.
Not financial advice. Индикатор

Индикатор

Индикатор

Индикатор

Dynamic Support & Resistance [UAlgo]Dynamic Support & Resistance is a pivot driven structure indicator that detects recurring reaction prices and converts them into live support and resistance zones. The script does not treat every pivot as an isolated event. Instead, it groups nearby pivots into shared price areas, counts how many times the market has respected each area, and only promotes a level visually once it reaches the required minimum number of touches.
This creates a cleaner and more practical market structure map. When price reacts again near an existing zone, the level is updated rather than duplicated. As a result, the plotted areas represent repeated interaction and growing structural significance instead of a large collection of disconnected swing points.
Each active level is displayed as a channel centered on the level price. The size of that channel is based on the user selected tolerance percentage, so every level is shown as a reaction zone rather than a single exact line only. A center line and a text label are also added, which makes the structure easier to read in live chart conditions.
The script also includes a clear invalidation model. Support becomes invalid when price closes meaningfully below the zone by more than the selected break threshold. Resistance follows the opposite logic. Once invalidated, the level is removed from the active structure map, which keeps the chart focused on areas that are still relevant.
This makes the indicator useful for traders who want a simple but adaptive framework for mapping horizontal support and resistance. It works well for identifying repeated reaction zones, tracking the growth of structural importance through multiple touches, and recognizing when a level has finally lost validity.
🔹 Features
🔸 Pivot Based Structure Detection
The script starts from confirmed pivot highs and pivot lows. This means support and resistance zones are built from meaningful swing points rather than from arbitrary rolling highs and lows. As a result, the detected levels are more closely aligned with actual market turning areas.
🔸 Level Clustering Instead of Raw Pivot Plotting
A newly detected pivot is not always turned into a brand new level. The script first checks whether that pivot belongs to an existing active zone within the allowed tolerance. If it does, the existing level is updated. If it does not, a new level is created. This prevents unnecessary duplication and keeps the structure map organized.
🔸 Touch Counting and Strength Filtering
Every level tracks how many times price has reacted around it. A zone becomes visually important only after it reaches the required minimum number of touches. This helps filter out weak one time reactions and highlights price areas that have shown repeated acceptance or rejection.
🔸 Adaptive Reaction Zones
Each level is displayed as a channel rather than as a single price only. The channel width is calculated from the level price and the selected tolerance percentage. This makes the plotted area more realistic because support and resistance usually behave as zones rather than exact ticks.
🔸 Dynamic Price Recentering
When a new pivot is assigned to an existing level, the script updates the level price using an average based on the previous stored price and the new pivot. This gradually shifts the zone toward the center of actual reaction activity, which makes the level more representative over time.
🔸 Separate Support and Resistance Maps
Support and resistance are stored independently in their own arrays. This allows the script to manage bullish and bearish reaction zones separately while preserving clean logic for visualization, touch counting, invalidation, and cleanup.
🔸 Live Visual Rendering
Once a level becomes strong enough, the script draws:
a reaction channel,
a center line,
and a label showing the role and price.
This produces a chart friendly display that is easy to interpret during live trading or post analysis.
🔸 Invalidation by Closing Break
Levels are not removed by random intrabar noise alone. Instead, support is invalidated only when closing price moves below the level by more than the selected break percentage, and resistance is invalidated only when closing price moves above it by more than that threshold. This helps reduce premature removals.
🔸 Automatic Cleanup
Broken levels are removed from the active arrays after invalidation. This keeps the script efficient and prevents the internal structure store from filling with irrelevant levels.
🔸 Label Position Refresh
On the last bar, active labels are shifted slightly forward so they remain readable and do not sit directly on top of current candles. This small detail improves chart presentation significantly.
🔹 Calculations
1) Pivot Detection
float ph = ta.pivothigh(high, pivotLen, pivotLen)
float pl = ta.pivotlow(low, pivotLen, pivotLen)
int pIdx = bar_index - pivotLen
if not na(ph)
resistances.processPoint(ph, -1, pIdx)
if not na(pl)
supports.processPoint(pl, 1, pIdx)
This is the starting point of the script.
The code uses ta.pivothigh and ta.pivotlow to detect confirmed swing highs and swing lows. Because pivots are only confirmed after pivotLen bars on both sides, the actual pivot bar is not the current bar. That is why the script calculates:
pIdx = bar_index - pivotLen
This gives the real bar index where the pivot occurred.
Then the pivot is passed into the correct structure map:
pivot highs go into the resistance array,
pivot lows go into the support array.
So at this stage, the script is transforming raw swing points into candidate support or resistance events.
2) Grouping New Pivots Into Existing Levels
method processPoint(array levels, float price, int role, int idx) =>
bool found = false
for in levels
if lvl.active
float tolerance = lvl.price * zonePct
if math.abs(price - lvl.price) <= tolerance
lvl.price := (lvl.price * lvl.count + price) / (lvl.count + 1)
lvl.count += 1
lvl.updateVisuals()
found := true
break
if not found
SRLevel newLvl = SRLevel.new(price, 1, role, true, na, na, na, idx)
levels.push(newLvl)
This method decides whether a new pivot should strengthen an existing level or create a completely new one.
For every active level in the relevant array, the script calculates a tolerance band:
tolerance = lvl.price * zonePct
Then it checks whether the new pivot price is close enough to that level:
math.abs(price - lvl.price) <= tolerance
If the pivot falls inside the allowed zone, the script treats it as another touch of the same structure. It then updates the stored level price using an average weighted by the existing touch count:
lvl.price := (lvl.price * lvl.count + price) / (lvl.count + 1)
This is important. The level does not stay frozen forever. It gradually recenters as more pivots are absorbed into it. At the same time, the touch count increases, which strengthens the zone statistically.
If no active level is close enough, the script creates a fresh support or resistance level with an initial count of one.
So this method is the core clustering engine of the whole indicator.
3) Minimum Touch Logic and Zone Construction
method updateVisuals(SRLevel this) =>
if this.active and this.count >= minStrength
color c = this.role == 1 ? colSup : colRes
float tolerance = this.price * zonePct
float top = this.price + tolerance
float bot = this.price - tolerance
This is the first visual gate.
A level is drawn only if two conditions are true:
the level must still be active,
and its touch count must be greater than or equal to the minimum strength input.
That means weak single touch levels can exist internally, but they are not shown until they prove themselves.
Once the level qualifies, the script calculates the channel boundaries around the center price:
top = this.price + tolerance
bot = this.price - tolerance
So the plotted zone is always centered on the current level price and expands above and below it by the selected tolerance percentage.
This is what turns the raw pivot cluster into an actual support or resistance zone.
4) Drawing the Channel, Center Line, and Label
if na(this.bx)
this.bx := box.new(
left=this.start_idx,
top=top,
right=bar_index,
bottom=bot,
border_color=color.new(c, 0),
border_style=line.style_dotted,
bgcolor=color.new(c, 80),
extend=extend.right
)
else
this.bx.set_top(top)
this.bx.set_bottom(bot)
if na(this.ln)
this.ln := line.new(
x1=this.start_idx,
y1=this.price,
x2=bar_index,
y2=this.price,
color=c,
width=1,
extend=extend.right
)
else
this.ln.set_y1(this.price)
this.ln.set_y2(this.price)
Once a level is strong enough, the script renders its visual structure.
The box represents the full support or resistance channel from the starting pivot index to the current bar, and it is extended to the right so the zone remains visible into future bars.
The line is drawn exactly at the stored level price, which serves as the center of the zone. Because the price can shift slightly over time as new pivots are absorbed, the center line is updated dynamically as well.
So visually, each confirmed level contains:
a shaded reaction area,
a center reference line,
and an ongoing extension into the future.
This gives the user both a zone view and a central price reference at the same time.
5) Text Label Calculation
string txt = str.format("{0} - {1,number,#.##}", this.role == 1 ? "Support" : "Resistance", this.price)
if na(this.lbl)
this.lbl := label.new(
x=bar_index,
y=this.price,
text=txt,
style=label.style_label_left,
color=color.new(color.black, 100),
textcolor=colTxt,
size=size.small
)
else
this.lbl.set_xy(bar_index, this.price)
this.lbl.set_text(txt)
This snippet builds and updates the text label for each visible level.
The label text is generated from the level role and the current averaged level price. So if the level belongs to the bullish structure map, the label shows Support and the current price. If it belongs to the bearish structure map, it shows Resistance and the current price.
The label is then either created or updated at the latest bar.
This means the label always reflects the most current state of the zone instead of staying attached to an outdated price.
6) Invalidation Logic
method checkInvalidation(array levels, float currentPrice) =>
for in levels
if lvl.active
float threshold = lvl.price * breakPct
bool broken = false
if lvl.role == 1
if currentPrice < lvl.price - threshold
broken := true
else
if currentPrice > lvl.price + threshold
broken := true
if broken
lvl.active := false
lvl.updateVisuals()
This method decides when a level should stop being considered valid.
For every active level, the script calculates a break threshold based on the level price and the selected invalidation percentage:
threshold = lvl.price * breakPct
Then it applies directional logic.
For support:
price must close below the level by more than the threshold.
For resistance:
price must close above the level by more than the threshold.
This is important because it means the script does not remove zones on a tiny touch or minor overshoot. A meaningful closing break is required.
When that break happens, the level is marked inactive and its visuals are refreshed so the box, line, and label are deleted.
7) Visual Removal of Broken Levels
else if not this.active
if not na(this.bx)
this.bx.delete()
this.bx := na
if not na(this.ln)
this.ln.delete()
this.ln := na
if not na(this.lbl)
this.lbl.delete()
this.lbl := na
This is the part of updateVisuals that handles invalidated levels.
Once a level is no longer active, the script deletes all visual objects associated with it:
the channel box,
the center line,
and the text label.
This keeps the chart focused on only those support and resistance zones that are still valid. It also prevents broken levels from continuing to influence the user visually after the market has already moved through them.
8) Cleanup of Inactive Objects From Memory
method cleanup(array levels) =>
int n = levels.size()
if n > 0
for i = n - 1 to 0
SRLevel lvl = levels.get(i)
if not lvl.active
levels.remove(i)
Deleting a level visually is only one part of the process. The script also removes inactive levels from the calculation arrays.
This reverse loop is important because removing array elements while looping forward can shift indices and create logic errors. By iterating from the end toward zero, the script safely removes inactive items.
This keeps the internal storage efficient and prevents the structure engine from wasting time checking already broken zones on future bars.
9) Last Bar Label Position Update
if barstate.islast
for lvl in supports
if lvl.active and not na(lvl.lbl)
lvl.lbl.set_x(bar_index + 5)
for lvl in resistances
if lvl.active and not na(lvl.lbl)
lvl.lbl.set_x(bar_index + 5)
This small block improves readability on the chart.
On the last visible bar, the script shifts active labels slightly to the right of the current candle. That creates a cleaner presentation and reduces overlap between labels and price bars.
Although this does not change the structural logic of the indicator, it improves usability in live analysis and makes the levels easier to read at a glance.
10) Full Execution Flow
if not na(ph)
resistances.processPoint(ph, -1, pIdx)
if not na(pl)
supports.processPoint(pl, 1, pIdx)
supports.checkInvalidation(close)
resistances.checkInvalidation(close)
supports.cleanup()
resistances.cleanup()
This compact block summarizes how the script behaves on every bar.
First, it checks whether a new pivot high or pivot low has been confirmed.
Second, it sends that pivot into the correct level array.
Third, it checks whether any active support or resistance has been invalidated by the current closing price.
Finally, it removes inactive levels from memory.
So the script is constantly cycling through four steps:
detect,
cluster,
invalidate,
clean.
That is why the indicator remains dynamic. It is always updating the active structure map as the market evolves. Индикатор

Индикатор
