Modern VWAP with BandsModern VWAP with Bands is an anchored Volume Weighted Average Price overlay designed to show how far price has moved from its current volume-weighted reference and highlight unusually extended conditions that may be relevant to mean-reversion analysis.
The indicator combines an anchored VWAP, five configurable deviation bands, distance-based candle coloring, outer-band reversion signals, configurable Target and Stop reference levels, and separate historical Bull and Bear signal-outcome tables.
WHAT THE INDICATOR CALCULATES
The Trading Style setting determines the VWAP anchor period and price source.
Intraday = Daily VWAP using HLC3.
Swing/Daily = Weekly VWAP using HL2.
Long-term = Monthly VWAP using Close.
The VWAP resets automatically when the selected Daily, Weekly or Monthly anchor changes.
Five upper and five lower deviation bands are calculated around VWAP.
When ATR Bands is enabled, each deviation level represents an ATR multiple.
When ATR Bands is disabled, each deviation level represents a percentage offset from VWAP.
This allows the band structure to adapt either to current volatility or to fixed percentage distance from the VWAP reference.
WHY THE COMPONENTS ARE COMBINED
VWAP provides the central volume-weighted reference.
The deviation bands measure progressively larger extensions away from that reference.
The candle-coloring system provides a visual representation of how extended price currently is.
The outer Dev 5 signal logic identifies occasions when price moves through the most extreme configured band.
The Bull and Bear tables then provide historical context showing how those signals resolved using the selected Target and Stop assumptions.
Together, these components provide a workflow for identifying the current VWAP reference, measuring extension, highlighting extreme movement, identifying outer-band events and reviewing their historical outcomes.
BAR COLOR DISTANCE
Bar Color Distance Mode controls how distance from VWAP is normalized.
ATR mode measures absolute distance from VWAP relative to ATR.
% VWAP mode calculates the absolute percentage distance from the VWAP itself:
Absolute distance from VWAP / VWAP × 100
For example, if VWAP is 100 and the selected price source is 102, the % VWAP distance is 2%.
Auto mode uses ATR normalization when ATR Bands is enabled and % VWAP normalization when percentage bands are being used.
This keeps the candle-color distance measurement aligned with the selected band methodology.
REVERSION SIGNALS
A Bull reversion signal occurs when the closing price crosses below the lower Dev 5 band.
A Bear reversion signal occurs when the closing price crosses above the upper Dev 5 band.
These signals identify extreme extensions from VWAP. They do not confirm that a reversal has already started and should not be interpreted as predictions that price must return to VWAP.
Require Outside Dev 5 can apply an additional extension requirement beyond the Dev 5 band before a signal is accepted.
Dev 5 Outside % controls how far beyond Dev 5 price must extend when this filter is enabled.
The optional Cool Off Period prevents another accepted signal for a selected number of bars after the previous signal.
Show Reversion Signals controls only the visibility of the Bull and Bear markers. The underlying signal calculations and historical outcome tracking continue to operate when the markers are hidden.
ENTRY, TARGET AND STOP
The reference entry for both Bull and Bear signals is the closing price of the signal candle.
Bull Stop is positioned below the Bull reference entry according to Bull Stop %.
Bear Stop is positioned above the Bear reference entry according to Bear Stop %.
Target Source can be set to User % or VWAP.
With User % selected, Bull Target % and Bear Target % determine the Target distance from the signal-bar close.
With VWAP selected, the Target is the VWAP value that existed when the signal occurred.
The VWAP Target is fixed at that signal-bar value. It does not continue moving as the VWAP changes on later candles.
The Target and Stop lines displayed on the chart use the same corresponding values used by the historical outcome tables.
HISTORICAL SIGNAL-OUTCOME TABLES
The Bull and Bear tables provide simplified historical signal-outcome statistics.
T = Target reached.
S = Stop reached.
The displayed percentage is the number of Target outcomes divided by the total number of resolved Target and Stop outcomes for that direction.
The percentage is an internal historical measurement produced by the indicator's predefined evaluation rules. It is not a probability, expected win rate, accuracy prediction or guarantee of future performance.
The reference entry is the close of the signal candle.
Target and Stop evaluation begins on the following candle. Price movement that occurred earlier within the signal candle is therefore not used to determine an outcome after an entry at that candle's close.
If both the Target and Stop are touched during the same later candle, OHLC data cannot determine which level occurred first. The script therefore records the event conservatively as a Stop outcome.
Only one unresolved Bull simulation and one unresolved Bear simulation can be active at the same time.
If another signal in the same direction occurs while that direction already has an unresolved event, it is not added as another independently scored table event.
When Ignore Open Trades on Reset is enabled, unresolved events are discarded when the selected VWAP anchor resets. They are not counted as either a Target or Stop outcome.
These tables are analytical summaries and are not TradingView Strategy Tester backtests.
HOW TO USE
Start by selecting the Trading Style that matches the VWAP reference you want to analyse.
Use Intraday for a Daily VWAP, Swing/Daily for a Weekly VWAP, or Long-term for a Monthly VWAP.
Choose whether the deviation structure should react to current volatility using ATR Bands or represent fixed percentage distances from VWAP.
The inner deviation bands show smaller extensions from VWAP while the outer bands represent progressively larger extensions.
Use the candle colors as a quick visual indication of the current distance from VWAP.
Bull signals identify closes crossing below the lower Dev 5 band.
Bear signals identify closes crossing above the upper Dev 5 band.
These are extreme-extension conditions rather than automatic trade instructions. They can be combined with the trader's own price structure, trend, momentum, support/resistance or other confirmation methods.
Require Outside Dev 5 can be enabled when a greater extension beyond the outer band is desired.
The Cool Off Period can reduce repeated signals when price repeatedly moves around the outer band.
The Bull and Bear tables can then be used to examine how historical signals resolved under the currently selected Target and Stop assumptions.
IMPORTANT SETTINGS
Trading Style controls the VWAP anchor and source.
ATR Bands selects ATR-based or percentage-based deviation bands.
ATR Length controls the volatility calculation used by ATR bands and ATR-normalized visual calculations.
Level 1 Dev through Level 5 Dev control the five distances around VWAP.
Bar Color Distance Mode selects ATR or % VWAP normalization for candle coloring.
Bar Color Contrast Power controls how quickly color intensity increases as price moves farther from VWAP.
Bar Color Outside Boost increases visual emphasis after the most extreme configured distance is exceeded.
Require Outside Dev 5 adds an additional extension filter to signal generation.
Cool Off Period controls the minimum spacing between accepted signals when enabled.
Target Source selects percentage-based Targets or the fixed VWAP value at the signal.
Bull Target %, Bull Stop %, Bear Target % and Bear Stop % define the assumptions used for the corresponding historical signal-outcome calculations.
SIGNAL TIMING AND REPAINTING
The script does not use future-data lookahead, higher-timeframe request.security calculations, pivot calculations or historical pivot backplotting.
Signals are calculated using the current chart candle.
Because the closing price of a live candle changes while that candle is forming, a Bull or Bear signal can appear and disappear before the candle closes.
Once the candle has closed, that historical signal condition is fixed.
The script does not place a confirmed signal retrospectively onto an earlier pivot candle.
LIMITATIONS
VWAP depends on the volume data supplied for the selected chart symbol. Volume can differ between exchanges, brokers and data feeds, so VWAP and its resulting bands may also differ.
The indicator uses chart OHLCV data. It does not use order-book data, bid/ask trade classification or individual transaction-level order flow.
ATR is a historical volatility calculation and responds to changing market conditions rather than predicting them.
Extreme distance from VWAP does not guarantee mean reversion. Price can continue moving farther away from VWAP after a Bull or Bear signal.
Live-candle conditions can change before the candle closes.
The Bull and Bear historical statistics do not model commissions, spread, slippage, execution delay, liquidity, partial fills, leverage, position sizing or true intrabar sequencing.
When both Target and Stop occur inside the same candle range, the actual sequence cannot be determined from OHLC data and the event is therefore classified as a Stop.
Unresolved simulations can be removed at VWAP anchor resets when Ignore Open Trades on Reset is enabled.
The pre-reset and post-reset fading effects are visual features based on the expected length of the selected anchor period. Markets with restricted sessions or gaps may contain a different number of actual chart bars.
Historical results do not imply future performance.
ORIGINAL FUNCTIONALITY
Modern VWAP with Bands is designed as more than a standard VWAP plot.
Its implementation integrates selectable Daily, Weekly and Monthly VWAP anchoring, five ATR-or-percentage deviation zones, VWAP-relative or ATR-normalized candle coloring, configurable extreme-band signal filtering, fixed VWAP-or-percentage Targets, configurable Stops, anchor-reset handling and separate Bull and Bear historical outcome tracking.
The purpose of combining these elements is to connect VWAP location, distance measurement, visual extension analysis, signal generation and historical signal evaluation within one consistent overlay.
อินดิเคเตอร์

MarketMaulers Auto TrendlinesMarketMaulers Auto Trendlines draws the diagonal structure you would have drawn yourself, and then stays with the line through the part that matters. Two confirmed pivots anchor it, the market's own touches validate it, and its parallel rail is projected through the furthest price travelled while the line was forming. Then it waits for the break, and reports which of the only two things that can follow a break took place.
Forming · Validated · Broken · Retested / Failed break
THE RETEST IS THE PRODUCT
Anyone can draw a line through two pivots and print a marker when price closes through it. The break is the least informative moment in a trendline's life. Most lines break, and the break on its own says nothing about whether the level still matters.
Two things can follow, and they mean opposite things.
• RETEST. Price comes back and respects the line from the OTHER side. Old support is now resistance. The line survived its own break as a reference and is arguably more useful after it than before.
• FAILED BREAK. Price closes straight back on the original side. The break was noise, the line was never beaten, and anyone who traded the break is offside.
This tool waits for one of those and names it. That is the read you cannot get by eyeballing the chart in the moment, because in the moment the two look identical.
FROM ZERO: WHY A DIAGONAL LINE IS A DIFFERENT ANIMAL FROM A HORIZONTAL ONE
A horizontal level is a price. It sits at one number and it is still that number tomorrow. A trendline is a price AND a rate. It asks the market to keep making higher lows at a certain speed, or lower highs at a certain speed. That is a much stronger claim, which is why trendlines break more often than horizontal levels and why the break carries less information when they do.
It is also why a line has to be earned rather than drawn. Two points define any line at all. Three or more touches is the market repeatedly agreeing to the rate.
HOW A LINE EARNS ITS PLACE
Five gates, each closing a specific way auto-trendline scripts produce clutter.
• Confirmed pivots only, paired for direction. A rising support line needs a second swing low strictly HIGHER than the first, a falling resistance line a second high strictly lower. A zero slope is unreachable by construction, so this file never draws a horizontal line.
• A cleanliness scan. Every bar between the two anchors is checked for a close through the line. A line price has already spent time on the wrong side of was never a valid line, and drawing it anyway is how a chart fills with lines nobody would have drawn by hand.
• Touch counting with a spacing rule. A touch is a bar reaching within a quarter of an ATR of the line, and touches within three bars of each other count once. Without the spacing rule one slow drift along a line counts as five touches and validates anything.
• Near-duplicate rejection. Two lines are compared at two sample points, now and fifty bars back, and the newer one is dropped if they sit within 0.75 ATR at BOTH. Comparing at a single point lets two lines with different slopes look identical at the moment they cross.
• A slope cap and abandoned-line retirement. Near-vertical lines off a single spike are refused, and a line price has stayed far away from for twenty consecutive bars is retired. That is what keeps ancient support lines from hanging under current price forever.
TWO WAYS A LINE BREAKS, AND THE SECOND ONE IS THE INTERESTING ONE
The obvious break is distance: a close sitting at least 0.35 ATR beyond the line. That catches the decisive break and it misses the slow one.
Price can park a fraction through a line, too shallow to trigger the distance test and too close to trigger retirement, and grind there bar after bar. Under a distance-only rule the line stays marked VALIDATED with price on the wrong side of it for as long as the grind lasts, which is a tool stating something false. So three consecutive wrong-side closes break a line at any distance. Decisive breaks are caught by distance, grinds by persistence, and there is no state left where the display and the price disagree.
A RETESTED LINE GOES BACK TO WORK
Most implementations treat the retest as the end of a line's life, which is backwards from what the retest proves. A line that broke, was left alone, and then held from the other side has demonstrated it still matters, and the tools that go quiet there stop watching at the exact moment the line earned its keep.
The mechanism is a POLARITY FLIP rather than a new line. Old support becomes resistance, so the side the break test looks at flips while the line's geometric identity does not. It is still a rising line, it keeps its color and its channel offset, and it starts being tested for a break to the upside. The label carries R1, R2, R3 so a twice-proven line is visibly different from a fresh one, and the cycle is capped at three, after which retested is terminal. A line oscillating around price cannot churn forever.
The status card reports both facts rather than picking one. RISING · RES is a rising line currently acting as resistance. Unflipped lines read RISING · SUP and FALLING · RES, which is what they always meant, said out loud.
THE CHANNEL
Once a line is validated, its parallel rail is projected through the furthest the market travelled away from it while the line was forming. The rail comes from a real extreme rather than from a statistical fit, so the width means something specific: this is how far this structure has been willing to travel from its own floor. Fill and opacity are yours to set, and the fill carries the state, so there is no color legend to memorize.
CONVERGENCE, WITH A TIME
Two validated lines with different slopes meet at an apex, and an apex is a price AND a bar. That is a triangle or a wedge resolving, one of the oldest readable objects in chart reading. It needs both lines retained as DATA rather than as drawings, which is why most auto-trendline scripts cannot offer it at all.
It is reported on the card and alerted, not drawn. A marker painted into future bars would say the same thing and add a drawing to a chart whose whole design rule is fewer marks. And it is a fact, not a forecast: it says where and when the structure runs out of room, not what happens when it gets there.
HIGHER TIMEFRAME LINES
A second engine, off by default, sharing the concepts of the chart-timeframe engine and none of its code paths. If the higher-timeframe layer is wrong, the layer you already trust keeps working.
Why most higher-timeframe trendline overlays are unsound is worth stating. A security call hands back prices. It does not hand back the ability to walk backwards through higher-timeframe bars, and the cleanliness scan IS a walk. So an HTF line built off a plain security read cannot be validated the way a chart line is, and most implementations quietly skip the check. Here, completed higher-timeframe bars are pushed into a ring buffer as they close and the whole HTF engine walks those. A real scan, real HTF touches, and a break that is a real HTF close through the line.
Breaks are judged by the timeframe that OWNS the line. A 15m candle closing through a 4H trendline is not a 4H close, and treating it as one is the most common way an HTF overlay lies. The visible consequence is that an HTF line can die up to one HTF bar later than the chart makes it look like it should. That is correct, and it will look wrong the first time.
What the HTF layer deliberately does not do, each one a decision rather than an omission: no channel, no polarity flip, no apex participation, and no separate alerts. The rail is measured by the same pass that validates the chart line. Converging HTF and chart slopes needs a unit conversion that is wrong the moment the chart timeframe changes. And two engines firing the same alert would double every notification. One slot, defaulted off, because new surface gets proven before it gets duplicated.
THE STATUS CARD
Six live lines on a chart and no way to tell which one matters this bar. The card names the nearest line, the distance to it in points and in ATR, its geometry and its current role, how many broken lines are still awaiting a verdict, and the soonest apex. A table rather than a label, because a label draws inside the price pane and loses the z-order fight with candles.
ALERTS
Trendline validated · Trendline broken · Trendline retest confirmed · Failed trendline break · Trendline convergence approaching
The convergence alert is the one worth leaving on. The other four report something that has already finished, which is useful for a journal. Convergence is the one thing the tool knows about the future, so it is the one alert that can reach you while there is still something to do about it. It is edge-triggered: it arms while the apex is beyond your warning distance and fires once on the way in, rather than firing every bar of the approach until you mute it forever.
WHY IT DOES NOT REPAINT
Lines anchor on confirmed pivots only, and a pivot is not known until the required bars have closed after it. Every state change is judged on a closed bar. The chart-timeframe engine contains no security call at all, and the higher-timeframe engine reads only completed HTF bars, never the one in progress, using the last-closed idiom with an atomic tuple so high, low, close and time cannot straddle a boundary. The cost is a deliberate lag of a few bars on every anchor, and that lag is the guarantee.
WHAT THIS TOOL IS NOT
It draws structure. It shades no band, marks no zone, and makes no claim about resting orders anywhere. When a broken line is reclaimed, this tool calls it a FAILED BREAK, which is a statement about structure and is what the price action supports on its own. A liquidity tool looking at the same bar would call it a sweep, which is a statement about order flow. Same behavior, different claim, and only one of them is visible on the chart.
MADE TO FIT YOUR CHART
Eight card positions, three text sizes, separate colors for rising and falling lines and for their higher-timeframe counterparts, line width, channel fill and opacity, labels on or off, and a toggle per section. Detection, channel, break and retest, style, higher timeframe, card and alerts are separate groups. Pivot length, minimum touches, maximum active lines, the slope cap, the retirement distance, the retest confirmation mode and the retest window are all exposed.
HOW TRADERS ACTUALLY USE IT
Pivot Length decides everything downstream, because it decides which swings exist to be paired. If the chart looks emptier than you expect, that is the first knob, ahead of the touch count.
Minimum touches is the honesty dial. Two touches is a line you drew. Three is a line the market drew. Three is the default for that reason.
Treat a break as the question and the following bars as the answer. Wait for RETESTED or FAILED before deciding what the break meant. The whole tool is built so you do not have to guess which one you are sitting in.
Works on any market and any timeframe.
Display only. This draws structure and reports what happened to it, it does not fire buy/sell signals and it does not forecast. Educational tool, not financial advice.
Published open-source. The pivot pairing and cleanliness scan, the near-duplicate rejection, the two-mode break test, the polarity-flip lifecycle, the apex pre-filter and the higher-timeframe ring buffer are all readable in the source. Everything above explains what it draws and how it decides what to draw; the code is there so you can check that the description is accurate rather than take it on faith. Read it, fork it, argue with the constants. อินดิเคเตอร์

