Absorption Shelf Dwell-Coil Reversal Levels█ OVERVIEW
Absorption Shelf finds reversal LEVELS the opposite way round from a pivot or a profile POC: it starts from TIME. A price band becomes a "shelf" because price DWELT there — an anomalous amount of occupation time — while its range COILED (volatility compressed). Only then do orthogonal order-flow lenses CONFIRM whether that shelf is genuinely ABSORBING flow rather than merely balancing, and a confirmed close back out of the band is treated as the reversal. It asserts no signal and no win-rate; it shows, honestly and past-only, how often price has actually rejected off these shelves versus a matched base rate.
█ HOW IT WORKS
Substrate — one lower-timeframe stream (request.security_lower_tf) supplies a per-bar buy/sell split (BVC-Normal / Tick / Geometry) for delta and signed order flow; it falls back to the chart bar when no intrabar data exists. The method in force is shown (REAL / EST).
Dwell field (the level generator) — a rolling, fixed-tick OCCUPATION-TIME map: each confirmed bar adds time to every price level its range covers, and the bar leaving the window subtracts it exactly (a reversible ring buffer). Levels at or above a self-set percentile κ are "hot"; adjacent hot levels merge into candidate BANDS.
Coil + containment (the stall trigger) — a band is promoted to an ACTIVE shelf only when compression (1 − ATRfast/ATRslow) clears a threshold AND enough recent closes sat inside the band. Dwell + coil together are what make a quiet band a shelf — this is the part a pivot- or profile-based level does not have.
Confirmation lenses (on the band only) — Effort-vs-Result √-law residual (E: heavy volume, little price result = absorption), localized Kyle-λ collapse (K: price barely moves per unit signed flow), Dwell-decay (D: the band has stopped accreting time = primed to release), Rejection-wick clustering (W: Wilson-floored), and CVD divergence (V). Each abstains cleanly on missing data.
Fusion — the active lenses combine by correlation-aware Bayesian log-odds: each is reliability-shrunk by its own past edge and Kish-decorrelated so the absorption family (E, K, D) contributes about one lens' worth, not three, then squashed to P_abs → BALANCE / ABSORBING / PRIMED. Shelves are down-weighted in strong trend (a built-in efficiency-ratio regime gauge, or a consumed external one).
Flip + lifecycle — a confirmed close out of the band against the approach is the reversal (a ▲ bullish or ▼ bearish flip, coloured by direction). Shelves carry a lifecycle: forming → active → flipped → spent → naked (kept until retested).
Reject calibration (honesty layer) — when price first touches an active shelf, the script forward-tests whether it REJECTS (turns back by k·ATR) BEFORE it CONTINUES through by k·ATR, versus the matched unconditional reject-vs-continue base rate: reject% (n, Wilson 95% lower bound) vs base% → edge, broken out by tag (does PRIMED out-reject ABSORBING out-reject BALANCE?), split in-sample / out-of-sample, and Bonferroni-deflated. Past-only, non-repaint.
█ HOW TO USE
Read the shelves as context, not as entries. A teal band below price is a support shelf (price is being held from below); a red band above is a resistance shelf. Brightness tracks how strongly the band was dwelt. The tag tells you what the flow says about it — BALANCE is just a quiet level, ABSORBING and PRIMED mean the lenses agree a wall is soaking flow there. A ▲/▼ flip marks where price actually closed back out of a shelf against its approach. The calibration line is the honest part: it tells you, on this symbol and timeframe, how often tagging a shelf has preceded a real rejection versus random — and shows nothing when the sample is small. A flat read with no active shelf is a genuine "no location here", not a broken one. The dashboard defaults to Compact (shelf, tag, dwell %, flip); switch it to Pro for the lens-by-lens glyphs and the calibration breakout. Horizon and holding are yours to decide; it emits no orders.
█ INPUTS
01 · Data & Trade-Side — LTF granularity, classifier, BVC sharpness.
02 · Dwell Field — ticks-per-level, dwell window, hot-level percentile κ, band merge gap, min band width.
03 · Coil & Stall — fast/slow ATR, minimum coil to promote, containment lookback / fraction / buffer.
04 · Confirmation Lenses — enable E / K / D / W / V and their sensitivities.
05 · Fusion — Kish decorrelation, self-set tag percentiles (absorbing / primed).
06 · Flip & Lifecycle — flip distance (×ATR), ghost retention, max shelves tracked.
07 · Regime & Self-Cal — trend down-weight (built-in efficiency ratio, or consume an external regime).
08 · Calibration — reject size (×ATR), horizon, Bonferroni, in/out-of-sample split.
09 · Microstructure Links (optional) — consume external Toxicity or Kyle λ; never recomputed.
10 · Display — bands, how far back to draw, badge, lens glyphs, flip markers, naked shelves, dwell heat spine, dashboard detail (Compact default / Pro).
11 · Style — Auto / Dark / Light theme.
12 · Exports — shelf levels, tag, P_abs, dwell percentile, coil, flip direction, naked levels, reject edge, active lenses.
█ HONESTY & LIMITATIONS
Descriptive, not predictive. Order-flow side is an OHLCV ESTIMATE (BVC / tick / geometry), not a Level-2 book; on symbols with no volume the flow lenses (E, K, V) abstain and the shelf runs on dwell + coil + wick alone, stated in the dashboard. Coil is measured chart-wide (ATR ratio) while containment is per band. The reject calibration is a past-only, first-touch two-barrier (reject-vs-continue) forward test against a matched base rate with a Wilson lower bound, tag buckets, an in/out-of-sample split and a Bonferroni deflation; a small sample is discounted automatically and no edge shown means honest, not broken. Non-repaint by construction: dwell and coil accrue on confirmed bars, shelves promote from confirmed history, the flip fires on a confirmed close, calibration events resolve only after the horizon, and the render recomputes once per confirmed bar. For runtime the script processes the most recent ~5000 bars and gates the calibration engine behind its own toggle. It prints no verdict and no win-rate.
█ ORIGINALITY
One coherent object: a reversal level whose EXISTENCE comes from occupation time plus volatility compression, with order flow demoted to confirmation on that band. This is deliberately distinct from a volume/footprint profile (those build the level from volume-at-price and fire sweeps event-by-event), from pivot- or kernel-based support/resistance (those build the level from swing geometry), and from a potential-well or mean-reversion model (those are price-dynamics with no time-at-price). The dwell-time + coil "absorption shelf" as the level generator, the dwell-decay lens that only this occupation field makes possible, and the correlation-aware fusion that explicitly discounts absorption-lens redundancy are the specific original contributions. Every block was written from scratch for this tool; the lenses feed one decision (is this band absorbing?) rather than being independent indicators stapled together.
█ CREDITS
Occupation-time / TPO at price — Steidlmayer / Market Profile. Price-impact λ (delta-response) — Kyle (1985). Square-root market-impact law — Almgren; Tóth, Bouchaud et al. Bulk Volume Classification — Easley, López de Prado & O'Hara. Trade-side tick rule — Lee & Ready (1991). Two-barrier / triple-barrier forward test — López de Prado. Wilson score interval — Wilson (1927). Design-effect / effective sample — Kish (1965). Code written from scratch; no external script reused.
This script is for analysis and education. It is not financial advice. Indikator

Indikator

ChartlingCHARTLING
A tiny market-aware companion that lives on your chart.
Every day, a new Chartling can hatch on your chart with its own permanent identity: appearance, rarity, name, personality, traits and quirks. As the market moves, it reads those conditions, reacts to them, and gets on with its own little life. It might study the chart, grab a coffee, read, exercise, nap, or watch the market through a telescope.
Chartling experiences the market with you.
DAILY HATCH
At a configurable hatch time and timezone, each day brings a new deterministic Chartling that grows through a small lifecycle:
EGG → HATCH → YOUNG → ADULT
The HUD shows its current age, and its look develops as it grows.
THE CATALOGUE
Chartling contains a deterministic catalogue of 999,999,999 creatures, IDs #000000001 to #999999999 .
Every valid ID permanently maps to one canonical Chartling: a unique three-part name, rarity, palette, head, tail, markings, core, personality, dominant traits and two quirks.
Enter the same ID again and you get the same canonical Chartling.
The ID is its permanent genetic address.
RARITY
Six deterministic tiers, shown in the HUD in each tier's color:
COMMON — 599,999,999
UNCOMMON — 250,000,000
RARE — 100,000,000
VERY RARE — 40,000,000
MYSTICAL — 9,000,000
LEGENDARY — 1,000,000
Higher tiers unlock rarer cosmetic gene pools, up to the Golden palette and Halo core at Legendary.
PERSONALITY & QUIRKS
Traits like curiosity, laziness, confidence and drama combine into archetypes such as QUANT, GREMLIN, LOAF, HOTSHOT and SCOUT.
Each Chartling also carries two permanent quirks — COFFEE, NAPPER, WATCHER, FIT and more — that influence its behavior, so a coffee-lover and a napper can live noticeably different days.
MARKET SENSE
Chartling reads the market through a Flow + Wave system and wears that information:
Flow becomes belly color — reflecting direction and strength around a smoothed market reference.
Wave becomes a small flag — green when price is above the Wave, red when below, and no flag when price overlaps it.
A configurable Trend Timeframe can drive the Wave.
When it is higher than the chart timeframe, Chartling uses confirmed higher-timeframe data. When it is equal to or lower, Chartling uses the chart timeframe.
Repeated Flow changes, sustained trends and choppy stretches feed a small market memory that shifts its mood over time.
TRADING WISDOM
On by default: 500 trading-psychology reflections covering risk, patience, discipline, FOMO, drawdowns and more.
A reflection is selected deterministically from each Chartling's ID.
Turn Trading Wisdom off for the more whimsical Chartling Lore .
Either way, the creature's canonical identity stays the same.
COLLECTING
Add IDs to your Keeper List to remember favorites.
Use Show Chartling # to summon any catalogue ID. A summoned Chartling keeps the current day's age and lifecycle while displaying that ID's permanent identity.
A private Trainer Code personalizes your daily hatch sequence. Using the same Trainer Code with the same market, hatch settings and day reproduces the same hatch.
HUD & LAYOUT
A five-line identity card shows:
Name / rarity
ID / age
Personality / traits / quirks
DNA / collection status
Trading Wisdom or Chartling Lore
The HUD adapts to light and dark chart themes, while the Chartling's name, ID and DNA retain its rarity color.
Chartling and the HUD can be positioned independently across eight chart locations.
Static Chartling pauses animation and Market Sense for a quieter collectible view.
HOW TO USE
Add Chartling and set your hatch time and timezone.
Optionally enter a Trainer Code for a repeatable daily hatch sequence.
Let it hatch and watch personality and market conditions shape its behavior.
Keep the ones you like and revisit any ID with Show Chartling #.
Chartling is an informational, educational and entertainment-oriented market companion. Flow, Wave, volatility, volume and range drive its visuals and behavior; Trading Wisdom offers general reflection.
Market interpretation, trade selection and risk decisions remain with you.
Every chart has a story. Every day has a new Chartling.
Chartling experiences the market with you. Indikator

