Smart Money Concepts [AxeAlgo]Overview
- Smart Money Concepts is a clean, non-repainting indicator designed for traders who want to identify institutional market structure without clutter.
The indicator visualizes where smart money is likely to defend, attack, and accumulate positions by displaying order blocks, fair value gaps, liquidity pools, and premium/discount dealing ranges on your chart.
What It Shows
Market Structure (CHoCH and BOS)Identifies when the market changes direction (Change of Character) and when new directional commitment breaks prior structure (Break of Structure). Each signal confirms only after a specified number of bars, ensuring no repainting.
Order BlocksHighlights the price zones where the last aggressive institutional movement originated. These are areas where smart money entered positions and often acts as support or resistance on subsequent pullbacks.
Fair Value GapsDetects imbalances between candlesticks (gaps not filled by wicks). The indicator marks these zones because institutions often return to fill them as price moves away.
Liquidity PoolsAutomatically identifies clusters of equal highs and equal lows where retail traders typically set stop losses. The indicator marks when price breaks through these pools (institutional sweeps).
Premium and DiscountDisplays whether price is trading above (premium) or below (discount) the 50% equilibrium level between the most recent swing high and low. Extreme premium or discount often precedes reversals.
How to Use It
Enable individual components using the dashboard toggles: Show Structure, Show Order Blocks, Show Fair Value Gaps, Show Liquidity Pools, Show Premium/Discount.
Turn on the dashboard to see your current swing bias, internal structure direction, and range position at a glance.
Auto-Tune automatically scales all sensitivity parameters based on your chart timeframe. Turn it off if you prefer manual tuning.
Use Simple Mode to display only swing structure without internal noise for a cleaner chart.
Key Settings
Confirmation Bars: How many bars confirm a pivot before a structure signal fires. Higher values filter out false signals but add lag. Default is 2.
Min Displacement: The minimum price movement (in ATR multiples) required for a structure signal to register. Default is 1.0 ATR.
Zone Sizing: Controls the minimum and maximum height of order blocks and FVGs. Adjust to filter noise or capture smaller opportunities.
P/D Lookback: How many bars back to scan for the swing high and low that define your premium/discount range.
Dashboard Position and Size: Choose where the info table appears and how large you want it.
Colors: Customize bullish, bearish, and gap colors to match your chart theme.
What This Indicator Is For
Smart Money Concepts is intended for traders who want to visually identify institutional order flow patterns and understand where smart money accumulates and distributes. It helps you:
Spot areas where institutions likely accumulated or distributed (order blocks and FVGs)
Recognize when price is overextended and vulnerable to reversal (premium/discount extremes)
Distinguish real structural breaks from noise during choppy consolidation
Plan entries and stops around levels where smart money defends
How It Works
The indicator uses pivot-point analysis to identify swing highs and lows, then marks the price zones where directional movement originated (order blocks). Fair value gaps are detected using standard three-candle imbalance logic. Liquidity pools are identified by clustering equal price levels within a configurable tolerance.
All signals confirm only on closed bars. Zones never repaint, but they shrink or change state as price action develops.
Limitations
The indicator shows 5 active zones at a time to keep your chart clean. If multiple institutional structures are forming simultaneously, older zones will age out. This is by design to prioritize the most recent price action.
This indicator identifies structural levels and patterns. It does not predict price direction or guaranteed support/resistance. Use it as one component of a complete trading plan, not as a standalone signal.
Fair value gaps and order blocks are useful but not infallible. Price may skip through them or reverse before reaching them.
Important Disclaimer
This indicator is for educational and analytical purposes only. It does not provide financial advice, and past performance does not guarantee future results. Trading involves risk of loss. Always use proper risk management, stop losses, and position sizing. Never risk more than you can afford to lose.
The accuracy and effectiveness of this indicator depends on your market conditions, timeframe, and trading methodology. Results vary by trader and asset class.
مؤشر

Auto Range Detector [QuantAlgo]🟢 Overview
The Auto Range Detector is a structural analysis tool built for traders who work around consolidation. It automatically scans every bar across multiple window sizes, tests each candidate against a set of independent structure filters, and draws a box where price rotated between two boundaries and stayed contained by them. Every stage is volatility normalized against the symbol's own history, so one configuration behaves consistently on a five minute crypto chart and a daily equity chart alike. Whether you fade the edges, trade the resolution, or simply want the ranges on your chart drawn the way you would draw them by hand, the indicator turns raw price into confirmed structures, marked breakouts, and a definition of "range" that you have complete control over on any asset and any interval.
🟢 How It Works
The indicator tests up to three window sizes on every bar: the base scan length, double it, and triple it. Each window places two boundaries using the method you choose, measures the band height, and ranks that height against its own history on the symbol and interval, so the volatility gate reads as a percentile of what the market normally produces. The window then has to pass four independent structure tests: enough midline crossings per bar to establish two sided rotation, enough bars reaching each boundary, a regression slope flat enough to show a stable mean, and enough closes held between the boundaries. The longest window that clears every test defines the range.
Once a structure qualifies, the left edge walks backwards through earlier history for as long as price stayed inside the band, and lands only on a bar held within the boundaries wick and all, so a box begins on a candle that belonged to the structure. The range stays provisional until it has spanned a minimum number of bars, and a provisional structure that breaks is cleared without a marker, leaving only structures that held on the chart. A break is confirmed on a close or a wick beyond the boundary, with an ATR buffer that filters marginal clears.
🟢 Key Features
▶ Multi-Scale Detection
The scan tests up to three window sizes on every bar: the base length, double it, and triple it, with the longest qualifying window defining the range. Boundary Basis then decides where the two edges sit and how range height is measured. Percentile band trims outlying wicks so no single spike defines the box, with the percentile itself adjustable. Absolute extremes places the edges on the extreme wicks and measures peak to trough. Body extremes works from opens and closes only, which suits instruments with erratic wicks such as thin crypto pairs. Signal Timing governs whether everything waits for the bar to close or evaluates the forming bar, and ATR Length sets the volatility unit every distance in the script is expressed in.
▶ Structure Filters
Five settings decide whether a candidate window is a range. Compression Percentile is the volatility gate, ranking band height against the symbol's own history so the threshold means the same thing on any instrument. Min Rotation Rate requires midline crossings per bar, which is what separates a genuine range from a reversal that happens to span the same distance. Min Boundary Touches requires both sides to be visited more than once, so a single spike high paired with a single spike low does not qualify, with Touch Definition and Touch Tolerance controlling what registers as a visit. Max Drift limits how far the mean of the window may tilt. Min Containment requires a share of closes to sit between the boundaries, rejecting structures where price only passed through the zone. Every test has its own control, so the definition can be set to tightly held rectangles or to looser rotational structures.
▶ Range Behavior
Range Anchoring decides where the left edge lands once a structure qualifies. Scan window only draws the box across the window the filters evaluated. Extend to containment walks the edge backwards through earlier bars that stayed inside the band, up to an adjustable ceiling, so the box covers the full consolidation. Minimum Range Bars holds a new structure provisional until it has run long enough, and a provisional structure that breaks is cleared without a marker. Absorb Overshoot lets a boundary take in a marginal wick rather than closing the box on it. Break Confirmation and Breakout Buffer decide what ends the range, on a close or a wick, and how far past the boundary price must clear. Cooldown Bars and Max Range Age govern what happens after a range resolves.
▶ Deviation Merging
Optional handling for a break that closes back inside the range. With this enabled, the broken structure is held open briefly and a close back between the boundaries revives it: the box resumes from its original left edge, the breakout marker is withdrawn, and the excursion is marked at its extreme, leaving one continuous structure with a failed break inside it rather than a breakout followed by a fresh box over the same price. Left disabled, every break is final.
▶ Range Visualization
Each structure is drawn as a gradient shaded box that fades from the boundaries toward equilibrium, with an optional midpoint line and quartile levels marking where a rotation is already extended. A live tag reports whether the structure is forming or confirmed, how many bars it has held, and its height as a percentage of price. Breakout markers print below the bar on an upside break and above it on a downside break.
▶ Built-in Alerts
Ready-made alert conditions fire when a new range is detected, when one breaks to the upside or downside, on any range break, and when a failed break returns price inside the structure.
▶ Color Presets
Six presets (Classic, Aqua, Cosmic, Cyber, Neon, Custom) drive the bullish and bearish pair, with the range color held separate so a live structure always reads as neutral against whichever pair is active. Custom mode exposes individual color pickers. Every border, line, fill, and label is contrast corrected against the chart background automatically, so a color close to your background lifts far enough to read while shading stays light enough to keep price action visible.
مؤشر

