ICT IRL ERL Liquidity Rotation Indicator v1This indicator automates a full ICT-style liquidity rotation model: it builds dealing ranges for the Daily, London, and NY AM sessions, plots OTE (Optimal Trade Entry) fib zones on each, locates a confirming Fair Value Gap inside that OTE zone across multiple timeframes (1H → 15m → 5m), and then tracks a full setup lifecycle — tap, manipulation leg, inversed-1m-FVG or CISD confirmation, and entry — from IDLE through HUNTING to TRIGGERED. A second, independent engine does the reverse: it watches key session highs/lows (London and Asia) for a liquidity sweep and runs the same manipulation-leg / iFVG / CISD confirmation logic in the opposite direction (ERL → IRL).
What it plots
Session highs/lows (Asia, London, NY AM, NY PM) with live and locked untaken-liquidity levels
NDOG/NWOG opening gaps
Daily, London, and NY Killzone dealing ranges with OTE fib levels (0, 0.5, 0.62, 0.705, 0.79, 1)
The specific FVG (labelled by timeframe and range) sitting inside each range's OTE zone
LONG/SHORT labels the moment a setup's entry trigger fires
How to use it
Run the indicator on a 1-minute chart — the entry-trigger logic is designed specifically for 1m confirmation.
Watch the two status tables (top-right: IRL→ERL per session; bottom-right: ERL→IRL per level) to see each setup's current state: IDLE (nothing happening), HUNTING (tapped and watching for confirmation), TRIGGERED (entry signal fired), or COMPLETED.
A LONG/SHORT forecast appears on the chart when a setup triggers — that's your entry signal.
All key parameters — session times, swing sensitivity, FVG timeframe priority, minimum displacement for a valid trigger — are adjustable in the settings.
Note: This is a decision-support tool, not signal-and-forget automation — always apply your own judgment and risk management before acting on any label. 지표

Candlestick Edge Auto-Preset MTF Self-CalibratingCandlestick Edge only fires a candlestick pattern when it is "rightly placed" — confirmed by a higher-timeframe trend AND by where price sits in the developing volume profile. Then it does what most pattern tools don't: it forward-tests every signal and reports the MEASURED edge per pattern, so you read realized performance instead of a marketing claim.
WHY THIS IS ONE TOOL (not a bundle)
The parts answer one question about one candle: "is this pattern in a place that has historically paid, and does it beat a coin-flip here?"
PATTERN detection says WHAT printed (24 classic candlestick patterns).
HTF ALIGNMENT says whether the bigger trend agrees.
VOLUME-PROFILE POSITIONING says WHERE it printed — reversals only at value-area edges, naked POC, HVN support/resistance, or liquidity sweeps; continuations only through low-volume voids or on a value breakout.
The CALIBRATION SPINE forward-resolves each signal with a triple barrier and reports Hit% vs a matched Base% (Edge) with a Wilson confidence interval, so a placed-and-confirmed pattern can be told apart from a small-sample fluke.
One pattern substrate, one location read, one calibration spine.
MEASUREMENT (the differentiator)
Each signal opens at close with target = ±TP·ATR, stop = ∓SL·ATR, over a fixed horizon. The first barrier touched decides win/loss (same-bar tie counts as the stop — conservative). Base% is the unconditional same-barrier win-rate for that direction. Edge = Hit% − Base%; a "*" marks rows whose Wilson 95% lower bound clears the base rate. A leave-one-out row prices each filter's marginal contribution, and a footer lists only the patterns that are green AND have enough samples to trust in the current configuration.
AUTO PRESET (default on)
Candlestick edges are timeframe-specific. Auto Preset reads the chart's timeframe and switches on the pattern subset plus higher-timeframe distance that performed best for that timeframe in the author's study of NSE index futures, and forces the two filters on. Turn it OFF for full manual research mode: all 24 patterns selectable, filters and HTF distance (3x / 5x / 15x / custom) under your control. Nothing is ever removed — the preset only curates which patterns are active by default per timeframe.
HOW TO USE
Leave Auto Preset on and read the labelled signals (teal = bullish, red = bearish, each tagged with the pattern name). Open "Show scoreboard" to see measured Edge per pattern — trust the EDGE column and the "*", never a raw hit-rate. Best behaviour is on intraday timeframes (1H and below).
ORIGINALITY
Standard techniques are credited below. What is original is the combination: a location-gated pattern engine whose every signal is forward-calibrated, a timeframe-adaptive auto-preset, a leave-one-out filter attribution, and an auto-surfaced tradeable set — measured edge, not asserted.
NON-REPAINT
Signals open on confirmed bars; triple-barrier outcomes resolve on bars AFTER the trigger; all higher-timeframe / lower-timeframe / prior-day-POC requests use lookahead_off and confirmed intrabars. Pivots used by sweeps confirm first.
DATA & MARKETS
Runs on any symbol that reports volume; the developing profile needs volume to be meaningful. Defaults are tuned for intraday index futures. On the Enhanced data tier the delta read uses intrabar aggregation (richer on paid plans) and auto-falls-back to an OHLCV proxy when intrabars aren't served — safe to leave on for any plan.
CONCEPT CREDITS (methods operationalized — original Pine re-derivations)
Candlestick patterns — Nison; pattern-performance framing per Bulkowski
Market / auction profile, POC / Value Area — Steidlmayer; Dalton
Bulk Volume Classification — Easley, Lopez de Prado & O'Hara (2012)
Triple-barrier labelling — Lopez de Prado
Wilson score interval — Wilson (1927)
HONESTY / LIMITS
The profile is an ATR-binned developing session profile (not tick POC). Delta is an estimate (proxy or intrabar reconstruction), not true bid/ask. Reported edge is context measured on loaded history — not a prediction or a promise. The preset defaults were tuned on one instrument over a recent window, so treat them as a well-measured hypothesis, not proven alpha.
Educational tool. Not financial advice — you alone are responsible for your trading decisions. 지표

[Core Convexity] SMT Divergences
## Description
The SMT Divergences indicator is a comprehensive tool designed to detect and manage Smart Money Tool (SMT) divergences across multiple assets directly on your primary chart. SMT divergence is a classic concept used to identify institutional accumulation or distribution by revealing a lack of correlation between highly correlated assets (such as NQ, ES, and YM, or Gold and Silver) at key structural swing points.
This script automates the detection process, filters out duplicate signals, and tracks mitigation (when an SMT structure is broken or invalidated by price action) to keep your charts clean and actionable.
### Key Features
* **Automatic Asset Pairing:** Detects the root symbol of your current chart and automatically pulls data for the most relevant correlated instruments. For example, if you are viewing NQ, it will automatically check ES and YM. It also features a dedicated "No YM" mode to simplify index correlation down to NQ and ES exclusively.
* **Custom Asset Input:** Switch the selection mode to "Custom" to manually input any two symbols you wish to compare against your primary chart.
* **Dual-Layer Detection:** The script scans both immediate pivot points and structural swings (Highs/Lows) to provide both near-term and macro SMT identification.
* **Dynamic Mitigation Stack:** When price invalidates an SMT level, the indicator can immediately remove the visual lines or keep them on the chart for a specified expiration window with a configurable tag to track historical structural breaches.
* **Advanced Merging Logic:** To eliminate chart clutter, the script includes options to merge duplicate rays triggering on the same candle, as well as merging same-origin SMTs into a single combined projection point.
---
## How It Works
An SMT Divergence occurs when one asset fails to confirm a new swing high or low made by a correlated asset:
* **Bearish SMT:** The primary asset fails to make a higher high while the correlated asset successfully drives to a higher high, indicating underlying weakness.
* **Bullish SMT:** The primary asset fails to make a lower low while the correlated asset successfully drives to a lower low, indicating underlying strength.
The script runs a safe lookback sequence up to 450 bars to find matching historical pivot structures, compares the relationship between the primary chart and your secondary/tertiary assets, and plots precision lines directly between the corresponding structural points.
---
## Settings and Inputs
### System
* **Real-Time Detection:** When enabled, calculations update dynamically on the live, open bar. When disabled, signals confirm strictly on the close of the candle.
* **Merge Duplicate Rays:** If both tracked assets trigger an SMT divergence on the exact same bar, this option condenses them into a single line with a combined text label.
* **Merge Same-Origin SMTs:** Combines multiple SMT lines originating from the exact same candle, extending the line to the furthest matching historical point and appending an (M) tag.
* **Enable Structure SMT:** Expands the algorithm to look for structural pivot failures in addition to immediate, strict candle-to-candle alignment.
* **Lookback:** Determines how many historical bars the script will scan to find a matching structural pivot point (capped safely up to 500 bars).
* **Min Bars for Line/Label:** Configures the strict visual threshold required before rendering a line or a text label to screen, filtering out negligible, noise-level divergences.
### Broken SMT Mitigation
* **Remove Broken SMTs:** Activates the garbage collection system to handle lines when price violates the divergence level.
* **Bars to Keep After Invalidation:** Determines how long a broken SMT line remains visible on your chart before deletion. Set this to 0 for immediate visual removal.
* **Show (X) Tag on Invalidated:** Appends an (X) character to the text labels of broken levels during their expiration window.
* **Mitigation Logic:** Choose between "Pair Only (Strict)" which invalidates the line if the primary chart and the specific asset break structure, or "All Connected (Global)" which requires all three assets to breach the level before declaring an invalidation.
### Asset Selection and Styling
* **Asset Selection Mode:** Toggle between Automatic, Automatic (No YM), or Custom routing.
* **Check Mode:** Options include "Strict" (where bullish lines check highs and bearish lines check lows) or "Both High & Low" for unrestricted pivot mapping.
* **Styling Groups:** Fully customize visibility, font sizes, colors, line widths, and line styles (Solid, Dashed, Dotted) independently for both Asset 1 and Asset 2 configurations. 지표