Average RSI | TR🔍 OVERVIEW
The Average RSI is a next-generation momentum oscillator that goes beyond the standard Relative Strength Index. Instead of relying on a single timeframe, it calculates the RSI across three distinct daily cycles (1 Day, 2 Days, and 3 Days) and averages them into one smooth, highly responsive signal.
This multi-timeframe averaging drastically reduces market noise, filters out false divergences, and provides a holistic view of the short-to-medium term momentum structure. Combined with a dedicated dynamic moving average, it acts as both a trend filter and an early entry/exit system.
⚙️ HOW IT WORKS
1. RSI Computation:
The script calculates the classic RSI of your chosen source (default: Close) for the 1D, 2D, and 3D timeframes.
2. The Average (AVG_RSI):
It takes the arithmetic mean of these three values. This "composite RSI" is the core line you see plotted on the chart.
3. The Trend Filter (MA_AVG_RSI):
A fully customizable Moving Average (default: EMA, Length: 275) is applied to the AVG_RSI. This acts as the "Zero Line" of the indicator:
• AVG_RSI > MA_AVG_RSI → Bullish Bias
• AVG_RSI < MA_AVG_RSI → Bearish Bias
🎨 VISUAL FEATURES & SIGNALS
• Dynamic Trend Coloring:
The main line, candles, and chart background dynamically shift colors based on a normalized gradient of the AVG_RSI, making trend strength instantly recognizable.
• Smart Gradient Fills:
Ribbon Fill: The area between the AVG_RSI and its Moving Average is filled with the trend color. Its transparency adjusts automatically based on price momentum—more opaque during strong trends and faint during consolidation.
Overbought/Sold Zones: Gradient fills between the AVG_RSI and the 50-level are activated only when the AVG_RSI extends beyond the Moving Average. This unique logic prevents misleading extreme-zone signals during trend reversals.
• Entry/Exit Signals (Triangles):
LONG (⬆️): A green triangle appears below the bar when AVG_RSI crosses ABOVE the MA_AVG_RSI.
SHORT (⬇️): A red triangle appears above the bar when AVG_RSI crosses BELOW the MA_AVG_RSI.
• Heads-Up Display (HUD):
At the last bar, a large table displays the current market bias (Bullish/Bearish), and a floating label shows the precise AVG_RSI value.
🎛️ INPUT CONFIGURATIONS
• RSI Length: Adjust the sensitivity of the RSI calculation (Default: 44).
• Source: Choose the base source for the RSI (Default: Close).
• Moving Average Engine: Select from 12 different MA types, including EMA, SMA, WMA, HMA, DEMA, TEMA, TRIMA, FRAMA, SWMA, and T3 (with adjustable T3 Factor).
• MA Length: Set the smoothing period for the trend filter (Default: 275).
• Color Palettes: Choose from 9 distinct visual themes—Classic, Modern, Heat, Robust, Accented, Monochrome, Moderate, Aqua, or Cosmic—to match your charting style.
🚨 ALERTS
Built-in alert conditions are ready to use:
• LONG: Triggered on a Bullish crossover.
• SHORT: Triggered on a Bearish crossunder.
💡 BEST USE CASES
• Swing Trading: Identify shifts in mid-term momentum.
• Trend Confirmation: Use the MA filter to avoid entering trades against the dominant flow.
• Divergence Spotting: The smoothed nature of AVG_RSI makes chart patterns and divergences much clearer than with standard RSI.
📌 Note: This indicator works on any asset (Crypto, Forex, Stocks, Commodities) and any timeframe, as the underlying MTF logic is anchored to the daily RSI structure. Indikator

Adaptive MA Ribbon [StrixEDGE]📊 WHAT IT DOES
StrixEDGE Adaptive MA Ribbon plots three of the most advanced low-lag moving averages — Hull MA, Arnaud Legoux MA, and Kaufman Adaptive MA — with automatic period adjustment based on current volatility. A consensus score (0-6) instantly shows whether all three agree on trend direction.
🔬 WHY IT'S DIFFERENT
Traditional MA ribbons use fixed periods that work in one market condition and fail in another. This ribbon automatically shortens its period when volatility spikes (for faster reaction) and lengthens it when markets are calm (to avoid whipsaws). The three MAs used — HMA, ALMA, and KAMA — are specifically chosen because each adapts to the market differently, so their agreement carries more weight than three similar MAs agreeing.
⚙️ HOW IT WORKS
The volatility ratio (current ATR / 50-period average ATR) dynamically adjusts the base period. This adjusted period feeds into all three MAs simultaneously. The consensus score counts two things: how many MAs are below price (0-3 points) and how many are rising (0-3 points). A score of 6 means all three MAs are below price AND rising — the strongest possible bullish configuration.
📈 HOW TO USE
• Consensus 5-6 (green fill): Strong uptrend — buy pullbacks to the ribbon
• Consensus 0-1 (red fill): Strong downtrend — sell rallies to the ribbon
• Consensus 2-4 (gray fill): Mixed — avoid trend strategies
• Diamond markers at consensus flips = key entry/exit signals
• Ribbon twist (MAs crossing) = early warning of trend change
• Works best on 4H and Daily timeframes
🎛️ INPUTS & DEFAULTS
Base Period: 21 | Min: 8, Max: 55 | ALMA Offset: 0.85, Sigma: 6.0
═══════════════════════════════════════════════════════
🔧 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. Indikator

VWAP MTF Adaptive Levels
VWAP MTF Adaptive Levels
DESCRIPTION
VWAP MTF Adaptive Levels is a multi-timeframe VWAP indicator designed to provide clear volume-weighted reference levels without covering the candles.
Instead of plotting complete VWAP curves across historical price action, the indicator displays the current levels as short horizontal lines positioned to the right of the latest candle. This keeps the chart clean while preserving the most important VWAP information.
MAIN FEATURES
• Adaptive main VWAP based on the active chart timeframe
• Daily, Weekly and Monthly VWAP reference levels
• Optional ±1, ±2 and ±3 standard-deviation levels
• Short horizontal lines displayed only on the right side
• Exact price displayed next to every level
• BULL/BEAR dashboard
• Fully customizable colors, line width, line length and text size
• Adjustable distance from the latest candle
• Built-in crossover alerts
• America/New_York timezone with automatic daylight-saving adjustment
AUTO ANCHOR MODE
When “Auto” is selected, the VWAP anchor changes automatically:
• Intraday charts → Daily VWAP
• Daily chart → Monthly VWAP
• Weekly chart → Quarterly VWAP
• Monthly chart → Yearly VWAP
BULL/BEAR DASHBOARD
The dashboard provides a simple directional context:
• BULL: price is above the main VWAP
• BEAR: price is below the main VWAP
The dashboard also displays the active chart timeframe, current VWAP anchor and main VWAP price.
The BULL/BEAR status is a market-bias filter and should not be considered a standalone entry signal.
CUSTOMIZATION
Users can independently configure:
• Visible VWAP levels
• Standard-deviation multipliers
• Distance from the latest candle
• Horizontal-line length and thickness
• Solid, dashed or dotted line style
• Price-label size
• Dashboard position and size
• BULL and BEAR colors
• Individual colors for every VWAP level
NOTES
The script does not use request.security() lookahead logic. VWAP values on the open candle update in real time as price and volume change; confirmed historical values remain stable after the candle closes.
VWAP requires volume information. On Forex and CFD symbols, results can vary between brokers because these markets may use tick volume instead of centralized exchange volume.
This indicator was created primarily for XAUUSD analysis, but it can be used on other instruments and timeframes that provide volume data.
Suggested workflow:
• H4/H1 for directional context
• M15/M5 for execution analysis
• Combine VWAP with market structure, liquidity sweeps, PDH/PDL, PWH/PWL, FVG and confirmed break/retest setups
DISCLAIMER
This indicator is intended for educational and analytical purposes only. It does not constitute financial advice or guarantee future results. Always apply independent analysis and appropriate risk management.
TAGS
VWAP, Multi-Timeframe, MTF, Volume, Standard Deviation, XAUUSD, Gold, Intraday, Dashboard, Support and Resistance
Indikator