Percent Line/Box Toolkit
Percent Line/Box Toolkit is an overlay tool that draws horizontal lines and rectangles at percentage distances from the current price.
It is built for anyone who reads a chart in percentage terms rather than in absolute prices: eight percent above the market means the same thing on any symbol and at any price level, while a fixed price distance has to be worked out again whenever the price moves or the instrument changes.
Every drawing is anchored to the latest close, and its vertical position is expressed as a percentage of that close, so the whole set travels with the market instead of standing still.
The horizontal geometry of each drawing is measured in bars of a reference timeframe chosen separately for that drawing, rather than in bars of the chart.
Six lines and four rectangles are available, each one positioned, sized, labeled and colored independently of the others.
Line (present six times, Line 1 to Line 6, each instance identically structured)
Switch, label text, label size: The switch turns the line on or off, the text field holds the label, and the dropdown sets the size it is drawn in. An empty text field means no label.
Level (%): Vertical position of the line, as a percentage of the current close.
Offset (Bars): Horizontal position, measured in bars. Positive values move the line to the left, negative values to the right.
Length (Bars): Width of the line, measured in bars.
Reference Timeframe: Offset and length are counted in bars of this timeframe. If it is left empty, the chart's own timeframe is used.
Style, width, color: The line style (solid, dotted or dashed), the thickness of the line, and its color.
Box (present four times, Box 1 to Box 4, each instance identically structured)
Switch, label text, label size: The switch turns the box on or off, the text field holds the label, and the dropdown sets the size it is drawn in. An empty text field means no label.
Upper (%): One edge of the box, as a percentage of the current close.
Lower (%): The other edge, also as a percentage of the current close. The two fields can be filled in either order.
Offset (Bars): Horizontal position, measured in bars. Positive values move the box to the left, negative values to the right.
Length (Bars): Width of the box, measured in bars.
Reference Timeframe: Offset and length are counted in bars of this timeframe. If it is left empty, the chart's own timeframe is used.
Border width, border color, fill color: The thickness of the outline, its color, and the color of the area inside. A border width of zero leaves the box without an outline.
Every enabled line is drawn as a horizontal segment at its percentage level, and every enabled box as a rectangle spanning its two levels.
Everything is rebuilt from the current close on each new bar, so the drawings follow the price instead of staying where they were put.
Nothing remains on past bars: there is no history to scroll back through, only the state the chart is in right now.
The two edges of a box are sorted before it is drawn, so the higher value always becomes the top edge and the order in which they are entered makes no difference.
Offset shifts a drawing along the time axis: positive values move it left into the existing bars, negative values right into the empty space beyond the last bar.
Because offset and length count bars of the reference timeframe rather than bars of the chart, a drawing holds its size when the chart timeframe is changed; a line 50 bars wide on a 4-hour reference stays that wide whether the chart shows 5-minute or daily bars.
On instruments that do not trade continuously the time axis runs through the closed periods as well, so a drawing covers its length in calendar terms rather than in visible bars and appears shorter than the bar count suggests.
Any drawing can carry a label at its right-hand end, drawn in the color of the line or of the box border; it appears as soon as its text field is filled and disappears when the field is cleared, without affecting the drawing itself.
This indicator is intended solely for market analysis and does not constitute investment advice or a guarantee of success.
Use it at your own discretion and risk; past results are not indicative of future performance.
مؤشر

Opening Range Breakout [ITA]🟠 OVERVIEW
Opening Range Breakout marks the high and low of the first minutes of the trading session, extends those boundaries forward, and flags the bar where price closes outside them. The range is built live as the session opens, tracking its running high and low, then locks once the opening period ends.
Once the range is set, the indicator measures its height and projects extension targets above and below it. Four range lengths are available, and the session open time and timezone are configurable so the tool works on any market rather than being fixed to a single exchange.
🟠 CONCEPTS
* Opening Range - The high and low established during the first minutes of the session. Represents the initial boundaries of agreement between buyers and sellers before the day develops.
* Range Lock - The moment the opening period ends and the boundaries stop updating. From that bar onward the levels extend forward unchanged.
* Extension Target - A projected level placed at a multiple of the range height above the range high or below the range low. Acts as a measured move reference rather than a prediction.
* Qualified Breakout - The first close outside the range in a given direction. Each direction is tracked independently and marked only once, so a session that breaks up, reverses and then breaks down shows both events without repeating either.
* Session Anchoring - The range window is evaluated in the selected timezone rather than the chart timezone, keeping it aligned to the actual market open regardless of the user's location.
🟠 FEATURES
* Selectable Range Length - Choose between 5, 15, 30 or 60 minute opening ranges.
* Live Range Building - The box tracks the running high and low as the opening period develops, then locks when it closes.
* Extension Targets - Projects two configurable multiples of the range height in both directions.
* Breakout Marking - Labels the first close outside the range in each direction.
* Breakout Alerts - Fires on upside and downside breaks independently.
🟠 HOW TO USE
* Match the range length to the instrument. Shorter ranges suit fast-moving markets and scalping, longer ranges suit index futures and higher-priced equities where the first minutes tend to be noisy.
* Set the session open time and timezone to your market. The default is 09:30 New York.
* Use the range boundaries as the reference for the session. Price holding inside them points to rotation, while a decisive close outside tends to set the tone for the rest of the day.
* Read the extension targets as measured moves. A tight opening range produces close targets, while a wide one produces targets that may take the full session to reach, which is itself useful when sizing expectations.
* Adjust Days to Display to keep the chart clean when reviewing several sessions of history.
🟠 CONCLUSION
Opening Range Breakout combines automatic range detection, forward-extending boundaries, and range-based extension targets in a single tool. It removes the manual work of marking the opening range each session while keeping the framework configurable enough to apply across different markets and session times. مؤشر

Percent Range Tool
Percent Range Tool is an overlay indicator that lays a percentage scale over the chart, measured from the current close.
It's built for anyone who thinks in percentage distances rather than in absolute prices — for judging how far a move would have to carry, for setting targets and stops in percentage terms, or for comparing symbols whose price levels have nothing in common.
Rather than working from fixed percentage steps that have to be reset for every symbol and every timeframe, the scale sizes itself: it takes the highest high and the lowest low within a lookback window, measures how far each of them sits from the current close, and lets the wider of the two distances stand for one hundred percent. Everything in between is divided into equal steps.
A single length input therefore governs the entire scale, while its placement and its color stay adjustable.
Calculation
Length: number of bars searched for the highest high and the lowest low.
Appearance
Offset: distance in bars between the current bar and the right-hand end of the levels.
Extend Levels to the Left: carries every level to the left across the whole chart.
Line Color: color of the lines and of their labels.
Label Size: font size of the percentage labels.
The indicator draws twenty horizontal lines, ten above the close and ten below it, each labelled with its percentage at the right-hand end.
The outermost pair marks the full distance the market covered within the lookback window; from there the levels step inward in equal increments, and their alternating lengths and line styles make the steps easy to count at a glance.
Since only the wider of the two distances sets that outer edge, the nearer of the two extremes lands somewhere inside the scale rather than on an edge of its own.
On higher timeframes the scale often runs wider than one hundred percent, because the distance to the high is open-ended while the distance to the low can never exceed one hundred percent — a price cannot fall further than to zero.
The levels that would land at or below zero are left out entirely, so on those charts fewer lines appear below the close than above it.
The whole block sits to the right of the last candle, in the empty space beyond the current bar rather than over the price action itself, so depending on how much room the chart leaves on the right it may take some scrolling before the levels come into view.
Extended to the left, they run back across the chart instead, which places every percentage beside the bars it refers to — the staggered lengths then no longer have any effect, and the steps are told apart by line style alone.
Only the current state is drawn.
Nothing is placed on past bars and there is no history to scroll back through: with every new bar the lookback window moves on, and both the close and the two extremes it is measured against can change, so the levels are rebuilt and the percentages on the labels shift with them.
On the bar still forming they follow the live price and settle once that bar closes.
Because the scale is derived from the range rather than fixed, its numbers differ from symbol to symbol and from timeframe to timeframe — a quiet market produces a narrow scale, a volatile one a wide scale.
This indicator is intended solely for market analysis and does not constitute investment advice or a guarantee of success.
Use it at your own discretion and risk; past results are not indicative of future performance.
مؤشر

Monthly & Weekly Macro KeysMonthly & Weekly Macro Keys plots completed monthly and weekly High, Low, Open, and Close levels with composite IPDA-style premium/discount context.
Monthly macros default to the last three completed months. Each level is labeled by calendar month (for example, June 2026 Monthly High). Weekly macro key levels default to the prior completed week High and Low, with optional Open and Close. Lines begin on the day the print occurred and extend to a configurable right-side buffer next to the labels.
A composite range is built from the selected months or weeks. The indicator can draw the IPDA gradient through that range: 12.5%, 25%, 37.5%, equilibrium (50%), 62.5%, 75%, and 87.5%. High and Low of the composite are not duplicated on the gradient because they are already shown as the monthly or weekly macros.
An on-chart table reports Premium or Discount relative to equilibrium, percent location within the range, whether price is inside the 25–75% zone, and the key price levels for both the monthly and weekly composites.
Style controls include color, width, and line style (Solid, Dotted, Dashed) for monthly and weekly High, Low, and Open/Close, as well as for gradient quadrant and octant levels. Table position supports all nine chart anchors. Lookback counts are adjustable (up to six months and eight weeks). مؤشر