Pattern Atlas : Geometric Indicator [AxeAlgo]Pattern Atlas : Geometric Indicator
A chart-native scanner for 16 classical price-structure ("geometric") chart
patterns. It tracks confirmed swing pivots as they form and, when a run of
pivots satisfies the geometry of a known pattern and its breakout condition, it
marks the pattern on the chart with an outline box, an optional construction
skeleton, a measured-move target, and a labelled pin signal. It also keeps a
live status table of every pattern it knows.
All pattern-recognition logic lives in the companion Pine library
"Pattern Atlas : Geometric ". This script is the visualization and
alerting layer on top of it, so the detection rules stay in one place that can
be maintained and audited on their own.
Patterns detected
Reversal patterns: Head & Shoulders and its Inverse; Double Top and Double
Bottom; Triple Top and Triple Bottom; Rounding Top and Rounding Bottom; Diamond
Top and Diamond Bottom; Broadening Formation; and the V-Top / V-Bottom spike.
Continuation patterns: Ascending Triangle; Descending Triangle; Symmetrical
Triangle; Rising and Falling Wedge; Bull and Bear Flag; Bull and Bear Pennant;
Rectangle; and Cup & Handle with its Inverted form.
Structural patterns: Island Reversal and Bump-and-Run Reversal.
How it works
First, a rolling list of confirmed swing highs and lows is maintained. The
"Pivot left bars" and "Pivot right bars" inputs set how many bars on each side
of a candidate must be less extreme for it to count as a pivot. Higher values
give fewer, more significant pivots and a longer confirmation lag.
Next, each pattern function inspects the recent pivot sequence for its defining
shape together with the price move that confirms it. For example, Head &
Shoulders looks for three peaks with a lower-shoulder relationship and a close
back through the neckline; an Ascending Triangle looks for a flat resistance
base with a rising support line and a close through the base.
Each match reports its direction (bullish or bearish), the exact pivots it was
built from, a text description, a strength score, and a measured-move price
target.
Strength score
The strength score runs from 0 to 100 percent and measures how decisively price
broke through the pattern's confirmation level, relative to the pattern's own
price range. A higher score means a cleaner, more committed break.
Patterns defined by a single point, such as the Spike and the Island Reversal,
have no internal range to measure against and always score a neutral 50 percent.
The "Minimum pattern strength to show" input filters marginal matches off the
chart and out of the alerts.
Measured-move targets
The target is a classical projection: the pattern's own height added to or
subtracted from the breakout point, shown as a small price label. No ray is
drawn out to it.
Targets are not shown for the Spike, the Island Reversal, or the Bump-and-Run
Reversal, because those patterns have no reliable height to project from.
Repainting
Every box, line, target, and pin is drawn only on a closed bar. Each match is
gated so it appears, and alerts, only once, on the bar it is first confirmed.
Swing pivots are only known a number of bars after they occur, equal to
"Pivot right bars". That confirmation lag is structural to pivot-based analysis,
not repainting. Nothing already drawn is moved or removed on later bars.
What you see on the chart
A box outlines the full pivot span of each match, coloured by direction.
Construction lines draw a zig-zag through the exact pivots that built the
pattern. This is off by default.
Construction points place a small circle on each of those pivots. This is also
off by default.
A target label shows the measured-move price.
A pin signal is a thin stem with a glowing gem at its tip, placed below the bar
for a bullish match and above it for a bearish one. Hovering the gem shows the
full list of matches on that bar with their strength and targets.
The scanner table lists every pattern with a live status column. When a pattern
matches on the current bar the row shows its name and strength percent; when it
does not, the row shows a dash. Hovering any row shows that pattern's
description.
Inputs
Pivot Detection controls the left bars, right bars, and the maximum number of
pivots tracked.
The Reversal, Continuation, and Structural groups each have a master enable
switch plus one checkbox per pattern, so a whole category can be turned off in
one click.
Display controls the boxes, construction lines, construction points, targets,
and pin signals; the minimum strength filter; the table on/off, position, and
text size; and the bullish and bearish colours.
Watermark switches between a Dark and a Light theme.
Alerts
There is one alert condition per pattern, plus an "Any Bullish Chart Pattern"
and an "Any Bearish Chart Pattern" condition.
There is also a single dynamic alert() call that fires once per closed bar with
the full list of patterns found on that bar, along with their strength and
targets. Add it using the "Any alert() function call" option when creating the
alert.
Every alert condition is gated to confirmed bars in the code itself, so none of
them can fire from a still-forming bar regardless of the alert frequency chosen.
Notes
Chart-pattern recognition is inherently approximate. Treat matches as structured
context rather than mechanical trade signals, and confirm them with your own
analysis.
The indicator works best on liquid instruments and on timeframes where swings
are well defined. Very low timeframes produce noisy pivots.
This is not financial advice.
Dependency: Pattern Atlas : Geometric , a Pine library.
อินดิเคเตอร์