The Ultimate 50 EMA @JustinPerezTradesUltimate Day Trader — NQ/MNQ Multi-Timeframe 50 EMA Stack
A precision pullback/breakout indicator for NQ and MNQ that only signals when five timeframes of 50 EMAs are stacked in trend order.
Overview
This indicator looks for a specific structural setup on NQ and MNQ futures: a short-term pullback (or push) away from the 1-minute 50 EMA that occurs while the 50 EMA is climbing or falling in a clean, ordered stack across five timeframes (1m, 5m, 10m, 15m, 30m). The idea is to only trade pullbacks that are happening inside a confirmed multi-timeframe trend, rather than reacting to the 1-minute chart in isolation.
It's a signal/alert tool — it plots the EMA stack, marks entries and the exit target on the chart, and can fire alerts. It does not place trades for you.
How it works
Long setup — all of the following must be true at once:
Price is 50–100 points below the 1-minute 50 EMA (a pullback into value, not a full trend break)
5-minute 50 EMA is above the 1-minute 50 EMA
10-minute 50 EMA is above the 5-minute 50 EMA
15-minute 50 EMA is above the 10-minute 50 EMA
30-minute 50 EMA is above the 15-minute 50 EMA
When all five conditions align, the script marks a long entry. The exit target is the 30-minute 50 EMA — the trade is considered closed once price trades up to reach it.
Short setup is the mirror image: price 50–100 points above the 1-minute 50 EMA, with each higher timeframe's 50 EMA stacked below the one before it (5m < 1m, 10m < 5m, 15m < 10m, 30m < 15m). Exit target is the same 30-minute 50 EMA, reached from above.
Entries are edge-triggered — you get one signal per fresh setup, not a repeated marker on every bar the condition happens to remain true.
How to use it
Apply the indicator to a 1-minute chart on NQ or MNQ (front-month continuous contract or a dated expiry). The script checks both conditions and shows a warning label if either isn't met.
Watch the on-chart status table for a live read of: chart/symbol validity, current position state (flat / in long / in short), whether the MTF stack is bullish, bearish, or unaligned, the price's distance from the 1m EMA, and the current exit target level.
Green up-triangles mark long entries, red down-triangles mark short entries; a background tint confirms when the broader EMA stack is aligned even before price reaches the entry zone.
Right-click the chart → Add Alert to get notified on Long Entry, Short Entry, Long Exit, or Short Exit independently.
Inputs
EMA Length — default 50, applies to all five timeframes
Min / Max entry distance from the 1m EMA (points) — default 50 / 100, tuned for NQ/MNQ's typical point range
Restrict signals to NQ/MNQ only — on by default; disable to experiment with the same logic on other instruments
Higher timeframe overrides — 5m/10m/15m/30m are adjustable if you want to test alternate spacing
Display toggles for the EMA plots, stack-aligned background highlight, and the status table
Notes
This script is built BY @JustinPerezTrades specifically around NQ and MNQ's point behavior — the 50–100 point entry zone will not translate directly to instruments with different average ranges. It is a rules-based signal tool, not a guaranteed-profit system, and past alignment of these conditions does not predict future results. Backtest and paper-trade before using it with real capital, and use it alongside your own risk management. Indikator

RC Tools - CUSUM Drift Detector────────────────────────────────────────────────────────────────────
█ OVERVIEW
Most trend tools measure a single bar or a moving-average deviation, so a slow, persistent drift that never produces one dramatic bar can slip under their radar. This tool applies CUSUM — Cumulative Sum Control Chart, a classical statistical process control technique — to detect exactly that: a sustained departure from "no drift" that accumulates over many small moves rather than one large one.
█ WHAT IT DOES
Tracks two running sums of log returns — one for upward drift, one for downward — and flags a directional regime once the accumulated drift breaches a volatility-scaled threshold. Colours the chart background Bullish or Bearish Drift accordingly, plots the two accumulating sums against their threshold lines in a dedicated pane, and shows a table with the current state, how long price has been in it, and historical base rates (average forward return and win rate) for each state.
█ THE THEORY BEHIND IT
CUSUM was developed by E.S. Page in 1954 for detecting a persistent shift in a manufacturing process mean — the same statistical question as "has this market started drifting in a new direction," just applied to price instead of a factory line. The key property that separates it from a moving average or a single-bar threshold: CUSUM accumulates. A string of small, consistent moves in one direction builds up and eventually crosses the detection threshold, even if no individual bar looks remarkable. Pure noise — moves that cancel out — never accumulates at all, because a small "allowance" is subtracted from every observation before it's added to the running sum.
Critically, the reference point CUSUM measures departure from is fixed at zero, not a rolling average of the same series. A rolling mean would chase the trend and cancel out the very drift being measured — anchoring at a fixed "no drift" baseline is what makes the classical test work.
█ HOW IT IS CALCULATED
1. Compute log returns of the selected source.
2. Estimate sigma — the rolling standard deviation of those log returns over the Window Length — as the local noise scale.
3. Two running sums accumulate each bar:
S+ = max(0, S+ prev + (log return − k)) — accumulates upward drift
S− = min(0, S− prev + (log return + k)) — accumulates downward drift
where k (the Drift Allowance) is a small multiple of sigma, subtracted out so ordinary noise never builds a signal.
4. When S+ crosses above the threshold h (a larger multiple of sigma), a sustained upward drift is declared, the background flips Bullish, and S+ resets to zero to begin monitoring fresh. S− works symmetrically for downward drift.
5. Between detections, the classification holds — this is deliberate persistence, not a bug: CUSUM is built to answer "has the regime changed," not to flicker every bar.
Classification occurs ONLY on confirmed bar close — the plotted sums, the background colour and the table all update together, so nothing here can disagree mid-bar or flip back and forth as the current bar forms.
█ SETTINGS & CONFIGURATION
• Source (default close)
• Window Length (default 14) — rolling window for the sigma (noise-scale) estimate
• Decision Threshold h (default 2.0σ) — how much accumulated drift is required before a regime shift is declared
• Drift Allowance k (default 0.2σ) — moves smaller than this are subtracted out and never accumulate
• Forward Return Window (default 20 bars) — the horizon used for the base-rate table
• Table position and colours are fully configurable; the main-chart background painting can be toggled off if you only want the CUSUM pane
█ HOW TO USE IT
Use it as a slow-drift filter alongside faster tools, not as a standalone entry trigger. Because CUSUM only flips after drift has genuinely accumulated, it tends to confirm a regime later than a fast oscillator but with fewer false starts in choppy conditions — the trade-off is lag for reliability. Check the base-rate table's sample count before treating any single state as meaningfully predictive.
Works on any asset and timeframe with sufficient history for the Window Length.
█ LIMITATIONS
• CUSUM detects a PERSISTENT departure from zero drift, not a magnitude or overbought/oversold level. Any use of it as a precise reversal forecast is a misuse.
• The fixed zero reference is directional-agnostic to any trend that existed before the current accumulation window began — it only measures drift accumulated since the last reset.
• h and k are both expressed in sigma multiples; a poorly-fit Window Length will misclassify ordinary volatility as drift, or vice versa.
• Resets on trigger mean the tool can flip again quickly after one large accumulation event, then need to rebuild before flipping a second time.
• Historical base-rate stats need a meaningful sample count (check N) before being trusted, especially in a low-frequency-flip regime or on a short history.
• This script does NOT repaint. All classification updates on confirmed bar close only.
█ DISCLAIMER
For educational and informational purposes only. Nothing here is financial advice. Past behaviour of any drift state does not indicate future results. Trade at your own risk.
Indikator