Level Watch & Touch Ledger [MQLSoftware]OVERVIEW
Level Watch & Touch Ledger keeps an audit trail of what price actually did at the levels you draw yourself. You type in up to eight prices and the script records every time price came to each one, what happened next, and how far past the line it ran before turning. It discovers nothing on its own: it never scans, clusters or ranks levels, and it produces no entries, stops, targets or position sizing. It answers one question about levels you already care about — has this one actually been respected on this chart, or does it only look important?
CONCEPTS
A plain touch counter is close to useless, because price grinding sideways on a level logs a touch every bar and the count becomes noise. The engine here is a re-arm gate: after an event resolves, a level goes quiet until price has closed a configurable ATR distance away and a cooldown has passed. Only then can it register another touch. That turns an ordinary consolidation into a small number of events instead of forty.
Each event resolves exactly once, on a closed bar, and is frozen. REJECTED means price closed back on the side it approached from by the outcome margin; BROKEN means it closed through by that margin; CHOP means neither happened inside the outcome window. A latched outcome is never rewritten, so the table cannot quietly improve as new bars arrive.
Overshoot is measured on rejections only. A break is declared once price closes beyond the level by the outcome margin, so a broken event's overshoot is floored by your own setting and would describe the input rather than the market. A bar that gaps clean over a level never touches the zone, so gaps are detected separately and recorded as breaks — otherwise a level's failures go uncounted and gap-prone symbols look more reliable than they are.
FEATURES
Eight independent level slots, each with its own ledger. A state readout per level, from OUT OF RANGE and WARMING UP through ARMED, PENDING and COOLDOWN. Touch count and bars since the last one. The rejected / broken / chop split. A rejection rate whose denominator includes chop. Median and 75th-percentile rejection overshoot in ATR. Shaded touch zones, level lines, and a marker on every recorded touch. Alerts on touch and outcome, plus a proximity ladder that fires only as price closes in, never as it walks away.
HOW TO USE
Type a price into Level 1 and read the row. Zone half-width sets how close counts as a touch; re-arm distance is the main lever on how many events you get; outcome window and margin decide how decisively price must move. Rates and overshoot both stay behind one minimum-sample input and read "collecting" until the level has enough resolved events — four touches give you an audit trail, not a statistic. A median overshoot of zero is a real answer, not a missing one: half the rejections turned before price reached your line.
Counts, rates, outcomes and markers are closed-bar figures and are never revised. The DIST column, the shaded zone width and the proximity alerts are live and update inside the forming bar; they are visual context, not signals.
CONCLUSION
This is a measurement tool for levels you supply, not a level finder and not a signal generator. Samples on a hand-drawn level are small by nature, and nothing here is a probability, an expectancy or a forecast — the figures describe what this chart's loaded bars did at your lines, shown with the sample size that produced them. مؤشر

Candle Club - Session LevelsYesterday's high, the overnight range and today's open, drawn where they formed and kept on the chart so you can see what price did there.
WHAT IT DRAWS
Prior day high, low and close; overnight high and low; the cash-session open; an optional prior-day midline and round-number reference lines; and shelf zones, shaded pockets where recent session highs and lows cluster. Each day's lines start when that level becomes known and stop when the next one replaces it, so history stays readable.
THE IDEA
A session extreme is a place the market reached and turned away from; the overnight range is the path it took while the cash session was shut. Many traders watch these places, and this tool's only job is to put them on your chart where you can see them. It makes no claim about what price does when it returns there; what you do at a level is your call.
WHAT IS ORIGINAL
Shelf zones. The script banks each completed session's high and low, sorts the last few days of them, and groups any within your chosen width of each other. Two or more in one pocket become a box starting where its oldest member formed. One extreme is a number; a cluster is a shelf the market has revisited.
HOW TO USE
Set the cash session and timezone for your market (default: US index futures and stocks) and how many days to keep. Read it top down: the table lists every level and how far it sits from the last price, so you can see at a glance what is above and below you. Shaded boxes are shelf zones - the more session extremes stacked in one, the more times the market has stopped in that pocket. Set one alert per level, or the "any level" alert, to be told when price crosses one instead of watching. Best on 1-minute to 15-minute charts; it draws nothing on daily and above.
SETTINGS
One group per family: prior day, overnight, open, shelf zones, round lines, each with an on/off switch and colour on one row, then width and style. Neutral lines follow your chart theme. Prior day can use the exchange's daily bar or the previous cash session only.
LIMITATIONS
Intraday charts only. On stocks the overnight means the pre- and post-market bars on your chart, so extended hours must be on. The cash-session option needs one completed session first. Overnight here means everything outside the cash session you set, so if you also run a tool that starts its overnight at a fixed hour the two will not always draw the same line. The round-number lines are an evenly spaced grid, off by default. They are drawn for reference only and nothing here claims price behaves differently at them.
A standalone drawing tool with no buy or sell signals. مؤشر

Level survival trackerEveryone trades PDH. Almost nobody knows their own numbers on it.
Description
Tracks six session reference levels every day: prior day high, prior day low, overnight high, overnight low, opening range high, opening range low. For each, over a rolling window of sessions, it reports the probability the level gets tested, the probability it breaks given a test, how failure probability changes with repeated tests, and the median rejection distance and time from first touch to break.
How it calculates
Prior day levels come from the last completed exchange daily bar via the documented non-repainting request idiom, or optionally from the previous custom chart session. Overnight high and low accumulate outside the session and freeze at the open; the opening range freezes when its window completes, and the bars that built it cannot also test it. A touch is a bar overlapping the level within a tolerance frozen at the session open, counted in episodes. A break is a confirmed close beyond the level plus tolerance, after a touch. A session whose open is already beyond a level, or where price closed through it without any bar ever overlapping it, is recorded as opened-beyond and excluded from every rate, because that level was never fairly testable. Completed sessions are written once, after the session ends.
The tolerance can be defined in ticks, points, a fraction of prior daily ATR, or a fraction of chart ATR. Statistics can be conditioned on the session's opening gap against the prior daily range, or on prior daily volatility versus its own 20-day mean. The break rate can display a 95% Wilson interval so the uncertainty is visible next to the point estimate. Break rates and touch-failure rates require their own minimum number of actual tests before anything is shown.
How to read it
Today's column shows each level's live state: untested, testing with its touch count, broke with the touch it broke on and the time, or opened beyond. P(test) is tests over eligible sessions. P(break | test) is breaks over actual tests, with the interval underneath if enabled. Touch failure answers: of past sessions that reached this many touches on this level, how often did the level eventually break. Reaction and time are the median rejection distance in points and the median minutes from first touch to confirmed break. Every figure carries its sample size, and figures below the minimums show the count instead of a percentage.
Repainting
Closed bars do not repaint. Touches and breaks are decided on confirmed bars only, and a session's outcomes enter history only after the session completes.
Originality and attribution
The levels are common knowledge. What is original is the survival accounting: episode-counted touches, conditional failure by touch number, opened-beyond exclusion, frozen per-session tolerance, regime conditioning, and interval-honest break rates with sample sizes shown. This is not derived from and does not reuse code from any existing published script.
Honest limitations
These are empirical frequencies, not forecasts or trade signals.
Intrabar path is unknowable from OHLC bars. A same-bar touch and break records as a first-touch break with zero measured rejection.
Overnight rows need extended-hours bars on the chart.
The session must not cross midnight in the chosen time zone.
Previous-RTH prior levels need one completed chart session to warm.
The chart timeframe must divide the session start and length exactly, so bars align to the session boundaries. For a 09:30 to 16:00 session that is 1, 2, 3, 5, 6, 10, 15, or 30 minutes. This is not a fixed ceiling: it follows your session. A session starting on the hour, such as 09:00 to 16:00 or 08:00 to 17:00, also accepts 20 and 60 minutes. Misaligned timeframes are refused rather than measured against fuzzy session boundaries, because a bar straddling the open would corrupt the opened-beyond classification, which reads the session-open price.
The opening range is rounded up to a whole number of chart bars, so no bar can straddle its boundary. On a 2-minute chart a 15-minute range becomes 16. The effective value is in the table header tooltip.
Results depend on instrument, session, tolerance, timeframe, and sample. Change any one and the numbers change. مؤشر