Split VWAPWhat it does
Split VWAP cuts every bar horizontally at the session VWAP and draws it as two candles at the same position: one spanning the low up to VWAP, one spanning VWAP up to the high. Each partial takes the bar's open and close clamped into its own range, and a share of the bar's volume proportional to its height. Where VWAP sits at or beyond a bar's extreme, one partial collapses to zero height and the other takes the whole bar and all of its volume; the collapsed one is hidden by default.
A single candle gives you four prices and one volume total, but says nothing about how that activity was distributed relative to the session's average price. Splitting the bar at VWAP and attributing volume to each side makes that distribution visible.
How the colouring works
Each partial is coloured from two changes, both measured against the previous bar's partial on the same side of VWAP: the change in attributed volume, and the change in clamped close.
In the default mode, "Volume hue OKLCh", each change gets a channel of its own. The volume change moves the hue along a continuum — red (
#ea6c5c, hue 29) when it fell, green (
#05b28d, hue 171) when it held, blue (
#7b8efa, hue 274) when it rose. The price change moves the lightness: lighter when the close rose, darker when it fell.
All three anchors sit at an OKLCh lightness of 0.680 and hold as much chroma as their hue can carry at that lightness, capped at 0.16 so the ends do not shout over the middle. Green is the quiet one because green simply cannot hold as much. OKLCh is used rather than HSL because HSL treats lightness as a function of the hue you happen to be on, so a fixed magnitude renders brighter on some hues than others; in OKLCh, lightness, chroma and hue move independently.
Bodies are hollow when the partial's clamped close is above its clamped open, and solid otherwise. A dot marks the VWAP level itself, coloured by the same scheme applied to the whole bar.
Three further modes are included — Quadrant intensity, Bilinear blend and Polar OKLCh. These read the two changes as four corner colours instead of two channels, one per sign combination, and use magnitude to drive chroma and opacity. Every corner and anchor colour is an input.
Scaling
Every series is normalised against the dispersion of its own bar-to-bar changes: 2.5x the mean absolute change over a lookback, which is roughly two standard deviations for a well-behaved distribution but far less sensitive to the occasional volume spike.
Measuring each series against itself matters more than it sounds. A partial carries only a fraction of the bar's volume, so normalising its volume change against the whole bar's average volume compresses that axis and leaves the colour field stuck near the middle. In the other direction, half the ATR is smaller than a typical close-to-close move, so the price axis clips on a large share of bars. It also gives the VWAP-pinned partial a usable scale: when a bar closes above VWAP the lower partial's close is pinned to the cut, so its only movement is VWAP drift — small in absolute terms, but perfectly legible against its own dispersion.
The consequence worth holding on to while reading the chart: the colour says how unusual a change is for that partial, not how large it is in absolute terms.
Setup
The script paints over the chart's native candles, but Pine cannot hide the chart symbol itself. For the cleanest result, right-click the chart, open Settings -> Symbol, and uncheck Body, Borders and Wick.
Settings worth knowing
Gradient mode — the four schemes described above.
Price lightness span — how far a full-strength price change moves the lightness off the anchor, in OKLCh lightness. Default 0.16. A wider span reads more decisively but costs colour at both ends, because sRGB is widest in the middle and narrows toward black and toward white. Rather than let the channels clip, the requested chroma is fitted to whatever the lightness and hue can actually carry, so bright bars are pastel and dark bars are saturated.
Response ramp — how quickly the colour responds as a change grows. 1.0 is proportional; the default 0.6 reaches most of the response earlier, so only genuinely quiet bars stay washed out.
Price change scale / Volume change scale — the lookbacks for the two normalisers.
Transparency at no change — how far quiet bars recede. Lower it if the quiet end reads too faint.
Limitations
Volume attribution is proportional to segment height, not measured from intrabar data. It is a shape-preserving approximation, not a true intrabar volume profile.
The VWAP is session-anchored, so the split level resets at each session boundary and the first bars of a session sit close to it.
On a strongly trending session, price can run far enough from the session VWAP that one partial collapses on most bars and the display degrades toward ordinary candles. That is expected behaviour rather than a fault.
The script requires a symbol that reports volume, and raises a runtime error on symbols that report none.
Originality
This is original work. The bar splitting, the volume attribution, the per-partial normalisation, and the OKLCh colour handling — including the OKLab conversions and the chroma fitting, neither of which Pine provides — are implemented from scratch. No third-party code is reused. อินดิเคเตอร์

Multi-Timeframe Structure Overlay [ITA]🟠 OVERVIEW
Multi-Timeframe Structure Overlay draws the structure of two higher timeframes
onto the chart you are actually trading.
Most multi-timeframe tools put the answer in a corner table: one hour bullish,
four hour bearish. That tells you the state but not where it sits, and price
does not trade against a table. Here the swing highs and lows those timeframes
are working with become lines on your chart, so you can see how far price is
from the level that would flip them.
Breaks are marked at the price where they happened, not in a corner.
🟠 CONCEPTS
* Higher Timeframe Structure - The swing highs and lows a larger timeframe has
confirmed. They are the levels that decide its direction, and they usually sit
somewhere your own timeframe never draws.
* Break of Structure - A close beyond the last confirmed swing in the direction
the timeframe was already going. Continuation.
* Change of Character - A break in the opposite direction to the previous one.
The first sign that the higher timeframe has turned, and marked separately
because it means something different.
* Bias - Which way each timeframe is currently pointing, based on its last
confirmed break. Shown as a small tag at the right edge rather than a panel.
* Alignment - Both higher timeframes pointing the same way. It has its own
alert, because that is usually the condition people are waiting for.
🟠 FEATURES
🔹 Two higher timeframes at once, each with its own colour, drawn as levels on
your chart rather than listed in a table
🔹 BOS and CHoCH labelled at the price where the break occurred, tagged with
which timeframe produced it
🔹 Bias tags at the right edge, offset from each other so they never overlap
🔹 A warning on the chart if a selected timeframe is lower than the one you are
viewing, instead of quietly drawing values that look plausible and mean nothing
🔹 Alignment alert for when both higher timeframes agree
🔹 Levels are requested with lookahead off and read from confirmed bars only,
so nothing shifts after the fact
🔹 Independent swing sensitivity, applied on each higher timeframe rather than
on your chart
🟠 HOW TO USE
Pick two timeframes above the one you are on. Working a 15 minute chart, one
hour and four hour is the usual pair. On a daily chart, use weekly and monthly.
Read the lines first. A higher timeframe level sitting just above price is the
level that flips its bias, and it is often nowhere near anything your own
timeframe would have drawn.
A CHoCH tag matters more than a BOS tag. Continuation is expected, a change of
character is the first evidence the larger move is turning.
When both bias tags point the same way, the higher timeframes agree. That is
the alignment alert, and it is usually a better filter than either timeframe on
its own.
Swing Lookback controls sensitivity on the higher timeframes. Raise it for
fewer and more significant levels.
🟠 CONCLUSION
Knowing the higher timeframe is bullish is not the same as knowing what price
has to do for that to change. This puts the second thing on the chart, where it
can actually be used. อินดิเคเตอร์

Edo Premium DiscountEdo Premium Discount — Splits the Dealing Range into Premium, Equilibrium and Discount Zones with a Live Position Reading
Inside the range price moves in, where you enter is not neutral. Buying near the low of the range — in discount — offers a far better risk/reward than buying near the high — in premium. Institutional money accumulates cheap and distributes expensive, and trading with that logic rather than against it is one of the simplest structural edges to add. Edo Premium Discount turns that principle into a direct visual tool: it takes the current dealing range and answers, at all times, one question — is price trading expensive or cheap relative to the range it sits in?
The indicator builds the dealing range from the latest confirmed swing high and swing low, splits it into three zones, and reads where price sits within it. Premium is the expensive upper half (the sell side), discount is the cheap lower half (the buy side), and equilibrium is the fair-value band around the 50% midpoint. Everything is built on confirmed swings, so the indicator does not repaint. It is the relative-value frame of the Edolab structure family, the canvas on which to place liquidity, order blocks and the rest of the read.
THE DEALING RANGE
The range is the foundation: without a reference high and low, there is no premium or discount to measure. The indicator defines it with the most recent confirmed pivots — the last swing high as the range high and the last swing low as the range low. When price breaks out and forms new swings, the range updates to the new leg. The Swing Profile sets the sensitivity of those pivots: Scalper (5 bars each side) for short, reactive ranges on low timeframes, Swing (10 bars, the default) for the balanced 4H and daily read, and Long Term (21 bars) for the major ranges on weekly and higher horizons. The zones extend a configurable number of bars to the right so they project over the forming candles.
THE THREE ZONES
Splitting the range at its midpoint, the indicator draws three zones. Premium: the upper portion, above the equilibrium band, shaded red — price is trading expensive, the zone where sells are sought. Discount: the lower portion, below the equilibrium band, shaded teal — price is trading cheap, the zone where buys are sought. Equilibrium: the central band around the exact 50% midpoint, shaded neutral grey, with a dashed line marking the 50% level — fair value, neutral territory where neither side has a clear location edge. The Equilibrium Band input sets the half-width of that central band as a percentage of the range (5% by default, giving a 45%–55% band); widen it to enlarge the neutral zone, narrow it to expand the two operative zones.
POSITION AND ZONE STATE
On every bar the indicator classifies the close into one of the three zones — Premium above the equilibrium band, Discount below it, Equilibrium inside it — and reads its Position: how high the close sits in the range as a percentage, where 0% is the range low, 100% the range high and 50% the midpoint. The percentage refines the zone read: premium at 55% (just across the midpoint) is a very different proposition from premium at 95% (at the edge of the range high). The state shows in the panel's Zone cell in its colour and fires the matching alert when price enters each zone.
INFORMATION PANEL
The panel condenses the value read into a compact table: the current Zone (PREMIUM / EQUILIBRIUM / DISCOUNT) in its colour, the Position in percent, and the Range High and Range Low levels. It sits in any of the four chart corners (Top Right by default), comes in three sizes (Tiny / Small / Normal) and two themes (Dark / Light), and can be hidden entirely.
NO REPAINTING
The range is built on confirmed pivots: the range high and low only change when a new swing is confirmed, not during the forming candle, so the zones do not shift intrabar. There are no higher-timeframe functions — all logic runs on the current chart timeframe.
CONFIGURATION
The inputs are grouped by block. Range sets the swing profile, the equilibrium band as a percentage of the range and how many bars the zones extend to the right. Style exposes the premium, discount and equilibrium colours, the zone opacity and the Dark/Light theme. Panel controls panel visibility, position and size. The defaults are calibrated to work without adjustment on stocks, crypto, forex, indices and futures, on any timeframe — the inputs most users touch are the Swing Profile, to size the range to their horizon, and the Equilibrium Band, to set the width of the neutral zone.
ALERTS
Three predefined alerts cover the zone changes: Price entered Premium fires when the close enters the premium zone, Price entered Discount when it enters the discount zone, and Price entered Equilibrium when it returns to the fair-value band. The discount alert flags when price reaches the cheap half of the range — where buys are sought — and the premium alert when it reaches the expensive half. All alerts fire on bar close, consistent with the indicator's anti-repaint validation.
HOW TO READ IT
The most direct use is location: seek buys when price is in discount and sells when it is in premium, not the other way around — not a signal in itself, but a filter that grades trades by their risk/reward, since a buy in deep discount starts from a far more favourable zone than a buy in premium. Watch the extremes: a Position near 0% or 100% means price is at an edge of the range, and inside a range price tends to revert toward equilibrium, so an extreme reading warns that pushing further from fair value starts from a high-risk zone. Use equilibrium as a hinge: price reclaiming equilibrium from discount, or losing it from premium, marks a change of value half worth watching. And trade in confluence: a liquidity sweep or a quality order block in discount is a far stronger buy reference than the same signal in premium — Edo Premium Discount provides the value frame on which to place the rest of the structure.
OPEN SOURCE
Edo Premium Discount is published as a free open source indicator. The full Pine Script is publicly accessible on TradingView for study, adaptation and integration into any workflow. Part of the Edolab Markets free tools ecosystem, all available on TradingView.
This indicator is a technical analysis tool for educational and informational purposes only. It does not generate automatic buy or sell signals and should not be considered financial advice. Trading financial markets involves significant risk of capital loss. Past performance does not guarantee future results. Always use proper risk management.
อินดิเคเตอร์

StormCore Engine: OTE, Alligator & Volume ProfileThe StormCore Engine is a modular, all-in-one technical analysis tool designed to consolidate three powerful trading methodologies into a single, highly optimized script. By combining Optimal Trade Entry (OTE) zones, a modernized Williams Alligator, and a dynamic Volume Profile with node detection, this engine helps traders identify liquidity zones, trend alignments, and key volume clusters without exhausting indicator limits on the chart.
This script is built with a modular architecture, meaning every core component can be toggled on or off via a "Master Toggle" in the settings, keeping your workspace clean and reducing CPU load when specific tools are not in use.
### Core Modules
1. Optimal Trade Entry (OTE)
This module automatically plots Fibonacci retracement levels (including the 62% and 79% "sweet spot" boxes) anchored either to the visible chart area, custom date ranges, or higher timeframe swings.
- Features fractal detection to identify potential market structure shifts.
- Customizable Fibonacci extensions for dynamic profit-taking targets.
2. Super Alligator
A modernized take on the classic Bill Williams Alligator indicator. It utilizes SMMA-based Jaw, Teeth, and Lips to gauge trend direction and momentum.
- Signal Generation: Prints explicit Buy/Sell markers only when the "mouth" is fully open and the gap between the close price and the Lips exceeds a user-defined percentage.
- Trend Filters: Includes optional SMA 200 and VWAP filters to ensure signals only fire in the direction of the macro trend or intraday fair value.
3. Volume Profile & Node Detection
Calculates the trading volume at specific price levels over a user-defined lookback period.
- Displays the Point of Control (POC) and Value Area High/Low (VAH/VAL).
- Node Detection Algorithm: Highlights high-volume Peaks and low-volume Troughs within the profile, which often act as significant support and resistance barriers.
### Practical Application (How to Use)
A high-probability setup occurs when multiple modules align:
- Wait for the price to retrace into the OTE 70% box.
- Check if this zone coincides with a Volume Profile Peak (indicating strong historical liquidity).
- Await a confirming signal from the Super Alligator (e.g., a Buy triangle firing above the VWAP filter) to execute the trade.
All modules are calculated independently but rendered cleanly to avoid chart clutter. Adjust the settings for your specific asset and timeframe.
Developed by Andy Storm | AI-StormCore. อินดิเคเตอร์

Matrix Risk/RewardMatrix Risk/Reward is a visual trade-planning overlay. Click three points on the chart (entry, stop, target), then drag them. The script converts those prices into dollar risk, dollar reward, tick distance, risk/reward ratio, and live open P&L for the size you set.
It does not read your broker or prop-firm order ticket, and it does not place, modify, or cancel orders. The three points are planning levels you control.
HOW TO USE
1. Add the indicator to the chart.
2. Click Entry, then Stop, then Target.
3. Set Size to your contracts, lots, or units.
4. Click the indicator on the chart so the three points light up, then drag those points, not the dashed rays.
5. Read dollar SL/TP on the labels and in the table.
Direction is detected automatically: stop below entry = long, stop above entry = short. Stop and target must sit on opposite sides of entry for a valid R:R.
WHAT IT SHOWS
- Stop loss in dollars and ticks
- Take profit in dollars and ticks
- Open P&L in dollars
- Reward-to-risk ratio
- Dollars per tick
- Bid / ask / spread when a quote mode is active
- Colored risk and reward zones
OPEN P&L QUOTE
Last +/- spread (default, all plans): bid = last minus half spread, ask = last plus half spread. Longs mark to bid. Shorts mark to ask. Set Spread (ticks) to your market (1 is typical for MES, MNQ, ES, NQ).
Last price: uses the chart close only.
1-tick bid/ask (Ultimate): uses live 1-tick bid and ask. Requires a TradingView Ultimate plan. If those quotes are missing, it falls back to Last +/- spread.
POINT VALUE
Dollar math is price move x point value x size.
Leave Point value override at 0 to auto-detect common futures (MNQ 2, MES 5, NQ 20, ES 50, YM 5, RTY 50, GC 100, MGC 10, CL 1000, MCL 100, MYM 0.5, M2K 0.5). For other symbols the script uses the chart's built-in point value. If dollars look wrong, set the override yourself.
SETTINGS
Position: Size, point value override, open P&L quote mode, spread in ticks.
Levels: Draggable entry, stop, and target.
Display: Table, zone colors, and zone transparency.
NOTES
This is a calculator overlay, not a strategy and not a broker bridge.
If you want the dollars to match a live ticket, drag this tool onto those prices.
1-tick bid/ask is optional. Leave the default quote mode on unless you have Ultimate.
Not financial advice. Size, point value, and spread must match the instrument you are trading. อินดิเคเตอร์

ICT Equal Highs & Lows (EQH/EQL) Liquidity PoolsICT Equal Highs & Lows (EQH/EQL) Liquidity Pools
What it does
This indicator marks the horizontal shelves that form when two or more confirmed swing highs, or swing lows, come to rest at almost the same price. Those shelves are where resting orders accumulate, and the script answers one question about each of them: is this shelf still untouched, has price wicked through it, or has price closed beyond it? Lines are drawn only where the swing anchors themselves are visible on the chart, so you can always see why a line sits where it sits.
How it works
Every swing point starts an invisible hypothesis: a shelf at that price, with a tolerance band around it. The hypothesis has to survive. If price leaves the band before a second qualifying swing arrives, the hypothesis is dead and a later similar price cannot bring it back. Only a hypothesis that survives long enough to collect the required number of swings becomes a visible pool.
Swing points are confirmed pivots, found from wicks or from candle bodies. A takeout is always measured on the wick, whichever mode you pick: price trading through the shelf is what takes it, however the swings themselves were found.
The tolerance is frozen with the volatility of the swing that started the shelf. A later change in volatility can never pair two old swings after the fact.
When a shelf is confirmed, every bar since its first anchor is replayed against it, oldest first. The first bar that went past its boundary decides both what happened and when, so a shelf that was already taken never appears as untouched.
Once a pool becomes visible, its level and its boundary are fixed. Further swings at the same price raise the counter on the label and nothing else.
The visible line sits on the extreme of the price group that confirmed it - the highest of the equal highs, the lowest of the equal lows, or the outermost body edge if you switched the swing source to Bodies - so it lies on a price that was actually traded and touches the structure it names. The boundary that decides a takeout sits past the outermost wick of that group, plus a buffer - a poke inside the band the shelf was defined with is noise rather than a takeout. That wick is first capped at the edge of the tolerance band, so a single oversized wick on the first swing cannot lift the boundary off the chart. Measuring the boundary from wicks matters under Bodies: a level is a body edge there, and the same bar's wick reaches past it, so a shelf would otherwise be taken by the very bar that confirmed it.
A wick beyond the boundary marks the pool as swept. A close beyond it marks the pool as broken.
How to use it
Add the script to a chart. It works on any symbol and any timeframe and reads only the bars of the chart you are on.
With the default line style, read the solid lines as untouched shelves and the dashed ones as shelves price has already taken. Pick another style and the untouched ones follow it; a shelf that has been taken always draws dashed. Switch on Highlight nearest untapped pools if you also want the closest untouched shelf on each side drawn one step thicker.
Check the anchors. Every line should start at a swing you can point at, and the price of that swing should sit within the tolerance you configured.
If the chart shows more lines than you can read, lower the tolerance or raise the minimum number of equal highs and lows before touching the retention cap.
Inputs
Swing length - bars required on each side of a swing point. Larger values give fewer and more significant shelves. Range 1-50, default 5.
Measure swings from - Wicks uses the high and low, Bodies uses the open and close and ignores single long wicks.
History searched - how long an unconfirmed hypothesis may wait for its second swing, and how far back a newly confirmed shelf is checked. Range 50-500, default 500.
Tolerance unit - ATR multiple, ticks, or percent of price.
Tolerance - how far apart two swings may sit and still count as equal. Default 0.10, which on a volatile index future works out around ten ticks.
ATR length - length of the volatility measure, used by the ATR mode only. Range 1-200, default 14.
Minimum equal highs/lows per pool - swings needed before a shelf becomes visible. Range 2-10, default 2.
Takeout buffer - distance beyond the edge of the shelf that price must exceed before the pool counts as taken, in units of the frozen tolerance. Range 0-3, default 0.25, which is small enough that a stop run of a few ticks registers.
Display group - show or hide each side, keep or drop swept and broken pools, retention cap per side, line width, line transparency, line style, labels and label size. Broken pools are dropped by default, so switch that on if you want all three states on the chart.
Show EQH/EQL text and Show number of equal highs/lows - the label reads EQH 3x with both on, which is the default. Either can be switched off on its own.
Line style - solid, dashed or dotted for the intact shelves. A shelf that has been taken always draws dashed, because that is its state and not a preference.
Label background - off by default, so only the label text shows. Turn it on where a label sits over the candles and the bare text is hard to read.
Highlight nearest untapped pools - draws the nearest untouched shelf on each side one step thicker. Off by default: a line that is thicker for a reason the chart does not explain is harder to read, not easier.
Colors group - one colour each for buyside, sellside, swept and broken pools.
Signals and alerts
Buyside pool formed and Sellside pool formed - fire when a shelf becomes visible and is still untouched.
Buyside pool swept and Sellside pool swept - fire when a wick crosses the boundary and the bar closes back inside.
Buyside pool broken and Sellside pool broken - fire when a bar closes beyond the boundary.
All six fire on the close of the bar that produced the change. A shelf that the replay finds already taken raises no formation alert, because it was never visible as untouched.
Repainting
State changes only on a closed bar. On the live bar no shelf is added, removed or reclassified, so what you see on history is what you would have seen in real time. One thing does follow the live bar, and it rewrites nothing: the right edge of an untouched line. A second follows it only if you switch on Highlight nearest untapped pools - which line is marked as the nearest one ahead of price. Swing points are confirmed pivots and are therefore known a fixed number of bars after they happened; the script does not pretend otherwise, and it replays every bar since the shelf's first anchor, so a shelf cannot appear untouched at a price that was already traded through. Once a pool is visible its level and boundary are never rewritten.
Limitations
The very first swing of a shelf is the one bar never replayed against the shelf itself - it cannot be, or under Bodies a long wick on that bar would invalidate its own shelf before it exists. Under Bodies a small share of shelves therefore start on a bar whose wick already reached past the boundary. The cap on the boundary keeps that bounded; under Wicks it cannot happen at all.
A swing is confirmed only after the configured number of bars have passed, so a shelf always becomes visible later than it formed. That delay is inherent to pivots and cannot be removed without looking ahead.
On very quiet or thinly traded symbols the tolerance can be wide relative to the actual range, which pairs swings a trader would not group together. Lower it or switch to the tick mode.
The script reads only the bars of the chart timeframe. It does not look at higher timeframes, at intrabar data, or at volume.
It describes shelves that exist and what happened to them. It does not rank them, score them, or suggest entries, exits or targets.
Shelves are dropped once the retention cap per side is exceeded. Taken shelves go first; a shelf that still holds is only dropped when no taken one is left, and then the oldest goes. Deep history is not kept on the chart.
A shelf can be taken before its second swing exists. It is then drawn from its first anchor to the takeout and marked as taken, which puts the second swing to the right of where the line ends while the touch count still includes it.
Swing points must stand out from the bars around them. Two highs at the same price no further apart than the swing length cancel each other out, so a tight double top can go unmarked. Lower the swing length if you want those.
This script is a charting tool for educational purposes. It does not provide financial advice and does not predict future price movement. Trading carries risk; decisions and their outcome remain yours. อินดิเคเตอร์

Sattam | option-scalpVolatility Projection Zones
Every 52 bars the indicator takes a reading of the market and projects where
price could travel next, based on how volatile the market actually is right now.
WORKS ON EVERY MARKET — AND HOLDS UP ON OPTIONS
There is not a single fixed value anywhere in this script: no pip counts, no
point targets, no price assumptions. Every distance it draws is derived from the
instrument's own volatility, so it behaves the same way on futures, forex,
indices, crypto, stocks — and on options contracts, which is where most
ATR-based tools quietly fall apart.
Options are a hostile case: premiums move in cents, a contract can lose half its
value in three bars, sessions are full of gaps, and plenty of bars print with no
trade at all. A pure ATR projection lags badly through moves like that and draws
targets far too tight. This script handles it by taking the LARGER of two
measures — the ATR projection, or the range of the anchor window itself. On
liquid futures the ATR is always the larger one and the floor never shows; on an
option, when a window holds a collapse, the window wins and the projection stays
honest.
HOW IT WORKS
At each cycle the script looks at the last 3 bars and finds the extreme that
price has moved furthest away from — if price is sitting near the top of that
little range, the low becomes the anchor, and vice versa. From that anchor it
projects a distance equal to 3 x ATR(14), or the range of those 3 bars when that
is wider.
Four lines are drawn per cycle:
- Two thick lines — the anchor and the full projection target
- Two thin lines — the 50% and 61.8% marks in between
Each set extends 49 bars, stopping just before the next cycle begins, and the
last 8 sets stay on the chart.
HOW TO READ IT
The direction of the projection is the cycle's bias. A set projecting upward
means the anchor sits below price as support, with the levels above as upside
reference. The two thin lines are the natural partial targets; the far thick
line is the full measured move.
Because the projection scales with volatility, the levels widen in fast
conditions and tighten in quiet ones automatically.
SETTINGS
Cycle length - bars between projections (default 52)
Anchor window - bars used to pick the anchor (default 3)
ATR length/mult - the projection distance (default 14 / 3.0)
Inner ratios - the two intermediate levels (0.5 / 0.618)
Cycle anchor - where the cycle starts counting: Session, Week, or a
manual phase
Display - colors, widths, line length, sets kept
NOTES
This is a levels framework, not a signal system. It draws on every cycle
regardless of trend or range conditions, and it has no entry filter of its own —
combine it with your own read of structure and context.
Not financial advice. Test on your own instruments and timeframes before relying
on it.
خطوط الهدف حسب حركة السوق
المؤشر كل ٥٢ شمعة يوقف ويقيس لك السوق، وبعدين يمد أربعة خطوط تقول لك
وين ممكن يوصل السعر. والمسافة مو رقم كتبته أنا، هي من حركة السوق نفسه
في ذيك اللحظة — سوق هايج يعطيك خطوط بعيدة، وسوق هادي يعطيك خطوط قريبة.
يشتغل على كل الأسواق — وأقوى شي على الاوبشن
ما فيه في المؤشر ولا رقم ثابت. لا نقاط ولا بيبس ولا أهداف محفوظة. كل
مسافة يرسمها يطلعها من حركة الأداة اللي أنت فيها. عشان كذا نفس الشغل
يمشي على الذهب والفوركس والمؤشرات والعملات الرقمية والأسهم، ويمشي على
عقود الاوبشن كمان — وهذي بالذات وين أغلب المؤشرات تخرب وأنت ما تدري.
ليش الاوبشن صعب؟ لأن سعر العقد يتحرك بالسنتات، وممكن العقد يطيح نص
قيمته في ثلاث شموع بس، والجلسات فيها فجوات كثيرة، وشموع تعدي بدون ولا
صفقة. مقياس ATR لحاله يتأخر على حركة زي كذا، فيرسم لك أهداف قريبة ما
تسوى شي.
الحل اللي فيه: يقارن بين شيئين وياخذ الأكبر — إما مسافة ATR، وإما مدى
الشموع الثلاث اللي طلعت منها نقطة البداية. في الأسواق العادية ATR يطلع
أكبر دايماً وما تحس بهالشي أصلاً؛ وفي الاوبشن لما تصير طيحة قوية، مدى
الشموع يطلع أكبر وياخذه المؤشر — فتطلع الخطوط واقعية مو مضحكة.
كيف يشتغل بالضبط
كل دورة يشوف آخر ٣ شموع، ويشوف السعر حالياً قريب من فوق ولا من تحت:
- السعر قريب من فوق؟ ياخذ القاع نقطة بداية ويمد الخطوط طالعة
- السعر قريب من تحت؟ ياخذ القمة نقطة بداية ويمد الخطوط نازلة
يعني دايماً يبدأ من الطرف الأبعد عن السعر.
ومن نقطة البداية هذي يقيس المسافة (٣ أضعاف ATR أو مدى الشموع الثلاث،
أيهم أكبر) ويرسم:
- خطين سميكين: واحد عند نقطة البداية، وواحد عند الهدف الكامل
- خطين رفيعين بينهم: عند ٥٠٪ و ٦١.٨٪ من المسافة
كل مجموعة خطوط تمشي ٤٩ شمعة وتوقف قبل ما تبدأ المجموعة الجديدة، ويبقى
لك على الشارت آخر ٨ مجموعات.
كيف تقراه
- الخطوط طالعة فوق؟ الدورة ميولها صعود، ونقطة البداية تحت تصير دعم
- الخطوط نازلة تحت؟ الدورة ميولها هبوط، ونقطة البداية فوق تصير مقاومة
- الخطين الرفيعين: أهداف أولى وثانية، مكان طبيعي تجني فيه جزء
- الخط السميك البعيد: الهدف الكامل للحركة
الإعدادات
Cycle length - كل كم شمعة يرسم مجموعة جديدة (الافتراضي ٥٢)
Anchor window - كم شمعة ياخذ منها نقطة البداية (٣)
ATR length/mult - مقياس المسافة (١٤ و ٣ أضعاف)
Inner ratios - الخطين الرفيعين (٠.٥ و ٠.٦١٨)
Cycle anchor - من وين تبدأ الدورة: مع الجلسة، مع الأسبوع، أو يدوي
Display - ألوان وسماكات وطول الخطوط وعدد المجموعات
كلام لازم يتقال
المؤشر يعطيك مستويات، مو إشارات دخول وخروج. يرسم كل دورة سواء السوق
ترند أو عرضي، وما فيه فلتر يقول لك ادخل الحين. استخدمه مع قراءتك أنت
للسوق.
وهذا مو توصية شراء ولا بيع. جربه على أدواتك وفريماتك قبل لا تعتمد عليه بصفقاتك. อินดิเคเตอร์

FCP | HL Levels | Daily Weekly Monthly Multi Timeframe High LowHL Levels draws the high, low and midpoint of each completed higher-timeframe candle directly on your chart, so you can see where the market reacted without switching timeframes.
What it plots
For every closed candle of the selected timeframe, three horizontal segments are drawn across the range of that period:
High — the peak of the previous period
Low — the trough of the previous period
Midpoint — the 50% level between them, drawn as a dotted line
Each segment spans only its own period, so the chart reads as a sequence of ranges rather than a cluster of endless rays.
Timeframes
Three fixed groups are available out of the box:
Daily — previous day's high, low and midpoint
Weekly — previous week's high, low and midpoint
Monthly — previous month's high, low and midpoint
Each can be toggled independently and given its own colour and line width.
Custom timeframe
A fourth group lets you pick any timeframe you want. It is off by default. Turn it on, choose a timeframe, and set how many candles back to draw.
This is aimed at intraday traders who work on low timeframes but need a mid-level reference — for example a 5-minute chart showing 4-hour highs and lows. Its look-back is measured in candles, not days, because the timeframe is yours to choose and a day-based count would produce thousands of objects on a 1-minute setting.
Look-back
The three fixed groups share a single look-back measured in days (default 60). The indicator converts that into the right number of candles for each timeframe automatically, so one setting controls all three consistently.
Notes
A group is skipped when its timeframe is lower than the chart's own timeframe, since those levels would change faster than the bars drawn beneath them.
Higher-timeframe data is requested with lookahead_on applied to high and low — that is, only fully closed candles are read. Nothing repaints.
The script respects Pine's 500-line drawing budget. Older periods are removed as new ones form.
How to use it
Previous-period highs and lows are among the most watched levels in any market. Price approaching a prior daily high often meets sellers; a prior weekly low often attracts buyers. The midpoint marks the equilibrium of that period and frequently acts as support or resistance in its own right.
These are reference levels, not signals. Combine them with your own analysis and risk management. อินดิเคเตอร์

Absorption Bubbles [vault]Absorption Bubbles
Absorption Bubbles is a tool for spotting high volume absorption at swing highs and lows, showing where aggressive orders pushing into an extreme were absorbed before the move gives it away.
How it works
The script measures every candle's volume against its own standard deviation (Threshold STDEV Length), so thresholds adapt automatically to any instrument and timeframe instead of relying on fixed volume numbers. A bubble prints only when three conditions line up on the same candle: price makes a local swing high or low, the candle closes with a rejection wick at that extreme, and scaled volume clears the selected threshold multiplier. On top of that, volume below its moving average (Threshold EMA Length) never prints, which filters out low-activity noise by design.
Green bubbles under swing lows signal buyers absorbing sell pressure. Red bubbles above swing highs signal sellers absorbing the push up. Absorption at an extreme tells you where the fight happened — the move that follows is usually the confirmation.
Bubble tiers
- Small, Medium, and Large bubbles, each with its own independent toggle and threshold multiplier (default 2x / 3x / 4.5x)
- Bubble size scales with absorption intensity, so weak, moderate, and heavy prints are visually distinguishable at a glance
- Optional Strength Gradient Color keys the bubble color to absorption intensity instead of flat buy/sell colors
Additional settings
- Bubble Positions: right at the wick or slightly offset above/below the extreme
- Bubble Size: Compact, Normal, or Large display presets
- Appearance Delay: shifts the bubble by N candles for confirmation
- Show POC: draws a line at the absorption price that extends until the next print, usable as a level to trade back into
- Timeframe-Adjusted Settings: independent STDEV/EMA lengths and threshold multipliers for 5m, 15m, 1H, and 4H — the script switches automatically based on the chart timeframe
- Built-in alerts for buy-side and sell-side absorption
- Works on any timeframe and any instrument with volume data
Disclaimer:
This is a context tool, not a signal service. Nothing here constitutes financial advice. อินดิเคเตอร์

CRT Engine [vault]CRT Engine
CRT Engine is a complete Candle Range Theory toolkit built around one idea: the higher timeframe candle sets the range, the lower timeframe shows you how that range gets manipulated and delivered. The script tracks the HTF range, detects sweeps of the previous high or low, confirms the shift with an order block or a CISD, and follows the model until it either reaches its target or gets invalidated. Around that core it adds HTF fair value gaps, previous period highs and lows, SMT divergence, multi timeframe moving averages and a compact dashboard, all sharing one color palette so the chart stays readable.
HOW THE CRT MODEL WORKS
Every new HTF candle opens a new range. Its high and low are tracked live on the chart timeframe. When the HTF candle closes, the script compares it to the previous HTF candle:
• Sweep of the high: the candle traded above the previous high and closed back below it. Bias flips to bearish, the previous low becomes the target.
• Sweep of the low: the candle traded below the previous low and closed back above it. Bias flips to bullish, the previous high becomes the target.
• Double purge: both sides were taken in the same candle. Bias is decided by the candle direction (bullish close = bullish bias) and the sweep is labeled D-Purge.
From that point the model is Active. It becomes Success when price reaches the target side of the previous range and Invalidated when price breaks back through the swept level. Status is reflected on the range box border and on the HTF candle panel.
MODEL 1 VS MODEL 2
Model 1 is the faster version. The sweep is detected in real time on the chart timeframe, not only at HTF close. As soon as price breaches the previous high or low and closes back inside, the sweep line, the target line and an order block line are drawn. The order block is the low of the candle that set the swept high (or the high of the candle that set the swept low). If price later trades through the sweep level, everything is cleared and the model resets.
Model 2 is the confirmation version. After the sweep candle closes, the script looks back through the consecutive same-direction candles that built the manipulation leg and stores the opening price of that series. A CISD (change in state of delivery) prints when a chart timeframe candle closes through that level. The sweep candle is labeled C1 and the CISD candle is labeled C3, matching the classic three candle CRT structure.
A bias filter lets you run the model long only, short only, or neutral.
TIMEFRAME PAIRING
Auto mode picks the HTF from the chart timeframe: 1m to 15m, 3m to 30m, 5m to 1H, 15m to 4H, 1H to 1D, 4H to 1W, 1D to 1M. Presets are available for 1H-1D, 4H-1W, 1D-1M and 1W-3M, and a custom HTF can be set for anything else. The script validates that the HTF is higher than the chart timeframe and stays idle otherwise.
HTF CANDLE PANEL
On the right side of the chart the script draws the last few HTF candles as mini candles with wicks. Above them sits the HTF label with a live countdown to the next close, below them the current model bias. Sweeps between panel candles are marked with a small line and a sweep label, and the candle borders change color with the model status (neutral while active, bull color on success, bear color on invalidation). Offset, spacing, width and candle count are adjustable.
HTF FAIR VALUE GAPS
Fair value gaps are detected on a higher timeframe, either automatically chosen from the chart timeframe or set manually. Each gap is drawn as a box that starts at the close of the first candle of the three candle pattern, which is where the imbalance actually forms, and extends to the right with an optional midline and a label showing the HTF. A gap is removed once the HTF candle closes through it. You can cap how many gaps stay on the chart.
HTF LEVELS
Previous day, week, month, quarter and year highs and lows, with the previous open as an optional third line. Lines start at the bar where the level was formed and stop exactly where price first touches them, so a mitigated level is still visible but no longer projected forward. Labels use the PDH / PDL / PWH / PWL convention. Line style, width and label size are shared across all timeframes.
SMT DIVERGENCE
The script compares the chart symbol with a correlated instrument and flags divergence in two ways: at HTF close (one symbol made a higher high while the other did not, with a matching candle direction) and on chart timeframe pivots (a new higher high on the chart while the paired symbol printed a lower high, or the mirror for lows). Divergence is drawn as a line between the two swing points with the pair name as a label. Auto pairing covers index futures (NQ, ES, YM, RTY and their micros), CFD indices, major and cross forex pairs, currency futures, gold, silver, oil products and BTC/ETH. A manual pair can be set for anything else. Optionally only the latest bullish and bearish SMT are kept.
MOVING AVERAGES
Five configurable moving averages (SMA, EMA, RMA, WMA, HMA, VWMA), each with its own length and timeframe. Lines are hidden by default and can be toggled with one switch. When enabled, all lines automatically hide once the chart timeframe is higher than the highest MA timeframe in use, so a 15m EMA never gets drawn on a daily chart. The dashboard trend rows keep reading the first three MAs whether the lines are visible or not.
DASHBOARD
A small table showing the chart and HTF pairing, the active model and bias filter, the current bias, an aggregated MA trend (bullish, bearish or mixed) with per-MA arrows, the SMT pair in use and the date. Position and text size are configurable.
COLOR SCHEMES
Seven schemes, each defining the bull, bear, neutral, text and accent colors that every element on the chart uses:
• Vault Dark: teal and rose on a dark background, the default
• Light: near black text and lines with blue and red accents, made for white charts
• Midnight: blue and pink
• Neon: bright green and magenta
• Ember: orange and red
• Mono: greyscale
• Custom: set all five colors yourself
Box transparency is controlled with a single slider.
ALERTS
• Model formed: a new HTF candle closed and the model state was evaluated
• Sweep: a sweep of the previous high or low was detected
• Double purge: both sides of the previous range were taken
• Model success: the target was reached
• Model invalidated: the sweep level was broken
NOTES
The model logic does not repaint. HTF data is requested without lookahead and the Model 1 real time sweep is confirmed on candle close. Drawings such as the panel, the labels and the level extensions are repositioned on the last bar for display only.
The script is a context and structure tool. It does not generate trade signals and nothing in it should be treated as financial advice.
อินดิเคเตอร์

Prism [vault]Prism
Prism takes eight independent reads of the market and fuses them into one confluence score. Instead of watching ten indicators and guessing which one matters, you get a single dashboard that tells you what the trend is, who is in control, where the liquidity sits and whether enough conditions line up to justify a trade.
How it works
Eight engines run on every bar. Each one votes bullish, bearish or neutral. The votes are counted and a signal fires only when one side clearly outweighs the other and the total score clears your threshold.
1. Momentum: Laguerre RSI, Fisher Transform, TSI, MFI, VFI, OBV and CMF blended into one normalized Momentum Index. Positive and rising = bullish vote.
2. Structure: supply and demand zones from volume-confirmed pivots, fair value gaps, mitigation tracking (wick, close or average fill). Price inside demand or above an FVG = bullish vote.
3. Wave: ALMA-smoothed momentum against five EMA basis levels. All basis levels aligned or momentum beyond 2 standard deviations = vote. Spread shows expansion or exhaustion.
4. Liquidity: buy side (BSL) and sell side (SSL) levels from swing points. A sweep is a wick through the level with a close back inside. Bullish sweep = bullish vote.
5. Trend matrix: Hull MA, SuperTrend, ADX, EMA 9/21/50 and SMA 100/200 combined into five regimes from Strong Bear to Strong Bull. Counter-trend setups (CTR dots) flag momentum turning against a weak trend at the Hull MA.
6. Divergence: price pivots checked against RSI, MACD, TSI and Stochastic. Regular divergence (solid line) needs at least two oscillators to agree. Hidden divergence drawn dashed.
7. Volatility: Bollinger inside Keltner = compression. Breakout direction on release becomes a vote. Volatility percentile ranks the regime as Low, Normal or High.
8. Flow: CMF, MFI, OBV and A/D tracked as a Flow Index with five phases from Strong Distribution to Strong Accumulation. Also feeds a sentiment gauge (Fear / Greed).
Two extra votes come from value (discount or premium relative to the 100-bar range) and volume surges on directional candles.
Signals
LONG fires when bullish votes reach the minimum score and beat bearish votes by at least the set margin, with price above the Hull MA. SHORT is the mirror. Strength: Weak (under 4), Moderate (4), Strong (5), Very Strong (6 to 7), Extreme (8+). A minimum bar gap between signals prevents clustering.
On the chart
- Hull MA colored by regime, SuperTrend band, gradient fill between them that gets denser as ADX rises
- SUP / DEM boxes, FVG boxes, BSL / SSL dashed levels
- Equilibrium line with discount and premium markers
- Optional candle coloring by flow phase or momentum
- Background tint for strong trends and compression
- Volume surge squares on the bottom
Dashboard
Three blocks: Context (trend, ADX, flow, volatility, value, structure), Engines (momentum, Laguerre, Fisher, CMF, MFI, wave, divergence, liquidity) and Confluence (score, sentiment). Live signal and strength sit in the header. Four color schemes, three text sizes, four positions.
How to trade it
1. Read Context first. Sideways plus Compression means wait for the breakout, do not chase.
2. Look for alignment: bullish trend, accumulation, discount value, price at demand.
3. Take LONG / SHORT labels only at Strong or better, and only in the direction of the higher timeframe.
4. Enter at the zone, stop beyond it, so risk is defined by structure not by feel.
5. Exit on the opposite signal or when Flow flips phase against you.
Alerts
Buy, Sell, Strong Bull, Strong Bear, Squeeze Breakout, Bullish Divergence, Bearish Divergence, Strong Accumulation, Strong Distribution, Bullish Sweep, Bearish Sweep, Extreme Greed, Extreme Fear.
Limits
Best on liquid instruments with real volume. On symbols without volume the flow and volume votes stay neutral, so max score drops. Signals describe current conditions, they do not predict. Use a stop every time.
Disclaimer
Educational tool, not financial advice. Trading carries substantial risk. Past signals do not guarantee future results. You are responsible for your own decisions. อินดิเคเตอร์

ICT Everything v2ICT Everything v2 is an open-source intraday charting toolkit for ICT-style time, liquidity, and displacement analysis.
The script combines related tools in one chart workflow. Sessions identify relevant trading windows, opening prices and prior-period levels provide liquidity context, gaps mark displacement areas, and SMT compares confirmed swings with a correlated market.
What it shows
London, New York, London Close, afternoon, Asia, and custom sessions
Midnight, New York, equities, afternoon, weekly, and monthly opening prices
CBDR, FLOUT, and Asia ranges with configurable standard-deviation extensions
Fair Value Gaps with consequent encroachment and fill handling
New Week and New Day Opening Gaps with optional midpoint lines
Previous week and previous month highs and lows
Confirmed-pivot SMT divergence against a comparison symbol
Day separators, day labels, session boxes, and selected confirmed-bar alerts
Why these tools are combined
The components share the same session and timezone context. This avoids building a chart from several unrelated scripts that may use different boundary definitions.
Sessions establish when activity occurs. Opening prices and prior-period levels mark reference liquidity. FVG, NWOG, and NDOG objects show displacement and reopening gaps. SMT adds relative-strength context by comparing the chart symbol with a correlated instrument over the same swing window.
This is a charting toolkit, not an entry system or strategy.
How to use it
The default configuration is intended for intraday charts. The script hides its drawings above a configurable ceiling, which defaults to 31 minutes.
The default timezone is New York and follows daylight-saving time automatically. Fixed UTC offsets are also available.
Most added modules are disabled by default. Enable only the features needed for the current analysis. Weekly and monthly opens, prior-period levels, FVGs, opening gaps, SMT, and session boxes can be enabled independently.
For SMT, select a positively correlated comparison symbol with similar trading hours. For example, NQ and ES generally provide cleaner comparisons than instruments with unrelated sessions.
Alerts use confirmed bars. TradingView alerts store the script version and settings that existed when the alert was created, so alerts should be recreated after a script update.
Boundary behavior
Continuous futures use locally captured evening-session boundaries for weekly and monthly opens. Crypto uses the standard UTC calendar boundaries: Monday 00:00 UTC for the week and the first day at 00:00 UTC for the month.
Broker sessions can differ, so users should verify opening levels against the instrument and feed they trade.
Meaningful changes in v2
The retained session and range foundation from the original script is credited below. V2 materially changes and extends that foundation with:
Pine Script v6 support
DST-aware New York session handling and additional timezone options
Reworked weekly and monthly boundaries for futures and crypto
Mechanical FVG, NWOG, and NDOG modules with bounded object retention
Previous week and month high/low tracking
Confirmed-pivot SMT using a same-window comparison method
Session-box and high-low rendering modes
Independent deviation counts for CBDR, FLOUT, and Asia
Confirmed-bar alerts for range breaks, gaps, and prior-period sweeps
Drawing cleanup and redraw changes that prevent stale objects and reduce unnecessary recalculation work
Open-source origin and credit
Based on ICT Everything by coldbrewrosh, formerly itsroshlol:
Contains code from ArdOfCrypto's ICT Index Futures Vertical Lines:
The original publication credited Shanxia as inspiration and thanked I_Am_ICT. Those acknowledgements are preserved.
This is an independently maintained derivative work. The credited authors do not endorse this publication. The source is published openly under the Mozilla Public License 2.0.
Limitations
This script does not predict market direction or promise trading performance. SMT depends on the selected comparison instrument and its available trading hours. Fixed-offset session choices do not adjust for daylight-saving time. Users remain responsible for confirming that the configured sessions match their market and data feed.
This publication is not affiliated with or endorsed by Inner Circle Trader, TradingView, or the credited authors. อินดิเคเตอร์

MYND Fractal Support/Resistance Density Map [v1.4]MYND Fractal Support/Resistance Density Map
A decayed, multi-scale support/resistance DENSITY map - not a single pivot-line tool. It detects swing highs/lows at 3 configurable pivot scales, scores every confirmed pivot into a rolling price-bin array (volume-weighted), and decays that score every bar so old, stale levels fade out instead of piling up forever. The Top-N highest-density bins are surfaced as ranked, cluster-merged S/R zones - with early-warning alerts, reject-vs-break classification across all tracked zones, an optional full heatmap view, on-chart labels, and now a dashboard that shows distance-to-#1-zone, the single nearest zone to price, and when a zone's density really represents several folded-together levels.
WHAT IT DOES
Three pivot scales (short/medium/long) independently detect confirmed swing highs and lows. Every confirmed pivot adds a weighted density score to whichever price bin it touches - longer, more significant scales contribute more, and a pivot's own relative volume scales its contribution further. All accumulated density decays by a fixed factor every bar, so a level that mattered years ago but hasn't been touched since gradually fades. Near-adjacent candidate bins fold into one merged zone rather than showing as near-duplicates. The highest-density bins are ranked and surfaced as the tool's Top-N zones.
HOW TO USE IT
Treat higher-density zones as levels more likely to produce SOME reaction - a bounce, a rejection, a pause - not as levels guaranteed to hold. Use the Approaching-Zone alerts (Zone #1-specific or the all-zone aggregate) as your cue to start watching closely, then read the Reject/Break tag once price actually resolves. Check the new Nearest Zone to Price row for what's immediately relevant right now, separate from which zone ranks #1 by density overall. Raise Zone Cluster Merge Distance if nearby zones keep reading as near-duplicates - and watch for the "merged Nx" tag as a reminder that a zone's density may represent several folded levels, not one. Raise Minimum Touches to Show if you only want to act on zones that have already proven themselves. Turn on HTF Confluence for extra cross-timeframe conviction, and the Density Heatmap to see the whole structure at a glance.
KEY FEATURES
A live dashboard showing each Top-N zone's price, density, freshness, merge status, and touch-threshold status, plus distance-to-#1-zone and the single nearest zone to price. On-chart zone price labels. Volume-weighted, cluster-merged density scoring. Fully adjustable zone line width/style/color (per rank), table border width/color, and heatmap color. Full cross-tool export for all 5 possible zones plus distance-to-#1-zone. 10 individual alerts plus 1 combo bundle.
SETTINGS WORTH TUNING FIRST
Per-Bar Decay Rate is the core dial on how fast old levels fade. Enable Volume-Weighted Density is on by default - turn off if a ticker's volume data is unreliable. Zone Cluster Merge Distance controls how aggressively nearby candidates get folded together (and how often you'll see a "merged Nx" tag). Minimum Touches to Show is 0 by default - raise it to filter out unproven levels. Enable HTF Confluence Check is off by default.
WHAT THIS TOOL DELIBERATELY DOES NOT DO
Density is a proxy for level significance, not a guarantee a zone will hold. HTF Confluence compares against the HTF's own recent swing high/low, not a second full density map - a disclosed simplification. The touch count keeps accumulating in the background regardless of the Minimum-Touch filter setting. Zone lines, labels, and the heatmap only reflect the most recent bar's selection, not a full historical record. The new merge-count and nearest-zone-to-price data are dashboard-only - not yet exposed via the Cross-Tool Signal Export plots.
ALERTS
10 individual alerts (Price Entered Top-N Zone, Price Exited All Top-N Zones, Top Zone Reshuffled, Price Approaching #1 Zone, Zone #1 Rejected/Bounce, Zone #1 Broken Through, Zone #1 Aligned with HTF Level, Any Zone Approaching, Any Zone Rejected, Any Zone Broken Through) plus 1 combo bundle (ALL Fractal S/R Signals).
FEEDBACK WELCOME
If you've tweaked a setting, found a combination with another indicator that works well, or have an idea for what would make this more useful, I'd genuinely like to hear about it - drop a comment below (it helps other users too), or send a direct message if you'd rather keep the details private.
This tool identifies patterns in past price and structure - it is not a guarantee of future performance. This tool is provided for informational and educational purposes and does not constitute financial advice. Trading involves risk; past performance and historical patterns do not guarantee future results. อินดิเคเตอร์

Round Number Nearest LevelRound Number Nearest Level is a simple visual reminder of the round-number price level nearest to the current market price.
During fast-moving trading sessions, it is easy to focus on entries, exits, volume, and momentum while overlooking an approaching round number. This can be especially challenging for newer traders. Round-number prices often attract attention and may act as potential support, resistance, targets, or areas of increased activity.
The indicator keeps the chart uncluttered by displaying only the nearest level. As the price moves, the plotted line automatically steps to the next closest round number.
HOW IT WORKS
Automatic mode selects the interval based on the current price:
• Below $5: nearest $0.50 level
• $5 and above: nearest $1.00 level
Custom mode allows you to define your own multiplier. For example, a multiplier of 5 plots the nearest $5 level, while a multiplier of 0.25 plots the nearest quarter-dollar level.
The level is displayed as an orange stepped line directly on the price chart.
This indicator is intended as a situational-awareness aid. Round-number levels are reference points, not guaranteed support or resistance, and should be considered alongside price action, volume, risk management, and your broader trading plan. อินดิเคเตอร์

Fibonacci Retracement Depth & Retest Grid - Swing High LowOVERVIEW
Fibonacci Retracement Depth & Retest Grid - Swing High Low is an open-source chart overlay for measuring retracement depth inside an automatically selected price leg.
The script combines an automatic right-confirmed swing engine, a bounded local-range fallback, optional manual-origin control, rolling-range analysis, configurable Fibonacci ratios, distinct touch-episode tracking, fixed-horizon response measurements, larger-range ratio proximity, factual alerts, and a compact context readout.
It is a descriptive research tool. It does not generate entries, exits, targets, stops, position sizes, probability estimates, win rates, or performance claims. It does not use artificial intelligence, machine learning, external datasets, or third-party libraries.
CORE FIBONACCI CALCULATION
For an active origin and terminal, each level is calculated as:
level = terminal + (origin - terminal) * ratio
The terminal anchor is 0%, and the origin anchor is 100%.
Current retracement depth is calculated as:
depth = (reference price - terminal) / (origin - terminal)
This produces the same interpretation for upward and downward legs:
- 0% means price is at the terminal anchor.
- 100% means price is at the origin anchor.
- A value below 0% means price has moved beyond the terminal.
- A value above 100% means price has moved beyond the origin.
The current-depth cursor displays the actual calculated value. Its chart position is bounded between the two anchors so that an extreme value does not distort the visible layout.
ANCHOR ENGINES
The script provides three anchor engines.
1. Automatic swing
Automatic swing is the default.
The engine detects pivot highs and lows from either wicks or closing prices. A pivot is accepted only after the configured number of right-side bars has closed. Accepted pivots must alternate between high and low.
A new opposite-side pivot must satisfy:
- Minimum spacing in chart bars.
- A non-zero price distance.
- An optional minimum leg size expressed in ATR.
A later pivot of the same type can revise the active terminal only when it is more extreme by at least the configured minimum-tick threshold. This reduces small live revisions and visual flicker.
When a complete confirmed pivot pair is not yet available, the script uses a bounded local high-low range so the chart does not remain blank. The default local window is 120 finalized bars. The fallback is replaced automatically when a valid confirmed swing pair becomes available.
2. Manual origin
Manual origin is an explicit optional mode.
The user selects a paired time-and-price point as the structural origin. The script then searches after that point for the most extreme valid terminal in the selected direction.
Direction can be:
- Auto from point
- Up leg
- Down leg
The origin price can snap to the selected bar or preserve the exact selected price. By default, the terminal uses closed bars only to reduce intrabar movement of the complete Fibonacci structure.
Manual origin does not silently fall back to an automatic structure. If the selected point or terminal is invalid, no manual grid is displayed until the point or settings are corrected.
3. Rolling range
Rolling range uses the highest and lowest selected source values inside a fixed lookback. The chronological order of the two extremes determines whether the leg is upward or downward.
A minimum span in bars is required between the extremes. The anchors can change as the lookback advances, so current-structure statistics reset whenever the active pair changes.
CONFIRMATION AND HISTORICAL PLACEMENT
In Automatic swing mode, an H or L marker is placed at the historical pivot bar after that pivot becomes confirmed.
The diagonal anchor leg connects the actual origin and terminal bars. However, the horizontal Fibonacci levels do not begin before the complete structure became available to the script. They begin from the availability point rather than being extended backward through bars where the completed pair was not yet knowable.
This distinction is intentional:
- The anchor marker shows where the pivot occurred.
- The level start shows when the active structure became available.
A marker on a historical pivot bar should not be interpreted as evidence that the pivot was known on that original bar.
If a high pivot and low pivot are both confirmed from the same chart bar, finalized OHLC data cannot prove which extreme occurred first inside that bar. When a previous terminal type exists, the engine prefers the opposite candidate to preserve alternation. It does not invent an intrabar order that the available data cannot establish.
PAST-CHART STUDY
When Use visible right edge in past charts is enabled and the chart is scrolled away from the latest bar, the visible right edge becomes the study endpoint.
Inside the configurable local window, the script first looks for a recent accepted confirmed swing. If a suitable pair is not available, it uses a bounded local high-low range ending at the visible right edge.
This prevents historical study from automatically expanding to the absolute high and low of an excessively large viewport.
Past-chart auto-follow is retrospective. The completed visible period is already known. Therefore:
- Sequential touch-response statistics are disabled.
- Price-event alerts are disabled.
- The readout changes from Response to Study.
For chronology-sensitive historical testing, use Automatic swing with TradingView Bar Replay. Pivots will become available only after the configured right-side confirmation bars.
CONFIGURABLE FIBONACCI LEVELS
The script contains ten independently editable ratio slots.
The default enabled ratios are:
- 0.000
- 0.236
- 0.382
- 0.500
- 0.618
- 0.786
- 1.000
The following ratios are available but disabled by default:
- 0.650
- 0.705
- 0.886
Each slot can be enabled, disabled, or changed. Inputs accept values from -2.000 to 3.000, allowing custom retracement or extension research.
The script does not assume that a custom ratio is predictive or statistically significant.
DEPTH BANDS
Three optional visual bands organize the interior of the active retracement.
By default, they represent:
- 38.2% to 50.0%
- 50.0% to 61.8%
- 61.8% to 78.6%
The bands are built from configurable ratio slots. Changing those inputs changes the corresponding band boundaries.
The readout classifies proportional location as:
- Shallow
- Mid
- Deep
- T+ for beyond the terminal
- O+ for beyond the origin
These labels describe location only. They do not describe trade quality or reversal probability.
DISTINCT TOUCH EPISODES
Reaction research is available for enabled interior ratios greater than 0 and less than 1.
A level is contacted when the bar range intersects the configured tolerance around that price. Tolerance can be defined using:
- ATR
- A percentage of the active leg
- Minimum ticks
The script does not count every consecutive bar near a level as a separate reaction.
After an initial touch, price must move completely outside the wider re-arm envelope before another touch can be counted. This separates repeated contact into distinct touch episodes and reduces inflated counts caused by several bars remaining near the same price.
The latest counted touch for each level can be marked on the chart.
Touch statistics belong only to the current active anchor structure. They reset whenever the active origin or terminal changes.
FIXED-HORIZON RESPONSE RESEARCH
Each new touch episode creates an independent pending measurement.
After the configured number of chart bars has elapsed, the script measures the closing price relative to the touched level and normalizes the result by the active leg size.
The sign is aligned with the active leg direction:
- A positive response means the horizon close moved toward the terminal direction.
- A negative response means the horizon close moved toward the origin direction.
The readout uses:
- T for counted touch episodes.
- R for completed fixed-horizon measurements.
The displayed average is the arithmetic mean of completed measurements for the nearest enabled ratio within the current active structure.
This measurement is not:
- A bounce rate.
- A support or resistance score.
- Maximum favorable excursion.
- Maximum adverse excursion.
- A win rate.
- A probability estimate.
- A strategy result.
If the active anchors change before a pending response reaches its horizon, that pending measurement is discarded with the other statistics from the previous structure.
LARGER-RANGE RATIO PROXIMITY
The script can calculate a second Fibonacci structure from a longer rolling high-low range.
Each enabled primary level is compared with every enabled level in the larger-range structure. Proximity tolerance can be defined using:
- ATR
- A percentage of the primary leg
- Minimum ticks
When a primary level is sufficiently close to a larger-range ratio:
- Its line is highlighted.
- Its line width is increased.
- A diamond is added to its label.
This is a distance comparison only. It does not mean that the level is stronger, that price will reverse, or that the level will hold.
VISUAL OUTPUT
The default visual structure includes:
- A directional origin-to-terminal anchor leg.
- H and L anchor markers.
- Configurable Fibonacci level lines.
- Ratio and price labels.
- Three optional depth bands.
- A current-depth cursor.
- Latest-touch markers.
- Larger-range proximity diamonds.
- A compact bold context readout.
The readout summarizes:
- Active anchor engine and leg span.
- Current retracement depth.
- Nearest enabled level and ATR-normalized distance.
- Touch and response information, or historical study scope.
- Larger-range proximity and event-timing context.
Detailed explanations are available through cell and label tooltips so the visible panel can remain concise.
The readout also reserves a transparent horizontal edge-clearance lane. This keeps TradingView High/Low labels and price-scale markers visible when the panel is placed at a chart edge. The default clearance is 6% and can be adjusted in Settings.
Colors, line style, line widths, label content, label size, table position, table size, edge clearance, band opacity, and individual ratios are configurable.
ALERTS
The script provides factual alert conditions for:
- New confirmed Fibonacci swing structure
- Confirmed Fibonacci terminal revision
- Fibonacci level touch episode
- Core Fibonacci band entered
- Fibonacci origin crossed
- Fibonacci terminal crossed
The core band is defined by the Ratio 4 and Ratio 5 inputs.
Dynamic touch alerts are also available. When enabled, create a TradingView alert using Any alert() function call. The message reports the touched ratios, symbol, chart timeframe, and current close.
Confirmed-bar event evaluation is enabled by default.
Past-chart retrospective mode does not generate these price-event alerts.
Alerts report observed chart events only. They are not trade recommendations.
SUGGESTED WORKFLOWS
For current-market observation:
1. Keep Anchor engine on Automatic swing.
2. Keep Evaluate events on confirmed bars only enabled.
3. Select Wicks or Closes according to the research definition.
4. Adjust pivot left and right bars to control swing sensitivity.
5. Use Minimum leg ATR and Minimum bars between alternating pivots to reduce minor structures.
6. Use Automatic local window bars to control the warm-up and historical fallback horizon.
7. Read current depth and responses as descriptive context, not as an entry instruction.
For chronology-sensitive historical study:
1. Keep Anchor engine on Automatic swing.
2. Start TradingView Bar Replay before the period being studied.
3. Advance one bar at a time or at a controlled speed.
4. Observe when pivots become confirmed and when the Fibonacci grid becomes available.
5. Review touch episodes and completed fixed-horizon responses as replay advances.
For fast retrospective study:
1. Keep Use visible right edge in past charts enabled.
2. Scroll to the historical period.
3. Adjust the chart so the desired local structure is near the visible right edge.
4. Adjust Automatic local window bars if more or less structural context is required.
5. Review the Past swing or Past range readout state.
For a user-defined structural start:
1. Select Manual origin.
2. Set or reset the paired Origin point.
3. Choose Auto from point, Up leg, or Down leg.
4. Choose whether to snap to the selected bar or use the exact selected price.
5. Keep closed-bar terminal updates enabled for the more stable live behavior.
For an objective fixed-window range:
1. Select Rolling range.
2. Set the desired lookback.
3. Increase Minimum range span bars when short high-low pairs create excessive changes.
WHAT MAKES THIS IMPLEMENTATION DISTINCT
Fibonacci ratios and arithmetic retracement geometry are established public concepts. This script does not claim ownership of them.
Its distinct implementation choices include:
- Separation of historical pivot location from the later time when the structure becomes available.
- Availability-gated horizontal levels rather than unrestricted backward extension.
- Automatic confirmed-swing selection with a bounded finalized-bar warm-up fallback.
- Local past-chart auto-follow that avoids forcing the absolute extremes of a large viewport.
- Optional manual-origin and rolling-range engines in the same open implementation.
- Minimum spacing, ATR size, range-span, and tick-based terminal-revision filters.
- Distinct touch episodes controlled by a re-arm envelope.
- Independent fixed-horizon measurements normalized by active leg size.
- Direction-aligned descriptive responses rather than predictive bounce scores.
- Larger-range ratio proximity with configurable tolerance.
- Explicit separation of live, Bar Replay, and retrospective chart study.
- Compact tooltips and an edge-clearance lane designed to preserve chart-label visibility.
- Factual alerts without entries, exits, or performance claims.
The implementation uses conventional Fibonacci arithmetic and Pine Script built-ins. It does not import another author's library, reproduce a paper-specific model, request outside-market data, or present a proprietary trading methodology.
LIMITATIONS
- Fibonacci levels are proportional reference levels. They do not guarantee support, resistance, reversal, continuation, or any other future outcome.
- Confirmed pivots require right-side bars, so recognition necessarily occurs after the pivot bar.
- The active terminal can be revised when a later confirmed same-side pivot exceeds it by the configured threshold.
- During automatic warm-up, the bounded local-range fallback can change as finalized bars change until a confirmed pivot pair becomes available.
- The script displays one active Fibonacci structure rather than a permanent archive of every historical grid.
- Rolling range changes as its lookback advances and can reset all current-structure statistics.
- Past-chart auto-follow is retrospective and changes when the visible right edge or local-window setting changes.
- Finalized OHLC bars do not reveal the sequence of price movement inside each bar.
- If one bar intersects several levels, each level can be recorded, but their exact intrabar order is unknown.
- If confirmed-bar evaluation is disabled, realtime event states can change before the bar closes. Reloaded historical bars contain finalized OHLC, not the original realtime tick sequence.
- The calculation uses the chart's current symbol, timeframe, session, and price series. It does not request higher-timeframe or external-market data.
- Results depend on the history supplied by TradingView and the selected data provider.
- The Fibonacci calculation is arithmetic in price. Changing the chart to logarithmic scale changes visual spacing but does not change the underlying formula.
- Heikin-Ashi, Renko, Kagi, Line Break, and other non-standard charts can contain synthetic prices. Use standard candles when actual traded-price geometry is required.
- ATR-normalized filters and distances depend on the selected symbol and timeframe.
- Custom ratios can be duplicated, reordered, or placed outside the 0-to-1 interval. Users are responsible for interpreting custom configurations.
- Default settings are general research starting points. They are not optimized for any instrument, timeframe, market, or outcome.
- This is an indicator, not a strategy or backtest engine.
- Nothing displayed by the script constitutes financial or investment advice.
OPEN-SOURCE NOTE
The source is published under the Mozilla Public License 2.0 so users can inspect, verify, modify, and study the implementation.
The script is intended to support transparent chart research without hidden calculations, restricted access, or performance promises. อินดิเคเตอร์

Order Blocks Graded [ITA]🟠 OVERVIEW
Order Blocks Graded marks order blocks and then does the part most scripts
skip: it tells you which ones are worth looking at.
A block only survives if the move that left it actually broke structure. What
survives is then graded A, B or C from two things that can be measured rather
than argued about - how far the impulse travelled relative to normal range,
and how much volume traded on the candle that produced it.
A-grade blocks are drawn solid. C-grade blocks are drawn faint. The grade sits
on the block itself, so a glance is enough.
🟠 CONCEPTS
* Order Block - The last opposite-colour candle before the move that broke
structure. The bullish version is the final down candle before price broke a
swing high, and the bearish version is its mirror.
* Break of Structure - A close beyond the last confirmed swing point. Without
one there is no block, because nothing was displaced.
* Impulse - The distance from the block to the close that broke structure,
measured in ATR multiples so it means the same thing on any symbol and any
timeframe.
* Grade - A when the impulse cleared the A threshold, B when it cleared the B
threshold, C otherwise. An origin candle on above-average volume lifts the
block one grade.
* Mitigation - Price trading back into the block. Mitigated blocks grey out,
or are removed entirely if you would rather only see what is still untouched.
🟠 FEATURES
🔹 Structure filter - a block is only kept when the move that left it broke a
swing point, so consolidation noise never produces one
🔹 A/B/C grading from impulse size in ATR terms and volume on the origin candle,
with the thresholds exposed as inputs
🔹 Opacity follows the grade, so the strongest blocks are the ones that stand
out without reading anything
🔹 Minimum block height, which stops a doji from leaving a flat line where a
zone should be
🔹 Staleness cutoff - a block price never returned to eventually stops being
useful and is dropped, instead of stretching across the whole chart
🔹 Mitigated blocks either grey out or disappear, your choice
🔹 Lowest grade to draw, so you can hide C blocks entirely and keep only the
strong ones
🔹 Alerts on both bullish and bearish blocks
🟠 HOW TO USE
Start with everything visible and see which grades your symbol actually
produces. Then raise the lowest grade to draw until the chart shows only what
you would act on.
Treat A blocks as the ones worth waiting for. They come from a move that
travelled several times normal range, which is what displacement is supposed to
mean in the first place.
Grey blocks are history, not signals. They show where blocks formed and how
they graded, which is the fastest way to see whether this symbol respects them
at all before you trade one.
Swing Lookback controls everything upstream. Lower values find more structure
and therefore more blocks, higher values find fewer and larger ones.
On a volatile symbol the blocks are wide and easy to read. On an index they can
be thin, so raise Minimum Block Height if the chart starts to look like lines
rather than zones.
🟠 CONCLUSION
Finding order blocks is easy and most scripts already do it. Knowing which of
them earned their place is the part that decides whether the chart helps you or
just fills up. That is what the grade is for. อินดิเคเตอร์

HERTZ Order Block - Active Market Bias & Depletion [5M]HERTZ Order Block - Active Market Bias & Depletion
HERTZ Order Block is a market-structure-based Order Block analysis tool designed primarily for short-term cryptocurrency charts, with a particular focus on 5-minute analysis.
The indicator does not treat every opposite-colored candle as an Order Block. Instead, an Order Block can only be created after a confirmed structural event and a qualifying displacement move. The script then evaluates the resulting zone using multiple contextual factors, including displacement strength, candle structure, optional Fair Value Gap confirmation, optional candle-pattern confirmation, volume expansion, liquidity sweep context, zone size, age, retests, nearby opposing Order Blocks, and repeated-use depletion.
The purpose of the script is not to predict the next candle or guarantee a reversal. Its purpose is to identify structurally relevant Order Block zones, track how price interacts with them over time, rank their current importance, and summarize the balance between active bullish and bearish Order Blocks.
Order Block formation
A bullish Order Block is searched for after a confirmed bullish Break of Structure and bullish displacement. The script looks backward for a qualifying bearish candle that preceded the displacement and uses that candle as the source of the bullish zone.
A bearish Order Block uses the opposite process. After a confirmed bearish Break of Structure and bearish displacement, the script searches backward for a qualifying bullish candle and uses it as the source of the bearish zone.
Depending on the selected zone mode, the Order Block can be constructed from the refined portion of the source candle, its candle body, or its full high-to-low range.
Once an Order Block is created, its original price boundaries are preserved. The zone is not continuously relocated to follow price.
Confirmed lifecycle states
Each active Order Block has a lifecycle. These lifecycle states are primarily updated from confirmed bars so that an unclosed candle does not permanently change the historical state of a zone.
FRESH means that the Order Block has been created and has not yet completed a confirmed retest.
APPROACH means price has moved within the defined ATR-based approach distance of the Order Block.
IN ZONE means a confirmed price bar has interacted with the Order Block.
HOLD means the zone was tested and a later confirmed bar moved away from the zone in the expected direction by the required ATR-based confirmation distance.
These states are used not only for display purposes but also to control which Order Blocks are considered immediately actionable.
Action priority
The indicator separates structural importance from immediate trading relevance.
Structural Score (S) represents the current structural strength of an active Order Block after considering its original quality, displacement characteristics, age, mitigation status, opposing-zone conflict, and repeated-test depletion.
Action Score (A) represents how relevant an Order Block is to the current price interaction.
A distant Order Block is therefore not automatically labeled as the most important trading zone simply because it had a high initial quality score.
Only Order Blocks in the APPROACH or IN ZONE states are eligible for ACTION #1 or ACTION #2.
A FRESH zone that is still too far from current price can remain a RESERVE zone.
A completed HOLD also returns to reserve status rather than continuously encouraging entries after the original reaction has already occurred.
If opposing bullish and bearish actionable zones have similar scores, the indicator can display a WAIT condition instead of presenting a small numerical difference as a meaningful directional advantage.
Conflict-aware Order Blocks
Active bullish and bearish Order Blocks are not evaluated independently.
The script checks whether an opposing Order Block overlaps the current zone or is located close enough to interfere with the expected reaction path.
Strong and nearby opposing zones reduce the structural score of the affected Order Block. Multiple opposing zones can create an additional conflict penalty.
This allows the indicator to distinguish between a structurally isolated Order Block and one that is operating inside a congested bullish/bearish conflict area.
Repeated-test depletion
Order Blocks are not assumed to retain the same strength indefinitely.
A separate retest counter tracks independent interactions with each zone. Multiple consecutive candles remaining inside the same zone are treated as one interaction rather than multiple independent tests.
For another test to be counted, price must first leave the interaction and later return to the Order Block.
The default progressive depletion model is:
T1 - first successful test, no additional depletion.
T2 - moderate structural reduction.
T3 - stronger structural reduction.
T4 - substantial structural reduction.
T5+ - additional progressive depletion up to the configured maximum.
This mechanism is intended to represent the idea that repeatedly tested liquidity or order-flow areas may become less structurally significant as they are revisited.
The depletion values are scoring adjustments. They should not be interpreted as measured probabilities of failure.
Live warnings versus confirmed states
The indicator deliberately separates confirmed lifecycle information from intrabar warnings.
The confirmed state may continue to display HOLD, IN ZONE, or another locked state while the current realtime candle is still open.
AT RISK is a realtime warning that price is approaching the Order Block's invalidation boundary.
LIVE BREAK indicates that the current unconfirmed candle is temporarily trading beyond the relevant invalidation boundary.
These live warnings can appear and disappear while the realtime candle is forming. They do not by themselves rewrite the confirmed lifecycle of the Order Block.
With close-based invalidation, an Order Block is not permanently invalidated until the relevant candle closes beyond the zone boundary.
With wick-based invalidation, the configured wick condition is used instead.
Active Order Block Market Bias panel
The information panel in the upper-right corner summarizes the current balance between active bullish and bearish Order Blocks.
MARKET displays BULLISH, BEARISH, or NEUTRAL.
BULL DOM shows the bullish share of the active Order Block dominance calculation.
BEAR DOM shows the bearish share.
ACTIVE displays the number of active bullish and bearish Order Blocks.
TOP BULL identifies the strongest currently relevant bullish Order Block score and state.
TOP BEAR provides the equivalent information for bearish Order Blocks.
EDGE displays the difference between bullish and bearish dominance.
The market-bias calculation does not simply count bullish and bearish boxes. Each active Order Block is weighted according to its structural or actionable score, lifecycle state, and proximity to price. Conflict and repeated-test depletion are already reflected in the underlying structural evaluation.
An IN ZONE Order Block therefore contributes more immediate contextual importance than a distant and heavily depleted historical Order Block.
The Bull and Bear Dominance percentages are relative Order Block dominance measurements. They are not probabilities that price will rise or fall, and they should not be interpreted as expected win rates.
Scoring terminology
Q represents formation quality based on the qualifying contextual conditions available when the Order Block is identified.
RP is an internal reversal-power score derived from formation quality, Order Block size characteristics, and displacement strength.
S is the current Structural Score.
A is the current Action Score.
T1, T2, T3, etc. represent independent confirmed tests of a previously held Order Block.
ACTION #1 is the highest-ranked currently actionable Order Block.
ACTION #2 is the second-ranked actionable Order Block when available.
RESERVE identifies a structurally relevant zone that is not currently considered an immediate actionable interaction.
WAIT indicates that opposing actionable Order Blocks are sufficiently close in ranking that the script does not assign a meaningful directional advantage.
Intended use
The indicator is designed as a discretionary market-structure and context tool rather than an automated trading strategy.
On a 5-minute cryptocurrency chart, traders can use it to identify active demand and supply areas, observe whether price is approaching or testing those areas, compare opposing Order Block strength, recognize repeatedly tested/depleted zones, and monitor whether active Order Block structure currently favors the bullish side, bearish side, or neither side.
The indicator does not generate orders, calculate position size, or provide a complete risk-management system.
Calculation and repainting considerations
Order Block creation requires confirmed structural conditions. Historical Order Block boundaries are based on already available candle data and are stored when the zone is created.
Confirmed lifecycle transitions such as retests, holds, and close-based invalidations are evaluated using confirmed bars.
The realtime AT RISK and LIVE BREAK warnings are intentionally intrabar and can therefore change before the current candle closes. This behavior is expected and is visually separated from confirmed lifecycle states.
Users should distinguish between a confirmed state and a realtime warning when interpreting the chart.
Limitations
Order Blocks are subjective market-structure concepts and there is no universally accepted mathematical definition of the exact boundaries or validity of an Order Block.
ATR thresholds, structure lookbacks, zone construction methods, displacement requirements, and optional confirmation filters can materially affect which zones are detected.
Cryptocurrency volatility can also change significantly across symbols and market regimes. Settings appropriate for one asset or period may not behave identically on another.
A high Quality, Structural, Action, RP, Bull Dominance, or Bear Dominance value does not guarantee that price will react from a zone.
The indicator does not account for every possible source of market information, including news, fundamental events, exchange-specific liquidity conditions, hidden orders, or external derivatives positioning.
For these reasons, the indicator should be used as one component of a broader analysis and risk-management process rather than as a standalone prediction system.
What is different about this implementation
Instead of displaying every detected Order Block with equal importance, this implementation maintains a lifecycle for each zone and continually differentiates between formation quality, structural relevance, immediate action relevance, opposing-zone conflict, and repeated-use depletion.
Its state-locked FRESH / APPROACH / IN ZONE / HOLD workflow, progressive T1/T2/T3/T4 depletion model, conflict-aware scoring, live-warning separation, and active Order Block dominance panel are designed to reduce visual ambiguity and make the changing condition of each active zone easier to interpret.
Recommended starting context
The default parameters were designed with 5-minute cryptocurrency analysis in mind. They are starting values, not universally optimal settings. Users should evaluate the script on the symbol, timeframe, market conditions, and execution method relevant to their own analysis.
This indicator is provided for analytical and educational purposes. It does not constitute investment advice, does not guarantee future results, and does not claim that any displayed score represents a future return or a statistically guaranteed probability. อินดิเคเตอร์

Acceptance-Retest indicator# Acceptance-Retest Dashboard
**Companion to the Sweep-Reclaim Dashboard.** Same four levels, same session logic, opposite
read on price behavior — this one tracks what happens when a level *doesn't* reject.
---
## What this script does
Most level-based tools only handle one outcome: price hits a level and reverses. But price at
a key level only ever does one of three things — **rejects, accepts, or chops** — and a
rejection-only tool is blind to two-thirds of that.
This script tracks the **acceptance** case: a level breaks, price *holds* beyond it instead of
snapping back, and a genuine continuation trade sets up on the retest or base that follows.
It automatically:
- Plots **PDH / PDL / ONH / ONL** — prior-day high/low and overnight high/low
- Detects a real breakout close (not just a wick) beyond any of the four levels
- Confirms the level actually held before treating it as a trade candidate
- Waits for a retest or a tight base to form, then triggers on the break of that structure
- Computes entry, stop, target and R:R automatically — no manual level math
- Tracks the trade live once triggered — active, target hit, stopped, or timed out — so you
always know whether the last signal is still good
- Fires a TradingView alert the moment a valid setup completes
Every signal on the chart is prefixed **`AR:`** so it's never confused with a rejection-style
signal from a different tool running on the same chart.
---
## The rule book — Acceptance-Retest methodology
### The core idea
At any key level, price does one of three things:
| Behavior | Candle signature | What it means |
|---|---|---|
| **Rejection** | Wick through, closes back inside | Liquidity grab — level held |
| **Acceptance** | Real body close beyond, price holds | Level flipped — trade the hold |
| **Chop** | Repeated wicks and closes both sides | No edge — stand aside |
This script exists for the middle row. If you're already running a rejection/sweep-style
system, this is built to sit alongside it, not replace it — they read the *same* event and
reach opposite, mutually exclusive conclusions from it.
### The sequence, step by step
**1. Breakout.** Price trades through one of the four levels.
**2. Close confirmation.** A candle **closes** beyond the level — a real body close, not a
wick poking through. No close beyond → not this setup.
**3. No-reclaim check.** The next couple of candles must **not** close back on the original
side. If price reclaims within that window, this was a rejection, not an acceptance — a
different setup entirely, and this script drops it.
**4. Hold — retest or base.** Once the no-reclaim check passes, price needs to show one of two
structures before an entry is considered:
- **Retest:** a pullback toward the level that holds and turns, forming a higher low
(bullish) or lower high (bearish).
- **Base:** a tight, low-overlap sideways range instead of a pullback — still evidence the
level is holding, just without giving a clean retest.
If neither forms within a reasonable window, the attempt expires. Extended, un-based moves are
not entries — they're skips.
**5. Entry.** The break of the retest high/low, or the break of the base range.
**6. Stop.** Beyond the retest or base structure point — never an arbitrary distance, and
capped relative to that level's typical range so a single trade can't take on outsized risk
just because the structural point happened to be far away.
**7. Target.** A measured-move projection from the breakout level, pulled in to the nearer
opposing level when one exists inside that projection.
**8. Filter.** Minimum reward-to-risk gate — trades that don't clear it are skipped, not taken
anyway at reduced size.
### What invalidates a setup after it's already tracking
- **A reclose back through the level** during the hold phase — the move never actually held.
- **No retest or base within the watch window** — extended without structure.
- **Stop distance beyond the risk cap** — the structural stop doesn't fit, so the trade is
skipped rather than resized to fit.
- **Outside the trading window** — signals outside the configured session are not taken.
### Managing an active signal
Every valid trigger is tracked automatically against three outcomes, all defined *before*
entry, never adjusted mid-trade:
1. **Target hit** — the projected level is reached.
2. **Stop hit** — price trades back through the structural stop.
3. **Time stop** — not resolved by a configured cutoff time, closed out regardless of where
price is at that moment. A trade that hasn't reached target isn't a trade still "working" —
it's a trade that should be closed and logged honestly.
A trade that runs *past* target after a time stop already closed it doesn't get to become a
retroactive winner. The discipline is the point — not squeezing the best possible outcome out
of hindsight.
---
## Dashboard guide
**Level rows (PDH / PDL / ONH / ONL):**
- **Price** — the level's current value
- **Stage** — idle, no-reclaim check, or watching for retest/base
- **Bars** — how long the current stage has been running
- **Last signal** — the most recent outcome for that level: a full trade, or a specific skip
reason (reclaimed, expired, stop beyond cap, R:R too low)
**Active trade row:**
- The single most recent valid signal, with entry / stop / target
- **Status** — ACTIVE, TARGET HIT, STOPPED, or EXPIRED, updated live every bar
A level clustered too close to another active level is marked accordingly and excluded from
detection until it separates — this prevents two overlapping levels from generating
contradictory signals at effectively the same price.
---
## Settings
- **Sessions** — must match your other level-based indicators exactly, or the four levels will
disagree across scripts on the same chart.
- **Planning** — ATR length, minimum R:R, and the stop-risk cap (scaled to both the level's
typical range and current volatility, so a calm prior session doesn't choke off signals on a
day that's actually moving hard).
- **Acceptance rules** — how many bars must pass without a reclaim, how long to wait for a
retest/base before giving up, and how tight a base range needs to be to count.
- **Trading windows** — the session(s) during which new signals are allowed to trigger.
- **Time stop** — the cutoff time for closing anything still open.
- **Display** — dashboard position, text size, and whether to draw the level lines and active
trade markers on the chart.
---
## Notes
- This script draws its own copy of PDH/PDL/ONH/ONL so it works standalone; running it
alongside a companion rejection-style script on the same chart is fully supported — the
level math is identical, so both agree on where the four levels sit.
- Designed for 5-minute charts on index futures and related instruments; behavior on other
timeframes or asset classes has not been validated.
- A single active-trade slot is tracked at a time. A new valid signal replaces the previous
one rather than stacking multiple simultaneous trades.
---
## Disclaimer
This script is a **decision-support and rule-automation tool**, not a signal service or
trading advice. It mechanizes a specific discretionary methodology — it does not predict
price, guarantee outcomes, or account for news, liquidity conditions, or market regime shifts.
Past behavior of any setup shown here is not indicative of future results. All trading
decisions, position sizing, and risk management remain the sole responsibility of the user.
Backtest and forward-test thoroughly before applying any setup with real capital.
อินดิเคเตอร์

อินดิเคเตอร์

อินดิเคเตอร์