TURKS Engine - Tiered Unit Risk KernelMost position-sizing tools tell you what to hold after the move. This one tells you the price at which it changes, before price gets there.
TURKS Engine decides how much of a long position to hold. Exposure is a graded function of where the close sits against four moving averages, so it moves in rungs rather than switching on and off. That function is monotone in price, which means it inverts: every rung has exactly one price. The panel solves for those prices and prints them today — a ladder of levels at which the position gets larger or smaller, readable now.
Long only, 0 to 1. No shorting, no leverage, nothing resting at a broker.
This is the indicator build of TURKS. Same engine, no orders — it sizes, you execute.
📊 WHAT THE LADDER DID
Twelve symbols, shipped defaults, 4-hour charts, full available history. Commission $1.50 per order, slippage 0.01xATR per side, idle cash credited nothing. b&h is buy-and-hold over the identical bars, charged nothing at all. The comparison is deliberately rigged against the engine.
SCOREBOARD 12 symbols, 4h, full history, net of costs
maximum drawdown cut versus buy and hold .......... 12 of 12
CAGR / maxDD better than buy and hold .......... 7 of 12
CAGR better than buy and hold .......... 3 of 12
TURKS versus BUY AND HOLD, sorted by CAGR
CAGR MAX DRAWDOWN CAGR / maxDD
symbol sample TURKS b&h TURKS b&h TURKS b&h
SNDK 1.3y +1406.3% +1899.0% -37.2% -56.8% 37.82 33.43
ETH 9.5y +117.3% +71.9% -54.4% -94.1% 2.16 0.76
BTC 9.5y +70.0% +54.2% -62.3% -83.9% 1.12 0.65
ARM 2.7y +62.5% +72.9% -39.8% -55.8% 1.57 1.31
TSLA 15.9y +32.7% +41.7% -57.0% -74.9% 0.57 0.56
NVDA 22.4y +25.3% +36.4% -77.0% -85.2% 0.33 0.43
AMD 21.4y +20.2% +17.3% -69.3% -96.1% 0.29 0.18
AVGO 16.8y +16.9% +39.0% -36.9% -50.3% 0.46 0.78
MU 22.4y +9.3% +19.7% -81.4% -90.9% 0.11 0.22
GOLD 13.5y +7.2% +7.7% -20.0% -35.0% 0.36 0.22
SPY 20.4y +4.4% +9.1% -40.5% -56.7% 0.11 0.16
INTC 20.4y +2.2% +8.5% -73.3% -74.2% 0.03 0.11
CAGR / maxDD is the column that settles it — return earned per unit of drawdown suffered. On that measure the engine wins on 7 of 12. It cut maximum drawdown on 12 of 12, and beat buy-and-hold on raw return on 3.
▸ ETH — 117.3% against 71.9%, at −54.4% drawdown against −94.1%. Nearly double the return on barely half the pain.
▸ BTC — 70.0% against 54.2%, at −62.3% against −83.9%.
▸ AMD — 20.2% against 17.3%, turning a −96.1% hole into −69.3% across 21.4 years.
These are assets that spent their entire sample inside a historic bull market, measured against a benchmark paying no commission and no slippage. Halving a drawdown is ordinary. Halving it and finishing ahead is not.
Every one of those numbers comes from the BOOK panel in this script. There is no separate research harness behind them and no second, gross set of figures anywhere in the build. Load it on your own symbol and the whole table regenerates for that instrument in one bar, net of the costs you typed in.
The table was measured on 16 August 2026. A live chart keeps adding bars, so the panel will not read exactly these numbers — at the time of writing ETH has drifted to 122.3% against 76.1%. Read the panel, not the table, for what the engine is doing on your instrument today.
📖 HOW TO USE IT
1 — Set your costs first. Commission ($ per order) and Typical position size ($) are the only two numbers the cost model needs; every other cost figure is a rate derived from them. A flat $1.50 is 1.9bp on an $8,000 position and 7.5bp on a $2,000 one. Leave these wrong and the panel lies to you.
2 — Pick the instrument. Single names and crypto whose drawdowns are violent relative to their drift. The table above is the guide, including the four rows that say don't.
3 — Read the ladder, not the arrows. The SELL / BUY ENGINE block prints three live numbers:
▸ Sell next above — the price at which the next rung comes off
▸ Buy back below — the price at which it goes back on
▸ Rungs sold — how much the envelope has already taken off, e.g. *12 of 20*
Both prices exist now, before the move. They are not marks that appeared after one.
4 — Read the dial. THE RULE prints Target weight — what the rule says you should be holding at this instant — and Dial c / f. POSITION prints the modelled book: weight held, average cost, open return, and the round-trip cost that position is carrying, so the gap between intention and position is always visible.
5 — Size it with c and f, not by fighting the rungs. c scales the whole position down. f is the floor you keep while the rule is off; raising it walks the book continuously toward buy-and-hold. Both tooltips print the measured frontier — the whole curve of what each step costs in return and buys in drawdown, including the region where the rule loses to simply holding less.
6 — Check it on your own symbol before trusting any of it. BOOK prints Sample, CAGR against b&h, Max drawdown against b&h, CAGR/maxDD, Sharpe, Exposure and Turnover. BOOK LEDGER, bottom right, prints the same book in money: book value against buy-and-hold from the same start, spells closed, profit factor, worst run, open position.
🔔 ALERTS
Five named conditions in the alert dialog — Target weight changed, Weight added, Weight cut, Gate on, Gate off — plus a rich alert() message carrying the weight it moved from, the weight it moved to, and both envelope prices. Flip one checkbox and the same payload arrives as JSON for a webhook.
🪜 HOW THE EXPOSURE IS SET
Exposure Shape picks the weighting rule. *Ensemble 20/50/100/200 (graded)* is the default. Each of the four SMAs contributes its own 0-to-1 ramp as price clears it, scaled in ATR and widened for the longer means so a 200-day cross is not treated like a 20-day one. The four ramps are averaged, then rounded to the nearest third:
SMA 20 ramp 0..1 ---+
SMA 50 ramp 0..1 ---+
SMA 100 ramp 0..1 ---+-- average -- round to thirds -- 0 / 33% / 67% / 100%
SMA 200 ramp 0..1 ---+
Four reachable weights, three thresholds, and the panel prints the price of all three. *Graded (continuous)* uses one mean with an ATR ramp instead. *Binary gate (legacy)* is the original all-or-nothing rule, kept so the graded version has something to be measured against.
Risk dial c scales the entire position down. Risk dial f is how much you keep while the rule is off. These two are the real levers, and nothing about their trade-off is hidden — the full measured frontier is printed in the settings dialog, the losing region included.
Quantise Steps rounds the target to N reachable weights and requires price to clear 75% of a step before acting, so the weight does not twitch every bar. Ramp Width (xATR) sets how far above the mean price must travel to earn full size.
✂️ THE NADARAYA-WATSON SELL ENGINE
A trend weight cuts into weakness by construction, so it sells low: 59% of every unit the dial sells goes out below its own average cost, at 12.4 round trips a year. That is the flaw this block exists to fix. It replaces or constrains the sell side with a Gaussian kernel-regression envelope that only sells into genuine extension.
Sell Engine Mode — *Dial, NWE-gated* (default) keeps the dial's targets but forbids cutting while price sits below the smoother; it may still add. *NWE band only* turns the dial's sells off entirely. *Dial + NWE (both cut)* lets either one sell. *Dial only* leaves the envelope drawn but inert.
Sell Rungs is how much leaves on each upper-band cross: 1/N of the position. Going from 3 to 10 halved turnover, cut the share sold below basis from 16.7% to 8.9%, and pulled out-of-sample drawdown from −32.6% to −18.3%. It ships at 20, one step further along the same gradient; 10 is the last value with a formal table behind it.
Band Multiplier (3.0) and Buy-back Multiplier (2.5) set the upper and lower halfwidths in mean-absolute-deviation units. The asymmetry is the point: buying back nearer the mean than you sold restores the position before price has fully round-tripped, which is what keeps the overlay from bleeding in a chop. Bandwidth h widens and slows the smoother; it ships at 5.
🔬 HOW THIS WAS BUILT
Nine candidate signal families were tested against a matched-exposure control across 140 markets and 8,793 sessions: moving-average and momentum structure, cross-sectional relative strength, short-horizon mean reversion, volatility-of-volatility and regime transitions, drawdown state, volume, range compression, multi-timeframe agreement, and calendar seasonality. Not one was positive both in and out of sample. All nine were deleted from the codebase rather than left in as decoration.
The cleanest demonstration: take the original engine's own weight path and fire it 60 trading days late — same trades, same sizes, same turnover, same average exposure, only the dates broken. It scores better late than on time. Block-shuffling the path also beats it. A rule whose dates carry information cannot survive having them destroyed, so that engine was removed and what remains is geometry.
The stretch-proportional alternative to fixed rungs was then built and measured across 44 configurations. None beat rungs = 10. The project's pre-registered five-clause acceptance test passed all 20 graded cells — but a constant weight of 1.0 also passes three of five clauses, exactly one cell of twenty reaches p < 0.05 uncorrected (the null expectation for twenty tests), that p fails Bonferroni, and the cells are 0.985-correlated. It was reported as a failed test.
Everything left in this script survived a process designed to kill it. What remains is a sizing rule with no forecast in it: it does not predict the retest, it tells you at a price you can read now exactly what happens when one arrives.
⚙️ COSTS, AND THE SETTINGS THAT DECIDE THEM
Sell Engine Mode *Dial, NWE-gated*, Exposure Shape *Ensemble 20/50/100/200 (graded)*, c = 1.00, f = 0.00, Quantise Steps 3, Ramp 1.0 ATR, Trend Mean 200, Cash Yield 0.00%. Envelope: bandwidth 5, multiplier 3.0, buy-back 2.5, MAE window 499, Sell Rungs 20. Book notional 150,000, commission $1.50 cash per order, slippage 0.01xATR per side.
Slippage is charged in ATR units rather than ticks, because a tick is an absolute price and one tick count cannot be simultaneously correct for a $20 stock and a $1,600 one, nor for the same stock at $0.21 and at $224. A fraction of the instrument's own range travels between symbols; a tick count does not.
Cash Yield ships at 0.00%. The rule spends much of its life partly in cash, so any yield credited lands straight on the CAGR, and one constant cannot represent a twenty-year sample where real cash paid about 0.1% for eight years and about 5% for two. Every figure in the table above was measured with it at zero.
Exits are close-only by construction. The printed ladder is the memoryless level; the live quantiser is hysteretic, so the executed switch can sit up to 0.75 steps from the printed one.
🔁 THE STRATEGY BUILD
The same engine with orders attached is published separately as TURKS — Tiered Unit Risk Kernel Strategy, for anyone who wants the Strategy Tester's own accounting as a second opinion on the panel. Both builds compute the ladder, the envelope and the BOOK ledger from identical code.
© CREDIT
The envelope is a port of "Nadaraya-Watson Envelope " by LuxAlgo (www.tradingview.com), published open source under CC BY-NC-SA 4.0. The kernel, the MAE band construction and the crossover logic are theirs. This script is published under the same licence.
Only the non-repainting, one-sided causal branch was ported. LuxAlgo's script defaults to the repainting branch, which rebuilds its curve inside barstate.islast with a two-sided kernel, so the value at bar i averages bars on both sides of i — including bars that had not happened when i closed. That branch is deliberately absent here. The measured gap between the two is about 21% of the band halfwidth, which is why the repainting version's arrows look cleaner than any live rule can be. The sizing, the rung logic and the position accounting are new.
Open source, Pine v6.
Indikator

Auction Scalper | GainzAlgo
Auction Scalper is built specifically for intraday scalpers. It uses Auction Market Theory to identify two high-quality setups: failed auctions that reverse back toward value and accepted breaks that continue after a retest.
THE TWO SETUPS
Reversal — Failed Auction
Price pushes outside yesterday's value area, fails to hold there, and closes back inside. The setup targets a return toward value, with the POC as TP1 and the stop placed beyond the full sweep with an ATR buffer.
Squeeze — Break & Retest
Price accepts outside value with a strong body close. The broken level is retested and must hold with sufficient participation before a continuation signal fires. Targets use meaningful prior-day levels, with a runner for extended moves.
EVERY SETUP GETS A 0–100 SCORE
Every setup is scored using:
Volume percentile
Buy/sell pressure
Rejection quality
Trade location
Higher-timeframe alignment
Volatility
Reward-to-risk
Time of day
Display the result as stars, a numerical score, or a letter grade.
Two additional rules come from testing: reversals against the higher-timeframe direction require a higher score, and setups requiring a stop wider than 4 ATR are skipped.
KNOW WHY YOU'RE FLAT
The dashboard shows your current trading window and system status.
It tells you whether the market is OPEN, LATE, CLOSED or in lockout, and whether the system is SCANNING, waiting for a higher score because of CHOP, MANAGING A TRADE, or DONE FOR TODAY.
No guessing why the indicator isn't giving you a signal.
BUILT FOR DISCIPLINED SCALPING
Includes:
Session filter & opening lockout
Late-entry cutoff
Chop detection
Signal cooldown
One active trade at a time
One long and one short setup per day
TP1 → break-even management
TP2 runner
Maximum stop-distance filter
Optional slippage-aware stops
Every trade is tracked directly on the chart with Entry, SL, TP1, TP2 and R multiples, including stop-outs.
VALIDATION
A companion strategy uses the same core logic so you can test it on your own market, timeframe, commission and slippage settings.
An earlier engine build tested on AAPL 5-minute data over one year produced a profit factor around 1.3 with drawdown near 2% using realistic costs. The engine has since been updated, so run the current strategy yourself for current results.
Settings were tuned on US stocks. Crypto and FX are supported but were not specifically calibrated.
HOW TO USE
Designed for liquid markets on 1–5 minute charts during active sessions.
Choose a preset, set your session, and wait for qualified setups. Alerts fire once per confirmed bar close with direction, setup type, score, entry, stop and both targets.
HONEST NOTES
Signals confirm on bar close and do not repaint. Higher-timeframe analysis uses only the last confirmed HTF bar.
Buy/sell pressure is estimated from candle structure, not exchange bid/ask data, and no lower-timeframe requests are required. The indicator therefore works across TradingView plans and in Bar Replay.
Some FX feeds have no usable volume, so the volume gate automatically steps aside when volume is unavailable.
This is an analytical tool, not financial advice. Past performance does not guarantee future results. Indikator

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.
Indikator