Session Open LineA price overlay for TradingView (Pine Script v6). A horizontal line at the session's reference level - the previous session's close by default, or the session open - drawn from the first to the last bar of that session, with a label carrying the price change during the session (close vs the reference) - as a percent, as a difference in the instrument currency, or both. Alerts fire when the price crosses the line, and the reference level plus the session change are exposed as hidden series for other scripts.
█ 🧠 WHAT IT SHOWS
For every trading session the script anchors a line at the session's reference level and stretches it to the right as the session progresses:
price
│ ╭─╮
│ reference level │ │ ╭╮ ← price above the reference
│ ╭╮ ╭╮ ╰─╯ ││
│ ══╪╪═══════════════════╪╪═══════╪╪══ ─►
│ ╰╯ ╭╮ ╭╮ ╰╯ ╰╯
│ ╰╯ ╰╯ ← price below the reference
│
│ ├──────── one session ────────┤├── next session ──
└────────────────────────────────────────────── time
The line sits at the reference level - the previous session's close (default) or the session open - and never moves vertically.
Its right end follows the current bar until the session ends.
The color of the line depends on the sign of the change : up color when close >= reference level , down color otherwise. It is re-evaluated on every bar, so a session that flips from green to red repaints the whole line.
The whole session is shaded in the same up/down color (on by default, can be turned off).
Reference level
Previous session close (default) - the close of the last bar of the prior session. The change matches the day change quoted against the previous close (the way most quote screens report it), and an opening gap shows up as the distance between the line and the session's first candle.
Session open - the open of the first bar of the session. The change measures only what happened inside the session; there is never a gap between the line and the first candle.
Session detection
A new session is detected with timeframe.change('D') - the trading day boundary as TradingView defines it for the symbol. That is deliberately not "midnight": it follows the instrument's own session definition, so futures sessions that cross midnight are handled correctly (the line starts at the session boundary, not at 00:00).
Why a box, not bgcolor()
The session highlight is drawn as one box per session rather than bgcolor() . bgcolor() paints a single bar and cannot be repainted afterwards, so a session that flips sign would end up striped. A box spans the whole session and keeps a single color that is corrected on every bar. Box extend only works on the time axis, so the vertical coverage comes from the box bounds: the highest high and lowest low of the loaded data, padded by 100x that range above and below. On the last bar every box is brought to the final bounds, so sessions drawn while less data was loaded get the same coverage.
Why not simply 1e17 / -1e17 : TradingView silently skips boxes whose bounds lie extremely far from the price scale (on an instrument near 85, bounds of +-1e8 still draw while +-1e9 do not). Such boxes exist - they show up in the object tree - but never render, so the highlight looks like it is not working at all.
█ 🏷️ THE CHANGE LABEL
The label is colored by the sign of the change and sits on a fully transparent background. Two checkboxes decide what it carries:
Show percent change (default on) - the change as a percent of the reference level, formatted as +0.84% / -1.12% (always signed, two decimals).
Show change in instrument currency (default off) - the change as a price difference ( close - reference level ), formatted with the symbol's tick precision ( format.mintick ) and suffixed with syminfo.currency , e.g. +12.50 USD . For symbols without a quote currency the suffix is omitted.
With both on the label reads +0.84% (+12.50 USD) ; with both off no label is drawn at all - only the line (and the optional highlight) remains. For a reference level at or below zero (possible on futures spreads) the percent is undefined - the label falls back to the price difference, and the up/down color always follows the sign of the difference, which stays meaningful at any price.
Percent position decides where it sits, and the choice applies the same way to completed sessions and to the ongoing one:
Behind the line (default) - anchored on its left edge ( label.style_label_left ), at the reference level, right of the line end, as if continuing the line.
Above the line - anchored at its bottom-right corner ( label.style_label_lower_right ), so the text sits over the end of the line and does not stick out past the session end.
Below the line - anchored at its top-right corner ( label.style_label_upper_right ), so the text hangs under the end of the line, again inside the session.
During the ongoing session the label follows the end of the line and updates on every bar; once the session ends it stays at the last bar with the final value.
█ 🛠️ KEY PARAMETERS
General
Reference level (default Previous session close) - Previous session close / Session open, described above.
Show percent change (default on) - percent of the reference level in the label.
Show change in instrument currency (default off) - price difference in the instrument currency in the label.
Appearance
Up color (default #26A69A ) - line and label color when the session is up.
Down color (default #EF5350 ) - line and label color when the session is down.
Line style (default Solid) - Solid / Dashed / Dotted.
Line width (default 1) - range 1 - 4 .
Text size (default Small) - Auto / Tiny / Small / Normal / Large.
Percent position (default Behind the line) - Above the line / Below the line / Behind the line, described above.
Session highlight
Highlight the whole session (default on) - fills the entire session with a single color, decided by where the price stands against the reference level.
Highlight up color (default #26A69A at 90% transparency) .
Highlight down color (default #EF5350 at 90% transparency) .
█ 📈 HOW TO READ IT
The line is a reference level, not a signal. Trading above it means buyers have controlled the day so far; below it, sellers have.
Reclaims and rejections at the line are the interesting part - price returning to the level and being pushed away often marks who is defending the day.
With the previous-session-close reference (default) the line doubles as the gap-fill level : a session that opens with a gap and later crosses the line has closed that gap.
The label value gives an instant sense of the session's magnitude without measuring anything by hand, and the sign color makes a flip visible at a glance. The percent is comparable across instruments; the currency difference maps directly to points or ticks on the symbol you trade.
With the session highlight on , a screen full of alternating green and red blocks makes runs of consecutive up or down sessions obvious.
█ 🔔 ALERTS
Cross above the reference level - the price crossed the current session's line from below.
Cross below the reference level - the price crossed the current session's line from above.
Those are exactly the reclaim/rejection moments described above (with the default reference: the gap-fill / day-flip moments). The first bar of a session - where the line jumps to the new reference - never fires either alert. Crosses are evaluated on close , so on the live candle a cross can appear and un-cross before the candle closes; set the alert trigger to Once Per Bar Close if you only want confirmed crosses.
█ 📤 HIDDEN SERIES
The script exposes two hidden series, visible in the Data Window and usable as an external source in other indicators and strategies (any input.source field):
Reference level - the level the line sits at: the previous session's close (default) or the session open.
Session change % - the session change as a percent of the reference level.
█ ⛔ LIMITATIONS
Intraday timeframes only. On D and above every bar is its own session, so the script draws nothing and instead shows a hint table in the top-right corner: Session Open Line: the indicator works on intraday timeframes .
Drawing objects are capped at 500 lines, 500 labels, and 500 boxes - older sessions drop off the left side of the chart.
Both values are computed from close against the reference level, so during the ongoing session they move with every tick and only become final at the session close.
The first session in the loaded history starts at the first loaded bar, which is not necessarily the true session start. With the default reference (previous session close) it has no prior close at all, so it draws nothing; with the session-open reference its "open" (and therefore its change) can be off. Every later session is exact.
© Piotr Kowalski "piecioshka". License: Mozilla Public License 2.0. مؤشر

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 - ألوان وسماكات وطول الخطوط وعدد المجموعات
كلام لازم يتقال
المؤشر يعطيك مستويات، مو إشارات دخول وخروج. يرسم كل دورة سواء السوق
ترند أو عرضي، وما فيه فلتر يقول لك ادخل الحين. استخدمه مع قراءتك أنت
للسوق.
وهذا مو توصية شراء ولا بيع. جربه على أدواتك وفريماتك قبل لا تعتمد عليه بصفقاتك. مؤشر

AM - 7h Session CandlesVersion 2.0.0
This is a major version because two defaults changed, so the tool behaves differently out of the box than v1.0.0 did.
NEW: SESSION BOUNDARY LINES
• Vertical lines on the real price bars showing where each 7-hour bucket starts, so it is obvious which stretch of chart each drawn candle is made of: the daily open (A starts), plus 7 hours (L starts), plus 14 hours (N starts), and where N ends.
• They cover exactly the buckets the strip is showing and no more, so raising "Sessions back" extends the lines along with the candles. There is no second control that can fall out of step with the first.
• The times come from the same daily-open arithmetic that decides which minute belongs to which bucket, never from a fixed clock, so a line cannot drift away from the candle it marks on any symbol or across a daylight saving change.
• Drawn on 1 hour charts and below only. Above that a 7-hour boundary falls too far inside a single bar for the line to mark anything useful. The candles themselves are unaffected on every timeframe.
• Own input group: show, colour, style and thickness. Drawn light grey at a fixed 25 percent opacity, so a boundary reads as a reference mark rather than competing with the price action.
CHANGED DEFAULT: THE 3 HOUR OVERNIGHT STUB IS NOW PART OF N
• New "NY 7h Candle Data Composition" dropdown. The new default, "NY plus 3h Overnight Stub", folds the last three hours of the day into the same N candle, so N runs from hour 14 to the end of the day and nothing is discarded.
• Why: dropping those hours left three hours of price action in no candle at all, so one day's N closed and the next day's A opened with a hole between them that nothing on the strip accounted for. Including them gives an unbroken day, with every minute in some candle and the bodies joining up.
• What it costs, stated plainly: a 10-hour N is no longer TradingView's own 7-hour bar, and it is no longer the three-equal-block model this tool credits to AMTrades. Choose "NY 7h Candle" to restore both. That setting is exactly what v1.0.0 shipped as.
• The letter stays N either way and no fourth candle ever appears. Only N's high, low and close can move, and it keeps updating for three hours longer than before. Where a day never reaches hour 21 at all, a short regular session for instance, there is no stub and the setting has no effect.
REMOVED: VERTICAL POSITION
• The "Vertical Position" input and its "Centred on Current Price" mode are gone. The strip now always sits at true prices, so a session high or low reads straight across to where that level falls in the price action.
• Why: centred mode added a constant to every drawn price and recomputed it on every tick, so the whole strip slid up and down as price moved and the completed A, L and N candles looked as though they were still forming. It was the default, so that was the out of the box behaviour.
• If you had already selected "Relative Position", your strip is unchanged.
• The cost is that a wide strip is now counted by the chart's auto scale and can compress the price action. Pine cannot exempt an overlay drawing from the scale, so the levers are a lower "Sessions back" or turning auto scale off.
SETTINGS PANEL
• Every tooltip rewritten in short lines, with anything that is a list set out one item per line instead of running on as a paragraph. A settings dialog does not wrap a paragraph usefully and a long one arrived as a dense slab.
• Laid out one row per element rather than one control per line. The boundary lines are a single row: the toggle carrying the name, then the colour, the style, and the width. The three candle colours share a row, and Wick Width shares one with Label Size. Fifteen rows became six, and each field now sits against its own label instead of in the dialog's shared left aligned column.
• Both Opacity inputs are gone. The candles are fixed fully solid and the boundary lines fixed faint, each at exactly what its input used to default to, so a chart on the defaults looks the same as before. Two fewer controls to set.
SMALLER CHANGES
• Candle Width and Gap Between Candles are no longer inputs. They are fixed at 2 bars and 1 bar, down from the 6 and 3 v1.0.0 shipped with, for a tighter strip. The wick still sits on true centre because 2 is even. Offset From Last Bar is now the only layout control.
• The originator is now credited as AMTrades throughout, rather than "AM".
• Documented that Extended hours is not the same as 24 hours and what it contains depends on the feed. US equity extended hours are 04:00 to 20:00, which is 16 hours, so even with the setting correct N gets only the two hours left after A and L and is a 2-hour candle presented as a New York 7-hour one.
FEEDBACK
Please let me know if you experience any issues, or have feedback for improvements or additions in the comments below. Thank you, Tom مؤشر

NQ Psychological LevelsNQ Psychological Levels automatically plots the round-number price levels closest to the current market price.
The indicator organizes these levels into five tiers:
• 50-point levels
• 100-point levels
• 250-point levels
• 500-point levels
• 1000-point levels
Each tier can be customized independently, including its color, opacity, width, and line style.
Features:
• Automatically plots the nearest psychological levels
• Configurable number of displayed levels
• Independent styling for every level tier
• Optional price labels
• Left or right label placement
• Configurable candle offset from the current bar
• Above, center, or below text alignment
• Custom label size and color
• Optional alerts when price touches a major 250-point level, including 500 and 1000 levels
This indicator is primarily designed for NQ and related Nasdaq futures charts. It can help identify commonly observed round-number areas and keep charts organized without manually drawing and updating each level.
The indicator does not generate entries, exits, directional bias, or trading recommendations. It is intended only as a charting and market-observation tool.
مؤشر

Volume-Weighted Order Block Zones [BigBeluga]🔵 OVERVIEW
The Volume-Weighted Order Block Zones is an advanced technical indicator created by BigBeluga to identify and map institutional order blocks using pivot points and price displacement. Traditional order block indicators often highlight every single pivot zone, resulting in chart clutter and low-probability setups. In order to provide a solution to this problem, this indicator integrates volume-weighted strength calculations and ATR-based displacement triggers, ensuring that only high-momentum structural zones backed by significant volume are plotted.
The indicator aims to visualize institutional order-building and subsequent market expansions. The core element of its calculation involves tracking volume-weighted metrics against moving averages alongside a dynamic displacement formula defined as:
bearLevel = bearObHigh - atr * displacement
bullLevel = bullObLow + atr * displacement
where atr is the standard Average True Range of period 100, and displacement is the sensitivity multiplier. Higher values of displacement and minVolStrength allow the indicator to filter out weak market noise and focus exclusively on major institutional footprints.
🔵 FEATURES
The system utilizes a multi-layered matrix structure to provide actionable market intelligence:
1 — Swing & Volume-Weighted Detection Engine
Pivot Identification: Automatically tracks structural pivot highs and lows using a customizable swing length via pHigh = ta.pivothigh(high, swLen, swLen) and pLow = ta.pivotlow(low, swLen, swLen) .
Volume Strength Filtering: Calculates volume intensity percentages via f_getVolumeColor(vol, sma, baseColor) to filter out blocks falling below the minVolStrength threshold.
2 — Displacement Triggers & Order Block Mapping
Dynamic Trigger Lines: Projects live dashed trigger lines using line.new(bullObBar, bullLevel, bar_index, bullLevel, style=line.style_dashed) that extend dynamically until price achieves the required ATR displacement threshold.
Zone Visualization & Peak Labels: Plots high-precision order block boxes with volume percentage text alongside structural pivot high ( PH ) and pivot low ( PL ) labels.
3 — Active Zone Management & Retest Signals
Mitigation & Invalidation: Continuously monitors active zones inside the loop structure, automatically deleting order blocks when price breaches opposite boundaries or gets fully mitigated.
Retest Signals ( B / S ): Generates clear B (Bullish OB bounce) and S (Bearish OB rejection) signal labels when price retests active institutional zones.
🔵 HOW TO USE
Apart from the basic visualization of institutional market zones, this tool can also act in alternative ways to support decision-making:
Identify High-Volume Order Blocks: Look for newly formed order block boxes displaying strong volume percentages (e.g., above 20%+) to locate institutional liquidity entry points.
Manage Risk with Retest Labels: Monitor B and S retest signal labels to guide entries and manage stop losses as price interacts with active institutional zones.
🔵 NOTES
Why this implementation is unique:
It combines volume profile weighting directly with order block detection, filtering out low-volume traps automatically.
The dynamic live trigger line engine adapts seamlessly to real-time price action without cluttering historical chart data.
The script is fully optimized for Pine Script version 6, integrating robust array management var OB obBoxes = array.new() and dynamic box rendering for maximum performance.
مؤشر

BarrettFVG HTF Pivot Reaction Model**BarrettFVG HTF Pivot Reaction Model**
Higher-timeframe swing levels that have to **earn** their place before they can produce a signal. Rather than plotting every pivot high and low from a higher timeframe and treating them all as equally valid, this indicator tracks how price has actually behaved at each level and only qualifies the ones price has demonstrably reacted to.
---
### The core idea
Most multi-timeframe S/R tools draw every HTF pivot as a level. The problem is that a swing high is just a price where the market happened to turn once — and one turn doesn't make an area meaningful. Some of those levels get respected repeatedly; most get cut straight through and never mattered.
This indicator separates the two by observation rather than assumption. Every 1H, 30m, and 15m pivot is tracked from the moment it forms, but it starts as a **Potential Level** — visible, monitored, and unable to produce any signal. It only becomes a qualified level once price has come back and genuinely reacted at it.
A **reaction** is defined mechanically:
1. Price enters the level's tolerance band
2. Price then moves away from it — in the direction the level should push it (down from a resistance, up from a support)
3. That move reaches a configurable distance, measured in multiples of the higher timeframe's ATR
Direction is enforced deliberately. A candle spiking straight through a level covers plenty of distance, but that's the opposite of respecting it, so only movement on the correct side counts. A sharp rejection and a slow stall-then-drift-away both qualify, as long as price eventually clears the required distance within the reaction window.
Each level displays its running reaction count, so you can see exactly how many times price has responded there.
---
### Levels
- **Three source timeframes**: 1H, 30m, and 15m by default, each individually toggleable and configurable
- **Automatic merging**: pivots from different timeframes landing within the same tolerance band become one level tagged with all of its sources (`15m+30m+1H`), keeping the accumulated reaction history rather than double-counting
- **Extended across the chart**: levels run in both directions, so a level formed days ago stays visible as a flat reference — a level is a price that stays relevant, not a segment tied to when it formed
- **Proximity display**: only the closest levels to current price are drawn, so the chart shows what's in play rather than every level in history
- **Two display modes**: a clean midpoint line, or the full tolerance band shown as a zone box so you can see exactly what the logic is using
**Timeframe consistency:** all sizing, ageing, and reaction timing is anchored to the higher timeframe's ATR and to real clock time rather than to chart bars. This means the same levels appear whether you're on a 1-minute chart or a 15-minute one. A bar-based implementation would silently produce different level sets on different chart timeframes from identical source data.
---
### Entry model
Two paths, both requiring a Break of Structure to fire:
**1 — TAP**
Price reaches a qualified level, taps it or slightly overshoots within a configurable tolerance, then breaks structure in the reversal direction. The overshoot allowance is what separates a tap from a break; beyond it, the level is treated as broken and only the reclaim path remains available.
**2 — RECLAIM (break and retest)**
Price breaks through the level, **builds structure on the far side**, then returns to the level and breaks structure back in the reversal direction.
The far-side structure requirement is the important part. A break only counts as significant once a confirmed swing forms beyond the level — for a broken resistance, that means a swing low printing above it, showing price pulled back up there and held. This is deliberately a *structural* test rather than a candle-size threshold: a single large wick through a level doesn't qualify, while a slow grind that builds a genuine swing does.
Both paths then wait for the same Break of Structure confirmation within a configurable bar window, using independent pivot tracking rather than the level's own geometry — so the confirmation is a real structural event, not a restatement of the level that armed it.
**Level flipping:** when a reclaim confirms, the level inverts its polarity. A resistance that price broke above and then held as support becomes a support level, marked with a flip indicator. This changes its behaviour, not just its appearance — future taps arm the correct direction from that point on.
---
### Signals and alerts
Entry markers plot as directional arrows on the confirming candle, with a dotted line showing the swing that broke to produce the BOS — anchored at the swing's actual formation bar so it points at the structure it's referencing.
Alerts carry the full context of what fired:
`MNQ1! — LONG RECLAIM | 1H+15m level @ 29,437.75 | 3 reactions`
Which entry path fired, which timeframes formed the level, the level's price, and how many times price has reacted there.
Signals are restricted to configurable trading session windows, with a cooldown preventing repeated same-direction entries off a single move.
**This indicator does not plot stop-loss or take-profit levels.** It identifies levels and signals entries; risk placement is left to the trader.
---
### Settings
Grouped by how often you'd change them:
1. **HTF Levels** — source timeframes, pivot length, band width, storage limits, level age
2. **Reaction Qualification** — minimum reactions, move-away distance, reaction window
3. **Entry Model** — path toggles, BOS pivot length and window, overshoot tolerance, cooldown
4. **Reclaim Structure** — far-side pivot length, retest window
5. **Sessions** — trading windows
6. **Display** — level visibility, colours, markers, labels
Every input has a tooltip explaining what it does and how it interacts with the rest.
---
### Notes on defaults
Defaults are **starting points, not optimised values.** They have not been backtested or tuned for any particular instrument or timeframe. The reaction distance, band width, and BOS window in particular will likely need adjusting for whatever you trade — start with Potential Levels visible so you can see what's being tracked and how quickly levels accumulate reactions before tightening anything.
Because reactions are earned through observed price behaviour rather than assumed from pivot geometry, levels start unqualified and accumulate history as the chart loads. Expect fewer qualified levels near the left edge of a freshly-loaded chart.
---
## Disclaimer
*This script is provided for educational and informational purposes only. It does not constitute financial, investment, or trading advice, nor a recommendation or solicitation to buy or sell any financial instrument.*
*Trading futures, forex, stocks, cryptocurrencies, and other leveraged instruments carries a substantial risk of loss and is not suitable for every investor. You may lose some or all of your invested capital, and with leveraged products you can lose more than your initial deposit. You should not trade with money you cannot afford to lose.*
*No indicator, system, or method can predict future price movement. The signals produced by this script are pattern-based observations derived from historical price data — they describe what has already happened, not what will happen next. Levels identified as "qualified" have met a mechanical definition of prior reaction; this does not imply price will react at them again.*
*Past performance, backtested results, hypothetical results, and historical signals are not indicative of future results. Backtested and hypothetical performance carries inherent limitations, including the benefit of hindsight and the absence of real execution factors such as slippage, spread, commissions, liquidity constraints, and the psychological pressures of live trading.*
*The default settings included with this script are unoptimised starting points. They have not been tuned or validated for any specific market, timeframe, account size, or risk tolerance. Test thoroughly on historical data and in simulation before considering any use with real capital.*
*This script does not plot or calculate stop-loss or take-profit levels. Position sizing, risk management, and trade management decisions are entirely the responsibility of the user.*
*You are solely responsible for your own trading decisions and for any outcomes resulting from them. The author makes no representations or warranties as to the accuracy, completeness, or suitability of this script for any purpose, and accepts no liability whatsoever for any losses, damages, or costs incurred through its use.*
مؤشر

Liquidity Ladder+ (M1D)OVERVIEW
MTF Liquidity Ladder maps where resting orders sit above and below price, read from six timeframes at once — 1H, 4H, 7H, 1D, 3D and 1W — and draws only the closest few from each. Nothing else goes on the chart.
A level here is a SWING: a candle whose high dominated the candles either side of it on its own timeframe. That high is where buy stops rest, so it is buyside liquidity (BSL). A swing low is where sell stops rest, so it is sellside liquidity (SSL). A level comes off the chart the moment price trades through it, because liquidity that has been taken is not liquidity any more.
Every line is black and solid, because a pool carries no direction — it is neither bullish nor bearish, it is simply somewhere price may go to fill orders, and colouring it would imply a bias the level does not hold. Weight is the only ranking: the weekly is the widest line on the chart and the hourly the thinnest, so you know which timeframe a level belongs to before you have read its name.
Everything is evaluated on bar close. Confirmed levels do not repaint.
WHAT IT PLOTS
Swing levels from six timeframes. Buyside (swing highs) above price and sellside (swing lows) below it, for 1H, 4H, 7H, 1D, 3D and 1W. Each timeframe has its own on/off switch, its own line weight and its own right-hand runway.
Only the closest 1-10 per timeframe, per side. A pool forty handles away is not a decision you are about to make, and it costs exactly as much ink as the one you are. The default is two per timeframe per side. Levels further out stay tracked and appear the moment a nearer one is taken.
One label per level, at the right end of its own line. The name sits level with the price, no box behind it, in monospace. The line's right edge and the label's x are the same number used twice, so a name can never end up somewhere its line is not.
Six label columns. Each timeframe stops at its own distance past the live candle — by default 4, 7, 10, 15, 17 and 20 bars from 1H up to 1W — and parks its name there. The families land in six columns instead of contesting one patch of screen, and the column itself tells you the rank.
Dates on daily and above, prices on 4H and above. A daily or weekly level is worth dating, because which day made it changes what it means: the label reads 1D 19/07. An hourly level carries the tag alone. From 4H up, the label also carries the price, since a pool that size is one you plan around.
WHAT SEPARATES IT FROM A PREVIOUS-HIGH / PREVIOUS-LOW SCRIPT
Levels that share a price become ONE level. Two swings resting within a few ticks of each other are one pool, not two. Drawn separately they produce two lines at the same height and two names fighting for the same space. Here they merge into a single line in the senior timeframe's column, at its weight, carrying every tag that sits there — 4H·1H. A candidate is tested against the whole group's envelope rather than just its first member, so a chain of near-misses cannot walk a group away from where it started. Never two names for one price, and never a name nudged off the level it belongs to.
Lines anchor to the exact bar that made the swing. A higher-timeframe pivot only knows which CANDLE made it. Anchor the line at that candle's open and a 4H level begins up to four hours to the left of the high it is named after — visibly adrift from the swing it describes. This script follows each timeframe's candle as it forms, records the exact chart bar its high and its low printed on, and anchors there instead. The date in the label names that same bar. A level older than the chart's loaded history has no bar to anchor to; it falls back to the candle's open, and its origin is off the left edge regardless.
A distance gate, because lines pull the price scale. A weekly pool six hundred points away on a one-minute chart does not sit quietly off-screen. The pane stretches to include it and every candle you were actually reading is flattened into a band. With six timeframes drawing at once that is a chart you cannot trade from. So nothing draws further from price than a multiple of the recent range — the last 300 bars, high to low, which tracks the instrument and the chart timeframe on its own. It gates DRAWING only: the level stays tracked, stays swept, stays alerted, and reappears as soon as price comes back within reach.
SETTINGS
Timeframes
One row per timeframe: draw it, how many bars past the live candle it runs, and how heavy its line is. Defaults 1H 4/1, 4H 7/1, 7H 10/1, 1D 15/2, 3D 17/2, 1W 20/3.
The weekly is always the heaviest line and never thinner than 2. If another timeframe is set wider, the weekly is lifted to match rather than the other being cut — no setting is discarded, but the hierarchy holds.
A timeframe hides itself when the chart timeframe reaches or passes it. A 1H level on a 4H chart is not a level, it is the bar you are standing on.
Levels
Levels per timeframe: 1-10, default 2.
Buyside and Sellside toggles, both on.
Swing strength — bars either side a candle must dominate to count as a swing, default 3.
Merge tolerance in ticks, default 4. Zero merges only prices that match exactly.
Distance gate, as a multiple of the recent range, default 1.5. Zero switches it off.
Labels
Text size, default small.
Date on 1D, 3D and 1W labels, on.
The words BSL and SSL, off by default — a level above price is Buyside and one below is Sellside, so the words repeat what the chart already says.
Price: Off, 4H and above (default), or Every level.
Alerts
Announce a sweep from this timeframe up, default 4H.
ALERTS
Sweeps below the chosen floor stay silent. A 1H pool gets tickled all session, and an alert on every one is an alert you stop reading.
A dynamic alert, at most one per bar, naming the most senior pool taken and the price it went at — for example: 4H BSL taken · 29750.00 · MNQ1!. To use it, choose "Any alert() function call" in the alert dialog.
Two fixed conditions, BSL taken and SSL taken, for anyone who prefers a plain trigger. Both respect the same floor.
NOTES
Dates are read in New York time on every instrument. An exchange's own timezone would date a CME swing in Chicago, putting a late-evening level on a different day to the rest of a New-York-based workflow.
Toggles and the distance gate affect drawing only. Detection keeps running underneath, so tidying the chart never quietly loses the analysis behind it.
Line and label objects are created once and reused rather than deleted and rebuilt each bar, so the chart does not flicker as price moves between levels.
Six request.security() calls, one per timeframe, all with lookahead off.
Disclaimer
This is an analysis tool. It marks where liquidity rests and when it is taken; it does not generate entries, exits or signals, and it makes no claim about what price will do next. مؤشر

Reaction Weighted Support Resistance [Pineify]Reaction Weighted Support Resistance
Overview
Builds ATR-scaled support and resistance zones from confirmed swing pivots. Opacity encodes decayed completed reactions and bounded relative-volume context. It organizes chart evidence without forecasting price or performance.
Problem Definition
A common baseline draws one line per pivot and adds strength for every return. It scores shallow drift and decisive rejection equally, while old tests can dominate after conditions change. The map becomes crowded, and counts do not explain what happened after contact. The required invariant is a bounded set of areas weighted by subsequent displacement, participation context, and recency without assuming repetition.
Design Rationale
Confirmed pivots replace immediate extrema; zones begin at confirmation, not at the earlier swing bar. ATR width replaces fixed ticks, but geometry is frozen from known volatility. Nearby same-side zones merge only under a height cap. Touch count was rejected: entry opens a finite window, favorable movement is normalized by touch-time ATR, and bounded volume adjusts credibility without claiming directional flow. Decay fades stale reactions. The tradeoff is lag in exchange for auditable path memory.
Key Features
Confirmed pivot zones with ATR geometry.
Completed reaction scoring, volume context, and half-life decay.
Width-limited merging and bounded zone capacity.
Close invalidation, strength opacity, optional visuals, dashboard, and alerts.
How It Works
The engine reads chart OHLC, ATR, and average volume. Confirmed pivot lows create support and highs create resistance. Width is a fraction of pivot-time ATR; signals are not shifted backward.
A same-side candidate merges only below the height limit. Its center is score-weighted, so weak evidence cannot freely drag an established zone. Otherwise it is added; capacity removes the weakest.
A completed entry after cooldown stores ATR and bounded volume credibility, then tracks the best favorable extreme. Support measures upward displacement; resistance measures downward displacement. The result is floored at zero, ATR-normalized, capped, and volume-weighted. Missing volume uses a neutral fallback.
Each completed bar applies half-life decay; a saturating transform maps score to opacity. A close beyond the zone and ATR buffer invalidates it. Warm-up needs ATR, optional volume average, and pivot confirmation. Unclosed bars do not mutate state or fire alerts.
How Multiple Indicators Work Together
The components form one chain: pivots supply location, ATR supplies scale, the path window separates reaction from touch, volume changes confidence, decay tests recency, and invalidation bounds life. Without the window this becomes touch counting; without decay old history dominates; without ATR markets lose comparable units. The boxes expose the combined state rather than stacking unrelated signals.
Trading Ideas and Insights
Compare areas instead of assuming they will hold. Opaque support means prior completed visits produced larger, more recent upward reactions under this model; resistance is symmetric. Observe approach, overlap, departure, and confirmed failure. Entry alerts focus review above the strength threshold, while invalidation ends stored context. They do not define direction, size, execution, return, or reversal probability.
Unique Aspects
Each touch creates a bounded episode whose later displacement, touch-time volatility, volume credibility, and age update one state. Merging is score-weighted and width-limited. Teal and rose encode role, opacity encodes strength, amber marks failure, and the dashboard exposes scores and evaluated touches. This is an independent implementation; retrieved descriptions defined only the baseline, and no source code was reused.
How to Use
Choose pivot lengths for the intended swing horizon.
Set width and merge limits so boxes remain useful areas.
Read opacity with score and evaluated touches; faint zones have little evidence.
Use alerts as review prompts with separate execution and risk rules.
Review several market regimes before using the context.
Customization
Short pivot windows create more candidates; long windows are selective and slower. Width and merge controls set geometry. The evaluation window favors immediate or slower reactions. Half-life controls memory, not signal speed. The invalidation buffer sets tolerated close penetration. Volume length changes its baseline; alert strength changes qualification. Secondary markers, bar colors, and dashboard can be disabled.
Assumptions and Limitations
Pivots are delayed. ATR gaps can distort geometry. Forex or synthetic feeds may supply tick volume or no usable series, so fallback removes participation discrimination. Favorable extremes summarize path outcome, not order flow, causality, liquidity, or execution. Results depend on settings; capacity can evict weak areas. Close invalidation can lag gaps, while intrabar penetration is insufficient. The model does not predict bounces, trade, model costs, or establish profitability. Non-standard and illiquid charts need separate review.
Conclusion
Prominence depends on completed, volatility-normalized reactions, bounded volume context, and recency. Evidence fades, geometry stays controlled, and confirmed invalidation ends the zone. Historical reaction remains inspectable context, not certainty.
مؤشر

Previous Day, Week & Month Levels [ITA]🟠 OVERVIEW
Previous Day, Week & Month Levels plots the high and low of each completed higher timeframe period and keeps them on the chart until price trades through them. Once a level is taken, it fades to grey instead of disappearing, so the chart separates liquidity that is still resting from liquidity that has already been collected.
The indicator covers daily, weekly and monthly periods independently, with optional midpoints for each range. This lets an intraday trader run daily levels alone, or stack all three groups to see how short-term and higher timeframe references line up.
🟠 CONCEPTS
* Previous Level - The high or low of the last completed daily, weekly or monthly candle, pulled from the higher timeframe regardless of the chart timeframe in use.
* Untaken Level - A level that price has not traded through since its period closed. Drawn at full opacity because the orders resting behind it are still there.
* Taken Level - A level that price has traded through during the current period. Recolored grey to show the liquidity has been collected and the level has lost its role as a target.
* Level Reset - Each group tracks its own taken state and resets when a new period begins. Daily flags clear every session while weekly and monthly flags run on their own cycles.
* Midpoint - The 50% level of a previous range, marking the equilibrium of that period rather than its extremes.
🟠 FEATURES
* Multi-Period Levels - Plots previous day, week and month highs and lows, each group toggleable on its own.
* Taken Level Fading - Automatically recolors any level that price trades through, leaving untouched levels highlighted.
* Optional Midpoints - Adds the 50% level of each enabled range for equilibrium reference.
* Level Labels - Tags each line with its name on the right edge of the chart, with configurable size.
* Level Alerts - Fires when price trades above a previous high or below a previous low.
🟠 HOW TO USE
* Run daily levels alone for intraday work, or enable weekly and monthly for a broader structural view.
* Treat bright levels as unfinished business and faded levels as history. What stays highlighted is where liquidity has not yet been taken.
* Watch for clusters where a daily level sits close to a weekly one. A single move that clears both tends to produce a sharper reaction than clearing either alone.
* Use midpoints as a filter. Price rotating around the midpoint of the previous day often points to balance rather than direction.
* Adjust Extend Right if the levels project too far past the current candle or stop short of it.
🟠 CONCLUSION
Previous Day, Week & Month Levels combines multi-period reference levels with automatic tracking of which levels have already been traded through. Instead of showing every level identically, it separates active liquidity from collected liquidity, giving traders a clear view of which reference points are still relevant to the current session. مؤشر

Squeeze Pro [StrixEDGE]📊 WHAT IT DOES
StrixEDGE Squeeze Pro detects when Bollinger Bands contract inside Keltner Channels — a condition known as the "squeeze" — indicating extremely low volatility that typically precedes explosive moves. It measures squeeze intensity across three levels and uses MACD momentum to predict the breakout direction.
🔬 WHY IT'S DIFFERENT
Standard squeeze indicators show only ON/OFF. This version introduces three intensity levels: the tighter the Bollinger Bands compress inside Keltner Channels, the more powerful the expected breakout. Level 3 (extreme) squeezes historically produce the largest moves. Additionally, a real-time statistics table shows squeeze frequency, average duration, directional bias, and average post-squeeze move size for the current chart.
⚙️ HOW IT WORKS
The indicator calculates Bollinger Band width relative to Keltner Channel width. When BB fits inside KC, a squeeze is active. The ratio between their widths determines intensity:
• Level 1 (yellow dots): Light compression, ratio 0.8-1.0
• Level 2 (orange dots): Medium compression, ratio 0.5-0.8
• Level 3 (red dots): Extreme compression, ratio below 0.5
A four-color MACD momentum histogram shows breakout direction:
• Dark green = bullish accelerating, Light green = bullish fading
• Light red = bearish fading, Dark red = bearish accelerating
📈 HOW TO USE
• Wait for red/orange squeeze dots (Level 2-3) to accumulate
• When dots turn green (squeeze fires), enter in the histogram's direction
• Dark green histogram bars after squeeze = LONG entry
• Dark red histogram bars after squeeze = SHORT entry
• Level 3 squeezes produce the most reliable and powerful breakouts
• Use the stats table to understand squeeze behavior on your specific chart/timeframe
🎛️ INPUTS & DEFAULTS
BB: 20 period, 2.0 multiplier | KC: 20 period, 1.5 multiplier
MACD: 12/26/9 | Stats Lookback: 200 bars
All fully customizable.
═══════════════════════════════════════════════════════
🔧 CUSTOMIZATION
All parameters are fully adjustable through the indicator settings panel. Inputs are grouped logically:
• ⚙️ Core Parameters — main calculation settings
• 📊 Table Settings — table size (Tiny to Huge), position (4 corners), visibility toggle
• 🎨 Visual Settings — colors, show/hide elements
• 🔔 Alert Settings — threshold values for notifications
📊 DATA TABLE
A built-in data table displays all key metrics in real-time. Adjust the table size from Tiny to Huge to match your chart layout. Position it in any corner. Toggle visibility on/off.
🔔 ALERTS
Pre-built alert conditions for all major signals. Set up alerts via TradingView's alert dialog — select this indicator and choose from the available conditions.
⏱️ RECOMMENDED TIMEFRAMES
Works on all timeframes. Recommended: 1H, 4H, Daily for best signal quality. Lower timeframes produce more signals but with higher noise. Weekly/Monthly for position trading context.
✅ COMPLIANCE
• No repainting — all signals based on confirmed bar close data
• No future data references
• Open-source code — verify the logic yourself
⚠️ DISCLAIMER
This indicator is a technical analysis tool, not financial advice. It does not predict future price movements. Past patterns and signals do not guarantee future results. Trading involves substantial risk of loss. Always use proper risk management, including stop losses and appropriate position sizing. Never risk more than you can afford to lose. مؤشر

Daily ATR Projection [EDGE]Daily ATR Projection .
Projects the previous daily close plus and minus 0.5 and 1.0 ATR(D) as five horizontal levels on the current chart, and shows the same levels together with a live ATR% amplitude reading in a compact dashboard. Built for intraday traders who want a fixed, non-repainting map of how much room the day still has before the session has statistically exhausted its average range.
How it works:
The indicator requests the previous completed daily bar via request.security(sym, "D", [close , atr_expr ], lookahead = barmerge.lookahead_on). The two values it pulls — previous daily close and previous daily ATR — are always finalised bar data, so the projection never repaints during the intraday session. From those two numbers it computes four projected levels: previous close plus and minus 0.5 x ATR(D) and plus and minus 1.0 x ATR(D). The fifth line is the previous daily close itself.
On every last bar the five levels are (re)anchored using xloc.bar_time so they extend the requested number of bars to the right of the current bar, without being clipped by empty space in the chart layout. When the smoothing method is changed the ATR expression is recomputed inside a single helper so RMA, SMA, EMA and WMA all share the same request.security call.
What it calculates:
- Prev Close — previous daily close, drawn as the middle reference line.
- +100% — previous close + 1.0 x ATR(D), the upper edge of the expected daily range.
- +50% — previous close + 0.5 x ATR(D), the mid upside marker.
- -50% — previous close - 0.5 x ATR(D), the mid downside marker.
- -100% — previous close - 1.0 x ATR(D), the lower edge of the expected daily range.
- 1 ATR, % — the previous daily ATR expressed as a percentage of the previous daily close, i.e. today's average expected amplitude.
- Distance-to-price row — signed distance from each of the four ATR levels to the current close, so the trader can see how much of the daily potential is still available in each direction.
Key features:
- Non-repainting daily ATR — data is pulled from the previous completed D1 bar; intraday bars never see values that have not been finalised.
- Adjustable smoothing — RMA (Wilder), SMA, EMA or WMA on the daily True Range.
- ATR multiplier — 1.0 keeps the classic envelope, 0.5-2.0 for tighter or wider projections.
- Right-extension control — line reach is configured in bars of the current timeframe, so the levels stay visible on any chart scale.
- Toggle for the middle line — turn off the previous daily close if a separate PDC indicator is already loaded.
- Compact dashboard with six anchor positions (top / bottom / middle, left / centre / right) and four text sizes.
- Two-row value grid — absolute level values on one row, signed distance to current close on the row below.
- Live 1 x ATR(D) amplitude reading with an inline tooltip mapping the reading to volatility regimes (low / normal / elevated / extreme).
- Meaning-encoded colour scale — deep green and deep red for the outer plus / minus 100% boundaries, softer green and red for plus / minus 50%, neutral grey for the previous close. Every colour is exposed as input.color and can be overridden.
- All input labels, tooltips and dashboard captions in English.
Who it's for:
Intraday and short-horizon swing traders who plan entries against the previous daily close and want a fixed, statistically grounded map of the day's realistic upside and downside potential. Useful for session-based playbooks (open, mid-day, close), for measuring how much of the average day has already been printed before committing to a continuation trade, and as a discipline overlay for fade traders who prefer to avoid taking reversal setups after price has already consumed the full daily amplitude. مؤشر

Previous Day Key Levels# Previous Day Key Levels
Previous Day Key Levels automatically plots the key reference points I use to frame each trading day:
* Previous RTH High and Low
* Asia High and Low
* London High and Low
The indicator is designed to work on an RTH chart while still calculating the Asia and London ranges from extended-hours data. Each level is drawn as a clean horizontal reference with a named label and a matching price marker on the right axis.
## How to use it
These levels help organize the market into clear areas of potential reaction, acceptance, rejection, breakout, or failed breakout.
Previous Day High and Low are especially useful as major reference points for the current RTH session. Price holding above or below them can support a directional thesis, while tests and rejections can highlight potential reversals or rotational conditions.
Asia and London Highs/Lows provide additional intraday structure before and during New York trading. They can act as liquidity targets, breakout points, or areas where an early New York move may stall, reverse, or accelerate.
The Asia range updates when the Asia session ends, and the London range updates when London ends. Previous Day High/Low refresh for the next RTH session.
## Pairing with Volume Profile
This indicator is intended as a supporting structure tool—not a standalone entry signal.
For a fuller market read, pair it with a Volume Profile indicator that provides:
* POC: the session’s highest-volume price area
* VAH: Value Area High
* VAL: Value Area Low
When a key session level overlaps with POC, VAH, or VAL, that confluence can make the area more meaningful. For example:
* A Previous Day High near VAH may act as a more significant resistance or breakout-acceptance area.
* A Previous Day Low near VAL may become a higher-quality support or breakdown-rejection zone.
* An Asia or London extreme aligning with POC can highlight a potential magnet, decision point, or support/resistance area.
Use the levels alongside price action, market context, and volume behavior. They are reference points—not guarantees—and are most useful for forming a structured trade idea and defining risk around meaningful market locations.
مؤشر

Volatility Corridor - Quantized Equilibrium LevelsMost range and channel tools slide. The midline is a moving average, so it moves on every bar, and the levels drawn from it move with it. That makes them fine as a trend read and close to useless as levels, because the level you looked at ten bars ago is no longer where you left it.
Volatility Corridor does the opposite. It holds still, and then it jumps.
HOW THE CORRIDOR IS BUILT
An equilibrium anchor sits at the centre of the corridor. Once placed, it is frozen. It does not drift, it does not smooth, it does not respond to anything at all until price closes more than one volatility step away from it.
When that happens, the anchor jumps by a whole number of steps in the direction of the breach, lands at the new location, re-measures its step size from ATR at that exact moment, and freezes again.
Three bands are drawn one step apart above the anchor and three below, giving seven horizontal levels: S3, S2, S1, EQ, R1, R2, R3. Because the anchor and the step are both frozen between jumps, every one of those levels is a genuine flat horizontal line for the entire life of the corridor. Across a chart the result is a staircase of stable shelves rather than a wave, and the jump bars are marked so the history of the structure is readable at a glance.
The quantization matters. The anchor moves by whole steps, never by fractions, so successive corridors line up on a common grid instead of drifting off it. When price returns to an area it traded weeks ago, the corridor tends to rebuild on the same shelves rather than near them.
WHAT IS ON THE CHART
Seven stepline levels, thickest at the equilibrium.
Six filled bands between them, darkening toward the outer edges, so the corridor reads instantly without inspecting a single number.
Candles tinted by their position inside the corridor, running from the lower colour at the bottom edge through neutral at equilibrium to the upper colour at the top.
Background tint whenever price is trading fully outside the corridor.
Price labels on every level at the right edge, in four selectable sizes.
Jump markers at the top and bottom of the pane showing every bar the corridor re-anchored, and in which direction.
SETUPS
Two setups are defined, and either can be switched off.
Reversion. Price has pushed into the outer band and closes back inside it while still on its own side of equilibrium. The stop is the far outer level, and the targets are the levels above: equilibrium first, then the next band, then the one after that. The reasoning is that a corridor that is holding will pull price back toward its centre, and the level structure already provides the map for that journey.
Breakout. Price closes fully beyond the outer level of the corridor. The stop is the first level back inside, and the targets are projected one, two and three steps beyond the corridor edge, on the same grid the corridor itself uses.
In both cases the stop and the targets are structural levels, not multiples of risk. Nothing is placed at an arbitrary distance. The stop is where the structure would be wrong, and the targets are the next shelves on the grid.
Only one setup is tracked at a time. A new signal cannot silently replace an unresolved one.
The panel keeps a record of whether the first target or the stop was reached first, and prints collecting rather than a percentage until the sample is large enough to mean anything. That number is a narrow measurement of one mechanical rule, not a backtest, and it says nothing about what a trader who moved a stop or scaled out would have achieved.
SETTINGS
Step Size is the one dial that matters. It sets the width of a single band in ATR terms, and therefore how far price must travel to force a jump. Larger values give wider, rarer, more significant corridors. Smaller values give a tighter grid that re-anchors often.
Volatility Length sets the ATR lookback used to measure a step at each anchor. Longer is more stable.
Everything else is cosmetic: fills, candle painting, label size, level thickness, background tint.
REPAINTING
The anchor, the step size, the jumps, the setups and the alerts all evaluate on confirmed bars only. A level that is drawn is final for the life of the corridor and is never moved retroactively. The script requests no higher timeframe data.
READING IT
Equilibrium is the fair value the corridor is currently defending. Price oscillating around it is a market with no directional decision.
The outer bands are where the current corridor stops being an adequate description of price. Price reaching them means one of two things is about to happen: it is rejected and the corridor holds, or it closes through and the whole structure jumps to a new shelf. Both are tradable and both have a setup defined for them.
A corridor that survives many bars is a market that has agreed on value. A rapid sequence of jumps in one direction is a trend, and the jump markers make that sequence obvious even when the candles do not.
This is an analysis tool, not financial advice, and not a trading system. The setups are two mechanically defined patterns, and no pattern has an edge on its own. Use it with your own risk management and position sizing. مؤشر

Previous Day / Week / Month Highs & LowsPrevious Day / Week / Month Highs & Lows.
A precision multi-period key-level tool that automatically draws previous-period highs and lows from the Daily, Weekly and Monthly timeframes — plus optional midpoints, an optional grid of psychological round-number levels around price, and a compact right-side info table with distance-to-price for every visible level. Built for intraday, scalping and swing traders who want a clean, opinionated read of the reference levels that institutional desks actually watch.
How it works:
The indicator pulls the previous completed candle from D, W and M via request.security and anchors each level line at the exact open time of that source bar — so a Weekly line starts on last week's Monday, not on the current week's first bar. Lines stay live and extend to the right through the chart's future offset area, so the reference points from yesterday, last week and last month are always visible on the current bar. The optional round-number grid re-anchors to price on every bar, so the closest N round levels above and below are always in view.
What it calculates:
- Previous Day High / Low + optional Midpoint (PDH, PDL, PD MID)
- Previous Week High / Low + optional Midpoint (PWH, PWL, PW MID)
- Previous Month High / Low + optional Midpoint (PMH, PML, PM MID)
- Psychological round-number grid centered on the current price, with adjustable step and count
- Live distance from the current close to every enabled level (in %)
Key features:
- Per-period visibility toggles: enable exactly the levels you use, hide everything else
- Configurable history depth — keep 1 to 20 previous daily / 1 to 12 weekly / 1 to 6 monthly sessions on the chart
- Auto-hide only when the chart timeframe strictly exceeds the level period: Daily levels stay on 1D, Weekly stay on 1W, Monthly never hide
- Lines anchored at the source bar (open time of the previous D/W/M candle), not at the first bar of the new period — you see the actual range the level came from
- Label anti-collision system: each label sits on its own horizontal slot in the right-offset area, with configurable Label Spacing — PDH / PWH / PMH texts never overlap even when their prices are close together
- Compact right-side info table with three columns (level name, price, +/- % distance to close), positioning across 6 chart corners, three text sizes, adjustable background transparency
- Three line styles (Solid / Dashed / Dotted) applied independently to main lines, midpoints and round levels
- Adjustable line width, label size and label visibility for a clean or a dense look
- Line extension modes: Right (default), Both, or None
- Fully customizable color per period — defaults follow a heat-scale palette (Daily = yellow, Weekly = orange, Monthly = red — nearest to furthest horizon)
- Round-number step tuned per asset class (BTC / ETH / FX / index / equities)
- Built-in alerts: PDH / PDL touched, same for weekly and monthly
- Auto-adapts to any instrument and any chart timeframe
Who it's for:
Intraday, scalping and swing traders — SMC / ICT, price-action, order-flow, or classical technicals — who want the exact levels institutional desks pin their orders around, cleanly drawn, without the visual noise of a dozen overlapping tools. مؤشر