Order Flow Volume Delta, CVD, Absorption & Divergence [LunqFX]Price shows you WHERE the market went. Order flow shows you WHO pushed it there — buyers or sellers — and whether they had real volume behind the move. This Order Flow indicator reads the volume delta on every candle (the balance of buying volume vs selling volume), builds it into a cumulative volume delta (CVD) trend, and automatically marks the two order-flow events that lead price: absorption and delta divergence. Everything is drawn on your chart as clean delta candles, order-flow support/resistance levels and a live buying-pressure dashboard.
❶ THE CONCEPTS (so it's clear)
▸ VOLUME DELTA — the difference between buying volume and selling volume inside a bar. Positive delta = buyers were more aggressive, negative = sellers. It is the core of all order-flow analysis.
▸ CVD (CUMULATIVE VOLUME DELTA) — delta added up over time. A rising CVD means buyers are steadily accumulating; a falling CVD means distribution by sellers. CVD is how you see the real trend of order flow, not just price.
▸ ABSORPTION — a bar with heavy volume but almost no price movement. It means a large player (smart money / institutional) is absorbing every market order at that level. Absorption very often appears right before a reversal.
▸ DELTA DIVERGENCE — price makes a new high but CVD does not (or a new low but CVD does not). The move has no real volume behind it — a trap / exhaustion signal that warns a reversal is likely.
❷ WHAT YOU SEE ON THE CHART
▸ Delta candles — sky-blue when buyers won the bar, coral when sellers won; the brighter the candle, the more one-sided the flow. You read buying and selling pressure at a glance.
▸ Order-flow levels — every absorption (gold) and divergence (blue / coral) is projected to the right as a support/resistance level with its exact price. These are the levels where big volume actually traded, so price reacts to them again.
▸ Live dashboard — who is in control (buyers vs sellers) from the CVD, the CVD value, the current bar's buy/sell pressure split, and the latest signal.
❸ HOW TO TRADE IT — STEP BY STEP
1 — Read the BIAS. The panel shows ▲ BUYERS or ▼ SELLERS IN CONTROL from the CVD. Trade with the side that controls order flow, not against it.
2 — Watch for DELTA DIVERGENCE against the move. Price higher high while CVD makes a lower high = buyers are exhausted → look for shorts. Price lower low while CVD makes a higher low = sellers are exhausted → look for longs. This is the highest-value order-flow reversal signal.
3 — Use ABSORPTION as a reversal cue. When heavy volume fails to move price, the move is being absorbed; watch for the turn and use that gold level as your invalidation line.
4 — Trade the reaction at order-flow levels. Old absorption and divergence levels act as support and resistance — enter when the delta flips back in your favour as price returns to a level.
5 — Confirm with Bar pressure. The panel's ▲/▼ % buy shows the live buy/sell split — take the trade when it agrees with your setup and the bias.
❹ HOW IT WORKS (fully transparent)
Each bar's volume is split by where price closed in its range: buy-volume = volume × (close − low) ÷ range, sell-volume = volume × (high − close) ÷ range, and delta = buy − sell. This is a transparent, range-based volume-delta estimate — it needs no tick or bid/ask feed, so it runs on any symbol. CVD is the running sum of that delta (session-anchored on intraday charts, fully cumulative on daily and higher, handled automatically). Absorption is flagged when volume rises above its average by your chosen multiple while the candle body stays smaller than a fraction of ATR. Divergence compares each confirmed swing pivot in price with the CVD value at that pivot. Every reading comes from closed bars and confirmed pivots — no repainting, no lookahead.
Order flow is strongest on markets with true exchange volume — crypto, stocks, futures and indices — and on intraday timeframes (1m–4h), where buying and selling pressure is most meaningful. On forex, volume is broker tick-volume, so treat the delta as an approximation of order flow rather than exact.
SETTINGS — CVD reset (Session / Week / None), absorption sensitivity, divergence swing length, number of order-flow levels + glow, delta candles on/off, dashboard position.
ALERTS — bullish delta divergence, bearish delta divergence, absorption, and CVD crossing zero (buyers / sellers taking control).
This indicator is an educational market-analysis tool, not financial advice. The volume delta shown here is a transparent estimate from price and volume, not exchange-audited bid/ask order flow, and past behaviour does not guarantee future results. Always confirm with your own analysis and manage your risk.
지표

Market Regime Engine [NQ Labs] WHAT THIS ANSWERS
Almost every indicator tells you WHAT the market is doing. Very few tell you
whether the current market has enough exploitable structure to be worth
risking money on at all. The Market Regime Engine is built for that second
question: should I be trading this right now, and if so, what style of
approach do current conditions actually favour?
It is not a signal generator. It produces no entries. It is a filter you run
underneath whatever you already trade.
WHY IT IS BUILT THIS WAY
Two design decisions separate this from a conventional regime or trend filter.
1. EVERY AXIS IS PERCENTILE-RANKED AGAINST ITS OWN HISTORY.
Most regime tools use fixed thresholds - an ADX of 25, an ATR multiplier of 3.
Those numbers are calibrated to whatever the author tested on. They are the
reason a tool behaves sensibly on one instrument and nonsensically on the
next. Here, each axis is ranked against its own recent distribution on the
current symbol and timeframe, so a 65th-percentile reading carries the same
meaning on a crypto pair as it does on an FX major. Nothing needs retuning
per market.
2. THE THREE AXES ARE ORTHOGONAL BY DESIGN.
Many "confluence" tools stack three views of momentum and present the
agreement as confirmation. Correlated inputs agreeing is not evidence. These
three measure genuinely different properties:
DIRECTIONAL EFFICIENCY - net distance travelled divided by the total path
walked to get there. A value near 1 is a straight line. A value near 0 means
price ended where it started after a great deal of work. This is the most
direct available answer to "is there a trend here", and it is independent of
direction.
VOLATILITY STATE - ATR ranked against its own history. Not "is volatility
high" in absolute terms, but "is volatility high for this instrument".
RETURN PERSISTENCE - lag-1 autocorrelation of log returns. Positive means an
up bar tends to be followed by an up bar, so momentum approaches have
something to work with. Negative means the market reverts. Near zero means
returns carry no usable memory.
THE SCORING LOGIC
The Tradeability Score (0-100) rests on one idea:
Efficiency is the signal. Volatility is the cost of being wrong.
Volatility only hurts you when there is no direction to exploit.
So the noise penalty is the product of how little direction exists and how
violent the market is. It approaches zero inside a strong trend no matter how
wild conditions get - because volatility inside a trend is opportunity, not
noise - and it peaks precisely where traders are most reliably ground down:
low efficiency combined with high volatility. That specific combination is
what the engine exists to flag.
THE FIVE REGIMES
TREND Efficiency high. Directional. Follow it.
VOLATILE CHOP Efficiency low, volatility high. No direction, maximum cost
of being wrong. The state that does the damage.
COIL Efficiency low, volatility low. Compression. Wait.
RANGE Efficiency low, volatility middling. Edges are tradeable.
TRANSITION Efficiency mid-range. No clean read. Reduce size.
A raw regime read must hold for a configurable number of consecutive bars
before it is confirmed. Without that filter, readings that straddle a
threshold flip back and forth for single bars.
REGIME MATURITY - THE PART I HAVE NOT SEEN ELSEWHERE
The engine records the length of every completed regime run on the current
chart and reports the current run against that learned baseline, together with
the sample size behind it.
A trend at 0.3x its typical duration and a trend at 2.4x are not the same
trade, even though every conventional indicator prints the identical reading
for both. A compression that has lasted three times longer than compressions
normally last on this instrument is a different proposition to one that
started six bars ago.
The sample size (n=) is shown deliberately. Below the configured threshold the
cell dims, because a baseline built from two observations is not evidence and
should not be dressed up as though it were.
HOW TO USE IT
The engine is a gate, not a trigger. The intended workflow:
1. Read the Verdict first. STAND DOWN means your edge, whatever it is, is
probably not present. The most valuable output of this tool is the trades
it talks you out of.
2. Read the Regime and Favoured Style. Trend-following systems belong in
TREND. Mean-reversion belongs in RANGE, and only when Persistence confirms
the market is actually reverting rather than merely quiet. COIL means the
setup has not arrived yet. VOLATILE CHOP means nothing you own works here.
3. Read Persistence before choosing an approach. If it reads Random, the
market has no memory to exploit in either direction, and both momentum and
mean-reversion are coin flips.
4. Use vs Typical for position management, not entry. An extended regime is
not a reversal signal. It is a reason to stop adding and to tighten what
you already hold.
5. Let the ribbon and score do the work on the price chart. The dashboard can
be forced onto the main pane so the engine occupies a pane without costing
you chart real estate.
SETTINGS THAT ACTUALLY MATTER
RANKING LOOKBACK is the important one. It must span several complete regime
cycles on your timeframe or every axis will rank near the middle and
everything will read TRANSITION. 250 bars on a daily chart is roughly a year -
a real baseline. 250 bars on a 5-minute chart is under a day, and is not.
On intraday timeframes, raise it substantially.
MINIMUM REGIME RUN trades responsiveness for stability. Higher values give a
calmer read and a cleaner duration baseline at the cost of confirming changes
later. Set it to 1 to see the unfiltered classification.
CHOP PENALTY controls how hard low-efficiency volatility is punished. Set it
to 0 and the score becomes pure efficiency rank.
EFFICIENCY and VOLATILITY thresholds are percentiles, not raw values. They do
not need adjusting per instrument. That is the point.
LIMITATIONS - STATED PLAINLY
- This is a lagging, descriptive tool. It classifies conditions that have
already formed. It does not forecast, and it cannot tell you a regime is
about to end.
- Confirmation costs lag. A genuine regime change registers a few bars late by
design. That is the price of not flickering.
- The maturity baseline is learned from visible chart history and rebuilds
whenever settings, symbol, or timeframe change. It is not persistent memory.
Early in a chart, or for a rarely-occurring regime, the sample is thin. The
n= value tells you when to discount it.
- On intraday equity charts, overnight gaps inflate ATR and distort the
persistence reading. Daily and above, or extended hours, handle this better.
- Autocorrelation is a weak statistic on short samples. Persistence readings
close to zero should be read as "no information", not as a subtle signal.
- Efficiency is directionless. TREND tells you a trend exists, not which way
it points. Pair it with something that reads direction.
- No regime classification is correct at the moment it matters most, which is
the turn. Nothing here changes that.
This script is open-source. Read the code, disagree with it, improve it.
This is an analytical tool for studying market conditions. It is not financial
advice, and it does not generate trade recommendations. Trading involves risk
of loss. 지표

ICT SMC H4 FVG Retest M15 Scalping KillzonesICT SMC H4 FVG Retest — M15 Scalping Killzones
Overview
ICT SMC H4 FVG Retest — M15 Scalping Killzones is a multi-timeframe trading indicator designed to identify structured intraday setups based on:
* Confirmed higher-timeframe Fair Value Gaps
* M15 execution Fair Value Gaps
* ICT-style killzones
* Session highs and lows
* H4 buy-side and sell-side liquidity
* Market or limit-entry models
* Liquidity-based profit targets
The indicator is intended to be used on a 15-minute chart.
Its purpose is not to generate a large number of signals. It is designed to wait for a higher-timeframe imbalance, a valid departure from that zone, and a later retest during an active trading session.
⸻
Core strategy
The standard short setup follows this sequence:
1. A bearish H4 Fair Value Gap is confirmed.
2. Price moves below the H4 FVG.
3. Price later returns to the H4 FVG during an enabled killzone.
4. A bearish M15 FVG forms and overlaps the H4 zone.
5. The M15 candle closes and confirms the setup.
6. The indicator displays the proposed entry, stop-loss and target.
The bullish setup uses the opposite sequence:
1. A bullish H4 FVG is confirmed.
2. Price moves above the H4 FVG.
3. Price later returns to the H4 FVG during an enabled killzone.
4. A bullish M15 FVG forms inside or overlapping the H4 zone.
5. The M15 candle closes and confirms the setup.
6. The indicator displays the proposed entry, stop-loss and target.
The H4 FVG that is created during the initial market displacement is treated as a future retest zone. The indicator does not use the M15 FVGs that formed before the H4 candle was confirmed.
⸻
Non-repainting higher-timeframe logic
The indicator only uses confirmed higher-timeframe candles.
A new H4 FVG is therefore displayed only after the third H4 candle in the three-candle FVG sequence has closed.
This avoids using an H4 imbalance that may appear intrabar and disappear before the H4 candle closes.
The trade-off is intentional:
* the FVG is not shown as confirmed while the H4 candle is still forming;
* once the H4 candle closes, the confirmed zone appears on the M15 chart;
* the indicator then waits for a future retest.
The confirmed HTF FVG is used for signals and alerts. No unconfirmed HTF data is used for trade validation.
⸻
Fair Value Gap definition
Bullish FVG
A bullish FVG exists when the low of the third candle is above the high of the first candle.
The imbalance is the price range between:
* the high of the first candle;
* the low of the third candle.
Bearish FVG
A bearish FVG exists when the high of the third candle is below the low of the first candle.
The imbalance is the price range between:
* the high of the third candle;
* the low of the first candle.
The large middle candle is usually the displacement candle, but its full body is not the FVG. The FVG is only the untraded space between the first and third candles.
⸻
Entry modes
The indicator includes three HTF retest models.
A — Strict retest
Price must first close outside the HTF FVG, then return to the zone.
For a bearish FVG:
* price must close below the FVG;
* price must later return into it.
For a bullish FVG:
* price must close above the FVG;
* price must later return into it.
This is the most selective mode and is the default setting.
A′ — Tolerant retest
A wick outside the HTF FVG is sufficient to validate the departure.
This mode produces more opportunities than the strict model but may accept less decisive departures.
B — Direct tap in killzone
No prior departure from the HTF FVG is required.
A direct touch of the HTF zone during an enabled killzone can become eligible if the remaining entry conditions are satisfied.
This is the least selective mode.
⸻
M15 confirmation
By default, the indicator requires an M15 Fair Value Gap in the same direction as the HTF FVG.
For a short:
* the HTF FVG must be bearish;
* the M15 FVG must also be bearish;
* the M15 FVG must overlap the HTF FVG.
For a long:
* the HTF FVG must be bullish;
* the M15 FVG must also be bullish;
* the M15 FVG must overlap the HTF FVG.
The M15 FVG size filter can be used to ignore very small imbalances.
When Require an M15 FVG is disabled, the indicator can generate a setup from a simple HTF FVG retest during a killzone.
⸻
Candle-close confirmation
The setting:
Validate signals only at M15 close
should normally remain enabled.
When enabled:
* an intrabar M15 FVG is not enough;
* the setup must still be valid when the M15 candle closes;
* triangles and alerts are produced only from confirmed M15 conditions.
This prevents signals from appearing during a candle and disappearing before its close.
⸻
Killzones
Killzones are anchored to the native timezone of each market. They automatically follow daylight-saving changes where applicable.
Asia killzone
Default timezone:
Asia/Tokyo
Default window:
09:00–13:00 Tokyo time
London killzone
Default timezone:
Europe/London
Default window:
07:00–10:00 London time
New York AM killzone
Default timezone:
America/New_York
Default window:
09:30–11:00 New York time
New York PM killzone
Default timezone:
America/New_York
Default window:
13:30–16:00 New York time
Each killzone can be enabled, disabled or adjusted independently.
The background colors only indicate an active trading window. They do not indicate bullish or bearish direction.
⸻
Entry types
Market at close
The proposed entry is the closing price of the confirmed signal candle.
The setup becomes visually active immediately after confirmation.
Limit at FVG edge
The indicator places a theoretical limit entry at the relevant edge of the M15 FVG.
For a bearish setup, the entry is placed at the lower boundary of the bearish M15 FVG.
For a bullish setup, the entry is placed at the upper boundary of the bullish M15 FVG.
If M15 confirmation is disabled, the relevant HTF FVG boundary is used instead.
The limit order remains pending for the selected number of M15 candles. If it is not filled before expiration, the order is cancelled and the HTF zone may become available for a later setup.
⸻
Stop-loss placement
For a bearish setup, the stop-loss is placed:
* above the opposite side of the M15 FVG;
* plus the selected tick buffer.
For a bullish setup, the stop-loss is placed:
* below the opposite side of the M15 FVG;
* minus the selected tick buffer.
When M15 FVG confirmation is disabled, the stop is placed beyond the opposite side of the HTF FVG.
The Stop buffer in ticks setting adds a small safety margin beyond the imbalance boundary.
⸻
Profit targets
The indicator supports two target models.
Liquidity target
When enabled, the indicator searches for the nearest eligible liquidity level in the direction of the trade.
Possible targets include:
* previous Asia session high or low;
* previous London session high or low;
* previous New York session high or low;
* H4 buy-side liquidity;
* H4 sell-side liquidity;
* the current session high or low.
A target must offer at least the selected minimum reward-to-risk ratio.
Fixed R:R fallback
If no eligible liquidity target is available, the indicator uses the selected fixed reward-to-risk ratio.
The default fallback is:
2.0R
⸻
Swept liquidity handling
Two modes are available.
Legacy v3.3
Previously swept session levels and H4 liquidity levels may still be used as targets.
This mode preserves the original behavior of the earlier indicator.
Untouched liquidity only
Once a liquidity occurrence has been swept, it is no longer eligible as a target.
A new pivot or a new completed session may later create a new active liquidity occurrence at the same or a similar price.
This mode is generally more selective because it targets liquidity that has not yet been consumed.
⸻
Session levels
The indicator tracks the highs and lows of:
* Asia
* London
* New York
Each session is calculated in its native timezone, which prevents the levels from drifting when the United Kingdom or the United States changes between standard time and daylight-saving time.
At the end of a session:
* the high and low are frozen;
* their labels remain anchored to the session close;
* the levels can be used as potential liquidity targets.
The number of stored sessions can be adjusted in the settings.
⸻
H4 SSL and BSL levels
The indicator also plots confirmed H4 pivot liquidity.
BSL
Buy-Side Liquidity
Displayed above confirmed H4 swing highs.
SSL
Sell-Side Liquidity
Displayed below confirmed H4 swing lows.
The pivot lookback determines the significance and confirmation delay of these levels.
A larger lookback produces more structurally significant levels, but they are confirmed later.
⸻
Dashboard
The dashboard shows the current state of the setup for both long and short directions.
Three display sizes are available:
* Small
* Medium
* Large
HTF active
A confirmed HTF FVG is currently active in that direction.
HTF departure
Price has moved outside the HTF FVG according to the selected A or A′ departure logic.
In Mode B, a prior departure is not required for the final signal.
HTF retest
The current candle is touching or overlapping the active HTF FVG.
Killzone
The current candle is inside at least one enabled killzone.
M15 FVG
A valid M15 FVG exists in that direction and passes the minimum-size filter.
HTF overlap
The M15 FVG overlaps the active HTF FVG.
M15 close
The current M15 candle is confirmed.
While the live M15 candle is still forming, this field may display No.
Available
No previous trade or pending limit order is currently blocking a new setup.
Raw signal
The structural conditions are satisfied before final trade-availability and candle-close validation.
Signal
All required conditions are satisfied and a valid setup has been produced.
⸻
Signal markers
A confirmed short setup is displayed as:
* a red downward triangle;
* the letter S.
A confirmed long setup is displayed as:
* a green upward triangle;
* the letter L.
The indicator also creates a label containing:
* entry price;
* stop-loss;
* target;
* expected reward-to-risk ratio.
The risk and reward areas are displayed directly on the chart.
⸻
Near-miss labels
The optional Show near misses setting helps diagnose why an otherwise valid-looking setup was rejected.
Possible reasons include:
* LEFT — price has not yet departed from the HTF FVG;
* KZ — the setup is outside an enabled killzone;
* CLOSE — the M15 candle has not yet closed;
* BUSY — a trade or limit order is already active.
Near-miss labels are primarily intended for testing and configuration. They may create visual clutter during normal use.
⸻
Alerts
The indicator provides separate alert conditions for:
* LONG setup detected;
* SHORT setup detected;
* LONG limit order filled;
* SHORT limit order filled;
* target reached;
* stop-loss reached.
For confirmed signals, alerts should be configured to trigger once per bar close.
⸻
Recommended starting configuration
For index futures such as NQ or MNQ:
* Chart timeframe: 15 minutes
* HTF FVG timeframe: 240 minutes
* Entry logic: A — Strict retest
* Require M15 FVG: Enabled
* Validate only at M15 close: Enabled
* Entry type: Limit at FVG edge or Market at close
* Minimum M15 FVG size: adjust to the instrument
* Liquidity mode: Untouched liquidity only
* Minimum target R:R: 1.0–1.5
* Fallback R:R: 2.0
* London killzone: Enabled
* New York AM killzone: Enabled
The Asia and New York PM killzones can be enabled according to the instrument and the trader’s preferred session.
⸻
Practical workflow
1. Apply the indicator to an M15 chart.
2. Confirm that an HTF FVG is active in the dashboard.
3. Wait for price to move away from the HTF FVG.
4. Wait for price to return to the zone during an enabled killzone.
5. Look for a same-direction M15 FVG inside or overlapping the HTF FVG.
6. Wait for the M15 candle to close.
7. Review the proposed entry, stop and target.
8. Confirm the broader market context before placing a trade.
The indicator is best used as a structured decision-support tool rather than as a fully autonomous trading system.
⸻
Important limitations
* A confirmed H4 FVG appears only after the relevant H4 candle closes.
* The indicator will not retrospectively use an M15 FVG that formed before the H4 FVG became confirmed.
* H4 pivot liquidity is confirmed with delay because pivots require candles on both sides.
* If both the stop and target are touched during the same M15 candle, the visual trade logic uses the stop-loss as the conservative outcome.
* The script is an indicator, not a broker emulator or complete backtesting strategy.
* No indicator can guarantee profitability.
⸻
Disclaimer
This indicator is provided for educational and analytical purposes only. It does not constitute financial advice, investment advice or a recommendation to buy or sell any financial instrument.
Trading futures, leveraged products and other financial markets involves substantial risk. Users are responsible for testing the indicator, defining their own risk-management rules and determining whether the methodology is suitable for their trading plan. 지표

Luxy UT God Mode - UT-Bot Forecast, Signals, Zones and RiskLuxy UT God Mode turns the classic UT Bot ATR trailing-stop into a complete, self-contained trading cockpit: momentum-adaptive buy/sell signals, a forward-looking Trend Duration Forecast, auto support/resistance zones, a 0-100 Confidence Score, a built-in multi-currency Risk Calculator, and automatic Stop Loss / Take Profit levels - all on one overlay, all non-repainting.
Note: Every forecast, probability, and statistic in this tool is a calculation based on the chart's own historical behavior. They describe past patterns, not guaranteed future results.
WHAT MAKES THIS DIFFERENT
A normal UT Bot only tells you the trend flipped. Luxy UT God Mode answers the three questions a trader actually asks at the moment of a signal:
1. Should I trust this flip? - a Confidence Score (0-100) blends seven engines into one number.
2. How long might this trend run? - a Trend Duration Forecast projects the expected remaining life of the current trend, drawn as a fading strip with survival-probability milestones.
3. What do I risk and how big do I trade? - automatic Stop Loss, R-based Take Profits, and a position-size calculator in your own account currency.
Everything is layered so you can run it bare-bones (just clean signals) or switch on the full "God Mode" stack.
METHODOLOGY AND CREDITS
This indicator implements proven concepts using entirely original code.
- UT Bot ATR trailing logic - original concept by @QuantNomad . This implementation is a significant rework: it adds volume weighting, momentum-adaptive sensitivity, a composite multi-method stop loss, a full multi-filter confirmation stack, multi-timeframe confluence, and the statistical trend-duration engine described below.
Important: this is an educational analysis tool. It does not guarantee any trading result. Always do your own analysis and manage risk.
THE SEVEN ENGINES (and the Confidence Score that fuses them)
Each bar, the script scores how well the current setup aligns and sums it into a single 0-100 Confidence Score with a visual progress bar:
UT Bot direction - is price above/below the momentum-adaptive trailing stop
SuperTrend - direction plus a distance-from-line strength bonus
Market Structure - position inside the recent swing range and structure breaks
ADX Regime - is the market trending (signals allowed) or choppy (blocked)
Multi-Timeframe - does a higher timeframe agree with the signal direction
Volume - is conviction backed by above-average volume
RSI Divergence - is a recent divergence supporting or opposing the signal
Read it at a glance: 80+ = strong, 60+ = good, 40+ = weak, under 40 = very weak. Hover the Confidence cell for the full per-engine breakdown.
1. TREND DURATION FORECAST - the headline feature
When the trend flips, the script projects how many more bars the new trend may last, based on the chart's own past trends.
How it works:
Every completed trend's duration is recorded, kept separately for bullish and bearish trends.
On each new flip the script estimates the expected duration using an exponentially-weighted average and standard deviation (recent trends weighted more heavily).
The estimate is drawn as a fading gradient strip that projects forward from the flip, with a "Trend Analysis" label and survival-probability milestones at 25% / 50% / 75% / 90% / 100% of the projection.
The percentages are empirical - they show the share of past same-direction trends on THIS chart that actually lasted at least that long. Not a fixed textbook curve.
Three forecast modes:
Simple - median duration only. Clean and fast.
Standard - exponentially-weighted average plus spread (recommended default).
Advanced - Standard plus five adaptive multipliers: Structure (proximity to S/R), Asset Type (volatility profile), Flip Strength (volume + filters passed), Error Learning (self-correction from its own past misses), and Regime (trending vs choppy).
When history is thin, the forecast honestly falls back to a combined estimate and flags it, rather than showing false precision.
2. MOMENTUM-ADAPTIVE UT BOT CORE
The trailing stop is not a fixed ATR multiple. The effective sensitivity adapts each bar to:
Momentum - faster momentum widens the trail to stay in strong moves
Relative volume - conviction adjusts the distance
Asset type - auto-detected (crypto, forex, futures, index, fund, CFD, bond, stock) with a per-class multiplier, or set it manually
Volatility mode - Fixed, Dynamic, or Aggressive auto-adjustment to the current volatility regime
The result is a trailing engine that behaves differently on a calm blue-chip than on a volatile small-cap or crypto pair - without you re-tuning it.
3. ANTI-WHIPSAW AND SIGNAL FILTER STACK
Signals only fire when they survive the filters you enable, so you control the trade-off between frequency and quality:
ADX Regime - block signals in choppy, non-trending conditions
Cooldown and Confirmation - minimum bars between signals and N-bar direction confirmation
Swing - only trade aligned with recent swing structure
Full Candle - require the whole candle beyond the trailing line (no straddles)
Volume, RSI, Hull MA, SuperTrend - optional confirmation layers
High-Volatility and % Change - only trade meaningful moves
2-Bar Confirm - extra confirmation for volatile markets
Every active filter appears as a row in the table with a live pass/fail state, so you always know why a flip did or did not become a signal.
4. SUPPORT / RESISTANCE ZONES
The script clusters significant swing pivots into persistent price zones and draws only the two that matter right now: the nearest resistance above price and the nearest support below price. Each zone shows its price and touch count (e.g. "S 4.19 (3x)" = a support tested three times). A level that price has broken through drops off automatically, and an optional Zone Filter can block buys into resistance and sells into support. Pivot strength is adjustable so you can show only major levels.
5. AUTOMATIC STOP LOSS, TAKE PROFIT AND RISK CALCULATOR
On every signal the script draws a complete trade plan:
Stop Loss - choose from seven methods: ATR, % based, tick based, swing, scaled ATR, Smart Adaptive (auto-scales to volatility), or Safer (widest of several).
Take Profit - TP1 / TP1.5 / TP2 / TP3 as R multiples of the stop distance, with optional price and % labels, and a freeze-on-touch check mark for journaling.
Entry line - marks the signal price; all lines can auto-limit to 10 bars for a clean chart.
Risk Calculator - enter account size and risk (% or fixed amount) and it returns the position size in shares/contracts, in your own currency, with live FX conversion (USD, EUR, GBP, JPY, CAD, AUD, CHF) or a manual rate.
6. MULTI-TIMEFRAME CONFLUENCE AND RSI DIVERGENCE
The table shows the trend of up to seven higher timeframes (5m, 15m, 30m, 1H, 4H, D, W) via an EMA 9/21 cross, so you can see whether the bigger picture agrees before you act. An optional MTF filter blocks counter-trend signals. Separately, RSI divergence (regular bullish and bearish) is detected, labeled on the chart, and fed into the Confidence Score.
7. LIVE STATUS TABLE
A configurable dashboard (position and size adjustable) summarizes everything: asset type, Confidence Score, adaptive mode, current signal, win-rate / average-bars statistics, multi-timeframe row, divergence, forecast, position size, and one row per active filter - each with a detailed tooltip.
HOW TO USE IT - QUICK START
Step 1 - Add it and pick your sensitivity. Defaults suit intraday (5-15m). For scalping lower the Sensitivity/ATR; for swing raise them (see the Sensitivity tooltip for presets).
Step 2 - Read a signal. A Buy (aqua, below bar) or Sell (orange, above bar) appears only after the bar closes and all enabled filters pass. Check the Confidence Score and the Multi-TF row for context.
Step 3 - Use the trade plan. The Entry, Stop Loss and Take Profit lines draw automatically. Read the Position row for size. Use the Trend Duration Forecast strip as a realistic hold-time expectation - scale out near the median, reassess if price runs past the projection.
Step 4 - Set alerts. Use "Any alert() function call" to receive BUY/SELL and trend-flip alerts on bar close, or pick the specific "Momentum Buy/Sell Signal" conditions. All alerts fire on confirmed bars only.
TUNING FOR MORE OR FEWER SIGNALS
Too few signals: turn off MTF, then Full Candle, then lower the ADX threshold or the Anti-Whipsaw filter. Too many / choppy: raise the ADX threshold, enable Volume and Full Candle, increase Cooldown, or add 2-Bar Confirm. Every filter is independent and shown live in the table.
TECHNICAL NOTES
Pine Script v6, overlay, max bars back 5000.
No repaint: signals, lines, forecast and alerts are committed on bar close (barstate.isconfirmed); all higher-timeframe data uses lookahead_off.
Works on stocks, crypto, forex, futures and indices, on any timeframe.
Higher timeframes and longer history produce more reliable forecasts; a new symbol needs a number of completed trends before the duration model is meaningful.
LIMITATIONS
Trend-following by nature: signals arrive after a trend establishes, not at exact tops/bottoms.
Best in trending conditions; use the ADX regime and filters to avoid chop.
The duration forecast needs history to become meaningful and is a statistical estimate, never a guarantee.
DISCLAIMER
This script is an educational analysis tool, not financial advice. Trading stocks, crypto, forex and futures involves substantial risk of loss - you can lose all invested capital. Forecasts, probabilities and win-rate statistics are calculated from historical chart data and do not guarantee future performance. Test on paper first, and you are solely responsible for your own trading decisions.
Feedback and suggestions are welcome in the comments. Happy trading.
지표

Edo Liquidity SweepsEdo Liquidity Sweeps — Detects Liquidity Sweeps of Swing Highs and Lows and Tracks Each One Through Detected, Confirmed and Faded States
Markets move toward liquidity. Above every relevant swing high rests buy-side liquidity — the stops of short positions and the breakout buy orders waiting there. Below every relevant swing low rests sell-side liquidity — the stops of longs and the breakout sells. Those order clusters act as magnets: very often price travels precisely to reach them. A liquidity sweep is the moment that happens and is rejected — price wicks beyond the level to take the resting liquidity, then closes back on the other side, the classic trap that leaves breakout traders offside and frequently turns price around.
Edo Liquidity Sweeps isolates that single event and, crucially, tracks what happens next. It marks each sweep on the chart and follows it through three clear states — Detected, Confirmed and Faded — so you can separate the sweeps that actually reversed price from the ones that failed, all validated on closed bars so the indicator does not repaint. It is the sweep specialist of the Edolab structure family, designed to pair with Edo Liquidity Zones, which maps the liquidity pools these sweeps take.
LIQUIDITY LEVELS: SWING HIGHS AND LOWS
Everything starts from the swings that define where liquidity sits. A swing high is confirmed when a candle has the highest high of its surroundings; a swing low, the lowest low. The size of that surroundings is set by the Swing Profile: Scalper (5 bars each side) tracks short-term liquidity for intraday work, Swing (10 bars, the default) is the balanced setting for 4H and daily, and Long Term (21 bars) watches only the liquidity of the major structures. Each confirmed swing high becomes a buy-side liquidity level to monitor, and each swing low a sell-side one, until price sweeps it.
SWEEP DETECTION
A sweep is detected, on closed bars only, when price pierces a level with a wick but closes on the opposite side. A bearish sweep: the candle's high takes a swing high (grabbing the buy-side liquidity) but the close stays below that level — price pierced the high and rejected it, an downward reversal is expected. A bullish sweep: the candle's low loses a swing low (grabbing the sell-side liquidity) but the close stays above it — price pierced the low and rejected it, an upward reversal is expected. At detection the indicator draws a dotted line at the swept level with a Sweep ▲ or Sweep ▼ label, and records the high and low of the sweep candle itself, which will later decide whether the sweep confirms or fails. A wick that pierces a level but closes back on the same side generates nothing.
THREE STATES: DETECTED, CONFIRMED, FADED
A sweep is not a one-candle signal. The indicator follows each one through three states, evaluated on every closed bar against the range of the sweep candle. Detected: the sweep has just happened and it is not yet known whether price will turn — a dotted line. Confirmed: price confirms the reversal by closing beyond the sweep candle's extreme in the expected direction — the line turns solid and bold and the label gains a ✓. Faded: price closes the opposite way, reclaiming the level, so the sweep failed — the line turns dashed and faded grey and the label gains a ✕. For a bullish sweep, confirmation is a close above the sweep candle's high and a fade is a close below its low; for a bearish sweep it is the mirror. This follow-through confirmation is what separates the operative sweeps from the anecdotal ones: a Confirmed sweep has proven the rejection had continuation, while a Faded one warns that the trap did not work and the level has genuinely been broken.
INFORMATION PANEL
The panel condenses the read into a compact table. It shows the Last Sweep with its direction (Bull ▲ / Bear ▼) and state, and the live count of sweeps in each state: Detected, Confirmed and Faded. The Confirmed-to-Faded ratio gives a quick sense of how reliable sweeps are behaving on that instrument and timeframe. The panel sits in any of the four chart corners (Top Right by default), comes in three sizes (Tiny / Small / Normal) and two themes (Dark / Light), and can be hidden entirely.
NO REPAINTING
Sweeps are validated on closed bars only and on confirmed pivots, so a level and its sweep never appear or disappear intrabar. A wick that pierces a level but closes back inside generates nothing — the indicator waits for the close. This removes the false signals that clutter tools which mark instantly, at the cost of confirming each sweep once it has completed. There are no higher-timeframe functions: all logic runs on the current chart timeframe.
CONFIGURATION
The inputs are grouped by block. Detection sets the swing profile and the maximum number of sweeps kept on the chart (12 by default). Style exposes the bullish and bearish sweep colours, the faded colour, the label size and the Dark/Light theme. Panel controls panel visibility, position and size. The defaults are calibrated to work without adjustment on stocks, crypto, forex, indices and futures, on any timeframe — the input most users touch is the Swing Profile, to match the sensitivity of the tracked liquidity to their horizon.
ALERTS
Five predefined alerts cover the life of a sweep: Bullish Sweep Detected and Bearish Sweep Detected fire the moment a sweep is detected; Bullish Sweep Confirmed and Bearish Sweep Confirmed fire when a sweep confirms its reversal through follow-through; and Sweep Faded fires when a sweep fails and the level is reclaimed. The Detected alerts are the earliest but least confirmed, the Confirmed alerts are more reliable at the cost of arriving later, and the Faded alert is useful to discard a reversal idea. All alerts fire on bar close, consistent with the indicator's anti-repaint validation.
HOW TO READ IT
Wait for confirmation: a Detected sweep only flags that liquidity was taken and rejected, not that price will turn — waiting for it to become Confirmed reduces false signals at the cost of entering later, and the panel's Confirmed-to-Faded ratio shows how trustworthy sweeps are being. Read the fade as a warning: when a sweep turns Faded, the trap did not work and the level was genuinely broken — recognising a failed sweep in time avoids forcing a reversal idea the market has already rejected. Trade sweeps in confluence: a confirmed sweep that takes liquidity at an important level, a demand zone or a higher-timeframe support is a far more solid reference than an isolated one. And pairing Edo Liquidity Sweeps with Edo Liquidity Zones closes the loop — the zones say where liquidity sits, the sweeps say when it is taken.
OPEN SOURCE
Edo Liquidity Sweeps is published as a free open source indicator. The full Pine Script is publicly accessible on TradingView for study, adaptation and integration into any workflow. Part of the Edolab Markets free tools ecosystem alongside Edo Liquidity Zones, Edo Smart Money Map, Edo Order Blocks, Edo ZigZag Auto Fib SR and more available on TradingView.
This indicator is a technical analysis tool for educational and informational purposes only. It does not generate automatic buy or sell signals and should not be considered financial advice. Trading financial markets involves significant risk of capital loss. Past performance does not guarantee future results. Always use proper risk management.
TAGS
LiquiditySweep SmartMoneyConcepts Liquidity MarketStructure PriceAction StopHunt SwingHighLow SupplyDemand Reversal Overlay Indicator OpenSource Edolab EdolabMarkets Stocks Crypto Forex Indices
CATEGORIES (TradingView dropdowns)
— Direction: Both
— Market category: All markets (Stocks / Crypto / Forex / Indices)
— Analysis type: Trend Analysis / Chart patterns / Support and Resistance
지표

ATK/DEF KDJ Rewind ContextRewind KDJ Context is a visual KDJ analysis indicator designed to provide a clearer understanding of momentum structure through the relationship between the K, D, and J lines.
Traditional KDJ analysis often focuses on fixed overbough and oversol levels. This indicator expands the interpretation by analyzing the interaction between KDJ components, including line arrangement, directional changes, momentum development, and structural transitions.
The script transforms KDJ movement into different context states, helping users observe how momentum conditions develop, slow down, weaken, and recover over time.
Instead of treating K, D, and J as isolated values, Rewind KDJ Context focuses on the relationship between the three components and presents their current condition through a structured visual approach.
KDJ Context Framework
▶️ Momentum Push
Identifies conditions where K, D, and J show coordinated upward momentum development.
This context represents a phase where KDJ structure is aligned with increasing momentum activity and stronger directional movement.
⏸️ Momentum Pause
Highlights situations where momentum remains active but begins to slow or entr a temporary balance condition.
This state focuses on changes in momentum speed and the relationship between K, D, and J during a slowing phase.
⏪ Reversal Context
Highlights changes in KDJ structure where J-line movement and the relationship between K and D indicate a possible transition in short-term momentum conditions.
This context focuses on structural changes rather than predicting future pric direction.
⬇️ Weakness Context
Displays conditions where KDJ structure shows reduced momentum strength and weaker directional movement.
This state helps visualize when previous momentum conditions begin losing strength.
🔄 Recovery Context
Highlights situations where KDJ structure begins improving after a weaker phase.
This context observes changes in J-line behavior and KDJ alignment during potential momentum recovery conditions.
⚪ Neutral Context
Represents situations where K, D, and J do not form a strong directional structure and momentum remains relatively balanced.
Main Features
• Customizable KDJ calculation parameters
• Dynamic K, D, and J value visualization
• KDJ line relationship and structure analysis
• Momentum context classification
• Historical context table display
• Recent bar comparison
• Visual markers for important KDJ transitions
• KDJ arrangement monitoring
• Adjustable display range and historical reference position
How It Works
Rewind KDJ Context uses the traditional KDJ calculation method based on RSV, followed by smoothing calculations for the K and D lines.
The J line is derived from the relationship between K and D:
• K line represents the smoothed RSV movement
• D line represents the smoothed K line movement
• J line represents an extended momentum relationship between K and D
The indicator evaluates several aspects of KDJ behavior, including:
• Relative position between K, D, and J
• Directional movement of each component
• Changes in momentum expansion and contraction
• KDJ structural transitions
• Recent historical context
These calculations are organized into visual context states to make KDJ behavior easier to interpret.
Intended Use
Rewind KDJ Context is designed as a technical analysis tool for observing momentum conditions and KDJ structure.
It can be used together with price action analysis, trend evaluation, support and resistance analysis, volatility analysis, and other technical methods to build a broader market view.
The indicator is intended to provide additional context about momentum behavior rather than replace complete market analysis.
Notes
Rewind KDJ Context is based on mathemat calculations derived from historical pric data.
The displayed context states represent current and historical KDJ conditions based on the selected settings and market data available on the chart.
Different assets, timeframes, and market environments may produce different interpretations of the same indicator behavior.
Disclaimer
Rewind KDJ Context is provided for informational and technical analysis purposes only.
This indicator does not provide finacl advice, personalized recommendations, autm trading decisions, or guaranteed results.
The displayed KDJ context states, momentum conditions, and visual markers are generated from mathematical calculations and should not be interpreted as predictions of future pric movements.
Users are responsible for conducting their own analysis, making their own decisions, and applying appropriate risk management methods.
Past market behavior and technical indicator performance do not guaran future outcomes. 지표

Premium/Discount ML Zones [PickMyTrade]What does it do?
Builds a Premium / Equilibrium / Discount map from a higher-timeframe dealing range, then runs an online logistic regression over every price level inside that map to detect the exact band where the model currently reads a directional edge. Because the range is read from one anchor timeframe, the zones sit at the same prices whether you view the 5m, 1h or Daily chart.
────────────────────────────────────
The intellectual problem
Premium/Discount is a location framework: above the 50% equilibrium of a dealing range price is expensive, below it price is cheap. Two problems show up the moment you try to automate it.
First — the range is usually drawn on whatever chart you are looking at. A 5-minute chart finds 5-minute swings, so it anchors to a micro-range that may be a few points wide. The Daily chart finds a range a hundred times larger. The same price is then simultaneously "premium" on one timeframe and "discount" on another, and the label stops meaning anything. The conventional discipline is to define the range on a higher timeframe and drop down only to execute — never to redraw the range on the execution chart.
Second — location alone is not an edge. Knowing price is in the lower half of a range tells you it is cheap relative to that range. It does not tell you whether cheapness is currently being rewarded. In a strong downtrend every discount print keeps getting cheaper. Location is a filter; something else has to decide whether the location is worth acting on.
This indicator separates those two jobs. The dealing range and its three zones are the map , anchored once on a higher timeframe. A logistic regression trained on the chart's own history is the decision , and it is what marks the actionable band inside the map.
────────────────────────────────────
How the dealing range is anchored
The range is built from confirmed swing highs and lows read from the Dealing Range Timeframe (default Daily) via request.security(..., lookahead=barmerge.lookahead_off) . Each side re-anchors to its most recent confirmed swing, with guards that keep the pair coherent:
if not na(ph) and (na(swingLow) or ph > swingLow) swingHigh := ph if not na(pl) and (na(swingHigh) or pl < swingHigh) swingLow := pl
Those guards are what make the range track the current leg rather than a fixed lookback window. In an uptrend each new higher low pulls the low side up with price, instead of leaving equilibrium pinned to an ancient low that price has long since left behind.
From that range:
Equilibrium — the exact 50% midpoint, (rangeHigh + rangeLow) / 2 Equilibrium band — a neutral fair-value zone of ± Equilibrium Band × range around the midpoint (default ±10%, i.e. the middle 20%). No signals fire inside it. Premium — everything above the band. Discount — everything below it.
Break of structure — when price closes beyond the anchored range, the old range is stale until a new swing confirms. A bearish BOS blocks longs and a bullish BOS blocks shorts, so the model does not fade a breakout while waiting for the range to re-anchor.
────────────────────────────────────
How the logistic regression works
Step 1 — Three z-score normalised features
All three are standardised over the Z-Score Window (default 50) so the model is scale-invariant across instruments and timeframes.
F1 — Position in range : where the close sits between the range low and high, clamped to 0–1. This is the premium/discount coordinate itself. F2 — Dwell time : a rolling time-at-price measure — the fraction of the last N bars that closed within one price band of the current close. High dwell means price has spent real time here; a level touched once in a spike scores low. F3 — Momentum : rate of change over the momentum length, normalised. Distinguishes a discount that is stabilising from one that is still falling.
Step 2 — Online gradient descent with L2 regularization
There is no fixed training window and no retraining pass. Each confirmed bar is labelled from its forward return over the Label Horizon, and the weights take one gradient step per bar, always evaluated on the previous bar's features so no current-bar information leaks into the update:
_pred = f_sigmoid(w0 + w1f1 + w2f2 + w3*f3 ) _label = label_bull ? 1.0 : 0.0 _err = _label - _pred w1 := w1 + i_learn_rate * (_err * f1 - i_l2_lambda * w1)
The - i_l2_lambda * w1 term is weight decay: it pulls weights back toward zero each step, which stops any single feature from running away to an extreme value on a stretch of trending data. The bias term w0 is deliberately left unregularized — it carries the base rate, not a feature relationship.
Step 3 — Posterior
post_bull = f_sigmoid(w0 + w1f1 + w2f2 + w3*f3) post_bear = 1.0 - post_bull
Step 4 — The ML entry zone (what the model detects)
This is the part that does the work. Rather than only scoring the bar in front of it, the model scores every price level inside the discount half and the premium half — sweeping the position feature across the zone while holding dwell and momentum at their current values — and marks the contiguous band where its probability clears the Entry Threshold:
for j = 0 to i_nbins float p = rangeLow + (eq_bot - rangeLow) * j / i_nbins float f1p = ((p - rangeLow) / range_size - pos_mean) / pos_std float pbup = f_sigmoid(base + w1 * f1p) if pbup >= i_posterior_thresh ml_long_lo := na(ml_long_lo) ? p : math.min(ml_long_lo, p) ml_long_hi := na(ml_long_hi) ? p : math.max(ml_long_hi, p)
That band is the ML Buy / Sell Zone drawn on the chart. It is the exact price range in which a signal would fire right now — visible before price arrives there. Its thickness is meaningful: a thin band means only a sliver of the zone clears the threshold, a thick band means the model reads an edge across most of the zone. When nothing clears the threshold, the band disappears entirely rather than showing a level the model does not support.
────────────────────────────────────
Reading the indicator
PREMIUM box (orange) — upper region of the HTF range. Shorts are considered here only. EQUILIBRIUM box (grey) — the fair-value band around the 50% midpoint. Nothing fires here by design. DISCOUNT box (blue) — lower region. Longs are considered here only. ML BUY / SELL ZONE (bright band) — the model-detected band inside the discount/premium region, labelled with the peak probability found in that band. ● circle (blue) — high-conviction long: P(Bull) ≥ 0.85. ▲ triangle (blue) — standard long: P(Bull) ≥ threshold. ● circle (orange) — high-conviction short: P(Bear) ≥ 0.85. ▼ triangle (orange) — standard short: P(Bear) ≥ threshold. Dashed equilibrium line — the exact 50% midpoint. Dashed SL / TP lines — reference levels from the range extreme at ATR × multiplier and the Risk:Reward ratio.
Only the first bar of each signal cluster fires — if conditions stay true for several bars, only the transition bar is marked.
Info table (top-right)
● LIVE (green) — the model has taken ≥ Training Samples Needed gradient steps. ● WARMUP (yellow) — still accumulating; signals suppressed. Zone — Premium / Equilibrium / Discount, or BOS ↑ / BOS ↓ (yellow) when price has broken the range. P(Bull) / P(Bear) — live posterior at the current bar. N Trained — total gradient updates taken.
────────────────────────────────────
Inputs
Dealing Range Dealing Range Timeframe — whose swings define the map (default D). Set it equal to or higher than your execution chart. This is the input that makes the zones identical across timeframes. Swing Left / Right Bars — swing definition on the anchor timeframe (default 3/3). Right Bars is the confirmation delay: the range re-anchors that many anchor-timeframe bars after a swing forms. Equilibrium Band — half-width of the neutral zone as a fraction of range (default 0.10). Set 0 to collapse it to a single line.
Dwell-Time Feature Scan / Dwell Bands (default 20) — price resolution for the entry-zone scan and the dwell band width. Dwell Lookback (default 50).
Logistic Regression Training Samples Needed — gradient updates before signals activate (default 80). Entry Threshold — minimum probability to fire a signal and to light the ML zone (default 0.65). Learning Rate — gradient step size (default 0.05). Higher adapts faster but noisier. L2 Regularization — weight decay (default 0.001). 0 disables it. Label Horizon (default 5), Momentum Length (default 14), Z-Score Window (default 50).
Signal Levels Show SL/TP Lines, ATR Period, SL ATR Buffer (default 1.2), Risk:Reward (default 1.8).
Visual / Display Show Premium/Discount Map, Show ML Entry Zone, Zone Left Extent / Forward Extend, Show Equilibrium Line, Regime Background, zone colours. Zen Mode — hides SL/TP lines and the table; map and ML zone remain.
────────────────────────────────────
Three alerts included
PD ML - Long — discount long fired PD ML - Short — premium short fired PD ML - Any Signal — either direction
────────────────────────────────────
Technical notes
Swing detection on the anchor timeframe needs Swing Right Bars of that timeframe to confirm. With the Daily default that is a three-day confirmation delay before the range re-anchors. This is inherent to non-repainting swing detection, not a tunable away. request.security uses lookahead_off , so historical bars use only confirmed anchor-timeframe values. The developing anchor bar updates in real time, which is expected behaviour for a live higher-timeframe reference. The dwell feature counts closes within one band of the current close over the lookback — a bar-based proxy for time-at-price. It does not use tick or volume-profile data. The entry-zone scan holds dwell and momentum fixed while sweeping position. It answers "if price were at level X, with today's momentum and dwell, what would the model read?" — a counterfactual across location, not a forecast of the path. Logistic regression assumes a monotonic relationship between each feature and the log-odds. Real price behaviour is not always monotonic in position-within-range; the model captures the dominant direction of that relationship, not its curvature.
────────────────────────────────────
Requirements and limitations
The model needs Training Samples Needed gradient steps before signals activate; on short-history charts the table shows WARMUP and nothing fires. Weights are learned per chart and per timeframe — switching symbol or timeframe restarts the learning from zero.
Probabilities are the model's read of patterns in its own training history. They are not a probability of profit, and patterns that historically preceded a directional move may not repeat.
The equilibrium band is deliberately dead space. If you want signals nearer the midpoint, reduce the band toward 0 — but the closer to fair value you trade, the less the premium/discount premise is contributing.
If the Dealing Range Timeframe is left blank or set below your chart's timeframe, the range is computed on the chart timeframe and the cross-timeframe consistency is lost. That is the failure mode this indicator exists to avoid.
The three zones describe location within one dealing range. They carry no information about ranges above them — a Daily discount can sit inside a Weekly premium.
────────────────────────────────────
Risk disclosure
Nothing here forecasts price. The zones describe where price sits inside a measured range; the classifier reports what its training history associates with that location. Use with your own position sizing and risk management. Not financial advice.
Built natively in Pine Script® v6. Online logistic regression trained by per-bar gradient descent with L2 weight decay, a rolling dwell-time feature, and a higher-timeframe swing-anchored dealing range. No external libraries, no data feeds.
Open source — Mozilla Public License 2.0. 지표

XI0033 Williams FractalA Williams fractal confirms late by definition: the pattern is complete only after the bars to its right have closed, so the marker always appears in the past. This script keeps the classic fractal template — three- or five-bar — and adds the one thing the classic version cannot show: the bar that is about to become a fractal, before the confirmation arrives.
It draws triangles for confirmed fractal highs and lows, plus one highlighted triangle for the last potential fractal on the live edge. Nothing else: no lines, no levels, no signals.
Confirmed fractals
A fractal high is a bar whose high stands above the highs of its neighbours; a fractal low mirrors that on the lows. The 3-bar mode compares one neighbour on each side, the 5-bar mode two on each side — the original Bill Williams definition. The Periods input sets how many bars back the reference bar sits. Confirmed fractals are painted as muted grey triangles above the highs and below the lows, and once the pattern that produced them is closed, they are history: they do not move and do not disappear.
Confirmed fractal highs and lows in the muted default colour: every triangle marks a bar whose extreme beat its neighbours on both sides, printed only after the pattern completed.
The last potential fractal
This is the addition. One bar to the right of the last confirmable centre there is always a candidate: a bar already higher (or lower) than its closed neighbours, waiting only for the current bar to keep its distance. The script highlights that candidate with an orange triangle — pointing down above a potential high, pointing up below a potential low — so the developing swing is visible before it becomes official.
The highlight exists only on the live bar. It is recalculated tick by tick, disappears the moment price violates the candidate, and is deliberately dropped on the bar's final update, so it never leaves a trace in the chart history. Scroll back and you will find only confirmed fractals.
Left: the orange triangle under the newest low is the last potential fractal. Right, a few bars later: that low now carries a grey confirmed triangle — the preview left no trace — and a new potential fractal already sits above the latest high.
What repaints, and what does not
The potential marker repaints by design — that is its job. It is a live preview that appears, moves and vanishes with the current bar, and it is intentionally not committed to history. Confirmed fractals in the default 3-bar mode are built from closed bars only, so once a triangle prints, it is final. In the 5-bar mode with the default period, the newest confirmation still involves the forming bar's extreme, so it can appear and be withdrawn until that bar closes; after the close it is final. And every confirmed fractal is late by definition — the triangle appears above a bar that is already in the past, because that is what confirmation means.
What is reused, and what is new
The confirmed-fractal logic is the classic Bill Williams fractal template as coded by Mit Nayi, reused open-source with attribution in the source header. What this edit adds: the port to Pine Script v6, and the whole potential-fractal layer — the candidate detection one bar to the right of the confirmable centre, and the barstate mechanism that shows the preview on the live bar only and drops it on the bar's final update, so it never piles up in history.
What it does not do
It gives no signals. A fractal marks a local extreme, and most local extremes get traded through; on their own they are not entries. This is a structural marker — swing logic, liquidity maps and ICT-style analysis use fractals as raw material, and the potential marker only tells you where the next one may appear. The decision stays yours.
The Inputs allow you to set:
Periods: how many bars back the fractal centre sits; the triangles are drawn on that centre bar
3 or 5 Bar Fractal: one or two neighbours compared on each side
Show last potential fractal: the live-edge preview on or off
Potential down and up fractal colours
About the chart
BYBIT:BTCUSDT.P, 5-minute chart. The only script on it is this one, with default settings: muted grey triangles mark confirmed fractal highs and lows across the chart, and the orange triangle at the right edge is the last potential fractal, not yet confirmed. No other indicators, no drawings. 지표

Fractal Timeframe Collision Node [MarkitTick]💡 The financial markets operate across multiple interacting timeframes, creating complex structural geometries that cannot be accurately analyzed through a single, isolated lens. The tool presented here acts as a comprehensive multi-timeframe aggregation engine, designed to isolate highly significant structural support and resistance clusters. By evaluating pivot points across four distinct time spans and merging them based on volatility-adjusted proximity, this system identifies high-probability reaction zones where structural exhaustion is most likely to occur. It is built strictly for the modern Pine Script environment, utilizing an entirely non-repainting architecture that respects the highest standards of data integrity and execution logic.
● ✨ Originality and Utility
Standard pivot or support/resistance scripts typically plot historical swing highs and lows independently. This creates chart clutter and often leaves the analyst guessing which level holds the most technical weight. This tool introduces the concept of "Collision Nodes." Instead of simply drawing every pivot, the algorithm scans higher timeframe data, identifies structural extremes, and clusters them together using a dynamic, adaptive mechanism.
When multiple higher timeframes project a pivot at the exact same price zone, a structural "Collision Node" is formed.
The utility lies in its objective strength grading: a node formed by the confluence of the 1-hour, 4-hour, and Daily charts mathematically demands more respect than a single localized swing point on a lower timeframe.
By filtering out the noise and only projecting nodes that meet a user-defined minimum strength threshold, the analyst is presented with a remarkably clean chart displaying only the most critical, high-liquidity zones.
Furthermore, the script automatically generates full trade execution parameters (Entry, Stop Loss, and multiple Take Profits) directly on the chart when a valid structural rejection occurs.
● 🔬 Methodology and Concepts
• Multi-Timeframe Pivot Extraction
The core engine relies on detecting localized extrema (Pivot Highs and Pivot Lows) over a user-defined lookback window. The script fetches these pivot values simultaneously from three higher timeframes plus the current chart's timeframe. To ensure absolute data integrity and prevent any future data leakage (repainting), the algorithm strictly requests historical, confirmed data using offset historical referencing.
• Volatility-Normalized Spatial Clustering
Once the pivots are extracted, the algorithm must determine if they "collide" or overlap. Because absolute price distance is irrelevant across different assets, the script uses a dynamic clustering mechanism normalized by the Average True Range (ATR).
A tolerance band is calculated by multiplying the current ATR by a user-defined coefficient.
If a newly discovered higher timeframe pivot falls within this exact tolerance band of an existing pivot cluster, it is merged into that cluster, and the cluster's "strength" rating is incremented.
If it falls outside the tolerance band, a new independent node is registered.
• Memory Management and Age Pruning
Financial markets possess a memory, but structural relevance decays over time. The script incorporates a memory management protocol that continually monitors the age of all registered nodes. If a node has not been tested or updated within a specific bar count limit, it is automatically pruned from the active array, ensuring that only highly relevant, modern liquidity pools are analyzed.
• Automated Signal Validation
A visual node is not a signal; it is an area of interest. The script validates trade signals by combining spatial location with price action. A valid signal requires the price to close inside the tolerance zone of a high-strength node, accompanied by a rejection candle (where the wick constitutes a significant percentage of the total candle range), and a structural close confirming the directional bias.
● 🎨 Visual Guide
• Collision Nodes
Teal Horizontal Lines: Represent bullish support nodes. The opacity of the line dynamically shifts based on the strength of the node (darker/more solid lines indicate higher timeframe confluence).
Red Horizontal Lines: Represent bearish resistance nodes. Like the bullish nodes, their visibility scales with structural strength.
Diamond Labels (◆×2, ◆×3): Attached to the end of the node lines, these labels explicitly display the node's strength rating. A "◆×3" label means three separate timeframes have confirmed a pivot at this exact mathematical level.
• Trade Execution Box
Dashed Blue Line: Indicates the exact Entry price upon signal confirmation.
Solid Red Line: Represents the dynamic Stop Loss, which is placed behind the collision node with an added ATR-based buffer to avoid premature liquidation.
Dashed Teal Lines (TP1, TP2, TP3): Represent calculated Take Profit levels projected automatically based on the user's defined Risk-to-Reward (RR) multipliers.
Red Background Fill: Visually maps the total risk zone between the Entry and the Stop Loss.
Teal Background Fill: Visually maps the total reward zone extending from the Entry up to the final Take Profit target.
• Real-time Dashboard
Located by default in the top right corner, this data table provides an instant summary of the market structure.
Bias: Displays the current active signal direction (LONG, SHORT, or NONE).
Active Nodes & Strengths: Lists the exact price levels of the nearest active bull and bear nodes, accompanied by visual progress bars displaying their respective strengths (Green for high strength, Yellow for medium, Red for low).
Trade Tracking: Displays the currently active Stop Loss and primary Take Profit levels if a trade configuration is locked on the chart.
● 📖 How to Use
Apply the indicator to your chart and set your three preferred higher timeframes in the settings (e.g., if trading on the 15-minute chart, you might select 1-Hour, 4-Hour, and Daily).
Observe the chart for the formation of high-strength Collision Nodes (look for ◆×3 or ◆×4 labels). These are your primary zones of interest.
Wait for price action to approach these nodes. Do not place blind limit orders.
Allow the script's internal logic to identify a structural rejection. When a valid rejection candle forms and closes at a node, a trade execution box will automatically populate on the chart.
Use the provided Entry, Stop Loss, and Take Profit lines to format your position sizing and manage the trade according to the mapped risk-to-reward parameters.
Optionally, link the script's advanced JSON webhook alerts to an external execution platform for automated trade routing.
● ⚙️ Inputs and Settings
• Core Settings
Pivot Lookback: The structural length required to confirm a swing high or low.
TF 1, TF 2, TF 3: The three higher timeframes used to scan for structural confluence.
Include Chart TF: Determines if the current chart's timeframe should also contribute to node strength.
Node Tolerance (×ATR): The spatial bandwidth used to cluster pivots together, measured as a multiplier of current volatility.
Min Node Strength: The minimum number of overlapping timeframes required for a node to be rendered on the chart.
• Filters
Require Rejection Candle: Enforces strict price action criteria, demanding that signals only fire if the candle displays a prominent rejection wick.
Min Wick % of Range: The exact percentage of the candle that must be composed of the wick to validate a rejection.
Max Node Age (bars): The duration a node remains active without being re-tested before being permanently purged from memory.
• Trade Tools
SL Buffer (×ATR): Adds a dynamic volatility buffer beyond the structural node to determine the absolute invalidation point.
TP1, TP2, TP3 (×SL Risk): The respective risk-to-reward multipliers used to dynamically project profit targets.
Lock Current Trade Levels: Freezes the visual risk/reward box on the chart until the trade hits either the final target or the stop loss, ignoring subsequent signals.
• Dashboard & Alerts
Show Dashboard: Toggles the visibility of the real-time data table.
Alert Actions: Customizable text fields allowing users to define specific JSON payload strings for long, short, and exit triggers.
● 🔍 Deconstruction of the Underlying Scientific and Academic Framework
The architectural foundation of this algorithm is heavily rooted in the Fractal Market Hypothesis (FMH), which posits that financial markets exhibit self-similar statistical structures across varying scales of time. In practical terms, a distribution pattern on a 5-minute chart mathematically resembles a distribution pattern on a Weekly chart. By aggregating pivot extrema from multiple independent time scales, this script exploits these fractal geometries to identify areas of harmonic resonance—price zones where liquidity pools overlap across different cohorts of market participants.
To resolve the spatial clustering problem, the system utilizes a volatility-normalized one-dimensional grouping algorithm conceptually akin to Density-Based Spatial Clustering of Applications with Noise (DBSCAN). Instead of utilizing fixed scalar distances (which fail as asset prices scale), the algorithm calculates an epsilon distance bounded by the Average True Range (ATR). This ensures that the clustering logic expands and contracts organically with market entropy. The ultimate output is a mathematically objective reduction of structural noise, isolating only the highest-density liquidity nodes that possess the greatest statistical probability of halting directional momentum.
⚠️ 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. 지표

Daily Pivot Points - Classic ( S&R Levels )Daily Pivot Points
Classic daily pivot point levels — P, R1, R2, S1, S2 — calculated automatically from the prior session's High, Low, and Close. Levels update at the start of each new trading day and are labeled directly on the right edge of the chart with their exact prices, so you always know where you stand without doing any math.
Levels included:
P — Central pivot (orange)
R1 / R2 — Resistance zones (red)
S1 / S2 — Support zones (green)
R3 / S3 — Extended levels (optional, off by default)
Features:
Right-edge price labels on every level — no guessing
Soft zone fill between R1→R2 and S1→S2 for a clean visual bias
Works on any intraday timeframe (1m, 5m, 15m, 30m, 1H)
Built-in alerts for R1, R2, S1, S2 crosses
Fully customizable colors and line width
How to use:
Pivots are one of the most widely used levels in intraday trading. Price tends to react at these zones — use P as the neutral line, R1/R2 as overhead resistance targets, and S1/S2 as downside support. Watch for rejection or breakout at each level to time your entries and exits.
Lightweight, no repainting, no clutter. Just the levels that matter.
Added concise inline comments explaining:
why lookahead_on + is used (locks levels to prior day at open)
the floor-trader pivot formula logic
why stepline style prevents diagonal artifacts
how the var label + delete-and-redraw pattern keeps the label count clean
the barstate.islast gate
No bloat — just enough for a reader to follow the logic without re-deriving it. 지표

Multi-Oscillator Divergence Scanner [Quantum Algo]Multi-Oscillator Divergence Scanner
====================================================
🔶 OVERVIEW
Multi-Oscillator Divergence Scanner is a confluence-based divergence indicator that scans up to seven classic oscillators simultaneously — Relative Strength Index, Moving Average Convergence Divergence, Stochastic Oscillator, Commodity Channel Index, On Balance Volume, Money Flow Index, and Momentum — and displays the result on two synchronized canvases at once. Divergence lines, graded labels, and reaction zones are drawn directly on the price chart, while a dedicated pane below plots a Composite Oscillator built from every enabled engine, with the same divergence lines mirrored onto the composite itself. You see both slopes of every divergence — price disagreeing with momentum — in one glance.
The problem this script solves is selective divergence trading. Any single oscillator produces frequent divergences, and most of them fail. Requiring multiple mathematically independent engines — momentum-based, volume-based, and volatility-normalized — to diverge at the same confirmed swing filters the noise down to setups where disagreement between price and participation is broad, not incidental.
🔶 WHAT IS A DIVERGENCE?
A divergence occurs when price prints a new extreme but an oscillator refuses to confirm it. A regular bullish divergence forms when price makes a lower low while the oscillator makes a higher low — a classic reversal condition. A regular bearish divergence forms when price makes a higher high while the oscillator makes a lower high. Hidden divergences are the continuation counterparts: price makes a higher low while the oscillator makes a lower low (hidden bullish), or price makes a lower high while the oscillator makes a higher high (hidden bearish). This scanner detects all four types on confirmed swing pivots.
🔶 WHAT IS THE COMPOSITE OSCILLATOR?
The Composite Oscillator is the consensus reading of every engine you enable. Bounded oscillators (Relative Strength Index, Stochastic, Money Flow Index) contribute their native zero-to-one-hundred values; unbounded engines (Moving Average Convergence Divergence histogram, On Balance Volume, Momentum) are range-normalized over a configurable lookback; the Commodity Channel Index is rescaled onto the same axis. The average of all enabled engines plots as a single gradient line with overbought and oversold guides, a midline fill, and divergence lines drawn directly on it — so the pane shows aggregate momentum from the same engines that vote on every signal, not a separate calculation.
🔶 WHY THIS SCRIPT IS ORIGINAL
1. True multi-engine confluence. Divergences are not detected on one oscillator and decorated with others. All seven engines are evaluated independently at every confirmed pivot, and a signal only exists when the minimum confluence count you set is reached.
2. Dual-canvas mirroring. Every qualified divergence is drawn twice: on price, and on the Composite Oscillator in the pane, connected at the same two pivots. Both slopes of the disagreement are visible simultaneously — the visual proof that defines a divergence.
3. Consensus composite pane. The pane line is not one more oscillator; it is the averaged, normalized voice of the exact engines doing the scanning, colored by a gradient between the oversold and overbought guides.
4. Full transparency on every label. Each signal prints its strength as a diamond meter and lists the exact oscillators that diverged (for example: RSI · OBV · MFI). You always know why a signal exists — nothing is a black box.
5. Strength-scaled visuals. Divergence lines thicken with confluence on both canvases, and signals reaching the Strong threshold upgrade to the accent color, so chart hierarchy communicates quality instantly.
6. Reaction zones with a life cycle. Every regular divergence projects a volatility-sized zone around its pivot (measured in Average True Range). Zones gray out automatically the moment price invalidates them, so the chart always distinguishes live zones from dead ones.
7. Divergence pressure gauge. A decaying pressure model accumulates bullish and bearish divergence weight over time, giving a one-glance read on which side has been stacking disagreement with price.
🔶 HOW IT WORKS
Pivot scanning: Swing highs and swing lows are confirmed with a symmetric pivot lookback. All divergence checks are evaluated on closed bars at pivot confirmation, so historical signals do not repaint. Confirmation lag equals the right-side pivot length by design.
Confluence evaluation: At each confirmed pivot, every enabled oscillator's value at that pivot is compared against its value at the previous same-side pivot. The four divergence types are tested independently per oscillator, and contributions are counted.
Signal grading: Signals meeting the Minimum Oscillator Confluence print with strength diamonds (one per contributing oscillator). Signals reaching the Strong Signal Threshold upgrade to the accent color and thicker geometry on both the price chart and the composite pane.
Composite rendering: The pane plots the consensus line with a gradient fill to the midline, dashed overbought and oversold guides, tinted extreme bands, triangle marks at divergence bars, and the mirrored divergence lines.
Reaction zones: Each regular divergence projects a box around its pivot sized by Average True Range, extended a configurable number of bars. A bullish zone grays out when price closes below it; a bearish zone grays out when price closes above it.
Dashboard: A fully themeable panel on the price chart shows the last signal, a live divergence pressure meter, and one row per engine with its live value — color-coded for overbought, oversold, or directional state — plus each engine's most recent divergence side. Text size (four steps), position, and every color (title band, background, frame, grid, header, body, muted) are adjustable.
Chart hygiene: The number of divergences kept is capped by input, on both canvases. Older lines, labels, and zones are deleted automatically, keeping the chart readable and the auto-scale anchored to current price.
🔶 HOW TO USE IT
1. Works on any market — cryptocurrency, forex, gold, indices, stocks, futures — and any timeframe. Higher timeframes produce fewer, larger-structure signals.
2. Start with Minimum Oscillator Confluence at 2 and the Strong threshold at 4. Raise the minimum to 3 for a strict, low-frequency reversal tool; lower it to 1 to study single-oscillator behavior.
3. Read the pane and the chart together: a valid signal shows price sloping one way and the composite sloping the other, connected at the same pivots.
4. Regular divergences are reversal-oriented: treat them as exhaustion evidence at swing extremes, strongest when the composite is also inside an overbought or oversold band.
5. Hidden divergences are continuation-oriented: treat them as trend re-entry evidence during pullbacks, and do not read them like reversal signals.
6. Use the reaction zone as the decision area: a live zone holding on retest supports the signal; a grayed zone means the divergence failed.
7. The pressure meter is context, not a trigger — persistent one-sided pressure alongside fresh strong signals is the highest-quality condition.
🔶 SETTINGS
- Pivot Left / Right Length — swing size; larger values scan bigger structures.
- Independent toggles and lengths for all seven oscillator engines.
- Composite pane: normalization lookback, overbought and oversold levels, pane marks, and mirrored divergence lines toggle.
- Regular and hidden divergence toggles, minimum confluence, strong threshold.
- Reaction zone height (Average True Range ratio) and extension.
- Divergences To Keep — caps historical drawings on both canvases for chart cleanliness and stable auto-scale.
- Dashboard with adjustable text size, position, live oscillator values, and full color theming.
- Full color customization for all chart drawings and pivot markers.
🔶 ALERTS
- Bullish Divergence / Bearish Divergence — a regular divergence met the confluence minimum.
- Hidden Bullish Divergence / Hidden Bearish Divergence — a continuation divergence met the minimum.
- Strong Divergence — a regular divergence reached the strong threshold.
🔶 FREQUENTLY ASKED QUESTIONS
Does the indicator repaint? No. Divergences are evaluated only on confirmed pivots at bar close. The trade-off is intentional confirmation lag equal to the right-side pivot length.
Why does a pane divergence line sometimes start slightly off the composite's visual peak? Divergence is measured at price structure points. The line connects the composite's values at the two confirmed price pivots, which is the correct comparison even when the composite made its own extreme a bar or two away.
Why do some obvious divergences not print? Either the confluence minimum was not reached, the oscillator involved is disabled, or the swing did not confirm as a pivot under the current lengths.
Which oscillators should I enable? The default set mixes momentum and volume perspectives, which is the point of confluence: independent evidence, not seven copies of the same math.
Is a Strong signal a guaranteed reversal? No. Strength counts agreement between engines; it is a transparency measure, not a probability of profit.
🔶 CREDITS
This script builds its scanning and composite engine on classic, public-domain oscillators, and gratefully credits their creators: the Relative Strength Index by J. Welles Wilder Jr. (1978), Moving Average Convergence Divergence by Gerald Appel, the Stochastic Oscillator popularized by George C. Lane, the Commodity Channel Index by Donald Lambert (1980), On Balance Volume by Joseph Granville (1963), and the Money Flow Index by Gene Quong and Avrum Soudack. All oscillator calculations use standard built-in formulas. Drawing divergence lines on an oscillator is a long-established charting convention popularized by many community authors, acknowledged here as shared prior art. The multi-engine confluence scanner, the consensus Composite Oscillator, the dual-canvas mirroring, transparency labeling, strength grading, reaction zone life cycle, pressure model, and all code in this script are original work — no third-party or open-source script code was reused.
🔶 LIMITATIONS
Divergence can persist or fail entirely during strong trends; regular divergences against a powerful trend are the weakest application. Volume-based engines (On Balance Volume, Money Flow Index) are less meaningful on symbols with unreliable volume reporting. The composite's normalized components depend on the normalization lookback. Pivot confirmation introduces intentional delay. No indicator replaces independent analysis.
🔶 DISCLAIMER
This script is provided strictly for educational and informational purposes. It is not financial advice, an investment recommendation, or a solicitation to buy or sell any financial instrument. Past behavior of any signal does not guarantee future results. Trading involves substantial risk. Always do your own research and manage risk independently.
지표

Institutional Flow MatrixInstitutional Flow Matrix is an open-source market-analysis framework designed to organize trend direction, confirmed market structure, institutional price zones, momentum, and location within a dealing range into one readable chart.
The purpose of this indicator is not to predict every price movement or generate constant entries. It is designed to answer a more practical sequence of questions:
1. What is the current directional bias?
2. Is market structure supporting that direction?
3. Is price trading from a meaningful location?
4. Has price returned to an active institutional zone?
5. Is momentum aligned with the proposed setup?
The script combines these questions into a structured workflow while keeping the default chart intentionally clean.
WHY THIS INDICATOR WAS BUILT
Many market-structure indicators display every swing, imbalance, liquidity level, zone, and signal at the same time. While that information can be useful for detailed analysis, it can also make the chart difficult to interpret during live trading.
Institutional Flow Matrix was built around a visual hierarchy:
* Directional bias is the primary layer.
* Active Order Blocks are the principal reaction zones.
* Momentum is a confirmation layer.
* Premium and Discount provide market location.
* Fair Value Gaps, liquidity pools, sweeps, and higher-timeframe levels are optional study tools.
The default Balanced preset focuses on the information most relevant to a directional pullback setup. Minimal mode removes most supporting visuals for live execution. Full mode reveals the additional market-structure tools for deeper analysis.
WHAT MAKES THE IMPLEMENTATION DIFFERENT
The individual concepts used by this script, including pivots, moving averages, ATR trend filters, Order Blocks, Fair Value Gaps, and Premium/Discount ranges, are established forms of technical analysis.
The original contribution of Institutional Flow Matrix is how those components are synchronized and managed as one decision framework.
Key design elements include:
* Confirmed structure events rather than unconfirmed swing guesses.
* A persistent directional state requiring agreement between structure, EMA alignment, and an ATR-based trend filter.
* Order Block freshness validation before a zone is accepted.
* Separate visual duration and analytical lifetime controls for zones.
* Automatic mitigation and expiration of old zones.
* Limited drawing-object counts to prevent long-term chart clutter.
* A weighted confluence model centered on trend, structure, zone interaction, market location, and momentum.
* Three visual presets that change the information hierarchy without changing the underlying calculations.
* Confirmed-bar signals and event-based alerts.
This is not intended to be a collection of unrelated indicators. Each module has a defined role in the same setup process.
DIRECTIONAL BIAS
The chart background represents the script's confirmed directional state.
A bullish state requires agreement between:
* Bullish market structure.
* Fast EMA positioning above the slow EMA.
* Bullish ATR trend conditions.
A bearish state uses the opposite conditions.
The background changes only after the required conditions are confirmed. A larger BUY or SELL label marks a confirmed change in this directional state.
These shift labels are different from the smaller confluence signals. A shift label identifies a change in directional bias. A confluence signal requires additional location, zone, and momentum conditions.
MARKET STRUCTURE
Confirmed pivot highs and lows form the structure engine.
The script tracks:
* Higher Highs
* Higher Lows
* Lower Highs
* Lower Lows
* Breaks of Structure
* Changes of Character
A bullish break occurs when a confirmed bar closes above the latest unbroken confirmed swing high. A bearish break occurs when a confirmed bar closes below the latest unbroken confirmed swing low.
Swing labels are retrospective by design. A pivot can only be confirmed after the selected number of right-side bars has closed. Once confirmed, its label is placed on the candle where the swing originally occurred. The label was not known on that earlier candle.
ORDER BLOCKS
Order Blocks are the primary reaction zones in the indicator.
After a confirmed structure break or qualifying displacement event, the script searches backward for an opposing candle. A candidate candle can be filtered by:
* Candle range relative to ATR.
* Body size as a percentage of candle range.
* Optional volume expansion.
* Wick-based or body-based zone construction.
Before accepting the candidate, the script checks whether price has already invalidated it. This prevents many stale zones from being created after the fact.
Active Order Blocks can be invalidated by either:
* A close beyond the opposite edge.
* A wick beyond the opposite edge.
The selected mitigation method is used consistently during both zone creation and live zone management.
Order Blocks have separate controls for visual extension and analytical age. This allows users to control how long a box remains visible independently from how long it remains eligible for signal calculations.
PREMIUM, DISCOUNT, AND EQUILIBRIUM
The script creates a rolling dealing range from the highest high and lowest low over the selected lookback.
The range is divided into:
* Premium: the upper portion of the range.
* Discount: the lower portion of the range.
* Equilibrium: the 50% midpoint.
Premium and Discount do not generate trades by themselves. They provide location.
In general:
* Bullish setups receive stronger contextual support in Discount.
* Bearish setups receive stronger contextual support in Premium.
* Equilibrium represents the midpoint of the current rolling range.
Because the range is rolling, its boundaries can change when a new lookback high or low is formed.
MOMENTUM RIBBON
The momentum module uses three exponential moving averages and an ATR-normalized difference between the fast and slow averages.
Bullish momentum requires:
* Fast EMA above the slow EMA.
* Positive normalized momentum.
* Momentum above its signal average.
Bearish momentum uses the opposite conditions.
Diamond markers identify confirmed momentum crossings. The ribbon is intended as confirmation rather than a standalone entry system.
CONFLUENCE SIGNALS
The script calculates a 0-100 Confluence Score from five conditions:
* Directional bias: 25 points.
* Market structure: 15 points.
* Momentum alignment: 15 points.
* Active Order Block interaction: 25 points.
* Premium or Discount location: 20 points.
The score measures condition alignment. It is not a probability, win rate, accuracy estimate, or forecast of future performance.
By default, BUY and SELL signals require:
* Confirmed directional bias.
* Matching confirmed structure.
* Interaction with an active Order Block.
* Correct Premium or Discount location.
* Matching momentum.
* Minimum Confluence Score.
* Completion of the selected signal cooldown.
Signals are displayed only when the complete condition changes from false to true. This prevents repeated labels while the same setup remains active.
OPTIONAL ADVANCED MODULES
Full mode provides additional analytical tools:
* Fair Value Gaps with ATR size filtering.
* Equal-high and equal-low liquidity pools.
* Confirmed liquidity sweeps.
* BOS and CHoCH labels.
* HH, HL, LH, and LL labels.
* Previous day, week, and month highs and lows.
* Optional momentum candle coloring.
These features are disabled or hidden from the default Balanced view to preserve readability.
VISUAL PRESETS
Minimal:
Designed for traders who want the least chart interference. It suppresses the background, ribbon, Premium/Discount display, trailing line, dashboard, and advanced structure annotations.
Balanced:
The default view. It emphasizes directional background, active Order Blocks, Premium/Discount context, momentum ribbon, diamonds, signals, and the dashboard.
Full:
Designed for detailed study. It adds structure labels, BOS/CHoCH events, Fair Value Gaps, liquidity tools, higher-timeframe levels, and optional candle coloring.
FOR NEWER TRADERS
A simple workflow is:
1. Start with the Balanced preset.
2. Use the background to identify the current directional bias.
3. Wait for price to return to an Order Block matching that bias.
4. Check whether price is in Discount for a bullish setup or Premium for a bearish setup.
5. Confirm that the momentum ribbon agrees.
6. Treat the signal as a point for further analysis, not an automatic order.
The equilibrium line can be used as a reference for the midpoint of the current dealing range. It is not automatically an entry or exit instruction.
FOR ADVANCED TRADERS
Experienced users can customize:
* Pivot confirmation sensitivity.
* ATR and EMA trend parameters.
* Wick-based versus body-based Order Blocks.
* Displacement-created zones.
* Candle body, range, and volume filters.
* Close-based versus wick-based mitigation.
* Zone visual duration and analytical age.
* Premium and Discount percentages.
* Fair Value Gap size.
* Liquidity sensitivity.
* Momentum lengths.
* Individual signal requirements.
* Minimum confluence threshold.
* Signal cooldown.
* Higher-timeframe reference levels.
Advanced users can also disable individual hard requirements and use the Confluence Score as a more flexible filtering system.
ALERTS
Alert conditions are included for:
* Break of Structure.
* Change of Character.
* New Order Block.
* BUY signal.
* SELL signal.
* Bias-aligned Order Block entry.
* Trend and momentum confluence.
* Liquidity sweep.
Alerts should be created using Once Per Bar Close when confirmed signals are required.
NON-REPAINTING AND TIMING
Structure breaks, directional shifts, zone creation, zone mitigation, momentum events, and confluence signals are evaluated on confirmed bars.
Pivot-based swing labels require future bars to confirm that a swing occurred. After confirmation, the label is displayed on the original pivot candle. This is delayed confirmation with retrospective placement, not advance knowledge of the swing.
Previous-period levels use completed higher-timeframe data.
LIMITATIONS
* This indicator does not predict future prices.
* It does not calculate position size, stop loss, or account risk.
* It is not a complete automated trading system.
* Signals can fail during volatile, illiquid, or range-bound conditions.
* Rolling Premium, Discount, and equilibrium levels can move when the lookback range changes.
* Confirmed pivots introduce an intentional delay.
* Order Block definitions vary among trading methodologies; this script uses the documented candle-search and filtering rules described above.
* Volume behavior differs across asset classes and data providers.
* Parameter settings that work on one symbol or timeframe may not be appropriate for another.
Suggested starting points are the 15-minute and 1-hour charts for intraday analysis and the 4-hour chart for broader swing structure. Users should test settings on their own symbols and trading sessions.
OPEN-SOURCE PURPOSE
The script is published open-source so traders can inspect the calculations, understand why signals occur, verify the confirmed-bar methodology, and adapt the framework for their own research.
The goal is to provide a readable and transparent market-structure workflow rather than a black-box prediction tool.
DISCLAIMER
This indicator is provided for educational and analytical purposes only. It is not financial advice and does not guarantee profitable results. Historical chart behavior does not ensure future performance. Users are responsible for their own analysis, testing, risk management, and trading decisions.
지표

Zero-Lag MACD Divergence Pro Zero-Lag MACD Divergence Pro is a MACD-family oscillator that reduces the indicator's inherent lag using zero-lag exponential averaging, detects regular divergences directly inside the MACD pane, and optionally gates its buy/sell markers so they only appear when a divergence and a crossover confirm each other. It is designed for intraday timeframes but works on any chart.
What makes it original
This is not a standard MACD with cosmetic changes. Three elements work as one system: (1) all three components — fast line, slow line, and signal line — are rebuilt on zero-lag EMAs rather than standard EMAs, (2) divergence detection runs on the zero-lag MACD line itself and draws its lines and labels inside the oscillator pane, with an optional mirrored dashed line on the price chart, and (3) a combo-gating mode suppresses crossover markers unless a divergence was confirmed within a recent, user-defined window, which filters the many insignificant crossovers a MACD produces in ranging markets.
How it works
Zero-Lag Core: Each component uses the zero-lag EMA construction (2 × EMA − EMA of EMA), a public-domain technique attributed to John Ehlers' error-correction work. This roughly halves the effective lag of each average, so crossovers occur earlier than on a classic MACD. A faded classic MACD line can be displayed for side-by-side comparison and switched off in the settings.
Divergence Detection: Confirmed pivot highs/lows on the zero-lag MACD line are compared with price highs/lows at the same bars. A regular bullish divergence (price lower low, MACD higher low) or regular bearish divergence (price higher high, MACD lower high) draws a connecting line between the two MACD pivots with a label in the pane. Pivots confirm only after the lookback period elapses, so divergence lines appear with a delay by design and do not repaint.
Combo Signals: In the default mode, a buy/sell marker prints on the price chart only when a zero-lag crossover occurs while a same-direction divergence is still valid (within a user-defined number of bars). Turning combo mode off prints markers on every confirmed crossover instead. Signals respect a cooldown and a daily maximum.
Four-Color Histogram: The histogram distinguishes rising and fading momentum on both sides of the zero line.
Dashboard: A dark, movable panel (styled to stay readable on light-theme charts) summarizes MACD state, histogram direction, active divergence, zero-line position, and the day's signal count.
How to use it
Add the indicator to a lower-timeframe chart (5–15 min for intraday use). Watch for a divergence label in the pane, then wait for the crossover marker that confirms it — the combo mode automates exactly this sequence. The zero-line row on the dashboard helps grade signals: bullish setups above the zero line and bearish setups below it occur in the direction of the broader momentum. All lengths, the divergence window, signal limits, colors, and dashboard placement are adjustable.
Limitations
Divergence lines appear only after pivots confirm (default 5 bars), so they are visible later than the pivot itself; this is the unavoidable cost of non-repainting detection. Reduced lag also means the zero-lag lines are more sensitive than a classic MACD and can produce more crossovers in choppy conditions — the combo mode exists to filter these. This tool describes momentum conditions; it does not predict future price movement, and past behavior of any signal does not guarantee future results. Always combine with your own analysis and risk management. 지표