Indikator

Smart Entry Zones [StrixEDGE]█ OVERVIEW
StrixEDGE Smart Entry Zones is a multi-layered trend-following indicator that generates clearly defined trade setups with automatic Entry, Take Profit (TP 1–3), and Stop Loss (SL) levels — all plotted directly on the chart with exact prices and percentage targets.
The indicator is built on three independent analytical layers that work together to assess both timing and conviction:
• Supertrend — determines trend direction and triggers trade levels on each confirmed flip
• Fisher Transform — identifies overbought/oversold extremes for timing quality
• Chaikin Money Flow (CMF) — confirms whether volume supports the directional move
Trade levels appear the moment the Supertrend changes direction. The Fisher Transform and CMF score the quality of each setup on a scale of 1/3 to 3/3 conditions, so you always know how much confirmation backs the signal.
█ HOW IT WORKS
When the Supertrend flips from bearish to bullish, the indicator draws a LONG setup:
• Entry — at the close of the flip candle
• TP 1, TP 2, TP 3 — calculated as multiples of the risk (SL distance), based on your chosen Risk:Reward ratios
• SL — placed below entry at a distance of ATR × your chosen multiplier
When the Supertrend flips from bullish to bearish, a SHORT setup is drawn with the same structure, mirrored.
Each level displays the exact price and the percentage distance from entry (e.g., +4.12%, −2.27%), so you can instantly assess the reward-to-risk profile of every trade.
█ LIVE HIT DETECTION
The indicator tracks price in real time against active levels:
• ✓ appears on the chart when price reaches TP 1, TP 2, or TP 3
• ✕ appears when price hits the Stop Loss
• Once SL is hit, the trade is considered closed — no further TP checks
• Hit status is also reflected in the data table (✓ or ✕ next to each level)
This gives you a clear visual record of how each setup performed without leaving the chart.
█ THE THREE CONFIRMATION LAYERS
1. Supertrend (Direction)
Uses ATR-based dynamic support/resistance to define the prevailing trend. A flip in direction is the primary trigger for new trade levels. Configurable via ATR Period and Multiplier.
2. Fisher Transform (Timing)
A manually calculated oscillator that normalizes price position within its recent range and applies a logarithmic transformation to amplify extremes. When the Fisher value crosses its signal line at overbought or oversold levels, it confirms favorable entry timing. The threshold is adjustable.
3. Chaikin Money Flow (Volume)
Measures the accumulation/distribution pressure over a configurable period. Positive CMF above the threshold confirms buying pressure (for longs); negative CMF below the threshold confirms selling pressure (for shorts).
The Conditions counter in the data table shows how many of the three layers support the current setup (1/3, 2/3, or 3/3). A 3/3 reading means trend, timing, and volume are all aligned — the highest-conviction scenario.
█ SETTINGS
Core Parameters:
• Supertrend ATR Period (default: 10) — lookback for trend calculation
• Supertrend Multiplier (default: 3.0) — band width; lower = more signals, higher = fewer but stronger
• Fisher Transform Lookback (default: 10) — normalization window
• Fisher Extreme Threshold (default: 1.0) — defines overbought/oversold boundary
• CMF Period (default: 20) — volume pressure measurement window
• Minimum CMF Threshold (default: 0.05) — minimum reading for volume confirmation
Trade Levels:
• ATR Period for Levels (default: 14) — ATR used to calculate TP/SL distances
• SL Distance in ATR multiples (default: 1.5×) — how far the stop is placed
• TP1 / TP2 / TP3 Risk:Reward (defaults: 1.0 / 2.0 / 3.0) — each TP as a multiple of the SL distance
• Line Length in bars (default: 30) — how far the level lines extend on chart
• Show Trade Levels — toggle lines and labels on/off
Table Settings:
• Size (Tiny to Huge) and Position (any corner) — fully customizable
• Show/Hide toggle
█ DATA TABLE
A dark-header Style A panel displays all key metrics at a glance:
• Trend direction and current Fisher/CMF readings
• Conditions score (1/3, 2/3, or 3/3)
• Active trade direction (LONG ▲ or SHORT ▼)
• Entry price, TP 1–3 with percentage targets, and SL with percentage risk
• Live hit status: ✓ next to reached TPs, ✕ next to triggered SL
█ NOTES
• No repainting — all signals are based on confirmed bar closes. The Supertrend flip and Fisher Transform are calculated on closed data only.
• The Fisher Transform is manually implemented (not a built-in function) to ensure full transparency and consistency.
• This indicator is an analytical tool, not financial advice. Always use proper risk management and confirm setups with your own analysis.
█ ALERTS
Two built-in alert conditions:
• Supertrend Long — fires when Supertrend flips bullish
• Supertrend Short — fires when Supertrend flips bearish
Set alerts on any timeframe to receive notifications when new trade setups appear. Indikator

Darvas Box Ladder [ITA]🟠 OVERVIEW
Darvas Box Ladder plots the rectangle Nicolas Darvas traded, and then keeps plotting the ones that follow it. Darvas did not buy a box and sell it - he rode a ladder of them, staying in as each breakout built a new box higher and lifting his stop to the floor of the newest one. He got out when a box finally broke down.
The script builds each box the way Darvas built it, as a sequence of confirmations rather than a rectangle fitted after the fact, and keeps the completed rungs on the chart so the whole run stays visible.
🟠 CONCEPTS
A Darvas box has an order to it. The ceiling comes first: price makes a new high, and that high has to survive a set number of bars unbeaten before it counts. Only then does the floor form, from the lowest low printed since the ceiling, and it has to survive the same test.
That order matters. A rectangle drawn around any quiet stretch of price is just a consolidation range. A Darvas box is a leader pausing after a run to new highs, and the ceiling-then-floor sequence is what separates the two.
Because both levels come from confirmed structure, they are fixed once drawn and do not move afterwards.
🟠 FEATURES
🔹 The full ladder, not one box - completed rungs stay on the chart so you can see the whole advance rather than the current pause in isolation
🔹 Stop line under the active box - a dashed line at the floor, which is where Darvas kept his
🔹 Measured-move target - one box height projected above the ceiling
🔹 Volume-confirmed breakouts - a close above the ceiling only counts when volume beats its 20-bar average by your chosen multiple
🔹 Box under construction - a dashed ceiling shows while the box is still forming, so you can see one coming before it completes
🔹 New-high filter - boxes may only start from a high that is the highest of the lookback window, keeping the script on leaders instead of drawing rectangles inside downtrends
🔹 Height limits - boxes outside your minimum and maximum are discarded
🔹 Alerts on both the breakout and the box breaking down
🟠 HOW TO USE
Add it to a daily chart of a stock that has been making new highs - that is the setup Darvas was looking for, and the new-high filter will keep the script quiet on anything else.
Watch for the dashed ceiling. That is a box forming. When the floor confirms, the box turns solid and the stop line appears underneath it.
A green box with a triangle below the bar is a confirmed breakout on volume, and the next box begins from there. Each new rung is a chance to lift the stop to the newer, higher floor.
A red box marks the end of the run - price closed below the floor.
Confirmation Bars is the main setting. Darvas used 3. Higher values give fewer, cleaner boxes; lower values react faster and produce more of them.
🟠 CONCLUSION
The box is the easy part. The ladder is what Darvas actually traded, and it is what tells you whether a breakout is the start of a run or the end of one. Indikator

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. Indikator

Indikator

RSI Bottom/Top Retest Scalper [josseliani]RSI Bottom/Top Retest Scalper is a short-term reversal tool built around a simple idea: the first RSI extreme is not always the best moment to act.
Instead, the indicator waits for RSI to leave the extreme area, cool down, form a second structured signal, and then waits for confirmation from price.
The logic is separated into two parts:
→ RSI setup
→ Price entry confirmation
How it works
For a bearish setup:
→ RSI first reaches the upper extreme area.
→ RSI cools down below the selected cooling level.
→ A second local RSI peak forms below the first peak.
→ The second RSI signal is confirmed when RSI starts turning down.
→ Price is then checked against the selected confirmation line.
→ A candle must place the required percentage of its body beyond that line.
→ That candle confirms and arms the setup.
→ The trade calculation starts from the OPEN of the next candle .
The bullish logic is the opposite: RSI forms an extreme bottom, rebounds, returns with a higher second bottom, and price must then confirm above the selected line.
RSI signals
The RSI setup is shown in two stages.
→ The circle marks the first RSI extreme.
→ The triangle marks the confirmed second RSI signal after the cooling and retest process.
These two markers belong to the RSI setup itself . They are not price-entry signals.
Price entry confirmation
After the second RSI signal, the script searches for price confirmation using the selected confirmation line.
A candle must place the required percentage of its body beyond that line.
This candle confirms and arms the setup , but it is not used as the entry candle.
The hollow entry arrow and trade calculation appear on the next candle , using that candle's open as the reference entry price.
So the sequence is:
→ 1 — Circle: first RSI extreme
→ 2 — Triangle: second RSI retest signal
→ 3 — Price confirmation and entry
Trade markup
When Trade Markup is enabled, the script automatically displays:
→ Stop Loss
→ 1R
→ 2R
The stop is normally derived from the price structure formed between the RSI retest signal and the price-confirmation event.
If a suitable structural stop cannot be established, or if the calculated risk is too small to be practical, the script can use an ATR-based fallback stop.
The 1R and 2R levels are calculated from the confirmed entry price and the resulting risk distance.
These levels are visual planning references. They are not predictions that price will necessarily reach a target.
Confirmation line
The confirmation line can be selected from:
→ EMA
→ SMA
→ WMA
→ RMA / SMMA
→ VWMA
→ HMA
→ DEMA
→ TEMA
→ ZLEMA
→ KAMA
→ Kalman
→ ALMA
→ Kijun
The default confirmation line is Kijun 34 .
The user can also select how much of the candle body must be beyond the confirmation line before the setup is considered confirmed.
How I use it
The default settings are tuned for 5-minute gold scalping .
I use Kijun 34 as the default confirmation line because I personally like this line a lot. I use it for both 5-minute and 15-minute scalping.
If you move to a lower timeframe, expect more signals, but also more noise. In that case, pay closer attention to entries and Stop Loss placement and consider using a shorter, faster confirmation line.
The script includes a wide selection of moving averages for scalpers, including some less conventional alternatives.
Besides Kijun, I also like ALMA for scalping. On the 1-minute chart I often use a shorter ALMA because it reacts faster, but this naturally creates a more aggressive trading style.
As a general approach:
→ Lower timeframe → shorter / faster confirmation line → more signals and more noise.
→ Higher timeframe → longer / slower confirmation line → fewer and more selective signals.
You can replace Kijun with EMA, ALMA or another available line and adjust its length for the market and timeframe you trade.
Main settings
→ RSI Length and Source
→ Upper and Lower Extreme Levels
→ Cooling Levels
→ Second Peak / Bottom Re-Entry Levels
→ Minimum Lower High / Higher Low Gap
→ Peak / Bottom Strength
→ Maximum Setup Search Window
→ Optional Midline Invalidation
→ Confirmation Line Type and Length
→ Required Body Beyond Line %
→ Entry Search Window
→ Signal Display
→ Trade Markup
→ RSI / Chart Highlighting
Important
Local RSI peaks and bottoms require confirmed bars on their right side before they can be identified.
For this reason, a second peak or bottom is marked only after its required confirmation is available.
The indicator separates the oscillator setup from price confirmation so that an RSI retest alone is not automatically treated as a trade entry.
The trade levels shown on the chart are generated from the detected setup and are intended for analysis and trade planning. They do not guarantee future performance.
Why the second signal?
The general idea of paying attention to a second oscillator signal has also been discussed in professional technical-analysis research.
Mohamed Ashraf, MFTA, CFTe, CETA presented The Stochastic Oscillator Second Signal through the International Federation of Technical Analysts (IFTA), examining the second oscillator signal as a distinct technical setup across different timeframes and market conditions.
This script does not reproduce that methodology. The referenced work uses the Slow Stochastic Oscillator, while this indicator applies its own RSI-based logic using extreme levels, cooling, second-peak / second-bottom structure and subsequent price confirmation.
Reference
IFTA Journal 2026 — The Stochastic Oscillator Second Signal
www.ifta.org Indikator

SmartFit Trend Channels [MarkitTick]💡 This tool builds a linear regression channel that does not sit on a fixed, arbitrary lookback window. Instead, it continuously re-anchors itself at confirmed swing pivots, filters its regression source through a selectable adaptive smoothing stage, validates every channel against a statistical fit-quality test, and optionally gates its breakout signals behind a trend-strength filter. Confirmed breakouts trigger directional alerts (including ready-to-route webhook JSON payloads), while a compact on-chart dashboard keeps the current channel's statistics visible at all times.
✨ Originality and Utility
Most regression-channel tools on the platform work from a single static bar count chosen by the user, redraw the entire channel on every bar, and offer no way to judge whether the underlying price action is actually behaving linearly enough for a straight-line model to be meaningful. This script addresses all three limitations at once. It measures channel validity using the Pearson correlation coefficient rather than assuming a regression fit is automatically useful, it restarts its lookback window dynamically at the most recent statistically valid swing pivot rather than a fixed period, and it finalizes historical segments as discrete drawn objects instead of continuously repainting a single line across the whole chart.
● Why These Components Are Combined
The regression engine, the pivot-anchoring logic, the adaptive source filter, the ADX gate, and the merge engine are not stacked together arbitrarily; each solves a specific weakness left open by the others. The adaptive smoothing stage reduces the high-frequency noise that a raw-price regression is otherwise highly sensitive to. The pivot-anchoring logic solves the "where should this channel actually start" problem that fixed-length regression channels never address. The Pearson fit-quality filter prevents the tool from drawing a confident-looking straight line through what is statistically a sideways, non-linear market. The ADX filter exists specifically to reduce breakout signals firing inside genuinely trendless conditions. The merge engine exists to prevent the chart from filling with redundant, near-identical channel segments once the pivot-anchoring logic starts producing frequent restarts on lower timeframes. Together, these form one coherent statistically-aware channel system rather than five unrelated features bundled for the sake of it.
🔬 Methodology and Concepts
● Regression Engine
At its core, the script performs an ordinary least-squares linear regression across the bars since the current channel's anchor point, producing a slope and intercept that define the channel's midline. This calculation always runs on confirmed, closed price data, never on the live forming bar.
● Statistical Validity Filter
Every regression is scored with the Pearson correlation coefficient, which measures how well price actually fits a straight line on a scale of -1 to 1. A minimum bar count and a minimum absolute correlation strength (both user-configurable) must be met before a channel, or a breakout signal derived from it, is considered valid. Channels that fail this test are still drawn, but are visually flagged as low-confidence rather than treated as a directional signal.
● Deviation Bands
Upper and lower channel boundaries are placed a user-defined number of standard deviations away from the regression midline, based on the vertical dispersion of price around that line. This produces a statistically scaled envelope rather than a fixed-percentage or fixed-tick band.
● Adaptive Source Filter
Instead of regressing on raw closing price, the script can first pass price through one of several smoothing methods, selectable per chart:
SMA / EMA / RMA — standard simple, exponential, and Wilder-smoothed moving averages, offered as baseline options with different responsiveness-to-noise tradeoffs.
Double WMA — a weighted moving average smoothed a second time through another weighted pass, trading additional lag for a cleaner underlying line.
Triple VWMA — a volume-weighted moving average smoothed through three successive passes, intended for instruments where volume-weighting the trend estimate is meaningful.
HMA — a low-lag moving average designed to track price more closely than a standard average of the same length.
LLAMA — a proprietary MarkitTick method that blends a simple average baseline with a linear slope term measured across the filter length, effectively projecting the recent directional momentum forward onto the smoothing output rather than only averaging past values.
Kalman Filter — a recursive single-state estimator that continuously balances its own prediction against each new price print, with the filter length controlling how much weight is given to new information versus the existing estimate.
Selecting "None" regresses directly on the previous confirmed close.
● Dynamic Pivot Anchoring
The script tracks confirmed swing highs and swing lows using a symmetric bar-confirmation window (either auto-scaled to the chart's timeframe or manually set). These pivots are only accepted once enough bars have closed on both sides of the candidate bar to confirm it, so no pivot is ever assumed before it is actually confirmable. When a breakout occurs, the script evaluates whether the most recent opposite-type pivot has a strong enough regression fit of its own to serve as a more representative channel origin; if it does, the newly drawn segment is anchored there instead of at the current bar.
● Confirmation Lag Notice
Because segment anchors are only finalized once a breakout confirms them, a newly drawn historical segment's starting point is placed at a bar in the past, after the fact. This is standard behavior for any pivot-anchored channel tool and does not involve unconfirmed or future data, but it does mean the visual origin of a finalized segment was not known in real time at that bar; it becomes fixed only once the breakout that closes out the prior segment occurs.
● Channel Merge Logic
When enabled, a newly forming channel is compared against the band edges of the segment it is replacing. If the gap between them falls within a user-selected tolerance (expressed as a multiple of the current standard deviation), no new discrete segment is drawn and the channel is treated as a continuation. This keeps visually similar, closely-spaced channels from cluttering the chart as separate labeled objects.
● ADX Trend Filter
An optional Average Directional Index filter can require a minimum trend strength reading before a breakout is allowed to register as a directional signal, reducing the number of signals generated while the market is directionless.
● Breakout Signal Logic and Webhook Alerts
A directional signal fires only on a confirmed bar, only when the minimum bar count and fit-quality thresholds are met, and only once per new breakout (not on every bar the price remains beyond the band). Each signal type — long entry, short entry, and their corresponding opposite-side close — has its own configurable action label, which is packaged into a JSON payload suitable for forwarding to third-party automation or webhook services.
🎨 Visual Guide
The live, currently forming channel is drawn as three connected lines — an upper band, a midline, and a lower band — with the space between the bands filled in a translucent color. Green indicates a bullish-sloped channel, red indicates a bearish-sloped channel, and gray indicates a channel that has not met the minimum fit-quality threshold and should be treated as statistically unreliable. A small label at the live edge of the channel states its bias, its fit percentage (the Pearson correlation expressed as a percentage), and its standard deviation value. When a segment finalizes, its own colored line-and-fill combination plus a labeled marker remain on the chart as a permanent historical record of that channel. An optional setting recolors the chart's candles using the live channel's bias color for an at-a-glance read of current conditions without needing to look at the channel itself. In the corner of the chart (position configurable), a compact dashboard table lists the ticker and timeframe, current bias, a bar-style fit-quality gauge, the standard deviation value, the current upper and lower band prices, the number of bars in the active channel, the pivot length in use, the current breakout/breakdown state, and — only when the relevant filters are enabled — the live ADX reading and the selected adaptive filter type.
📖 How to Use
Read channel color and the dashboard's Bias row together: a green, high-fit-percentage channel reflects a statistically supported uptrend in the regression sense, while red reflects the equivalent downtrend condition. Treat gray, low-fit-percentage channels as periods where price is not moving in a way a straight line meaningfully describes, and weight any signal generated during those conditions accordingly. A directional signal, visible as a Breakout or Breakdown state on the dashboard and paired with an alert firing, indicates confirmed price has closed beyond the channel's statistical deviation band with sufficient trend history and fit quality behind it — this is a signal generator, not a backtested strategy, so no historical win-rate or equity curve is produced by the script itself. Enabling the ADX filter is most useful on instruments or timeframes prone to frequent whipsaw, where it will suppress breakouts that occur without adequate underlying trend strength. Choosing a smoother adaptive filter (Double WMA, Triple VWMA) will produce fewer but later channel restarts; choosing a more responsive one (HMA, Kalman, LLAMA) will track price more closely at the cost of more frequent re-anchoring. Enable channel merging on lower timeframes or choppier symbols to keep the chart readable; disable it if you want to see every discrete regression segment the script produces. To receive the webhook-ready alerts, create an alert on the script using the "Any alert() function call" option, or select one of the four named alert conditions individually if only a subset of signals is needed.
⚙️ Inputs and Settings
The Core group controls the statistical backbone of the tool: automatic or manual pivot lookback length, whether nearby channels merge and how strict that merge tolerance is, the minimum Pearson fit strength and minimum bar count required for a channel to be considered valid, and the deviation z-score used to size the bands. The Filters group holds the optional ADX trend gate (toggle, threshold, and length) and the adaptive source filter selection along with its length. The Visuals group controls channel line width and whether chart candles are recolored by the live channel bias. The Dashboard group sets which corner of the chart the statistics table is drawn in. The Alerts group defines the text sent in the "action" field of each of the four webhook JSON payloads (long, short, close-long, close-short), allowing the payload vocabulary to be matched to whatever automation platform is receiving it. The Colors group governs the bullish, bearish, and weak-fit channel colors, the support/resistance accent colors used in the dashboard gauge, and the dashboard's background, header, text, and warning colors.
🔍 Deconstruction of the Underlying Scientific and Academic Framework
The regression core is an ordinary least-squares fit — the same slope and intercept formulas taught in introductory statistics, chosen because they minimize the sum of squared vertical distances between the line and each price point in the window. Layered on top of this is the Pearson product-moment correlation coefficient, the standard statistical measure of how strongly two variables are linearly related; applying it to price-versus-time is the same logic underlying R²-based confidence filters used in quantitative trend-following research, here repurposed as a simple accept/reject gate for whether a channel is worth trusting. The deviation bands draw on the same statistical foundation as Bollinger-style envelopes — a mean or trend estimate flanked by a multiple of the underlying standard deviation — except the dispersion here is measured as residual distance from a sloped regression line rather than from a flat moving average, and a z-score of 1.96 specifically corresponds to the approximate 95% interval of a normal distribution, a deliberate nod to standard statistical confidence-interval convention. The pivot-confirmation logic is a symmetric-window fractal test in the tradition of classic swing-high/swing-low detection methods, used here purely as a principled way to choose a channel's starting point rather than as a standalone trading signal. The ADX/DMI component follows Welles Wilder's original directional movement framework for measuring trend strength independent of trend direction. Among the adaptive filters, the Kalman option applies a simplified single-state predict-correct estimator common in signal processing and control theory, while the LLAMA option applies a linear-extrapolation-style adjustment to a moving average — conceptually related to trend-adjusted smoothing methods such as Holt's linear exponential smoothing, which projects recent momentum forward rather than only averaging past observations.
⚠️ Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. We expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion. Indikator

Auto Fibonacci AI - Level Respect Statistics [Dots3Red]📐 AUTO FIBONACCI AI - LEVEL RESPECT STATISTICS
Fibonacci retracement is one of the most widely used tools in trading. It is also one of the least verified. "The 0.618 is the golden pocket" gets repeated everywhere and tested nowhere. This script keeps score — not universally, but specifically for the chart you are actually looking at.
✨ WHY THIS IS DIFFERENT
Every other Fibonacci tool draws the levels and stops there. Whether those levels actually work on this instrument, this timeframe, this market condition is left entirely to assumption. This script treats that as a question worth answering. Every touch of every level is graded: did price reject cleanly, or push through? The results accumulate directly in each level's label:
📊 0.618 | 71% bounced (n=24)
That means: on this chart, at this timeframe, price has touched the 0.618 level 24 times across all the swings this script has processed. 71% of those touches resulted in a genuine rejection. 29% broke through. That is a real measurement, not a theoretical assumption.
⚙️ HOW IT WORKS
📐 Auto swing detection — the script identifies the most recent confirmed pivot high and pivot low using a configurable lookback. A minimum swing size filter (in ATR units) rejects small, noisy movements — only swings that represent genuine market structure anchor the Fibonacci grid. Swings are confirmed only on closed bars, so the anchor never changes retroactively.
📏 Retracement levels — the standard five levels are drawn from the detected swing: 0.236, 0.382, 0.500, 0.618, and 0.786. The 0.618 is highlighted in amber since it receives the most attention from traders and institutions. Each level accumulates its own separate statistics.
🎯 Touch grading — every time price approaches a level within a configurable tolerance, a touch is recorded and enters a pending state. Within the outcome window (configurable bars), it resolves as one of three outcomes:
• Bounce — price moved cleanly away from the level without breaking it
• Break — price closed convincingly through the level
• Timeout — neither happened clearly enough to call; counted as a touch but not a bounce or break
Each resolved touch feeds into that level's cumulative percentage — and the labels update to show the live result.
🟢 Extension targets — when price breaks past the swing's extreme (not just retracing to it but genuinely continuing through), the script activates two extension targets: 1.272 and 1.618. These are the levels most commonly used as continuation targets after a structural break. Each is tracked in its own way: did price actually reach 1.272 after the break? 1.618? Over time, the extension labels show:
📊 1.272 | hit 64% (n=11)
📊 1.618 | hit 41% (n=11)
That's a concrete answer to "how far does price usually go when it breaks the swing?" — specific to this chart, not assumed from theory.
🔒 Non-repainting — pivots only confirm after the required bars on each side have closed. The swing anchor only updates when a new qualifying pivot is confirmed. Grading only happens on confirmed bars. The levels and statistics reflect what actually happened, not what the current bar is doing in real time.
🧭 HOW TO USE
1️⃣ Let the sample size build before trusting the percentages. A level that shows "0% bounced (n=2)" is meaningless — two touches is noise. The labels deliberately show the N= count so you can judge reliability yourself. A consistent reading across 15+ touches is worth paying attention to; 3-5 touches is still developing.
2️⃣ Compare across levels. If 0.382 shows 40% bounced on this chart while 0.618 shows 74% bounced, that's telling you something specific about which pullback depth this market tends to respect. That difference is invisible to a plain Fibonacci tool.
3️⃣ Use extension hit rates for target selection. If 1.272 has been reached in 64% of breakout cases but 1.618 only in 41%, the first extension is the more realistic target on this chart — and the second, while possible, has historically been hit less than half the time. This is not a rule; it is an observation about past behavior on this specific chart.
4️⃣ Adjust settings to the timeframe. The defaults (pivot leg 8, minimum swing 3× ATR) are calibrated for mid-range timeframes — 15-minute through 4-hour — where Fibonacci retracement is most actively watched by swing traders and where enough swings complete regularly to build meaningful sample counts. On faster timeframes, reduce both settings so smaller swings qualify. On slower ones, increase them to filter noise.
5️⃣ The statistics describe the past, not the future. A high bounce rate at 0.618 means price has historically respected this level on this chart. It is not a promise that the current touch will also bounce. Use the percentages as context — one input among many — not as an automatic signal.
🛠️ SETTINGS
📐 Swing Detection
• Pivot Leg — bars required on each side to confirm a swing pivot
• Min Swing Size — smallest qualifying swing in ATR units; filters out noise
🎯 Level Grading
• Touch Tolerance — how close price must come to a level to count as a touch
• Break Buffer — how far past a level close must clear to grade as a break
• Bounce Distance — how far price must move away, cleanly, to grade as a bounce
• Outcome Window — bars allowed for a touch to resolve
• Extension Window — bars allowed for an extension target to be reached after a break
🎨 Visualization
• Show Extension Targets — toggle the 1.272 / 1.618 green lines
• Per-Level Stat Labels — toggle the bounce-rate text on each level
🖥️ Dashboard
• Show / hide, position — swing direction and per-level bounce rates in a compact table
📝 NOTES
The script tracks one active Fibonacci grid at a time — the most recent qualifying swing. When a new swing confirms, the grid shifts and per-level statistics carry forward from all previous swings on the chart. The statistics are global across all swings processed since the indicator was added to the chart, not per-swing.
Statistics are most meaningful on timeframes where Fibonacci retracement is genuinely watched and defended by real market participants — typically 15-minute through 4-hour. Very short timeframes will accumulate sample counts quickly but the measurements may reflect microstructure noise rather than true level respect. Very long timeframes will take extended real-world time to build enough data to be informative.
⚠️ DISCLAIMER
This is an analytical and visualization tool. It does not generate trade signals and does not constitute financial advice. Historical bounce and hit rates do not guarantee how price will behave at any specific future level touch. Indikator

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.
Indikator

Curved Market Structure & SMC Liquidity [ ICT ]================================================================================
CURVED MARKET STRUCTURE & SMC LIQUIDITY
================================================================================
Curved Market Structure and SMC Liquidity ICT is an all-in-one institutional trading suite designed for precision analysis across Crypto, Forex, Commodities, and Stocks. It merges smooth mathematical volatility curves with automated Smart Money Concepts (SMC) structure, body glow momentum candles, dynamic equilibrium range tracking, and a visible right-side volume profile.
--------------------------------------------------------------------------------
1. CORE FEATURES & MECHANICS
--------------------------------------------------------------------------------
• Dynamic Smooth Curve Bands
Uses double-exponential smoothing and standard deviation to generate adaptive high-probability trend curves. The lower curve marks an institutional demand/liquidity sweep zone, while the upper curve identifies overextended supply areas.
• Institutional Structure Mapping (BOS & CHoCH)
Automatically tracks key swing highs and lows. Upon structure breakout, it draws precise Break of Structure (BOS) or Change of Character (CHoCH) lines starting exactly from the broken swing level to the breakout candle.
• Filtered Sweep Signals & Cooldown Engine
Liquidity sweep signals require candle close confirmation and directional momentum alignment. An internal cooldown counter suppresses repetitive signals during tight consolidation phases.
• Body Glow Candle Dynamics
Recolors candle bodies based on directional strength and candle range. Active expansion bars highlight bright green or red, while low-volatility range candles render in neutral gray.
• Dynamic 0.5 Equilibrium & Confluence Zones
Continuously projects the 0.5 discount/premium equilibrium midpoint of the active swing range, alongside borderless demand and supply confluence zones.
• High Visibility Volume Profile
Renders a clean volume profile histogram on the right side of the chart to reveal High Volume Nodes (HVN) and Low Volume Nodes (LVN) over the selected lookback range.
--------------------------------------------------------------------------------
2. HOW TO USE FOR TRADING
--------------------------------------------------------------------------------
1. Determining Market Bias
Check whether current price action is trading above or below the 0.5 Equilibrium level and observe the direction of the latest BOS or CHoCH structural break.
2. Bullish Entry Rules
Wait for price to sweep or touch the lower green curve band. Enter long upon receiving a confirmed Buy Sweep signal accompanied by a green Body Glow candle near the demand zone.
3. Bearish Entry Rules
Wait for price to sweep or touch the upper red curve band. Enter short upon receiving a confirmed Sell Sweep signal accompanied by a red Body Glow candle near the supply zone.
4. Profit Targets & Risk Management
Set primary take-profit targets at the 0.5 Equilibrium line and secondary targets at the opposite curve band or major structural swing levels.
--------------------------------------------------------------------------------
3. SCALPING & TIMEFRAME GUIDANCE
--------------------------------------------------------------------------------
• Lower Timeframe Scalping (1m, 5m, 15m)
Lower the Swing Sensitivity setting to 3 or 5 for rapid structural tracking. Use right-side volume profile peaks to trade reversals back toward low-volume gaps.
• Higher Timeframe Bias (1H, 4H, Daily)
Use the 0.5 Equilibrium line to divide the market into Premium (favorable for shorts) and Discount (favorable for longs) zones before taking trades.
--------------------------------------------------------------------------------
4. SETTINGS BREAKDOWN
--------------------------------------------------------------------------------
• Curve Smoothing Factor: Controls band smoothness and responsiveness to price.
• Curve Multiplier: Adjusts upper/lower curve expansion based on market volatility.
• Signal Cooldown: Sets the required bar gap between signals to filter noise.
• Consolidation Threshold: Sets the body-to-range ratio for identifying neutral gray range candles.
• Swing Sensitivity: Sets pivot lookback length for validating swing highs and lows.
• Text Placement Settings: Customizes horizontal and vertical label alignments.
• Profile Lookback Range: Defines historical bar depth for the volume profile histogram.
--------------------------------------------------------------------------------
5. THINGS TO AVOID
--------------------------------------------------------------------------------
• Do not trade signals against the higher-timeframe trend direction.
• Avoid taking Buy signals during an active bearish BOS sequence without a fresh CHoCH confirmation.
• Avoid entering trades during major economic news releases or low-liquidity market sessions.
• Do not rely on printed shapes in isolation. Always combine signals with SMC structure, 0.5 Equilibrium levels, and volume confluences.
--------------------------------------------------------------------------------
DISCLAIMER
--------------------------------------------------------------------------------
This script is built exclusively for educational and chart visualization purposes. Past performance of visual signals does not guarantee future market results. Always manage risk responsibly. Indikator

Precision Volume Profile [AxeAlgo]OVERVIEW
Precision Volume Profile is a native Pine Script volume
profile tool: it rebuilds a full price-by-volume histogram for whatever
range you anchor it to — the visible chart, a fixed bar count, the
current day, week, month, or a custom trading session — and derives the
Point of Control (POC), Value Area High/Low (VAH/VAL), a Prior Period
Value Area with open-type and POC-migration classification, and a
session VWAP with standard-deviation bands, all from the same underlying
bar history.
This is the classic Market Profile / Volume Profile toolkit used to
judge where the market has actually traded the most volume — not just
where price is right now — and how today's activity compares to the
period before it. Everything here runs natively on your own chart data;
there are no external requests, no repainting of confirmed history, and
no hidden calculations.
This script is free and open-source, published so the full methodology
described below is verifiable directly in the source code.
============================================================
HOW IT WORKS
============================================================
Volume Profile Histogram
----------------------------
For the selected range, price is divided into rows (automatically sized
to the range, or set manually) and every historical bar's volume is
distributed across the rows its high-low span touches. Each bar's
volume is split into an estimated buy side and sell side based on where
that bar's close sits between its low and high — a bar that closed near
its high is treated as more buy-weighted, one that closed near its low
as more sell-weighted. The row with the most total volume becomes the
POC; rows are colored on a gradient between two configurable colors
based on that estimated buy/sell split, with opacity scaled to each
row's relative strength versus the POC.
Value Area
----------------------------
The Value Area is expanded outward from the POC two rows at a time —
comparing the volume of the next pair of rows above versus the next
pair below and adding whichever pair holds more volume — until the
accumulated volume reaches the configured Value Area percentage (70% by
default, the standard Market Profile convention). This is the same
textbook two-row-pair expansion method used for both the live profile
and the Prior Period snapshot below, so the two stay directly
comparable.
Anchor Modes
----------------------------
Six ways to define what range the profile is built from: Visible Range
(whatever's currently on screen), Fixed Bars (a set lookback), Day,
Week, Month, or a fully custom Session (configurable start/end time and
timezone, e.g. 0930-1600 for US regular trading hours). A dotted
vertical line marks exactly where the current profile's lookback
begins whenever that boundary isn't simply the edge of your screen.
Prior Period Value Area, Open Type & POC Migration
----------------------------------------------------
At each period boundary (Day or Week, configurable), the script
snapshots the period that just closed: its Value Area is drawn as a
dashed box extending forward, today's open is classified as Above,
Below, or Inside that prior value, and the new POC is compared against
the previous one to report whether it's migrating up, down, or holding
flat. This is the standard "open-type" read used to gauge whether a
session is likely to be rotational or trending.
Session VWAP & Standard Deviation Bands
------------------------------------------
A running volume-weighted average price with up to two configurable
standard-deviation bands on each side, calculated with the same
volume-weighted variance formula as TradingView's own VWAP tool. It can
reset either at calendar midnight or at your custom session's open
time — the same session window used by the Session anchor mode above,
so the two can be kept in sync.
Stats Panel
----------------------------
An optional on-chart table summarizing the active anchor mode, bar/row
count, POC, VAH/VAL, Value Area width, estimated buy/sell split and
delta, total volume, open type, POC migration, and current VWAP —
everything the script computes, in one place, without needing to
hover over individual lines.
Alerts
----------------------------
Two alert conditions: price crossing the POC, and price entering or
exiting the Value Area.
============================================================
ACCURACY NOTE — HOW BUY/SELL VOLUME IS ESTIMATED
============================================================
Pine Script does not have access to real trade-by-trade tape or
bid/ask data on standard bars, so no volume profile indicator can
measure "true" buy versus sell volume directly. This script — like
essentially every volume profile tool on TradingView — estimates it
from each bar's own OHLC: where the close sits between the low and the
high. This is a widely used, reasonable proxy, but it is an estimate,
not measured order flow. Treat the buy/sell split and Delta reading as
directional context, not a precise execution metric.
============================================================
HOW TO USE IT
============================================================
Add the indicator, pick an Anchor mode that matches how you trade
(Visible Range for manual exploration, Day/Week/Session for a
consistent recurring reference), and set the Value Area percentage if
you want something other than the 70% default. Every input has an
in-editor tooltip explaining exactly what it changes. The Prior Period
panel rows (Open Type, POC Migration) are most useful checked once at
the start of a session; the POC/VAH/VAL lines and histogram are
intended as a persistent reference for the rest of the period.
============================================================
REPAINTING & REAL-TIME BEHAVIOR
============================================================
The profile, its lines, and the stats panel are only (re)computed on
the most recent bar (barstate.islast) — not on every historical bar —
for performance, and are cleared and redrawn from scratch each time
they update. In Visible Range or Fixed Bars mode this means the profile
legitimately changes as you scroll, zoom, or as new bars form — that's
the tool responding to a different input range, not repainting of a
fixed historical value. In Day/Week/Month/Session mode, once a period
has closed its POC, VAH, and VAL are fixed and do not change on
subsequent reloads; only the currently forming period's profile updates
live as new bars print. The Prior Period Value Area snapshot is
computed once, at the moment its period closes, and is never
recalculated afterward.
============================================================
LIMITATIONS — PLEASE READ
============================================================
- Buy/sell volume is an OHLC-based estimate, not real tape data (see
the Accuracy Note above).
- The Value Area expansion is a discrete two-row-pair algorithm; on
very coarse row counts it can land a percentage point or two away
from the exact target rather than hitting it precisely.
- "Max Bars Stored" caps how much history is kept in memory for
performance; extremely long Fixed Bars or Visible Range lookbacks on
very low timeframes can exceed it and get truncated.
- The custom Session anchor and VWAP session-open reset depend on the
Session Time and Timezone inputs actually matching your instrument's
real trading session — mismatched inputs will produce a
technically-correct but practically meaningless boundary.
- This is a discretionary analysis tool intended to support your own
read of the market, not a mechanical, guaranteed-signal system.
============================================================
RISK DISCLAIMER
============================================================
This script is provided for educational and informational purposes
only. It is not financial advice, and it is not a recommendation to buy
or sell any security or instrument. Trading and investing involve
substantial risk of loss and are not suitable for every investor. Past
performance is not indicative of future results. Always do your own
research and consider consulting a licensed financial advisor before
making trading decisions. Use this indicator, and any alerts it
generates, entirely at your own risk.
============================================================
ORIGINALITY
============================================================
This is original work: the row-building and Value Area expansion
algorithms, the Prior Period snapshot and open-type/migration logic,
the session-anchor handling, and the visual design are all written
from scratch for this script. It is published free and open-source so
the full methodology described above is verifiable directly in the
source code.
Indikator

Sector/Theme Performance DashboardThis indicator renders a customizable matrix directly on your chart to track sector, sub-industry, and thematic ETF performance across key lookback periods without switching tabs.
Key Features:
Multi-Timeframe Metrics: Track 1-Day, 1-Week, 1-Month, and YTD performance side-by-side.
Theme Mapping: Displays explicit thematic descriptions alongside each ticker (e.g., Capital Markets, Semiconductors, Cloud, Cyber, Volatility).
Visual Customization: Toggle individual timeframe columns on/off, adjust matrix sizing, and set custom color palettes.
Bypassing the 40-Ticker Script Limit:
Because TradingView caps each script to 40 data calls, ETFs are organized into select group batches in the settings.
To display 120+ ETFs simultaneously:
1. Load multiple instances of the indicator onto your chart.
2. Assign a different group batch to each instance.
3. Set the screen placement (Left, Center, Right) in the settings to render side-by-side panels. Indikator
