Indicator

VWAP Confluence Engine | AnonycryptousVWAP Confluence Engine | Anonycryptous
Description & user manual
Why this indicator is different
Most traders run VWAP and RSI as two separate tools. VWAP tells you where price is relative to the volume-weighted average. RSI tells you about momentum. The problem is that these two readings constantly disagree, and when they do, the trader is left guessing which one to trust. Price sits above VWAP while RSI turns down. RSI pushes above its midline while price is still below VWAP. Every one of those moments is a decision made under conflicting information, and that is exactly where most intraday accounts bleed.
The VWAP Confluence Engine removes the guessing. Instead of showing you two panels that argue with each other, it forces agreement before it shows a directional state. Three independent measurements have to point the same way: price relative to VWAP, a volume-weighted RSI, and the Money Flow Index. When all three align bullish, the candle is painted in the bull color. When all three align bearish, it is painted in the bear color. When they disagree, the candle is neutral, and that neutral state is the most important output in the whole system. It is the market telling you it has not decided, and that you should not decide either.
This turns a chart full of conflicting signals into a single color-coded read. One glance tells you direction, momentum, and participation at the same time.
But direction alone is only half of a trade. A signal in the wrong location is a trap, no matter how clean the momentum looks. So the engine also maps support and resistance zones from swing pivots, flips those zones as price reclaims or loses them, and tells you in a dashboard where the nearest level sits above and below. A bull agreement firing directly into a heavy resistance zone is a very different proposition from the same agreement firing off a reclaimed support. The indicator gives you both pieces in one view.
And because a single timeframe is never the whole story, a compact multi-timeframe bar shows the same agreement logic across six timeframes at once. When every timeframe is the same color, the decision is easy. When they are mixed, that is information too.
Important notice
The VWAP Confluence Engine generates visual states based on VWAP position, volume-weighted momentum, money flow, and price structure. These states are not financial advice. They do not predict future price movement. They do not guarantee profitability. All trading decisions are made entirely by the user. Always manage your own risk. Always apply your own judgment.
1. Overview
The VWAP Confluence Engine is an overlay indicator that combines VWAP, a volume-weighted RSI, and the Money Flow Index into a single three-way agreement system, then places that agreement in the context of support and resistance structure and higher timeframe trend.
What it includes:
- Anchored VWAP with selectable reset period (hour, 4 hours, day, week, month)
- Volume-weighted RSI that scales price change by relative volume
- Money Flow Index as an independent confirmation layer
- Three-way agreement candle coloring: bull, bear, and neutral
- Gradient fill between VWAP and price that intensifies with distance
- Support and resistance zones from four independent pivot lengths, with zone flip logic
- Divergence detection with a box drawn on the price chart
- Higher timeframe filter that can gate signals to trade only with the larger trend
- Sentiment transition markers on the exact bar agreement changes
- Two configurable EMAs for optional extra confirmation, independent of the signal engine
- Main dashboard with agreement state, VWAP position, VW RSI, MFI, divergence, nearest levels, and a dedicated higher timeframe section
- Compact multi-timeframe bar across six configurable timeframes
- Optional background coloring
- Alerts for agreement changes and divergence
2. Core logic
2.1 The three-way agreement
Everything in this indicator is built around one question: do all three measurements agree?
The three measurements are:
- VWAP position. Is price above or below the anchored VWAP.
- Volume-weighted RSI. Is momentum above or below its midline.
- Money Flow Index. Is money flow above or below its midline.
A bull state requires price above VWAP, VW RSI above the midline, and MFI above the midline at the same time. A bear state requires all three below. Anything else is neutral.
This is deliberately strict. The indicator does not paint a color unless all three independent readings confirm each other. That is why the neutral state matters so much. It is not a weakness in the signal, it is the signal. It marks the stretches where price is chopping, where momentum and money flow disagree, and where forcing a trade usually ends badly.
2.2 Volume-weighted RSI
Standard RSI treats every bar equally. A move on thin volume and a move on heavy volume produce the same RSI value if the price change is the same. The volume-weighted RSI multiplies each bar's price change by its relative volume, the ratio of that bar's volume to a smoothed average, before the smoothing step. Moves on strong participation push the oscillator harder. Moves on weak participation barely register. The result reflects who was behind the move, not just that a move occurred.
2.3 Money Flow Index
The MFI is calculated from typical price multiplied by volume, producing positive and negative money flow that is converted to a 0 to 100 index. It responds differently from the VW RSI because it weights price level rather than price change. Requiring both to agree means two independent volume-based calculations have to arrive at the same conclusion, which is a stronger condition than either one alone.
3. VWAP and the fill
The VWAP is anchored to a selectable period. Day is the default and the most useful for intraday scalping, resetting at each session open. Week and month give longer-term institutional reference levels. Hour and 4 hours give shorter references for very fast trading.
The fill between VWAP and price is drawn with a gradient. Near VWAP it is almost invisible. The further price travels from VWAP, the more the fill intensifies, up to a configurable maximum. This gives an immediate visual sense of how stretched price is from its volume-weighted average without adding any clutter when price is hugging the line. The fill color follows the agreement state.
4. Support and resistance zones
The engine detects swing highs and lows using four independent pivot lengths, each of which can be toggled and adjusted. Instead of drawing thin lines, it draws zones with a thickness based on the average true range, so each level is a band rather than a single price.
The zones flip color based on where price is relative to them:
- When price is above a zone, it is drawn in the bull color, acting as support.
- When price is below a zone, it is drawn in the bear color, acting as resistance.
- When price is inside a zone, it is drawn in the neutral color, marking active interaction.
This flip logic reflects a basic principle of price structure: old resistance becomes new support once it is reclaimed, and old support becomes new resistance once it is lost. The zone color always tells you which role the level is currently playing.
The maximum number of zones shown per pivot length is configurable, so the chart stays as clean or as detailed as you want.
5. Divergence
Divergence is detected by comparing pivots in the VW RSI against pivots in price.
Bearish divergence: price makes a higher high while VW RSI makes a lower high. Momentum is weakening as price extends.
Bullish divergence: price makes a lower low while VW RSI makes a higher low. Selling pressure is fading even as price continues down.
Sensitivity controls the pivot lookback window. High uses a 3-bar window for more signals and more noise. Medium uses 5 bars. Low uses a 10-bar window for fewer, higher quality signals.
When a divergence confirms, a box is drawn on the price chart spanning the full high-to-low range of the swing involved, with a small label naming the divergence type. This shows not just that a divergence happened, but exactly where on the chart it occurred. The dashboard also reports the current divergence state.
6. Higher timeframe filter
The higher timeframe filter, when enabled, requires the higher timeframe to agree with the current direction before a candle can be painted bull or bear. On a lower timeframe this prevents counter-trend coloring during a pullback inside a larger trend.
The filter can be turned off entirely. With it off, candle coloring is based only on the current timeframe's three-way agreement. This is a deliberate choice left to the trader: strict alignment with the higher timeframe, or faster response on the current one. The dashboard always shows the higher timeframe bias regardless of whether the filter is gating signals, so the context is available either way.
7. Multi-timeframe bar
The multi-timeframe bar is a compact panel showing the agreement direction across six timeframes at once. Each slot is fully configurable, defaulting to 5m, 15m, 1h, 4h, D, and W. Each shows a colored triangle, up for bull, down for bear, a dot for neutral, with the timeframe label colored to match.
This is the fastest read in the indicator. When every timeframe is the same color, alignment is strong and the decision is simple. When the shorter timeframes are one color and the higher ones another, price is at a transition or in conflict, and the bar shows that at a glance.
8. Sentiment transitions
When the agreement state changes, a small marker is plotted on the exact bar where it happened. A triangle up when the state flips to bull, a triangle down when it flips to bear, a dot when it drops into neutral. These mark the moments the read changed, which is often more actionable than the state simply being green or red for many bars in a row.
9. Dashboard reference
The main dashboard updates on every bar and shows:
Agreement - the current three-way state: bull, bear, or hold.
VWAP - whether price is above or below the anchored VWAP.
VW RSI - current volume-weighted RSI value, colored by position.
MFI - current Money Flow Index value.
Divergence - active divergence state, if any.
Near Support - nearest zone level below current price.
Near Resist - nearest zone level above current price.
VWAP Anchor - the current VWAP reset period.
The higher timeframe section, which can be toggled, adds for the selected higher timeframe: its agreement state, VWAP position, VW RSI, MFI, whether the higher timeframe filter is active, and a warning if the current chart timeframe is below the recommended minimum for the system.
10. How to use
10.1 The core read
Wait for agreement. A bull or bear colored candle means all three measurements confirm each other. A neutral candle means they do not. The single most valuable habit this indicator encourages is to simply stand aside when candles are neutral. Those stretches are where the market has not chosen a direction, and where forcing a trade tends to produce the worst outcomes.
10.2 Location matters as much as direction
A colored candle tells you the direction is confirmed. The support and resistance zones tell you whether the location is any good. A bull agreement firing straight into a heavy resistance zone above is a low quality entry, even though the momentum looks clean. The same bull agreement firing off a zone that has just flipped from resistance to support is a far better proposition. Read the two together, never direction alone.
10.3 Using the higher timeframe
If you want to trade only in the direction of the larger trend, enable the higher timeframe filter. Colored candles will then only appear when the current and higher timeframe agree. If you prefer to react faster and judge context yourself, leave it off and use the higher timeframe section of the dashboard and the multi-timeframe bar as reference rather than as a hard gate.
10.4 Divergence as context
A divergence box is a warning that momentum and price have started to disagree, not an instruction to enter. The most reliable approach is to wait for a divergence box near a support or resistance zone and then look for the agreement state to actually flip before acting. Divergence can persist for many bars before price responds.
10.5 Illustrative bull scenario
Educational example only. Not a trading recommendation.
Price pulls back to a support zone that flipped from resistance a few sessions earlier. The multi-timeframe bar shows the higher timeframes already bullish. A bullish divergence box appears at the zone. On the next bar the agreement state flips to bull, painting the candle and plotting a transition triangle. Direction, location, momentum, and higher timeframe are all pointing the same way at the same place.
10.6 Illustrative bear scenario
Educational example only. Not a trading recommendation.
Price rallies into a resistance zone overhead. VW RSI and MFI are both rolling over. A bearish divergence box is drawn across the swing. The agreement state flips to bear and a transition triangle down prints. The higher timeframe section confirms a bearish bias. The setup has direction, structure, and higher timeframe agreement in one location.
11. Recommended use
This system is built for intraday trading and works best on the higher intraday timeframes rather than the very fastest ones, where noise overwhelms the agreement logic. The dashboard includes a timeframe check that flags when you are below the recommended minimum. Pivot settings for the support and resistance zones can be tuned per instrument and timeframe; smaller pivot lengths surface shorter-term levels, larger ones surface major structure.
12. Settings reference
VWAP: anchor period, line color, line width.
VW RSI: length, volume smoothing, midline, overbought and oversold levels, divergence sensitivity, divergence toggle and hold, divergence box toggle and transparency.
MFI: enable, length, midline.
HTF filter: enable, timeframe, RSI midline.
S/R zones: show toggle, four pivot lengths with individual show toggles, max zones per pivot, zone thickness by ATR, zone transparency.
Visuals: bull, bear, and neutral colors, candle coloring toggle, VWAP fill toggle and transparency, background color toggle and transparency, sentiment transition toggle.
Moving averages: two EMAs, each with show toggle, length, color, transparency, and width. The EMAs are an optional visual aid for extra confirmation only. They are not part of the agreement engine and do not influence candle coloring, signals, or any other calculation.
Dashboards: main dashboard show, position, size, HTF section toggle, HTF section timeframe. Multi-timeframe bar show, position, size, and six configurable timeframe slots.
13. Disclaimer
This indicator is provided for educational and informational purposes only. Nothing in this document or in the indicator output constitutes financial advice or any form of recommendation. Trading financial instruments involves substantial risk of loss. Past performance is not indicative of future results. You may lose all of your invested capital. Anonycryptous accepts no responsibility or liability for any losses incurred as a result of using this indicator. Indicator

ICT Fractal SMT Divergence Engine [v6]
ENGLISH
🔥 ICT Fractal SMT Divergence & Auto-Triad Engine is a professional, high-precision PulseWire indicator designed for Smart Money Concepts (SMC) and Inner Circle Trader (ICT) methodology.
🎯 PURPOSE & CONCEPT
In institutional trading, SMT (Smart Money Technique) Divergence measures inter-market relative strength across correlated asset groups (Triads). When one asset in a triad sweeps liquidity by creating a new extreme ( Lower Low or Higher High ), while a correlated asset fails to sweep that extreme ( Higher Low or Lower High ), it reveals institutional accumulation/distribution and an imminent high-probability market reversal.
This indicator calculates SMT divergences strictly between confirmed Bill Williams / ICT Fractals , ensuring pixel-perfect visual precision on the chart with zero Y-axis displacement.
🧠 SMART AUTO-DETECT TRIAD ENGINE
The indicator automatically recognizes your current chart ticker and instantly pairs it with its exact correlated triad assets:
Crypto : Opening BTCUSDT.P, ETHUSDT.P, or any Altcoin automatically pairs BTCUSDT.P, ETHUSDT.P, and CRYPTOCAP:TOTAL3.
Forex : Opening EURUSD or GBPUSD automatically pairs the counterpart FX pair and DXY (with automatic inverse Dollar Index correlation).
Precious Metals : Opening XAUUSD (Gold) pairs XAGUSD (Silver) and PLATINUM. Opening XAGUSD pairs XAUUSD and PLATINUM.
US Stock Indices : Automatically correlates ES1! (S&P 500), NQ1! (Nasdaq), and YM1! (Dow Jones).
📖 HOW TO TRADE / USAGE RULES
Bullish SMT Setup (Long Bias) :
- Main asset breaks prior Fractal Low (Lower Low / Liquidity Sweep).
- Correlated triad asset holds its low (Higher Low).
- Execution: Look for bullish Market Structure Shift (MSS) or Fair Value Gap (FVG) entry.
Bearish SMT Setup (Short Bias) :
- Main asset breaks prior Fractal High (Higher High / Liquidity Sweep).
- Correlated triad asset holds its high (Lower High).
- Execution: Look for bearish Market Structure Shift (MSS) or Fair Value Gap (FVG) entry.
⚙️ COMPREHENSIVE SETTINGS & INPUTS EXPLANATION
Triad Preset Mode : Select between Auto Detect (Smart Triad), specific market presets, or Custom / Manual Tickers.
Asset 2 / Asset 3 Ticker (Custom) : Manual input for custom correlated assets when in Custom Mode.
Invert Asset 2 / Invert Asset 3 : Toggle for inversely correlated symbols (e.g., DXY vs EURUSD).
Fractal Length (Left/Right Bars) : Defines the fractal shoulder size (Default: 2 = classic 5-candle ICT Fractal).
Comparison Mode : Choose between Regular (High/Low wicks) or Hidden SMT (Close body prices).
Min / Max Distance (Bars) : Controls minimum and maximum bar separation between compared fractals.
Compare with Asset 2 / Compare with Asset 3 : Toggle individual asset divergence verification.
Visual Styling & HUD Dashboard : Customize colors, line thickness, label sizes, background glow, and dashboard HUD position.
Disclaimer: Trading financial markets involves substantial risk of loss. This indicator is designed for educational and analytical purposes to support SMC/ICT trading methodologies.
================================================================================
РУССКАЯ ВЕРСИЯ
🔥 ICT Fractal SMT Divergence & Auto-Triad Engine — это профессиональный высокоточный индикатор для трейдеров, торгующих по концепциям Smart Money Concepts (SMC / ICT) .
🎯 ПРЕДНАЗНАЧЕНИЕ И КОНЦЕПЦИЯ
В институциональном трейдинге SMT (Smart Money Technique) Дивергенция измеряет относительную силу между коррелирующими группами активов (Триадами). Когда один актив из триады обновляет ключевой ценовой уровень ( Lower Low или Higher High ), совершая снятие ликвидности (Liquidity Sweep) , а второй актив из триады отказывается обновлять свой экстремум (формируя Higher Low или Lower High ), это открывает институциональный след крупного игрока и указывает на скорый разворот рынка.
Индикатор строит дивергенции строго между подтвержденными фракталами Билла Вильямса / ICT , обеспечивая идеальную визуальную точность на графике без смещения меток по ценовой оси.
🧠 УМНЫЙ АВТО-ДЕТЕКТОР ТРИАД (SMART AUTO-DETECT)
Индикатор автоматически определяет открытый актив и мгновенно связывает его с правильной триадой:
Криптовалюта : При открытии BTCUSDT.P, ETHUSDT.P или любого альткоина автоматически подтягиваются коррелирующие активы: BTCUSDT.P, ETHUSDT.P и CRYPTOCAP:TOTAL3.
Валютные пары (Forex) : При открытии EURUSD или GBPUSD подтягивается парный валютный актив и DXY (с автоматической инверсией индекса доллара).
Драгоценные металлы : При открытии XAUUSD (Золото) автоматически подтягивается XAGUSD (Серебро) и PLATINUM. При открытии XAGUSD — XAUUSD и PLATINUM.
Фондовые индексы США : Автоматическое сравнение триады фьючерсов ES1! (S&P 500), NQ1! (Nasdaq) и YM1! (Dow Jones).
📖 РУКОВОДСТВО ПО ТОРГОВЛЕ И СИГНАЛЫ
Bullish SMT (Бычий SMT / Покупки) :
- Основной актив обновил предыдущий фрактальный лой (Lower Low / снял ликвидность).
- Коррелирующий актив из триады удержал лой (Higher Low).
- Вход в сделку: Ищите слом структуры (MSS / CHoCH) или имбаланс (FVG) на младшем таймфрейме для входа в лонг.
Bearish SMT (Медвежий SMT / Продажи) :
- Основной актив обновил предыдущий фрактальный хай (Higher High / снял ликвидность).
- Коррелирующий актив из триады удержал хай (Lower High).
- Вход в сделку: Ищите слом структуры (MSS / CHoCH) или имбаланс (FVG) на младшем таймфрейме для входа в шорт.
⚙️ ПОДРОБНЫЙ РАЗБОР ВСЕХ НАСТРОЕК
Triad Preset Mode : Выбор между Auto Detect (умное авто-определение), готовыми пресетами рынков или режимом Custom (ручной ввод).
Asset 2 / Asset 3 Ticker (Custom) : Поля для ручного ввода тикеров при включенном режиме Custom.
Invert Asset 2 / Invert Asset 3 : Включение инверсии для обратно коррелирующих активов (например, DXY против EURUSD).
Fractal Length (Left/Right Bars) : Размер плеча фрактала (по умолчанию 2 — классический 5-свечной фрактал ICT).
Comparison Mode : Режим сравнения: Regular SMT (сравнение по фитилям High/Low) или Hidden SMT (по закрытию тел Close).
Min / Max Distance (Bars) : Минимальное и максимальное расстояние в барах между сравниваемыми фракталами.
Compare with Asset 2 / Compare with Asset 3 : Включение/выключение проверки дивергенции по отдельным активам.
Visual Style & HUD Dashboard : Настройка цветов (Bull/Bear SMT), толщины линий, размера меток, подсветки фона и позиции таблицы на экране.
Отказ от ответственности: Торговля на финансовых рынках несет высокий риск. Данный индикатор создан для аналитических целей и поддержки решений по SMC / ICT концепциям. Indicator

Trend Bias Guide MATrend Bias Guide MA
OVERVIEW
Trend Bias Guide MA is a smoothed reference line that shows which side (bullish or bearish) has been dominating recent price action, and helps spot early signs of trend exhaustion through divergence between price and candle-body pressure.
Unlike a standard moving average, this line is not derived from price itself. It is derived from the net directional pressure of individual candles over a lookback window, then projected onto the chart at a visual offset from price using ATR, so it never overlaps the candles.
WHAT IT IS BUILT FROM
For every candle in the lookback window (default: 50 candles), the script measures (close − open). This value is positive for a bullish candle and negative for a bearish candle, and its magnitude reflects the size of that candle's body.
These values are summed across the whole lookback window into a single number, referred to here as the net bias:
net bias = Σ (close − open) over the last N candles
This sum captures two distinct effects at once:
1. Count imbalance: whether there were more bullish or more bearish candles in the window.
2. Size imbalance: whether the bullish or bearish candles had larger bodies on average.
Both effects move price in the same underlying way, and summing (close − open) candle by candle combines them automatically, without needing to calculate them separately. If the net bias is positive, bullish pressure has dominated the window; if negative, bearish pressure has dominated.
HOW THE LINE IS DRAWN
- If the net bias is negative (bearish), the line is plotted above price, at a distance of (ATR × multiplier) above the current high.
- If the net bias is positive (bullish), the line is plotted below price, at a distance of (ATR × multiplier) below the current low.
- ATR length and multiplier are both adjustable inputs (defaults: ATR length 14, multiplier 1.0), and control how far the line sits from price.
- The raw level is then smoothed with a simple moving average (default length: 10) to reduce short-term noise and produce a cleaner, more continuous line instead of a jagged one.
- The line changes color to match its current bias: green when below price (bullish), red when above price (bearish).
INPUTS
- Lookback Length (default 50): number of candles used to calculate the net bias.
- ATR Length (default 14): period used for the ATR calculation that sets the offset distance.
- ATR Multiplier (default 1.0): scales the offset distance from price.
- Smoothing Length (default 10): period of the moving average applied to the final line.
HOW TO INTERPRET IT
- Green line below price: bullish pressure has dominated over the lookback window.
- Red line above price: bearish pressure has dominated over the lookback window.
- This is a trailing, lookback-based measure. Like any indicator built on a moving window, it reacts with a delay relative to the current candle — it will not flip instantly at the exact start of a new trend, and generally needs enough new candles in the new direction to outweigh the older ones still inside the window.
HOW TO USE IT
This indicator is designed as a contextual reference, not as a standalone entry or exit signal. Two practical uses:
1. Trend context: at a glance, see whether recent price action has been dominated by bullish or bearish candles, without needing to eyeball candle sizes manually.
2. Divergence / exhaustion warning: watch for cases where price is trading above a rising average (e.g., an EMA, not included in this script) while this line is still red (or below a falling average while the line is still green). This mismatch between price direction and underlying candle pressure can flag weakening trend conviction. In backtesting on XAUUSD (17 years of hourly data), this type of divergence was associated with a meaningfully higher chance of the trend reversing within the following 24–72 hours compared to the general baseline, with the effect strongest in the 24-hour window and gradually fading over longer horizons.
LIMITATIONS
- This is a descriptive/contextual tool, not a predictive trading signal on its own. It shows what has already happened over the lookback window, and any forward-looking use (such as the divergence behavior described above) carries no guarantee of repeating in the same way in the future or on other symbols/timeframes.
- Being lookback-based, the line inherently lags price, in the same way any moving average or rolling calculation does.
- It does not include stop-loss, take-profit, or position-sizing logic of any kind. It is a visual reference only.
- Backtested divergence statistics referenced above were derived from historical XAUUSD data and should not be assumed to hold with the same magnitude across all instruments, timeframes, or market regimes. Users should validate behavior on their own instrument and timeframe before relying on it. Indicator

SMT Sniper Entry Engine [trade_w_samet]🎯 SMT Sniper Entry Engine
SMT Sniper Entry Engine is a structured correlated-market divergence and confirmation indicator designed to help traders study liquidity sweeps, SMT divergence, reclaim quality, pair correlation, external-range location, displacement, Fair Value Gap evidence, micro-structure confirmation, and permanent bar-close UP or DOWN signals through one coordinated workflow.
The script is built around one central idea:
An SMT divergence should not automatically become an entry signal.
Instead of treating every difference between two correlated markets as equally meaningful, the engine first identifies a one-market liquidity sweep, then evaluates reclaim behavior, ATR-normalized sweep depth, candle direction, rejection quality, range expansion, pair correlation, external-range location, and divergence separation before the SMT event is accepted.
A qualified SMT event still does not create an immediate final signal.
The accepted SMT event arms a temporary confirmation sequence.
The engine then waits for directional displacement, a confirmed break of the SMT candle, and the additional evidence required by the active Engine Preset before a permanent UP or DOWN label is printed.
The indicator includes:
• Automatic comparison-symbol selection for supported metals, indices, cryptocurrencies, forex majors, and common forex crosses
• Manual comparison-symbol mode
• Same-timeframe comparison-market data
• Closed-bar rolling liquidity references
• Current-bar-close SMT divergence detection
• Either-market sweep acceptance
• Same-bar liquidity reclaim validation
• ATR-normalized sweep-depth measurement
• Chart-candle direction filtering
• Rejection-close filtering
• Minimum range-expansion filtering
• Separate bullish and bearish 0–100 Base Quality Scores
• Log-return pair-correlation analysis
• External-range location filtering
• ATR-normalized divergence-separation analysis
• Separate bullish and bearish 0–100 Sniper Scores
• Standard, Sniper, and Elite Engine Presets
• A temporary eight-bar confirmation window
• Sequential evidence accumulation across separate closed candles
• Directional displacement confirmation
• SMT-candle break confirmation
• Fair Value Gap confirmation
• Micro-structure break confirmation
• ATR-buffered setup invalidation
• Setup expiration
• Directional SMT cooldown
• Final signal cooldown
• One final UP or DOWN signal per completed SMT sequence
• Minimal historical SMT markers
• Dotted historical SMT reference lines
• Blue UP and orange DOWN labels
• Adjustable UP / DOWN label size
• Signal-confirming FVG boxes
• Recent-only chart-object
• A premium bottom-right dashboard
• Static PulseWire alert conditions
• Combined dynamic alert() support
• “Any alert() function call” compatibility
• Data Window diagnostics
• Confirmed-close permanent signals
• No pivot functions
• No future-bar confirmation
• No historical signal backplotting
The purpose of this script is to provide a structured way to study when a correlated-market divergence is supported by sufficient liquidity, correlation, location, reaction, and confirmation evidence.
It is not financial advice.
It is not an automated trading system.
It does not guarantee profitable trades.
It does not execute broker orders.
It does not calculate position size.
It does not include a built-in TP / SL trade-management engine.
It does not provide verified win-rate or profitability statistics.
It does not replace independent analysis, execution planning, or risk management.
━━━━━━━━━━━━━━━━━━━━━━
📌 OVERVIEW
━━━━━━━━━━━━━━━━━━━━━━
At a high level, SMT Sniper Entry Engine does the following:
• Selects a comparison market automatically or manually.
• Requests the comparison market’s open, high, low, close, and ATR data on the chart timeframe.
• Builds rolling liquidity references from already completed candles.
• Checks whether only one market swept its corresponding liquidity reference.
• Requires the sweeping market to reclaim the reference on the same completed candle.
• Measures sweep depth relative to ATR.
• Evaluates chart-candle direction.
• Evaluates the candle’s closing position.
• Evaluates minimum range expansion relative to ATR.
• Produces separate bullish and bearish 0–100 Base Quality Scores.
• Measures the relationship between chart and comparison-market returns.
• Evaluates whether bullish SMT appears near the lower portion of the external range.
• Evaluates whether bearish SMT appears near the upper portion of the external range.
• Measures how clearly the non-sweeping market held its own liquidity reference.
• Produces separate bullish and bearish 0–100 Sniper Scores.
• Applies Standard, Sniper, or Elite acceptance thresholds.
• Confirms a qualified SMT event only after the current candle closes.
• Arms a temporary sequential confirmation window.
• Accumulates displacement, SMT-candle break, FVG, and structure evidence.
• Invalidates the setup if price closes beyond the SMT extreme by the stored ATR buffer.
• Expires the setup when confirmation does not arrive inside the available window.
• Applies final signal cooldown protection.
• Prints a permanent blue UP or orange DOWN label only after every required condition is confirmed.
• Optionally draws the FVG associated with the final signal.
• Displays current engine state, comparison symbol, correlation, active score, and signal counts in the dashboard.
• Provides separate static alert conditions.
• Provides one combined dynamic final-signal alert workflow.
• Exposes internal diagnostic values through PulseWire’s Data Window.
The indicator does not use machine-learning prediction.
Its scores are not probabilities.
Its signal counts are not wins and losses.
Its labels do not promise future direction.
The script is a rule-based educational framework that explains how a raw correlated-market divergence becomes an accepted, rejected, invalidated, expired, or finally confirmed setup.
━━━━━━━━━━━━━━━━━━━━━━
🧠 CORE IDEA
━━━━━━━━━━━━━━━━━━━━━━
The core idea behind SMT Sniper Entry Engine is that two markets with a meaningful positive relationship do not always take corresponding liquidity at the same time.
When one market trades beyond a prior liquidity reference while the other market holds its own reference, the difference can create an SMT divergence.
However, the divergence alone contains limited information.
A basic SMT event does not automatically explain:
• whether the sweep was meaningful relative to volatility
• whether the sweeping market reclaimed the reference
• whether the chart candle closed with directional rejection
• whether the candle range expanded enough to matter
• whether the selected markets remain sufficiently correlated
• whether the event occurred near a useful external-range location
• whether the non-sweeping market clearly held its own level
• whether price produced directional displacement afterward
• whether the SMT candle was actually broken
• whether an FVG or micro-structure break confirmed the reaction
• whether the setup remained valid during the confirmation window
• whether another recent final signal is still inside the cooldown period
The engine therefore uses a staged sequence:
comparison-market selection
→ closed-bar liquidity references
→ one-market sweep
→ same-bar reclaim
→ Base Quality Score
→ pair-correlation validation
→ external-range location
→ divergence-separation validation
→ Sniper Score
→ confirmed SMT event
→ temporary setup arming
→ sequential reaction evidence
→ invalidation or expiration control
→ permanent UP or DOWN signal
For bullish conditions, the engine studies prior-low liquidity, bullish rejection, lower external-range location, directional displacement, a close above the SMT candle high, and bullish confirmation evidence.
For bearish conditions, the same process is mirrored around prior highs.
The purpose is not to produce the largest possible number of signals.
The purpose is to make the acceptance process selective, visible, and understandable.
━━━━━━━━━━━━━━━━━━━━━━
🧩 WHY THIS SCRIPT IS NOT A SIMPLE BUY/SELL INDICATOR
━━━━━━━━━━━━━━━━━━━━━━
SMT Sniper Entry Engine is not designed to be used as a blind signal generator.
A raw correlated-market divergence must move through multiple stages:
One market sweeps liquidity
→ the comparison market does not make the same sweep
→ the sweeping market reclaims its reference
→ sweep depth is evaluated
→ chart-candle direction is checked
→ rejection-close quality is checked
→ range expansion is checked
→ the Base Quality Score is calculated
→ pair correlation is checked
→ external-range location is checked
→ divergence separation is checked
→ the Sniper Score is calculated
→ the SMT event is accepted
→ the confirmation window opens
→ directional displacement is accumulated
→ the SMT candle must be broken
→ FVG and/or micro-structure evidence is accumulated
→ the setup must avoid invalidation
→ the setup must confirm before expiration
→ the final UP or DOWN label appears
Each module serves a different purpose.
The comparison engine defines the external market used for SMT analysis.
The liquidity engine identifies the one-market sweep.
The reclaim engine checks whether the liquidity event closed back inside the reference.
The Base Quality Score evaluates the completed SMT candle.
The Sniper Context Engine evaluates correlation, location, separation, and sweep quality.
The sequential confirmation engine evaluates what price does after the SMT event.
The invalidation and expiration controls remove setups that no longer satisfy the intended sequence.
The dashboard explains the current engine state.
This makes the script a coordinated SMT-confirmation workflow rather than a simple divergence marker.
━━━━━━━━━━━━━━━━━━━━━━
⚙️ HOW THE SCRIPT WORKS
━━━━━━━━━━━━━━━━━━━━━━
The script operates through connected calculation stages.
First, the engine selects a comparison symbol.
Auto mode uses the built-in symbol matrix.
Manual mode uses the symbol selected by the user.
The comparison market is requested on the same timeframe as the chart.
= request.security(
comparisonSymbol,
timeframe.period,
,
gaps = barmerge.gaps_off,
lookahead = barmerge.lookahead_off,
ignore_invalid_symbol = true)
The request uses lookahead_off.
The engine then calculates rolling chart and comparison-market liquidity references while excluding the current candle.
float chartPriorLow = ta.lowest(low , referenceLookback)
float chartPriorHigh = ta.highest(high , referenceLookback)
float comparisonPriorLow = ta.lowest(comparisonLow , referenceLookback)
float comparisonPriorHigh = ta.highest(comparisonHigh , referenceLookback)
The default reference lookback is 12 bars.
A bullish divergence is possible when one market sweeps a prior low and the other market does not.
A bearish divergence is possible when one market sweeps a prior high and the other market does not.
The sweeping market must reclaim the level on the same completed candle.
The candidate is then evaluated through:
• ATR-normalized sweep depth
• chart-candle direction
• close location
• range expansion
• Base Quality Score
• pair correlation
• external-range location
• divergence separation
• Sniper Score
• directional cooldown
When the SMT event is accepted, the engine stores:
• setup direction
• SMT bar
• SMT extreme
• SMT reaction trigger
• current ATR
• Base Quality Score
• Sniper Score
• sequential evidence states
• first confirmed FVG coordinates
The engine then monitors the next closed candles.
A final signal is accepted only when the active preset’s required evidence is present and the setup has not invalidated or expired.
━━━━━━━━━━━━━━━━━━━━━━
🟢 BULLISH SMT LOGIC
━━━━━━━━━━━━━━━━━━━━━━
A bullish SMT candidate begins at prior lows.
The engine checks the chart symbol and comparison market together.
A bullish sweep divergence exists when either:
• the chart symbol trades below its prior low while the comparison market does not trade below its corresponding prior low
• the comparison market trades below its prior low while the chart symbol does not trade below its corresponding prior low
The engine accepts a sweep from either market.
The sweeping market must reclaim the prior-low reference when reclaim validation is active.
The completed chart candle must also satisfy the active quality requirements.
The default Sniper profile evaluates:
• sufficient ATR-normalized sweep depth
• bullish chart-candle direction
• a close in the stronger portion of the candle
• minimum candle-range expansion
• minimum Base Quality Score
• minimum positive pair correlation
• location near the lower portion of the external range
• minimum divergence separation
• minimum Sniper Score
• directional SMT cooldown availability
bool bullishSmtEvent =
bullishRawSmtCandidate and
bullishSniperPass and
bullishCooldownPass
When the bullish SMT event is confirmed, the engine stores:
• the SMT low as the bullish invalidation extreme
• the SMT high as the bullish reaction-break trigger
• the current ATR
• the current Base Quality Score
• the current Sniper Score
The confirmation sequence then waits for:
• bullish displacement
• a close above the SMT candle high
• FVG and/or micro-structure evidence according to the active preset
The bullish SMT marker is context.
The final blue UP label is the completed signal.
━━━━━━━━━━━━━━━━━━━━━━
🔴 BEARISH SMT LOGIC
━━━━━━━━━━━━━━━━━━━━━━
A bearish SMT candidate begins at prior highs.
A bearish sweep divergence exists when either:
• the chart symbol trades above its prior high while the comparison market does not trade above its corresponding prior high
• the comparison market trades above its prior high while the chart symbol does not trade above its corresponding prior high
The sweeping market must reclaim the prior-high reference when reclaim validation is active.
The completed chart candle must also satisfy the active quality requirements.
The default Sniper profile evaluates:
• sufficient ATR-normalized sweep depth
• bearish chart-candle direction
• a close in the weaker portion of the candle
• minimum candle-range expansion
• minimum Base Quality Score
• minimum positive pair correlation
• location near the upper portion of the external range
• minimum divergence separation
• minimum Sniper Score
• directional SMT cooldown availability
When the bearish SMT event is confirmed, the engine stores:
• the SMT high as the bearish invalidation extreme
• the SMT low as the bearish reaction-break trigger
• the current ATR
• the current Base Quality Score
• the current Sniper Score
The confirmation sequence then waits for:
• bearish displacement
• a close below the SMT candle low
• FVG and/or micro-structure evidence according to the active preset
The bearish SMT marker is context.
The final orange DOWN label is the completed signal.
━━━━━━━━━━━━━━━━━━━━━━
💎 SMT QUALITY FILTER SYSTEM
━━━━━━━━━━━━━━━━━━━━━━
The script calculates separate bullish and bearish Base Quality Scores.
The score evaluates the completed SMT candle and its underlying liquidity event.
Each score is limited to 0–100.
The components are:
Sweep Role — maximum 25 points
The event must contain a valid one-market liquidity sweep.
Only one market should take the corresponding prior high or prior low.
Reclaim — maximum 20 points
The sweeping market must close back inside its prior liquidity reference.
Sweep Depth — maximum 20 points
The distance beyond the reference is measured relative to the corresponding market’s ATR.
Chart Candle Direction — maximum 15 points
Bullish SMT prefers a bullish chart candle.
Bearish SMT prefers a bearish chart candle.
Rejection Close — maximum 10 points
Bullish SMT prefers the chart close toward the high of the candle.
Bearish SMT prefers the chart close toward the low.
Range Expansion — maximum 10 points
The chart candle’s total range is compared with chart ATR.
The total score structure is:
25 + 20 + 20 + 15 + 10 + 10 = 100 points.
Preset-dependent minimum Base Quality Scores are:
• Standard: 60
• Sniper: 75
• Elite: 85
The Base Quality Score is not a win rate.
It is not a probability.
It measures how closely the completed SMT event matches the engine’s liquidity and candle-quality framework.
━━━━━━━━━━━━━━━━━━━━━━
📏 VOLATILITY / ATR NORMALIZATION FILTER
━━━━━━━━━━━━━━━━━━━━━━
The indicator uses ATR normalization to compare distances across changing volatility conditions.
ATR normalization is applied to:
• chart-side sweep depth
• comparison-side sweep depth
• divergence separation
• displacement body size
• setup invalidation buffer
• chart-candle range expansion
Sweep depth is calculated in relation to the ATR of the market that performed the sweep.
For example:
Chart Sweep Depth = distance beyond chart reference / chart ATR.
Comparison Sweep Depth = distance beyond comparison reference / comparison ATR.
Preset-dependent minimum sweep depth is:
• Standard: 0.04 ATR
• Sniper: 0.10 ATR
• Elite: 0.18 ATR
The chart candle must also meet a minimum range-to-ATR requirement:
• Standard: 0.40 ATR
• Sniper: 0.60 ATR
• Elite: 0.85 ATR
The setup invalidation buffer is based on the ATR stored when the SMT event occurs.
The default buffer is 0.10 ATR beyond the SMT extreme.
ATR normalization helps reduce dependence on raw price units.
It does not make one configuration universal.
Different symbols, sessions, data feeds, and market conditions can still produce different behavior.
━━━━━━━━━━━━━━━━━━━━━━
🕯️ DISPLACEMENT QUALITY FILTER
━━━━━━━━━━━━━━━━━━━━━━
After an SMT event is accepted, the engine requires directional displacement before a final signal can appear.
A bullish displacement candle requires:
• a confirmed closed candle
• close above open
• body size of at least 0.45 ATR
• body-to-range ratio of at least 0.55
• upper wick no greater than 0.35 of the full candle range
A bearish displacement candle requires:
• a confirmed closed candle
• close below open
• body size of at least 0.45 ATR
• body-to-range ratio of at least 0.55
• lower wick no greater than 0.35 of the full candle range
bool bullishDisplacement =
barstate.isconfirmed and
close > open and
signalCandleBody >= chartAtr * displacementBodyAtr and
signalBodyRatio >= displacementBodyPercent and
bullishOppositeWickRatio <= maximumOppositeWickPercent and
bullishPreviousBreakPass
The bearish process is mirrored.
The previous-bar break option is disabled in the locked default engine.
The more important directional reaction requirement is the SMT-candle break.
Displacement confirms that the market produced a completed directional response after the SMT event.
It does not guarantee continuation.
━━━━━━━━━━━━━━━━━━━━━━
📊 REACTION STRENGTH FILTER
━━━━━━━━━━━━━━━━━━━━━━
The engine does not require every confirmation component to appear on the same candle.
Instead, reaction evidence can accumulate across separate closed candles inside the temporary confirmation window.
The engine tracks:
• displacement
• SMT-candle break
• Fair Value Gap
• micro-structure break
Bullish SMT-candle break:
• price must close above the stored SMT candle high
Bearish SMT-candle break:
• price must close below the stored SMT candle low
Bullish FVG:
• current low is above the high from two bars earlier
Bearish FVG:
• current high is below the low from two bars earlier
Bullish micro-structure break:
• current close exceeds the highest high from the previous five closed bars
Bearish micro-structure break:
• current close falls below the lowest low from the previous five closed bars
Evidence is persistent while the setup remains active.
For example:
SMT event
→ displacement appears
→ FVG appears later
→ structure break appears on another candle
→ final signal confirms
The active Engine Preset determines which accumulated evidence is required.
━━━━━━━━━━━━━━━━━━━━━━
🧼 CONFIRMED SIGNAL FILTER
━━━━━━━━━━━━━━━━━━━━━━
Permanent SMT events and final UP / DOWN labels wait for candle close.
The engine uses confirmed-bar checks for:
• raw SMT candidates
• final SMT acceptance
• displacement
• FVG detection
• micro-structure breaks
• setup invalidation
• final UP signals
• final DOWN signals
The comparison-market request uses lookahead_off.
Rolling liquidity references exclude the current candle.
No future candle is used to decide whether the current candle contains an SMT event.
No final signal is plotted back onto the original SMT candle after later evidence becomes available.
The confirmation opportunity is temporary.
The default window is eight bars.
The minimum delay is one bar after the SMT event.
If the active evidence does not complete in time, the setup expires.
Historical output can still change when:
• Engine Preset changes
• comparison symbol changes
• Auto or Manual mode changes
• chart symbol changes
• timeframe changes
• exchange or broker feed changes
• historical data is revised
• the loaded history range changes
Confirmed-close logic prevents unfinished-candle conditions from becoming permanent chart signals.
It does not mean all brokers or data feeds will produce identical historical output.
━━━━━━━━━━━━━━━━━━━━━━
🎯 ENTRY MODEL
━━━━━━━━━━━━━━━━━━━━━━
SMT Sniper Entry Engine uses a confirmed-signal entry model rather than a built-in broker-order model.
A final directional setup is created only when:
• a qualified SMT event exists
• the confirmation window is open
• the setup has not invalidated
• all preset-required evidence has been accumulated
• final signal cooldown is available
• the current candle is confirmed
The final signal reference is the close of the candle where the UP or DOWN label is printed.
For an UP setup:
• the label appears below the confirmed signal candle
• the signal represents completed bullish SMT confirmation
For a DOWN setup:
• the label appears above the confirmed signal candle
• the signal represents completed bearish SMT confirmation
The script does not automatically calculate:
• an entry line
• a stop-loss level
• take-profit targets
• position size
• account risk
• broker quantity
• trade outcome
The final signal-bar close can be used as an analytical reference.
It is not a guaranteed fill.
Users must define their own execution, invalidation, stop, target, and risk model.
━━━━━━━━━━━━━━━━━━━━━━
🔗 COMPARISON MARKET MODEL
━━━━━━━━━━━━━━━━━━━━━━
The indicator supports Auto and Manual comparison-symbol modes.
Auto mode recognizes common ticker text and assigns a predefined positively related market.
Built-in mappings include:
Metals
• XAU or GOLD → OANDA:XAGUSD
• XAG or SILVER → OANDA:XAUUSD
Indices
• NAS, US100, USTEC, NDX, or NQ → OANDA:SPX500USD
• SPX, US500, SP500, or ES → OANDA:NAS100USD
• US30, DJI, DOW, or YM → OANDA:SPX500USD
Cryptocurrencies
• BTC → BINANCE:ETHUSDT
• ETH → BINANCE:BTCUSDT
Forex majors
• EURUSD ↔ GBPUSD
• AUDUSD ↔ NZDUSD
• USDCAD ↔ USDCHF
• USDJPY → CADJPY
JPY crosses
• EURJPY ↔ GBPJPY
• AUDJPY ↔ NZDJPY
• CADJPY → USDJPY
• CHFJPY → EURJPY
EUR and GBP crosses
• EURAUD ↔ GBPAUD
• EURNZD ↔ GBPNZD
• EURCAD ↔ GBPCAD
• EURCHF ↔ GBPCHF
• EURGBP → GBPUSD
AUD and NZD crosses
• AUDCAD ↔ NZDCAD
• AUDCHF ↔ NZDCHF
• AUDNZD → NZDUSD
Auto mode is based on ticker-name recognition.
Broker symbols can include prefixes, suffixes, futures contract codes, or synthetic names that are not recognized by the built-in matrix.
When the chart symbol is not recognized, the engine can fall back to the Manual Comparison Symbol value.
The dashboard should therefore be checked before relying on Auto mode.
Manual mode allows the user to select the comparison market directly.
The current engine is designed for positively correlated relationships.
Selecting an inversely related market can make the correlation and SMT logic unsuitable.
━━━━━━━━━━━━━━━━━━━━━━
🎯 SNIPER SCORE MODEL
━━━━━━━━━━━━━━━━━━━━━━
The engine produces separate bullish and bearish Sniper Scores.
The Sniper Score evaluates broader context around the SMT event.
The maximum score is 100.
The structure is:
Base SMT Quality — maximum 35 points
The 0–100 Base Quality Score contributes 35% of its value.
Pair Correlation — maximum 25 points
Positive effective correlation contributes proportionally.
External-Range Location — maximum 20 points
Bullish SMT receives this component when it occurs below the active maximum bullish range position.
Bearish SMT receives this component when it occurs above the active minimum bearish range position.
Divergence Separation — maximum 10 points
The event receives this component when the non-sweeping market holds its reference by at least the required ATR-normalized distance.
Sweep Depth — maximum 10 points
A valid minimum sweep receives five points.
A sweep at least 1.5 times the minimum depth receives ten points.
Minimum accepted Sniper Scores are:
• Standard: 60
• Sniper: 78
• Elite: 88
Minimum positive pair correlation is:
• Standard: 0.35
• Sniper: 0.55
• Elite: 0.70
External-range requirements are:
Bullish maximum position
• Standard: 0.45
• Sniper: 0.33
• Elite: 0.25
Bearish minimum position
• Standard: 0.55
• Sniper: 0.67
• Elite: 0.75
Minimum divergence separation is:
• Standard: 0.00 ATR
• Sniper: 0.03 ATR
• Elite: 0.08 ATR
The Sniper Score is not a probability.
A score of 88 does not mean an 88% probability of success.
It measures rule-based confluence according to this script’s internal framework.
━━━━━━━━━━━━━━━━━━━━━━
📦 ACTIVE SMT / FVG VISUAL SYSTEM
━━━━━━━━━━━━━━━━━━━━━━
The script separates SMT context from final signal confirmation.
Historical SMT visuals can include:
• a dotted line from the prior chart-side liquidity reference to the SMT candle
• a minimal bullish or bearish marker near the SMT event
The default historical visual system keeps recent objects only.
The default limits are:
• eight bullish SMT lines
• eight bullish SMT markers
• eight bearish SMT lines
• eight bearish SMT markers
• ten final signal labels
• six signal FVG boxes
Older visual objects can be removed when the corresponding recent-only limit is exceeded.
This is chart-object management.
It does not move a signal to another candle.
Final signal visuals include:
UP
• blue label
• white bold-italic text
• printed below the confirmed signal candle
DOWN
• orange label
• white bold-italic text
• printed above the confirmed signal candle
Signal FVG Box
• appears only when stored FVG evidence exists
• uses the FVG that participated in the active confirmation sequence
• extends 12 bars to the right
• uses a lightly shaded bullish or bearish fill
The FVG box is an analytical confirmation visual.
It is not a guaranteed support, resistance, entry, stop, or target zone.
━━━━━━━━━━━━━━━━━━━━━━
🚦 ONE ACTIVE SMT SETUP AT A TIME
━━━━━━━━━━━━━━━━━━━━━━
The script maintains one active pending SMT confirmation sequence at a time.
When a qualified bullish SMT event appears:
• the active setup direction becomes bullish
• the bullish SMT extreme and trigger are stored
• the evidence state is reset
When a qualified bearish SMT event appears:
• the active setup direction becomes bearish
• the bearish SMT extreme and trigger are stored
• the evidence state is reset
A newly accepted SMT event can therefore replace the currently stored pending setup state.
The active setup remains in memory until:
• the final UP signal confirms
• the final DOWN signal confirms
• the setup invalidates
• the setup expires
• another accepted SMT event overwrites the pending state
This design prevents multiple overlapping confirmation sequences from creating an unclear chart state.
It does not prevent the user from performing independent analysis on other markets or timeframes.
━━━━━━━━━━━━━━━━━━━━━━
⚠️ SEQUENTIAL CONFIRMATION WINDOW HANDLING
━━━━━━━━━━━━━━━━━━━━━━
The default confirmation window is eight bars.
The final signal cannot appear on the original SMT candle because the minimum bars after SMT is one.
The engine monitors each completed candle inside the window.
Evidence can be accumulated in different orders.
For example:
SMT
→ displacement
→ SMT-candle break
→ FVG
→ final signal
or:
SMT
→ FVG
→ displacement
→ SMT-candle break
→ structure break
→ final signal
Preset behavior:
Standard
Uses Reactive confirmation.
Requires:
• displacement
• SMT-candle break
Sniper
Uses Confirmed confirmation.
Requires:
• displacement
• SMT-candle break
• FVG or micro-structure break
Elite
Uses Elite confirmation.
Requires:
• displacement
• SMT-candle break
• FVG
• micro-structure break
The engine does not use the historical high-low sequence inside a candle to simulate order execution.
It evaluates whether each closed candle satisfied a defined piece of evidence.
If the setup does not complete inside the window, it expires.
━━━━━━━━━━━━━━━━━━━━━━
🏷️ SMT SNIPER LABELS
━━━━━━━━━━━━━━━━━━━━━━
The indicator uses separate context and final-signal labels.
SMT Context Markers
The default SMT marker layout is Minimal.
Bullish SMT uses an upward marker.
Bearish SMT uses a downward marker.
The marker appears on the actual SMT confirmation candle.
Its tooltip can include:
• bullish or bearish SMT direction
• Sniper Score
• Base Quality Score
• effective pair correlation
• active comparison symbol
Final Signal Labels
The final labels display:
𝙐𝙋
or:
𝘿𝙊𝙒𝙉
UP uses a blue background.
DOWN uses an orange background.
The text is white.
Available final-label sizes are:
• Tiny
• Small
• Normal
• Large
• Huge
Normal is the default.
The UP tooltip can include:
• bullish SMT confirmation mode
• final stored Sniper Score
• final stored Base Quality Score
The DOWN tooltip contains the mirrored information.
The SMT marker and final signal label serve different purposes.
The SMT marker identifies the qualified correlated-market divergence.
The UP or DOWN label identifies the completed sequential confirmation.
━━━━━━━━━━━━━━━━━━━━━━
📍 SMT DISPLAY MODES
━━━━━━━━━━━━━━━━━━━━━━
The indicator operates directly on the main price chart.
The public Display settings provide control over:
Show SMT
Shows or hides historical SMT markers and reference lines.
Show UP / DOWN
Shows or hides final signal labels.
UP / DOWN Label Size
Controls the size of final UP and DOWN labels.
Show Signal FVG
Shows or hides the stored FVG box associated with a final signal.
Show Dashboard
Shows or hides the premium bottom-right dashboard.
The internal visual profile uses:
• Clean layout
• Recent Only historical display
• dotted SMT reference lines
• minimal SMT markers
• normal SMT marker size
• limited historical object counts
• no separate displacement circles by default
Input values are hidden from PulseWire’s status line.
Diagnostic plots remain available in the Data Window without adding visible price-scale clutter.
━━━━━━━━━━━━━━━━━━━━━━
🧹 SETUP INVALIDATION
━━━━━━━━━━━━━━━━━━━━━━
Not every accepted SMT event remains eligible.
A bullish setup invalidates when a completed candle closes below:
SMT low − stored SMT ATR × 0.10.
A bearish setup invalidates when a completed candle closes above:
SMT high + stored SMT ATR × 0.10.
The ATR value is stored when the SMT event appears.
This keeps the invalidation buffer linked to the volatility present when the setup was created.
A setup can also fail to produce a final signal because:
• the confirmation window expires
• displacement never appears
• the SMT candle is not broken
• required FVG evidence does not appear
• required structure evidence does not appear
• the final signal cooldown is active
• a newly accepted SMT event replaces the pending state
The directional SMT cooldown is 15 bars.
The final signal cooldown is eight bars.
A rejected, invalidated, or expired pending sequence does not print a final UP or DOWN label.
━━━━━━━━━━━━━━━━━━━━━━
📟 DASHBOARD
━━━━━━━━━━━━━━━━━━━━━━
The indicator includes a premium dashboard in the bottom-right corner of the chart.
The header displays:
trade_w_samet • SMT SNIPER
Current State
Possible states include:
• SCANNING MARKET
• BULLISH SMT DETECTED
• BEARISH SMT DETECTED
• BULLISH SETUP BUILDING
• BEARISH SETUP BUILDING
• UP SIGNAL CONFIRMED
• DOWN SIGNAL CONFIRMED
Comparison
Displays the active comparison symbol.
Correlation
Displays the current effective pair correlation.
Engine
Displays:
• STANDARD
• SNIPER
• ELITE
Pair Mode
Displays:
• AUTO
• MANUAL
Signal Score
When a relevant setup is active, the dashboard displays:
current Sniper Score / required Sniper Score.
When no setup is active, it displays:
NO ACTIVE SETUP.
UP / DOWN Counts
Displays the number of final confirmed UP and DOWN signals calculated on the loaded chart history.
Footer
Displays:
• BAR-CLOSE
• NON-REPAINT
• LIVE
The dashboard is not PulseWire Strategy Tester.
It does not display:
• win rate
• profit factor
• expectancy
• drawdown
• net profit
• broker-verified results
UP and DOWN counts are signal counts only.
“LIVE” means the dashboard updates with the latest available script state.
It does not mean the script predicts unfinished intrabar outcomes.
━━━━━━━━━━━━━━━━━━━━━━
🚨 ALERT SYSTEM
━━━━━━━━━━━━━━━━━━━━━━
SMT Sniper Entry Engine includes static PulseWire alert conditions for:
• Bullish SMT
• Bearish SMT
• UP
• DOWN
• Any Signal
• Any SMT
Bullish SMT
Triggers when a bullish SMT event passes the complete Base Quality and Sniper acceptance process.
Bearish SMT
Triggers when a bearish SMT event passes the mirrored acceptance process.
UP
Triggers when the bullish sequential confirmation process is complete.
DOWN
Triggers when the bearish sequential confirmation process is complete.
Any Signal
Combines final UP and DOWN conditions.
Any SMT
Combines bullish and bearish SMT conditions.
The script also includes dynamic alert() messages for final UP and DOWN signals.
Dynamic messages can include:
• product name
• direction
• chart ticker
• chart timeframe
• confirmed close price
• active comparison symbol
if enableAlerts
if buySignal
alert(
"SMT Sniper | UP | " +
syminfo.ticker +
" | " +
timeframe.period +
" | Close: " +
str.tostring(close, format.mintick) +
" | Comparison: " +
comparisonSymbol,
alert.freq_once_per_bar_close)
The DOWN dynamic message uses the mirrored format.
Dynamic final-signal alerts use once-per-bar-close frequency.
Alerts are monitoring tools.
They do not place, modify, or close broker orders.
━━━━━━━━━━━━━━━━━━━━━━
🔔 HOW TO USE ALERTS
━━━━━━━━━━━━━━━━━━━━━━
For separate static conditions:
1. Add SMT Sniper Entry Engine to the chart.
2. Open PulseWire’s Create Alert window.
3. Select SMT Sniper as the condition.
4. Choose Bullish SMT, Bearish SMT, UP, DOWN, Any Signal, or Any SMT.
5. Select the desired notification method.
6. Use a confirmed-bar frequency where appropriate.
7. Test the alert before relying on it.
For one combined dynamic final-signal alert:
1. Enable Alerts in the indicator settings.
2. Open PulseWire’s Create Alert window.
3. Select SMT Sniper.
4. Select Any alert() function call.
5. Configure the delivery method.
6. Test the UP and DOWN message format.
The combined dynamic alert sends final UP and DOWN events through one PulseWire alert.
Static Any Signal also combines UP and DOWN conditions, but uses the static alertcondition() message.
When indicator settings, code, symbol, or timeframe are materially changed, an already-created PulseWire alert can continue using the script snapshot stored when that alert was created.
Recreate alerts after important configuration changes.
Alert delivery can depend on:
• PulseWire servers
• selected symbol
• selected timeframe
• market-data availability
• realtime feed status
• symbol session
• user alert configuration
• webhook or external-service availability
Creating an alert does not guarantee broker execution.
━━━━━━━━━━━━━━━━━━━━━━
🧪 HOW TO USE THE INDICATOR
━━━━━━━━━━━━━━━━━━━━━━
A practical workflow:
1. Add SMT Sniper Entry Engine to a standard candlestick chart.
2. Begin with Engine Preset set to Sniper.
3. Keep Comparison Symbol Mode on Auto for supported symbols.
4. Review the Comparison field in the dashboard.
5. If the automatic market is not appropriate, switch to Manual.
6. Select a positively related comparison market.
7. Keep Show SMT enabled while learning the setup sequence.
8. Observe the historical liquidity reference line.
9. Observe the minimal SMT marker.
10. Treat the SMT marker as context, not as the final signal.
11. Watch the dashboard state.
12. Wait for a blue UP or orange DOWN label.
13. Review the active Sniper Score and required threshold.
14. Review the correlation value.
15. Review the signal FVG box when one is available.
16. Use alerts for monitoring rather than blind execution.
17. Evaluate broader market structure independently.
18. Review session conditions, volatility, spread, and news risk.
19. Define personal entry, invalidation, stop, target, and position-size rules.
20. Test the exact symbol, timeframe, exchange, broker feed, and comparison pair personally used.
The indicator is designed for structured review.
It should not be treated as an automatic decision-maker.
━━━━━━━━━━━━━━━━━━━━━━
⚙️ SETTINGS REFERENCE
━━━━━━━━━━━━━━━━━━━━━━
The public settings menu is intentionally simplified.
Advanced thresholds remain locked inside the engine to reduce configuration clutter and preserve consistent preset behavior.
⚙️ Engine
Engine Preset
Selects:
• Standard
• Sniper
• Elite
Standard
Produces more accepted setups.
Uses Balanced Base Quality, Standard Sniper thresholds, and Reactive confirmation.
Sniper
The default profile.
Uses Strict Base Quality, Sniper context thresholds, and Confirmed evidence requirements.
Elite
The most selective profile.
Uses Elite Base Quality, Elite context thresholds, and the strictest sequential evidence requirement.
A stricter preset does not guarantee better trading results.
━━━━━━━━━━━━━━━━━━━━━━
🔗 Comparison Market
Comparison Symbol Mode
Auto
Uses the internal ticker-recognition matrix.
Manual
Uses the selected Manual Comparison Symbol.
Manual Comparison Symbol
Selects the external market used by the SMT engine.
This field is active only when Comparison Symbol Mode is Manual.
Use a positively related comparison market.
━━━━━━━━━━━━━━━━━━━━━━
🎨 Display
Show SMT
Shows or hides historical SMT reference lines and markers.
Show UP / DOWN
Shows or hides final signal labels.
UP / DOWN Label Size
Selects:
• Tiny
• Small
• Normal
• Large
• Huge
Normal is the default.
Show Signal FVG
Shows or hides the stored FVG box associated with a final signal.
Show Dashboard
Shows or hides the bottom-right premium dashboard.
━━━━━━━━━━━━━━━━━━━━━━
🔔 Alerts
Enable Alerts
Enables the script’s static alert conditions and dynamic alert() calls.
For one combined runtime UP / DOWN alert, create the PulseWire alert using:
Any alert() function call.
All public input values use hidden status-line display.
Diagnostic values remain available through PulseWire’s Data Window.
━━━━━━━━━━━━━━━━━━━━━━
🧠 WHAT MAKES THIS SCRIPT ORIGINAL
━━━━━━━━━━━━━━━━━━━━━━
SMT divergence, liquidity sweeps, correlation, ATR, Fair Value Gaps, and structure breaks are familiar technical-analysis concepts.
These concepts are not unique by themselves.
The originality of SMT Sniper Entry Engine lies in the coordinated process applied to them:
automatic comparison-market selection
→ closed-bar rolling liquidity references
→ one-market liquidity sweep
→ same-bar reclaim
→ ATR-normalized Base Quality Score
→ log-return pair correlation
→ external-range location
→ ATR-normalized divergence separation
→ 0–100 Sniper Score
→ preset-driven SMT acceptance
→ temporary sequential confirmation
→ displacement evidence
→ SMT-candle break
→ FVG and micro-structure evidence
→ ATR-buffered invalidation
→ setup expiration
→ permanent UP or DOWN signal
→ recent-only visual management
→ static and dynamic alerts
→ premium diagnostic dashboard
Distinctive implementation features include:
• accepting a valid sweep from either market
• using rolling closed-bar references instead of pivot confirmation
• separating the SMT event from the final signal
• calculating separate Base Quality and Sniper Scores
• requiring positive pair correlation according to preset
• using preset-specific external-range thresholds
• measuring divergence separation relative to ATR
• accumulating confirmation evidence across separate candles
• storing the SMT candle as the reaction trigger
• storing ATR at the moment the setup is armed
• using different confirmation strictness for Standard, Sniper, and Elite
• limiting historical objects without relocating signals
• providing automatic comparison-market assistance with manual override
• supporting both static and combined dynamic alerts
• exposing detailed diagnostics through the Data Window
The script is not a simple combination of unrelated indicators.
Every module supports the same objective: determining whether a closed-bar SMT divergence has enough liquidity, correlation, location, reaction, and confirmation evidence to become a permanent final signal.
━━━━━━━━━━━━━━━━━━━━━━
⚠️ IMPORTANT PRACTICAL NOTES
━━━━━━━━━━━━━━━━━━━━━━
Signal frequency depends on:
• Engine Preset
• chart symbol
• comparison symbol
• ticker naming
• timeframe
• session
• volatility
• pair correlation
• liquidity-reference structure
• sweep depth
• chart-candle quality
• external-range location
• divergence separation
• directional cooldown
• post-SMT displacement
• SMT-candle break
• FVG evidence
• micro-structure evidence
• final signal cooldown
• available history
• data provider
Standard can produce more setups.
Elite can produce substantially fewer setups.
Fewer signals do not guarantee better results.
The built-in Auto matrix uses predefined OANDA and BINANCE symbols.
The chart symbol can come from another broker or exchange.
Different feeds can produce:
• different highs and lows
• different candle closes
• different ATR values
• different liquidity sweeps
• different correlation readings
• different final signals
Manual mode can be used when comparison-feed consistency is important.
The current engine expects a positive relationship.
An inversely related comparison market should not be selected.
The dashboard’s UP and DOWN values are signal counts.
They are not wins and losses.
The Signal Score is a confluence score.
It is not historical accuracy.
The SMT marker is not the final signal.
The final UP or DOWN label appears after post-SMT confirmation.
Changing settings recalculates historical conditions.
Changing the comparison market can materially change the script’s output.
━━━━━━━━━━━━━━━━━━━━━━
⚠️ LIMITATIONS AND SHORTCOMINGS
━━━━━━━━━━━━━━━━━━━━━━
This script has important limitations:
It does not guarantee profitable trades.
It does not predict future price movement.
It does not execute orders.
It does not place broker stops.
It does not place take-profit orders.
It does not calculate position size.
It does not include spread.
It does not include commission.
It does not include slippage.
It does not include latency.
It does not model partial fills.
It does not model financing or swap.
It does not evaluate order-book conditions.
It does not evaluate news risk.
It uses bar-based OHLC data.
It does not reconstruct exact intrabar price sequence.
It assumes a positive comparison relationship.
Its automatic matrix cannot recognize every broker symbol.
Unsupported Auto symbols can use the Manual Comparison fallback.
Correlation can change over time.
A historically correlated pair can temporarily decouple.
A confirmed SMT divergence can fail.
A displacement candle can be followed by reversal.
An FVG can be filled immediately.
A micro-structure break can become a false break.
A high Base Quality Score can still fail.
A high Sniper Score can still fail.
The Signal Score is not a win probability.
The dashboard is not PulseWire Strategy Tester.
Signal counts are not audited account performance.
The script does not provide verified profitability statistics.
The script does not provide broker-verified trade outcomes.
Alert delivery depends on PulseWire and user configuration.
Changing settings changes historical calculations.
Changing symbol, exchange, session, timeframe, or feed can change signals.
Available history can affect rolling calculations.
Permanent final signals wait for candle close.
The final label can therefore appear later than a discretionary intrabar entry.
For these reasons, the indicator should be used as an educational decision-support tool, not as a standalone automated strategy.
━━━━━━━━━━━━━━━━━━━━━━
👤 WHO THIS SCRIPT MAY BE USEFUL FOR
━━━━━━━━━━━━━━━━━━━━━━
This script may be useful for traders who:
• understand basic SMT divergence
• compare positively related markets
• study liquidity sweeps and reclaims
• want more context than a raw SMT marker
• prefer confirmed-close signals
• want selective preset modes
• use displacement as confirmation
• use Fair Value Gap concepts
• use micro-structure breaks
• want automatic comparison-market assistance
• want a manual comparison override
• want transparent quality scoring
• want a compact public settings menu
• want a premium dashboard
• want separate SMT and final-signal alerts
• want one combined UP / DOWN dynamic alert
• want Data Window diagnostics
It may be less suitable for users who:
• want guaranteed signals
• want every raw SMT divergence displayed
• want a fully automated trading bot
• want built-in TP and SL management
• want verified Strategy Tester performance
• want inverse-correlation SMT analysis
• expect one comparison pair to work on every feed
• require tick-level execution modeling
• want signals before candle close
• expect a score to equal probability
• want the indicator to replace personal judgment
• expect alerts to execute broker orders automatically
━━━━━━━━━━━━━━━━━━━━━━
🧭 BEST PRACTICE SUGGESTIONS
━━━━━━━━━━━━━━━━━━━━━━
For the default selective profile:
• use standard candlesticks
• begin with Sniper preset
• keep Auto mode only when the dashboard comparison is appropriate
• use Manual mode for broker-specific comparison control
• select positively related markets
• keep Show SMT enabled while learning
• distinguish the SMT marker from the final signal
• wait for the final UP or DOWN label
• review the correlation value
• review the active Signal Score
• review external market structure independently
• consider session liquidity and volatility
• use personal stop placement
• use personal target planning
• use personal position sizing
• test alerts before depending on them
• test the exact symbol and timeframe personally used
For additional frequency:
• use Standard preset
Standard reduces:
• Base Quality requirements
• correlation requirements
• range-location restrictions
• divergence-separation requirements
• Sniper Score threshold
• final confirmation evidence
For additional selectivity:
• use Elite preset
Elite increases:
• minimum sweep depth
• rejection-close requirement
• minimum range expansion
• Base Quality threshold
• correlation threshold
• external-range restriction
• divergence-separation threshold
• Sniper Score threshold
• final evidence requirement
Always:
• wait for the candle to close
• verify the active comparison symbol
• use the SMT marker as context
• use the final signal as confirmation
• review broader structure independently
• review personal risk before any trade
• treat alerts as monitoring tools
• remember that every confirmed setup can fail
━━━━━━━━━━━━━━━━━━━━━━
🔓 PUBLICATION NOTE
━━━━━━━━━━━━━━━━━━━━━━
SMT Sniper Entry Engine is published as an educational correlated-market divergence and confirmation tool.
The purpose of this description is to explain:
• how the comparison market is selected
• how Auto and Manual modes differ
• which markets are included in the automatic comparison matrix
• how closed-bar liquidity references are calculated
• how a one-market sweep is identified
• how reclaim validation works
• how sweep depth is normalized by ATR
• how chart-candle direction and rejection quality are evaluated
• how the Base Quality Score is constructed
• how pair correlation is calculated and filtered
• how external-range location is evaluated
• how divergence separation is measured
• how the Sniper Score is constructed
• how Standard, Sniper, and Elite differ
• how a qualified SMT event arms the confirmation engine
• how the temporary confirmation window works
• how evidence is accumulated across separate closed candles
• how displacement is detected
• how the SMT-candle break is used
• how Fair Value Gap evidence is detected
• how micro-structure evidence is detected
• how setup invalidation works
• how setup expiration works
• when final UP and DOWN labels appear
• what the SMT markers and dotted reference lines represent
• what the signal FVG box represents
• what the dashboard displays
• what the static alerts contain
• how “Any alert() function call” works
• what diagnostic values are available in the Data Window
• how confirmed-close timing works
• what the engine does not simulate
• why familiar SMT concepts are organized into an original workflow
The script is designed to support structured analysis.
It does not promise profitable results.
It does not remove market risk.
It does not execute trades.
It does not calculate position size.
It does not provide a built-in TP / SL trade-management model.
It should not be used as a blind UP / DOWN system.
Repainting and Timing Disclosure
SMT Sniper Entry Engine is designed around confirmed-bar calculations.
Permanent SMT events and final UP / DOWN labels use barstate.isconfirmed.
The comparison-market request uses:
• barmerge.gaps_off
• barmerge.lookahead_off
Liquidity references use previous closed candles.
The current candle is excluded from the prior-reference calculation.
The script does not use:
• pivot-high functions
• pivot-low functions
• future-bar confirmation
• negative plot offsets
• historical signal backplotting
• later relocation of final signal labels
A final UP or DOWN signal appears on the candle where the complete confirmation sequence becomes valid.
It is not moved backward to the original SMT candle.
Historical drawing cleanup can delete older lines, markers, labels, or boxes when the recent-object limit is exceeded.
Deleting an old drawing is not repainting.
The original signal bar is not changed.
Historical results can still differ when:
• settings are changed
• comparison symbols are changed
• Auto or Manual mode is changed
• chart symbols are changed
• timeframes are changed
• broker or exchange feeds are changed
• historical data is revised
• available chart history is changed
Realtime behavior also depends on when PulseWire receives the final data for the closing candle.
Confirmed-close design reduces unfinished-candle changes.
It does not eliminate market risk, data-feed differences, or alert-delivery limitations.
━━━━━━━━━━━━━━━━━━━━━━
🛡️ DISCLAIMER
━━━━━━━━━━━━━━━━━━━━━━
SMT Sniper Entry Engine is provided for educational and informational purposes only.
It does not constitute financial, investment, trading, legal, or tax advice.
No indicator can guarantee future results.
Markets are uncertain.
Correlation changes.
Liquidity changes.
Volatility changes.
Market structure changes.
Historical chart behavior does not ensure future performance.
Every user is responsible for their own:
• analysis
• validation
• comparison-market selection
• execution planning
• stop placement
• target planning
• position sizing
• risk management
• alert configuration
• trading decisions
• broker execution
• legal obligations
• tax obligations
The liquidity references, SMT markers, dotted lines, Base Quality Scores, Sniper Scores, correlation values, external-range filters, divergence-separation values, displacement conditions, Fair Value Gap boxes, micro-structure conditions, UP labels, DOWN labels, dashboard states, Data Window values, signal counts, and alerts are visual analysis tools only.
The SMT marker is not a guaranteed reversal.
The UP label is not a guaranteed profitable long trade.
The DOWN label is not a guaranteed profitable short trade.
The Signal Score is not a win probability.
The Base Quality Score is not a probability.
The correlation reading is not a guarantee that two markets will continue moving together.
The automatic comparison symbol is not guaranteed to be suitable for every broker feed.
The FVG box is not a guaranteed support or resistance zone.
The micro-structure break is not a guarantee of continuation.
The final signal-bar close is not a guaranteed fill.
The script does not include spread, commission, slippage, latency, financing, contract specifications, order rejection, partial fills, or broker-specific execution behavior.
Use this script as a structured SMT divergence-review and confirmation framework, not as a promise of profitability or a substitute for independent judgment.
Indicator

xKen-t Williams %R + EMA w/COT Bias GateWhat's original here
This isn't a Williams %R repaint. Standard %R gives a level; this script converts it into a filtered, context-aware timing engine through four combined mechanisms: (1) exit-from-extreme triggers that fire when %R crosses back out of −80/−20 rather than when it reaches them, so signals mark the reversal instead of the ongoing move; (2) EMA-side confirmation that validates the exit against the 13-EMA; (3) a −50 regime filter that blocks counter-regime signals; and (4) a directional-bias gate that normalizes any external series you feed it (e.g. a COT commercial-net line) to a 0–100 position-in-range index and suppresses every signal that disagrees with that bias. The gate is the core idea — it makes the oscillator time entries only in a separately chosen direction, turning a reversal oscillator into a with-context pullback tool. A status table surfaces %R, its EMA, the regime, the active bias, the higher-timeframe read, and the last signal in one place.
Overview
A Williams %R momentum tool rebuilt around three ideas: it signals on the exit from an extreme rather than the touch, confirms that exit with the %R/EMA relationship, and can gate every signal by an external directional bias (such as Commitments of Traders positioning) so only signals agreeing with that bias are shown. This targets the two classic Williams %R weaknesses — catching falling knives at the band, and firing endless counter-trend reversals during strong trends.
What it calculates
- Williams %R (default 21): the standard oscillator (0 to −100) measuring where the close sits within the lookback's high-low range.
- 13-EMA of %R: a smoothing/confirmation line.
- Triggers: in "Band exit" mode a long fires when %R crosses back up through −80 (leaving oversold) and a short when it crosses back down through −20 (leaving overbought). In "EMA cross in zone" mode the trigger is %R crossing its EMA while in the lower/upper half. Either way, it marks the turn, not the extreme reading itself.
- EMA confirmation (optional): requires %R on the trigger side of its EMA at signal time.
Regime filter (optional): longs only when the %R EMA is above the −50 midline, shorts only when below.
- COT Bias Gate: point the "COT source" input at any external series on the chart — e.g. a Commitments of Traders commercial-net or COT-index line. The script converts it to a 0–100 position-in-range index over a lookback; ≥80 is treated as bullish bias, ≤20 as bearish. With the gate on, longs show only in a bullish bias and shorts only in a bearish one; opposite-bias signals are suppressed. You can also set the bias manually or turn the gate off for standalone %R.
- Divergence (optional): regular bull/bear divergence between price pivots and %R pivots.
Higher-timeframe read (optional): shows a higher-timeframe %R value in the table for top-down context.
How to use it
1. Add it on your entry timeframe (defaults: %R 21, EMA 13, band-exit, EMA confirmation on).
2. Set the bias — manually (Bullish/Bearish), or "Auto" pointed at a COT/context line, or Off.
3. Trade the markers: green up-triangle = confirmed long trigger, red down-triangle = confirmed short. Combine with your own levels and risk management.
Notes and limitations
- Divergence markers are drawn back at the confirmed pivot using an offset — they plot in the past and can repaint until the pivot forms. Treat them as context, not a standalone trigger.
- The gate reads whatever series feeds the source input; on the default (Close) the "bias" is computed from price, not COT — point it at a real COT/context line for it to be meaningful.
- The higher-timeframe read uses non-lookahead requests (no future data).
- Analysis tool for timing within a chosen bias. It does not predict outcomes and is not financial advice. Indicator

MACD Pullback Validation with Divergence Filters [algo_aakash]MACD Pullback Validation with Divergence Filters is a momentum confirmation indicator designed to identify continuation opportunities after temporary pullbacks rather than generating signals from every MACD crossover.
Instead of relying on a single event, the script evaluates multiple stages of market behavior. It begins by detecting pullbacks within an existing momentum cycle, waits for momentum recovery, confirms that price and the MACD histogram are no longer weakening, and optionally verifies that the setup occurs near significant price locations using pivot-derived support/resistance levels or Bollinger Band extremes.
The objective is to reduce low-quality MACD signals by requiring several independent conditions to align before a bullish or bearish signal is displayed.
Problem Statement
Traditional MACD crossover signals frequently occur during ranging markets or immediately after short-lived momentum fluctuations. Likewise, divergence signals alone often appear too early and do not necessarily indicate that momentum has already shifted back in the anticipated direction.
This indicator addresses that limitation by requiring multiple confirmation stages rather than treating each condition as an independent trading signal.
Instead of responding to isolated events, it evaluates whether a pullback has occurred, whether momentum is rebuilding, whether a recent divergence supports the move, and whether price is located in an area where reversals may be more meaningful.
Methodology
The analytical framework consists of several sequential validation layers.
First, MACD crossover events occurring above or below the zero line are monitored to identify temporary pullbacks within an existing momentum cycle. These crossover events establish the recent pullback state.
Next, the script monitors the MACD histogram. Bullish momentum requires the histogram to remain above zero while increasing relative to the previous bar. Bearish momentum requires the histogram to remain below zero while decreasing.
The indicator then waits for the MACD line itself to cross the zero line, treating this as evidence that momentum has shifted back in the direction of the prevailing move.
Histogram divergence is calculated using confirmed pivot highs and pivot lows. Regular bullish divergence requires price to form a lower low while the histogram forms a higher low. Regular bearish divergence requires price to form a higher high while the histogram forms a lower high. Hidden divergence calculations are also available for users who wish to visualize continuation-type divergence.
Finally, optional contextual filters may be enabled.
The Support/Resistance filter checks whether the current price is interacting with recently confirmed pivot-based levels.
The Bollinger Band filter requires bullish setups to occur after closing below the lower band and bearish setups after closing above the upper band, helping identify momentum reversals from statistically extended price conditions.
Signals are generated only after every enabled validation layer has been satisfied.
Signal Workflow
Bullish workflow
1. Detect a recent bearish MACD crossover occurring above the zero line to identify a pullback.
2. Confirm a regular bullish MACD histogram divergence using pivot comparisons.
3. Require the MACD histogram to begin strengthening.
4. Wait for the MACD line to cross back above the zero line.
5. Optionally require interaction with recent pivot-based support.
6. Optionally require price to close below the lower Bollinger Band.
7. Display a bullish signal.
Bearish workflow
1. Detect a recent bullish MACD crossover occurring below the zero line.
2. Confirm a regular bearish MACD histogram divergence.
3. Require bearish histogram acceleration.
4. Wait for the MACD line to cross below the zero line.
5. Optionally require interaction with recent pivot-based resistance.
6. Optionally require price to close above the upper Bollinger Band.
7. Display a bearish signal.
Why This Indicator Is Different
Many MACD indicators generate signals immediately after crossovers, while divergence indicators typically evaluate price and momentum independently.
This script integrates these concepts into a sequential validation framework where each condition serves a different analytical purpose.
The pullback logic identifies temporary counter-trend momentum.
The histogram evaluates whether momentum is rebuilding.
The zero-line crossover confirms broader momentum alignment.
Divergence provides evidence that momentum and price are no longer moving in agreement.
Optional pivot interaction and Bollinger Band filters add market-location confirmation before a signal is produced.
Rather than displaying every crossover or every divergence, the indicator waits until multiple independent conditions align before producing a trading signal.
Inputs
The script includes configurable parameters for:
* MACD fast, slow, and signal periods
* Pullback lookback window
* Divergence pivot lengths
* Divergence range settings
* Optional hidden divergence display
* Optional Support/Resistance validation
* Pivot sensitivity
* Optional Bollinger Band confirmation
* Bollinger Band length and standard deviation
Alerts
Built-in alert conditions are available for:
* Bullish Signal
* Bearish Signal
* Regular Bullish Divergence
* Hidden Bullish Divergence
* Regular Bearish Divergence
* Hidden Bearish Divergence
Practical Usage
The indicator is intended for traders who prefer waiting for momentum confirmation after temporary pullbacks instead of reacting to every MACD crossover.
Optional Support/Resistance and Bollinger Band filters can be enabled to make signal selection more restrictive when additional price-location confirmation is desired.
Limitations
MACD histogram divergence relies on confirmed pivot highs and lows, so divergence signals are only confirmed after the required pivot bars have formed.
Support and resistance levels are derived from pivot calculations and represent algorithmically identified swing points rather than manually drawn market structure.
Like any momentum-based indicator, performance may vary across different market conditions and should be evaluated alongside a broader trading plan and appropriate risk management.
Notes
This indicator is intended as an analytical decision-support tool. It combines momentum analysis, pullback recognition, divergence detection, and optional contextual filters into a structured confirmation process rather than relying on any individual condition as a standalone trading signal.
Indicator

Skew Divergence OscillatorSkew Divergence Oscillator
A bounded oscillator built from the rolling skewness (asymmetry) of returns — whether recent moves lean toward big up-days or big down-days — with a divergence engine that compares that asymmetry against price. The read most tools miss: when price makes a new high but return skew is turning down (large down-moves creeping in), the advance is quietly losing its character before price confirms it. It estimates skew from higher-resolution realized data, confirms divergences on a higher timeframe, and forward-calibrates whether they pay on the chart you're viewing — in plain language.
Why these parts are combined (not a mashup for show). Each fixes a flaw in the previous one. Skewness is a distributional read price action alone doesn't show — it captures which tail is getting heavier, a leading change in market character. Realized estimation measures skew from intrabar returns instead of one value per bar, so short-window skew isn't jumpy — the standard approach in modern risk research. Divergence relates that asymmetry back to price, turning a statistic into a timing read. Higher-timeframe confirmation and forward calibration remove single-timeframe noise and blind faith respectively. Together they form one coherent tool.
How it works. Returns feed a rolling third standardized moment (skew = m3/sd³). With realized estimation on, skew is computed from a lower-timeframe return stream (confirmed only). It's standardized and soft-bounded to ±100. Divergence is detected from confirmed price pivots versus the skew line (regular and optional hidden); with MTF on, it counts only if the higher timeframe agrees. Each signal is labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict (Bull/Bear skew divergence confirmed, unconfirmed, or Wait) and the Conviction, which reads "High" only when that divergence type shows a positive edge that survives the test on this symbol — otherwise it openly says "context only" or "no proven edge here." A skew divergence is an early character warning, not a trend signal — pair it with your own entry trigger and risk plan.
What's original. The realized-skew engine as a divergence source, the higher-timeframe confirmation layer, the triple-barrier forward calibration with an out-of-sample split, and a conviction read that admits when an apparent edge isn't statistically real.
Honesty & limitations. Skew from short windows is noisy. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future. Non-repainting: pivots confirm late and never move; realized and HTF reads use confirmed data only.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Ease-of-Movement Flow OscillatorEase-of-Movement Flow Oscillator
A volume oscillator that measures how easily price moves — distance travelled relative to the volume required to travel it. Large travel on light volume = high ease (a frictionless drift); small travel on heavy volume = low ease (absorption — effort without result). Above zero, price advances with little resistance; below zero, it declines with little resistance. It adds an absorption warning and a plain-language forward-calibration layer, so you can tell at a glance whether a move is frictionless or being absorbed, and whether the signal has actually paid here.
Why these parts are combined (not a mashup for show). Ease of movement relates distance to the volume needed for it — a different question from "buying vs selling." A frictionless advance and an absorbed advance look identical on a price chart but behave differently next, so that's the core read. An effort-vs-result check (price making a new extreme while ease does not) flags absorption — heavy volume no longer moving price — which the raw line alone misses. Forward calibration removes blind faith: instead of assuming a cross "should" pay, it measures whether it actually has, with realistic profit/stop outcomes. Together they form one coherent volume-flow tool.
How it works. Distance moved = midpoint change; box ratio = (volume ÷ scale) ÷ range. Ease = distance ÷ box ratio, smoothed, standardized and soft-bounded to ±100 that auto-fits its own magnitude. A signal fires only when ease decisively clears a confirmation band beyond zero (filtering the constant zero-line chatter). Absorption divergence is detected from confirmed price pivots versus the ease line. Each signal is then labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row (Long/Short, Absorption, or Wait) and the Conviction row, which reads "High" only when that signal type shows a positive edge that survives the test on this symbol. Green above zero = easy up, red below = easy down; shaded bands = strong ease; the faint band lines mark where signals fire. Best used with your own trend and risk plan, not alone.
What's original. The absorption (effort-vs-result) flag, auto volume scaling, a noise-filtering signal band, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge.
Volume note. This needs real volume — use a futures contract such as NSE:NIFTY1!. On a cash index it reports "No volume" rather than printing noise.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future. Volume quality varies by feed and instrument.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Mean-Deviation Divergence OscillatorMean-Deviation Divergence Oscillator
A bounded oscillator that measures how far the typical price has stretched from its own recent mean, scaled by how much it normally deviates — so a reading tells you "how unusual is this move," not just "how big." That normalization makes its swings comparable across calm and volatile regimes and well suited to divergence. It adds higher-timeframe confirmation and a plain-language forward-calibration layer, so you can see at a glance whether a divergence is corroborated and whether it has actually paid on this symbol.
Why this construction (not a mashup for show). Each part fixes a flaw in naive divergence. Raw distance-from-mean isn't comparable across regimes — dividing by the average absolute deviation (with the conventional 0.015 scaling, chosen so that roughly 70–80% of readings fall within ±100) makes the oscillator regime-comparable, which is the whole reason it's a good divergence base. Higher-timeframe confirmation removes single-timeframe noise. Forward calibration removes blind faith: instead of assuming a divergence "should" reverse price, it measures whether it actually has, with realistic profit/stop outcomes. The normalized oscillator, the divergence engine, the MTF check and the calibration form one coherent tool.
How it works. Oscillator = (typical price − its moving average) ÷ (0.015 × mean absolute deviation), soft-bounded to a clean ±100 pane that auto-fits its own recent magnitude. Divergence is detected from confirmed price pivots versus the oscillator (regular and optional hidden). With MTF confirmation on, a divergence counts only if a same-direction divergence is also present on the chosen higher timeframe. Each signal is then labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row (Bull/Bear divergence confirmed, "unconfirmed," or Wait) and the Conviction row, which reads "High" only when that divergence type shows a positive edge that survives the test on this symbol. A divergence is a reversal warning, not a trend signal — pair it with your own entry trigger and risk plan.
What's original. Higher-timeframe divergence confirmation on a mean-deviation normalized oscillator, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge.
Inputs. Price/High/Low sources (change them for any market), reading mode (Simple/Pro), engine length and deviation scale, divergence and HTF-confirm controls, full calibration settings, and an auto-adapting dashboard legible on dark or light charts. Defaults are tuned for NSE:NIFTY1! intraday.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future. Divergence is inherently early and can persist before price turns.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Smoothed Momentum Divergence OscillatorSmoothed Momentum Divergence Oscillator
A bounded momentum oscillator whose momentum is double-smoothed — once on the price change and once on its size — which makes its swings unusually clean and well suited to divergence. It adds higher-timeframe confirmation and a plain-language forward-calibration layer, so you can see at a glance whether a divergence is corroborated and whether it has actually paid on this symbol.
Why this construction (not a mashup for show). Each part removes a weakness of raw divergence. Raw momentum is jagged, so single-pass divergence is noisy — smoothing the price change twice (and dividing by the twice-smoothed size of the change) produces a clean bounded line whose pivots are stable, which is the core reason this construction suits divergence at all. Higher-timeframe confirmation removes single-timeframe noise: a divergence that also shows on a higher timeframe is far less likely to be a fluke. Forward calibration removes blind faith: instead of assuming a divergence "should" reverse price, it measures whether it actually has, with realistic profit/stop outcomes. The smoothed oscillator, the divergence engine, the MTF check and the calibration form one coherent tool.
How it works. Momentum = double-smoothed price change ÷ double-smoothed absolute price change, scaled to a bounded line with a signal average. Divergence is detected from confirmed price pivots versus the oscillator (regular and optional hidden). With MTF confirmation on, a divergence counts only if a same-direction divergence is also present on the chosen higher timeframe. Each signal is then labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row (Bull/Bear divergence confirmed, "unconfirmed," or Wait) and the Conviction row, which reads "High" only when that divergence type shows a positive edge that survives the test on this symbol. A divergence is a reversal warning, not a trend signal — pair it with your own entry trigger and risk plan.
What's original. Higher-timeframe divergence confirmation on a double-smoothed oscillator, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge.
Inputs. Price/High/Low sources (change them for any market), reading mode (Simple/Pro), momentum windows, divergence and HTF-confirm controls, full calibration settings, and an auto-adapting dashboard legible on dark or light charts. Defaults are tuned for NSE:NIFTY1! intraday.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future. Divergence is inherently early and can persist before price turns.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Multi-Period Divergence OscillatorMulti-Period Divergence Oscillator
A bounded buying-pressure oscillator built to expose divergences that are corroborated across multiple measurement windows at once — and, optionally, across timeframes — then scores its own divergences forward on your chart in plain language so you can see at a glance whether to act or wait.
Why this construction (not a mashup for show). Single-window oscillators throw frequent, fragile divergences. The fix, by design, is to measure buying pressure over three windows (fast, medium, slow) and weight them into one line, so a divergence only forms when short-, medium- and long-horizon pressure agree. This tool layers two further filters that each remove a class of false signal: higher-timeframe confirmation (a divergence that also shows on a higher timeframe is far less likely to be noise), and forward calibration (instead of assuming a divergence "should" reverse price, it measures whether it actually has, on this symbol, with realistic profit/stop outcomes). The oscillator, the divergence engine, the MTF check and the calibration form one coherent tool — none alone is sufficient, which is why they're combined.
How it works. Buying pressure = close − min(low, prior close); true range = max(high, prior close) − min(low, prior close). The oscillator weights their sums over three windows (default 7/14/28). Divergence is detected from confirmed price pivots versus the oscillator (regular and optional hidden). With HTF confirmation on, a signal counts only if a same-direction divergence is also present on the chosen higher timeframe. Each signal is then labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row (Bull/Bear divergence confirmed, "unconfirmed," or Wait) and the Conviction row, which reads "High" only when that divergence type shows a positive edge that survives the test on this symbol. A divergence is a reversal warning, not a trend signal — pair it with your own entry trigger and risk plan. Best used alongside structure, not alone.
What's original. Higher-timeframe divergence confirmation on a multi-window oscillator, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge.
Inputs. High/Low/Close sources (change them for any market), reading mode (Simple/Pro), oscillator windows, divergence and HTF-confirm controls, full calibration settings, and an auto-adapting dashboard legible on dark or light charts. Defaults are tuned for NSE:NIFTY1! intraday.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future. Divergence is inherently early and can persist before price turns.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Directional Strength OscillatorDirectional Strength Oscillator
A signed trend-strength oscillator that reads the tug-of-war between upward and downward movement and prints one line — positive in uptrends, negative in downtrends, crossing zero at trend changes. Unlike a plain directional reading, it dims itself when price is only chopping, flags weakening trends through divergence, and scores its own signals forward on your chart in plain language.
Why these parts are combined (not a mashup for show). Each part answers what the previous one leaves open. Up-movement vs down-movement relative to true range gives a clean, bounded read of who's winning and by how much — but it can read "strong" inside noisy, non-trending chop. A trend-efficiency filter (net travel over total path) measures whether price is actually going somewhere; folding it into the line removes the false-strong chop. A divergence check (price makes a new extreme while strength does not) flags weakening trends the raw line would miss. Together they form one directional-strength tool.
How it works. Up-movement = |high − prior low|, down-movement = |low − prior high|; each is summed over the length and divided by summed true range to get the up and down lines. Their difference is the raw strength; it's standardized, soft-bounded to ±100, then scaled by a 0–1 trend-efficiency factor. Signals are zero-crosses gated by a minimum quality, plus divergence against price (measured on the undimmed strength). Each signal is then labelled by a triple barrier — a profit target and equal stop in ATR units plus a time limit — so a "win" means the target hit before the stop. Results split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row (Long/Short signal, Watch, or Wait) and the Conviction row, which reads "High" only when that signal type shows a positive edge that survives the test on this symbol. Green line above zero = uptrend in control, red below = downtrend; shaded bands = strong trend; the trend-quality % tells you how clean the move is. Best used with your own entry and risk plan, not alone.
What's original. The trend-quality gate that removes false-strong chop, integrated divergence on the undimmed line, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge.
Inputs. High/Low sources (change them for any market), reading mode (Simple/Pro), engine, quality-gate, divergence and full calibration settings, and an auto-adapting dashboard legible on dark or light charts. Defaults are tuned for NSE:NIFTY1! intraday.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Adaptive Trend Cycle OscillatorAdaptive Trend Cycle Oscillator
A bounded cycle-timing oscillator that does two things most cycle tools don't: it tunes its own period to the market's measured rhythm, and it scores its own signals forward on your chart in plain language — so you can see at a glance whether to act or wait.
What it is. A 0-100-style cycle line (shown −100…+100) that highlights up-phases and down-phases and marks turns out of oversold/overbought. A dashboard translates the current state into a one-word verdict and an honest conviction read.
Why these parts are combined (not a mashup for show). Three classical ideas are fused because each fixes the previous one's flaw. A trend-difference line (fast average minus slow average) captures direction but is unbounded and late at turns. Running it through a double stochastic normalization bounds it and sharpens the cyclical phase, so reversals show sooner with less whipsaw. The remaining weakness is the fixed normalization length — real cycles stretch and compress — so the length is set from a measured dominant cycle (autocorrelation of a band-passed price), making the oscillator self-tuning. The three only work as one tool; separately each is incomplete.
How it works. (1) Dominant cycle: band-pass filter → autocorrelation across lags → Fourier transform → power spectrum → dominant period via its centre of gravity. (2) Oscillator: trend-difference → stochastic over the measured period → smooth → stochastic → smooth. (3) Calibration: each signal is labelled by a triple barrier — a profit target and an equal stop in ATR units, plus a time limit — so a "win" means the target was reached before the stop. Results split into in-sample and recent out-of-sample, with a confidence interval and a multiple-testing check.
How to use. Read the Verdict row first (Long/Short signal, Watch, or Wait). Check Conviction — it only reads "High" when that signal type shows a positive edge that survives the statistical test on this symbol; otherwise treat the signal as context. Green wave above the mid line is an up-phase, red below is a down-phase; shaded bands are extremes. Best used alongside your own trend and risk plan, not alone.
What's original. The self-tuning period, the forward triple-barrier calibration with an out-of-sample split, and a conviction read that openly admits when there's no proven edge — rather than presenting every signal as equally reliable.
Inputs. Price source (change it to use any market), reading mode (Simple/Pro), cycle and self-tuning controls, signal zones, full calibration settings, and an auto-adapting dashboard that stays legible on dark or light charts. Defaults are tuned for NSE:NIFTY1! intraday.
Honesty & limitations. Edge figures are computed on this chart's own history with overlapping windows and no costs — context, not a guaranteed backtest; past behaviour doesn't predict the future, and the cycle estimate lags at regime shifts.
Disclaimer: for research and education only. Not financial advice. Trading carries risk of loss; manage your own positions. Indicator

Multi-Axis Confluence Matrix Adaptive MTF & Forward CalibratedMulti-Axis Confluence Matrix — Adaptive MTF & Forward-Calibrated
What it is
A confluence oscillator that scores agreement across five independent information axes, each measured on three adaptively-resolved timeframes, then weights every axis by its own forward-measured edge on the current symbol so the score self-corrects instead of treating all inputs as equally reliable. It separates the two kinds of multi-timeframe agreement that most stacks wrongly merge, gates direction with a higher-timeframe bias, and reports the whole state in one plain-language verdict panel.
The plotted line reads like a conventional oscillator (−100 to +100, with strong-zone bands and price-chart BUY/SELL signals), so a non-technical user can interpret it at a glance — while the engine underneath is doing edge-weighted, multi-timeframe, forward-calibrated confluence.
Why these components are combined (mashup rationale)
Stacking indicators usually produces false confluence: five momentum tools in different clothes vote the same bet five times, and it looks like five confirmations when it is really one. This script is built specifically to avoid that, and every layer removes a distinct failure of naive stacking. They ship as one engine because direction, certainty, and agreement are one decision — splitting them across separate scripts would lose the cross-checks below.
1. Five orthogonal axes, each from a different data source. Agreement only carries information if the axes are independent. Each axis reads a different thing:
Momentum — price (normalized MACD-histogram sign)
Stretch — price vs an adaptive fair value (z-score of the deviation)
Order flow — signed volume (sign of a bounded cumulative volume-delta z-score)
Fear — an implied-volatility index (direction of a negated IV trend)
Cross-market — a correlated leader instrument (signed momentum), off by default
Because no two axes share an input, four of them agreeing is four independent witnesses, not one witness repeated.
2. Vote / gate split. Directional axes vote long or short. Context does not vote — it scales conviction or vetoes. A volatility-regime measure and a trend-efficiency measure only shrink conviction; the higher-timeframe bias only decides which side is allowed. High volatility is neither bullish nor bearish, so folding it into the direction sum would inject bias. Keeping context as a multiplier rather than an addend is the single thing that stops the stack collapsing into "momentum with extra steps."
3. Two separate confluence counts, never summed.
Method confluence = how many independent axes agree on the signal timeframe (the rare, high-information agreement).
Scale confluence = how many timeframes one axis agrees on (robustness/timing only — the same signal at different resolutions, not a new vote).
Merging them lets three timeframes of one axis drown out a contradicting axis. They are reported on separate rows so you can see which kind of agreement you actually have.
4. Adaptive multi-timeframe resolution. The bias / signal / trigger timeframes are derived as multiples of the chart timeframe, clamped and snapped to real frames. The "bias-above, vote-between, trigger-at" relationship is preserved on any chart, instead of fixed frames that are only correct on the one chart they were tuned for.
5. Per-axis forward calibration (the core original component). Each axis is calibrated on each timeframe by a triple-barrier outcome (profit barrier / stop barrier / time horizon), with sample-uniqueness weighting and recency decay, reported as an edge over a barrier-matched base rate with a Wilson confidence interval. Each axis then votes weighted by its own edge lower-bound, so an axis that is not paying on the current symbol contributes little and cannot bias the score merely by being present. A small weight floor keeps the engine responsive (edge tilts the score rather than fully gating it); set the floor to zero for strict gating.
6. Higher-timeframe bias gate. The slow frame sets which side is allowed and does not vote, which blocks the counter-trend entries that punish mean-reversion approaches.
Remove any one layer and the stack loses a check it cannot recover. That is the justification for combining them.
How to use it
The line lives in −100..+100. In the green zone = strong bullish confluence; red zone = strong bearish; mid = no edge. Read it like any oscillator.
BUY / SELL triangles print on the price chart only when the gated, edge-weighted verdict fires (method confluence + conviction + bias gate all pass). Triangles with text = high conviction; without text = weaker. A latch + cooldown gives one clean mark per swing, not a cluster.
Bull / Bear divergence is drawn on the score line, spaced by a cooldown, and suppressed only when it directly contradicts a high-conviction opposite verdict (early-reversal divergences against a weak score are kept).
The verdict panel (top-right, on by default) states the action in plain language: tier, what to do, method/scale confluence, conviction, calibration warm-state, and which side the higher-TF bias allows.
The axis × timeframe matrix is an advanced view, off by default — turn it on to inspect each axis's arrows across timeframes and its measured edge. A Key-info table (Compact by default, Pro for full detail) summarizes the live state on the left.
Any market: the price source, volume source (with a borrow-symbol option for instruments that report no volume), the implied-volatility symbol, and the cross-market leader are all inputs in the settings. Defaults suit a major index future; change the symbols for any market, or clear the fear / cross-market symbols to drop those axes (the score re-weights over the axes that remain).
What makes it original
The multi-axis matrix, the vote/gate split, the dual (method vs scale) confluence accounting, the adaptive timeframe resolution, and the per-axis-per-timeframe forward edge-weighting are this script's own construction. It is not a re-skin of a single classic indicator — it is an engine for organizing several independent reads into one honest, self-correcting confluence score.
Outputs (Data Window)
Generic, identifiable names for use by other scripts: direction, conviction, method confluence, scale confluence, higher-TF bias, regime direction, edge, edge lower-bound, and sample count.
Non-repainting
Every off-chart-timeframe read uses confirmed previous bars with lookahead disabled; votes confirm on bar close; every calibrated statistic is forward-measured at fixed barriers on confirmed bars. The live bar is provisional, as with any indicator.
Concept credits (techniques operationalized here — not third-party code)
MACD: Gerald Appel. Bands / %B style stretch: John Bollinger. Cumulative volume delta and divergence: standard order-flow practice. Implied-volatility index methodology: CBOE. Trade-side from standardized returns (Bulk Volume Classification): Easley, López de Prado & O'Hara. Triple-barrier labeling and sample uniqueness: López de Prado. Wilson score interval: Edwin B. Wilson. Efficiency-ratio regime: Perry Kaufman. The matrix architecture and the calibration/weighting scheme are the author's own.
Disclaimer
Research and education only. This is not financial advice, not a recommendation, and not a guarantee. The axes are deliberately compact reads of their concepts. Calibration is in-sample, forward-measured at fixed barriers, with no costs, slippage, or guaranteed fills. Indicators describe past behavior; they do not predict the future. Trading carries risk of loss. Test out-of-sample and make your own decisions. Indicator

Intermarket Divergence with Reliability ScoringIntermarket Divergence with Reliability Scoring
Related markets tend to move together. When your chart pushes to a new high but a market that usually tracks it does not confirm, that non-confirmation can precede a turn. This script measures divergence between your chart and a chosen leader market — but only when the leader is actually correlated to price, because a decoupled market's "divergence" is meaningless — and then scores, in real time, whether those divergences have been worth trading on your symbol.
WHAT IT PLOTS
A normalised oscillator built from a chosen leader market, its stretch bands, divergence markers and connecting pivot lines, plus a plain-language verdict panel. By default the chart stays minimal — the oscillator and the verdict panel — with optional key-info and per-class tables you can switch on in settings.
WHY THESE COMPONENTS ARE COMBINED, AND HOW THEY WORK TOGETHER
Three classical pieces are fused into one pipeline, not stacked as independent signals:
A z-scored leader series — optionally inverted, optionally lead-lag shifted — the cross-market line your price is compared against.
A live correlation gate — the leader only votes when its trailing correlation to price clears a threshold, so non-confirmations from a decoupled market are ignored.
A binomial-proportion confidence test — asks, for each divergence class, whether the expected move followed more often than a same-zone baseline would deliver.
Part 1 builds the comparison, part 2 keeps only the meaningful divergences, part 3 decides whether the survivors have actually paid on this instrument, by direction. The parts are interdependent — remove any one and the script can no longer answer its core question: is this intermarket divergence worth trading here, and which way?
HOW TO READ IT
The verdict panel translates the statistics into four states:
GREEN, edge confirmed: these divergences have beaten a same-spot baseline here. Worth acting on.
RED, no edge here: they have lost to a coin-flip. Skip them, pick a leader that genuinely leads, or change the timeframe.
AMBER, unproven: edge not statistically established yet; treat as low-confidence.
GREY, learning: still collecting completed samples.
It also shows:
Best signal — names a direction only once that direction is individually proven (its edge lower-bound clears zero). Otherwise it says "none confirmed", so you are never lured by a single noisy number.
Leader link — how tightly the leader currently tracks price (strong, moderate or weak). A weak link means the leader has decoupled and its divergences are unreliable.
Reward : risk — the average best move versus the average worst move after a signal, in ATR. Below 1:1 means signals have hurt more than they helped.
Market regime — reverting markets suit divergence; strong trends punish it.
A divergence is simply price making a higher high or lower low while the leader line does the opposite, counted only when the leader is correlated enough to matter.
CHOOSING A LEADER
Pick a market that genuinely leads — a currency, a global risk proxy, a sector index — not one that merely co-moves with your chart. The lead-lag offset lets you test whether it leads. A co-moving index will usually show no edge, which the panel will tell you plainly.
WHAT IS ORIGINAL
Standard intermarket tools just overlay two symbols. This one fuses a live correlation gate into the divergence filter, then keeps a self-updating, confidence-scored, per-class track record against a same-zone baseline — so you see not just that a non-confirmation printed, but whether and how it has paid, and you only trust a direction once it is statistically proven.
UNIVERSAL ACROSS MARKETS
Reads the chart's own price (the source is configurable in settings) plus one leader symbol. Defaults target NIFTY futures with Bank Nifty as the leader. Change the leader to USD/INR (inverse), a sector or overseas index, or any related market for other instruments, in any market.
OUTPUTS FOR OTHER SCRIPTS
Generic EXP_ values — oscillator, signal, probability, edge, edge lower-bound, sample count, regime, leader value and leader correlation — are published to the Data Window so other indicators can read them via input.source().
CONCEPT CREDITS
Average true range — J. W. Wilder. Binomial score confidence interval — E. B. Wilson. Trend-efficiency regime measure — P. Kaufman. Intermarket analysis and divergence — classical technical analysis.
DISCLAIMER
For research and education only. This is not financial advice, not a recommendation to buy or sell, and not a guarantee of future results. All performance shown is in-sample and past-only. Markets carry risk — do your own research and manage your own risk. Indicator

Multi-Timeframe Momentum Divergence with Reliability ScoringMulti-Timeframe Momentum Divergence with Reliability Scoring
A momentum divergence on your chart timeframe is far more reliable when the bigger picture leans the same way. This script measures momentum divergence on your chart, only counts it when enough higher timeframes point in the signal's direction, then scores — in real time — whether those gated divergences have actually been worth trading on your symbol, and which way.
What it plots
A normalised momentum oscillator with stretch bands and divergence markers, connecting pivot-to-pivot lines, and a plain-language panel that turns the statistics into a verdict. By default the chart stays minimal — the oscillator plus the verdict panel — with optional key-info and per-class tables you can switch on in settings.
Why these components are combined, and how they work together
Three classical pieces are fused into one pipeline — not stacked as independent signals:
A z-scored momentum oscillator (chart timeframe) — locates where price and momentum disagree, i.e. the divergence.
A higher-timeframe agreement gate — checks momentum direction on three configurable higher timeframes and requires a minimum number to align before a divergence is allowed to fire. This filters out the counter-trend divergences that fail inside a strong higher-timeframe move.
A binomial-proportion confidence test — asks, for each divergence class, whether the expected move followed more often than a same-zone baseline would deliver.
Part 1 finds the divergence, part 2 keeps only those backed by the higher-timeframe trend, and part 3 decides whether the survivors have actually paid on this instrument, by direction. The parts are interdependent — remove any one and the script can no longer answer its core question: "is this momentum divergence worth trading here, and which way?"
How to read it
The verdict panel translates the statistics into four states:
GREEN — edge confirmed: these gated divergences have beaten a same-spot baseline here. Worth acting on.
RED — no edge here: they've lost to a coin-flip. Skip them, require more higher-timeframe agreement, or change the timeframe set.
AMBER — unproven: edge not statistically established yet; treat as low-confidence.
GREY — learning: still collecting completed samples.
It also shows "Best signal" (the direction carrying the strongest measured edge), "Higher TFs" (how many of your three higher timeframes currently agree), "Reward : risk" (the average best vs worst move after a signal, in ATR — below 1:1 means signals hurt more than they help), and the market regime. The optional key-info and per-class tables (off by default) show the per-timeframe breakdown and the full per-direction track record.
A divergence is simply price making a higher high / lower low while the momentum line does the opposite — counted only when enough higher timeframes lean that way.
What's original
Standard multi-timeframe tools just colour-code higher-timeframe trend, and standard divergence tools just mark the divergence. This one fuses higher-timeframe agreement into the divergence filter, then keeps a self-updating, confidence-scored, per-class track record against a same-zone baseline — so you see not just that a divergence printed, but whether and how it has paid once the higher timeframes were on board, and which direction is carrying it.
Universal across markets
Reads only the chart's own price (the source is configurable in settings) plus the same symbol on three higher timeframes, so it runs on any symbol, any timeframe, in any market with no external data. Defaults target NIFTY futures; change the source, lengths or timeframes for other instruments.
Outputs for other scripts
Generic EXP_* values — oscillator, signal, probability, edge, edge lower-bound, sample count, regime and higher-timeframe confluence — are published to the Data Window so other indicators can read them via input.source().
Concept credits
Relative-strength momentum and average true range — J. W. Wilder. Binomial score confidence interval — E. B. Wilson. Trend-efficiency regime measure — P. Kaufman. Multi-timeframe confluence and divergence — classical technical analysis.
Disclaimer
For research and education only. This is not financial advice, not a recommendation to buy or sell, and not a guarantee of future results. All performance shown is in-sample and past-only. Markets carry risk — do your own research and manage your own risk. Indicator

Price Volatility Divergence with Reliability ScoringPrice–Volatility Divergence with Reliability Scoring
Normally, rising price comes with falling implied volatility — fear drains out of a rally. When price pushes to a new high while fear is also rising (or falls to a new low while fear falls), that disagreement is an anomaly worth flagging. This script builds a "fear" oscillator from an implied-volatility index, marks where it diverges from price, and — the original part — scores in real time whether those divergences have actually been worth trading on your symbol, and which direction is carrying the edge.
Why these components are combined (and how they work together). Three pieces form one pipeline, not three separate signals:
An implied-volatility "fear" series — chosen as raw level, term-slope (vol minus its own trend), or variance-risk-premium (implied minus realized). It's z-scored and negated so price-up/fear-up reads as an ordinary bearish divergence on the line.
Confirmed-pivot divergence between that fear series and price — regular and hidden, with an optional triple-pivot mode.
A binomial-proportion confidence test that asks, for each divergence class, whether the expected move followed more often than a same-zone baseline.
Part 2 only fires where price and fear disagree; part 3 decides whether that disagreement has historically mattered here, per direction. Remove any one and the script can't answer its question — "is this fear divergence worth trading, and which way?"
How to read it. The verdict panel translates the statistics: green = these divergences have beaten a same-spot baseline here; red = they've lost to it (skip, or try another fear measure/timeframe); amber = not established yet; grey = still gathering data. "Best signal" names the direction with the strongest measured edge so you know which side to favour. "Reward : risk" is the average best vs worst move after a signal, in ATR. Optional key-info and per-class tables (off by default) show the full breakdown.
Important — this is a proxy, not literal skew. True option skew needs the full per-strike implied-volatility surface, which charts don't expose. This uses a charted VIX / term-structure proxy, stated plainly so you know exactly what you're reading.
Universal. Needs a price source (the chart) and an implied-volatility index, both set in inputs. Defaults target NIFTY futures with India VIX; change the volatility symbol to VIX, VSTOXX, etc. for other markets.
Outputs for other scripts. Generic EXP_* values (oscillator, signal, probability, edge, edge lower-bound, sample count, regime, implied-vol level, fear percentile) are published to the Data Window for use via input.source().
Concept credits. Implied-volatility index construction — CBOE methodology. Variance-risk-premium — academic options literature. Binomial score confidence interval — E. B. Wilson. Trend-efficiency regime measure — P. Kaufman.
Disclaimer. For research and education only. Not financial advice, not a recommendation, not a guarantee of future results. All figures are in-sample and past-only. Markets carry risk — do your own research and manage your own risk. Indicator

RX: Dual RSI Fusion 14/50 Compression Framework## RX: Dual RSI Fusion 14/50 Compression Framework
Is an advanced momentum framework designed to identify potential market exhaustion, compression phases, and high-probability reversal conditions by combining two Relative Strength Index structures into a single analytical model.
Unlike traditional RSI indicators that rely on a single momentum source, this framework integrates both a fast RSI (14-period by default) and a slow RSI (50-period by default) to provide a multi-layer view of market behavior.
### Core Concepts
• **Fast RSI (14):** Captures immediate momentum shifts, short-term exhaustion, and early divergence signals.
• **Slow RSI (50):** Represents the underlying market structure and helps identify broader momentum regimes.
• **Dynamic Compression Engine:** Measures the convergence between moving averages applied to the fast RSI, highlighting periods where momentum becomes increasingly compressed and potentially preparing for expansion.
• **Exhaustion Detection:** The indicator is specifically designed to monitor the sequence of events frequently observed near market turning points, including divergence development, momentum contraction, and structural breakout.
### Features
✔ Dual RSI architecture (Fast + Slow)
✔ Configurable moving averages applied directly to RSI values
✔ Compression detection between fast RSI moving averages
✔ Divergence memory engine with customizable validity period
✔ Momentum Delta histogram (Fast RSI - Slow RSI)
✔ Structural breakout detection from RSI compression zones
✔ Background state visualization for market context
✔ Alert conditions for potential exhaustion breakouts
### Interpretation
The framework is based on the premise that important market reversals are rarely caused by a single event. Instead, reversals often emerge from a succession of conditions:
1. Momentum divergence appears.
2. RSI structure begins to compress.
3. Market enters an exhaustion phase.
4. Fast momentum escapes the compression structure.
5. Expansion begins.
The indicator seeks to visualize this process and provide objective confirmation of potential exhaustion scenarios.
### Notes
This tool should not be interpreted as a standalone buy or sell system. It is intended to be used as a market structure and momentum exhaustion framework, ideally combined with price action, liquidity analysis, volume, or higher timeframe context.
Developed as part of the SXA analytical ecosystem by @Peter_n_n
Indicator

Regression-Slope Divergence with Reliability ScoringRegression-Slope Divergence with Reliability Scoring
Most divergence tools tell you a divergence exists. This one tells you whether that divergence has historically mattered on the symbol and timeframe you're actually looking at — and states the conclusion in plain words on the chart.
What it plots
A normalised momentum oscillator with stretch bands and divergence markers, plus a verdict panel that scores those divergences in real time. By default the chart stays minimal — just the oscillator and the verdict panel — with an optional key-info table and a per-direction track-record grid you can switch on in settings.
Why these components are combined, and how they work together
Three classical pieces are fused into a single pipeline — not stacked as independent signals:
Linear-regression slope of price — the direction price is genuinely trending.
RSI-based momentum, z-score normalised — the direction momentum is trending.
A binomial-proportion confidence test — whether the disagreement between the two has preceded a favourable move often enough to beat a same-zone baseline.
Components 1 and 2 only become a signal where they disagree — that disagreement is the divergence. Component 3 is the layer that makes this original: it records every past divergence on the current instrument, measures how often the expected move actually followed within a fixed look-ahead, compares that to what a random entry from the same stretched zone would have achieved, and wraps a confidence interval around the result. The parts are interdependent — remove any one and the script can no longer answer its core question, "is this divergence worth trading here?"
How to read it
The verdict panel translates the statistics into four states:
GREEN — edge confirmed: these divergences have beaten a same-spot baseline here. Worth acting on.
RED — no edge here: they've lost to a coin-flip from the same spot. Skip them, or try a higher timeframe (counter-trend divergence often fails on fast timeframes).
AMBER — unproven: edge not statistically established yet; treat as low-confidence.
GREY — learning: still collecting completed samples.
It also shows whether a signal is live right now and a reward-vs-risk figure — the average best move vs the average worst move after a signal, in ATR. Below 1:1 means signals have hurt more than they've helped. The optional grid breaks the record down into Bullish / Bearish with hit-rate, baseline, edge and reward:risk.
A divergence itself is simply price making a higher high / lower low while the momentum line does the opposite.
What's original
Off-the-shelf divergence indicators fire and leave you to guess. This one keeps a self-updating, confidence-scored track record against a same-zone baseline and tells you, in words, whether the current setup has earned your attention on this specific market.
Universal across markets
It reads only the chart's own price (the source is configurable in settings), so it runs on any symbol, any timeframe, in any market with no external data. Defaults are tuned for NIFTY futures; change the source and lengths for other instruments.
Outputs for other scripts
Generic EXP_* values — oscillator, signal, probability, edge, edge lower-bound, sample count, regime, trend strength and verdict tier — are published to the Data Window so other indicators can read them via input.source().
Concept credits
Relative-strength momentum and average true range — J. W. Wilder. Binomial score confidence interval — E. B. Wilson. Trend-efficiency regime measure — P. Kaufman. Least-squares regression — classical statistics.
Disclaimer
For research and education only. This is not financial advice, not a recommendation to buy or sell, and not a guarantee of future results. All performance shown is in-sample and past-only. Markets carry risk — do your own research and manage your own risk. Indicator

Crypto: Fear & Greed Index [invincible3]Crypto: Fear & Greed Index
Crypto: Fear & Greed Index is a multi-factor sentiment oscillator designed to estimate crypto market risk appetite directly inside PulseWire. Instead of relying on a single RSI or momentum reading, this indicator combines several market proxies into one smoothed 0–100 sentiment index.
The model uses price momentum, volatility behavior, RSI strength, volume pressure, range position, crypto breadth, stablecoin dominance, TOTAL market trend, and BTC dominance context. These factors are auto-normalized into a composite Fear & Greed score.
The oscillator is divided into clear sentiment zones:
0–25: Extreme Fear
25–45: Fear
45–55: Neutral
55–75: Greed
75–100: Extreme Greed
The indicator also includes a market-regime layer to classify conditions as Bull / Risk-On, Bear / Risk-Off, or Mixed / Transition. This helps traders avoid interpreting fear and greed in isolation.
Key features:
• Multi-factor crypto sentiment model
• Auto-normalized Fear & Greed score
• Adaptive dark/light chart colors
• Risk-on / risk-off regime detection
• Crypto breadth using major market symbols
• Stablecoin dominance and BTC dominance context
• TOTAL and TOTAL2 market trend integration
• Fear, Neutral, and Greed oscillator zones
• Dashboard with index value, regime, bias, factor scores, and weights
• Visual Fear-to-Greed meter
• Accumulation, Risk, Trend, and Trim context markers
• Regular bullish and bearish divergence detection
• Divergence plotted on both price chart and oscillator
• Alerts for major sentiment transitions and divergence signals
How to interpret:
Extreme Fear does not automatically mean buy. In a bear regime, fear can continue and price may keep falling. Extreme Fear becomes more useful when the broader regime is improving or when bullish divergence appears.
Extreme Greed does not automatically mean sell. In a strong bull regime, greed can support continuation. However, extreme greed with fading momentum may indicate crowding risk, where trimming or reducing exposure may be considered.
The indicator works best as a sentiment and risk-context tool, not as a standalone buy/sell system. It should be combined with price structure, support and resistance, volume, trend filters, and risk management.
This indicator is designed primarily for crypto markets. It can be applied to BTC, ETH, altcoins, and other crypto symbols. BTC is not the only supported asset; BTC is used as one part of the broader market-context model.
Disclaimer:
This script is for educational and analytical purposes only. It does not provide financial advice. Always use proper risk management and confirm signals with your own trading plan.
Indicator

RSI Divergence ScoutRSI Divergence Scout is a pivot-based RSI divergence study designed to mark potential disagreement between price movement and RSI momentum directly on the price chart.
The purpose of this script is to make bullish and bearish RSI divergences easier to see without requiring a separate oscillator pane or a large visual dashboard.
What the script detects
The study looks for two common RSI divergence conditions:
Bullish RSI divergence
A bullish divergence is detected when:
– price forms a confirmed pivot low below the previous confirmed pivot low
– RSI forms a higher value compared with the RSI value at the previous pivot low
– the previous RSI value was below the lower RSI context threshold
This can suggest that downside momentum is weakening, even though price has made a lower low.
Bearish RSI divergence
A bearish divergence is detected when:
– price forms a confirmed pivot high above the previous confirmed pivot high
– RSI forms a lower value compared with the RSI value at the previous pivot high
– the previous RSI value was above the upper RSI context threshold
This can suggest that upside momentum is weakening, even though price has made a higher high.
How the calculation works
The script uses confirmed pivot highs and pivot lows.
For bearish divergence, it compares the current confirmed pivot high with the previous confirmed pivot high:
– current pivot high price is higher than the previous pivot high price
– current RSI value is lower than the previous RSI value
– the previous RSI value is above the upper RSI context threshold
For bullish divergence, it compares the current confirmed pivot low with the previous confirmed pivot low:
– current pivot low price is lower than the previous pivot low price
– current RSI value is higher than the previous RSI value
– the previous RSI value is below the lower RSI context threshold
When a divergence is detected, the script draws a dashed line between the two relevant price pivots and places a label on the current confirmed pivot. The label can also show the RSI value at that pivot.
Why pivot confirmation matters
The script waits for a pivot high or pivot low to be confirmed using the selected left/right pivot sensitivity.
This means a signal appears only after the pivot is confirmed, not at the exact live high or low. This delay is intentional. It helps reduce noise and avoids marking every small candle fluctuation as a swing point.
Inputs
RSI length
Controls the RSI calculation period.
Pivot left bars
Controls how many bars to the left are required for pivot confirmation.
Pivot right bars
Controls how many bars to the right are required for pivot confirmation.
Higher pivot values produce fewer signals and focus on larger swings. Lower values produce more signals and make the script more sensitive to smaller price movements.
Upper RSI context threshold
Used as a context filter for bearish divergence. The previous pivot high RSI must be above this threshold.
Lower RSI context threshold
Used as a context filter for bullish divergence. The previous pivot low RSI must be below this threshold.
Display settings
The script allows bullish and bearish divergence labels to be shown or hidden independently. Pivot-to-pivot lines and RSI values on labels can also be enabled or disabled.
Alerts
The script includes basic alert conditions for bullish and bearish RSI divergence.
Because the script uses confirmed pivots, alerts trigger only after the pivot confirmation process is complete.
How to use it
RSI divergence should be treated as an early warning signal, not as a complete trade trigger.
A divergence can show that momentum is changing, but it does not confirm that price must reverse. In strong trends, multiple divergences can appear before price actually changes direction.
This study is most useful when combined with additional market context, such as:
– trend structure
– support and resistance
– volume behavior
– higher-timeframe direction
– risk management rules
Limitations
The script does not predict future price direction.
It does not generate complete buy or sell signals.
Pivot-based signals appear only after the pivot is confirmed.
Divergence can fail during strong trends, low-liquidity conditions or news-driven price movement.
The study should be used as one part of a broader analysis process.
Educational content only. Not financial advice.
Indicator

Multi-Factor Divergence MatrixMulti-Factor Divergence Matrix
OVERVIEW
Most divergence tools read one oscillator against price. The Multi-Factor Divergence Matrix reads fifteen independent lenses at once, standardizes them onto a single shared standard-deviation (sigma) scale, and then organizes them into a structure: lenses roll up into 14 aspects (distinct questions), aspects roll up into 6 families (factor classes), and families roll up into one composite. Divergence is detected five different ways on that construction, and a built-in calibration harness scores whether each method has actually carried any edge on your instrument.
The core idea: a price move is more trustworthy when many independent reads confirm it, and a divergence is more meaningful when it shows up across different kinds of information — not just three flavours of momentum that all say the same thing.
WHY THE COMPONENTS BELONG IN ONE SCRIPT (mashup rationale)
This is a deliberate multi-factor engine, not indicators stacked side by side. Every part answers the same question — is this price move confirmed, and by how broad a set of independent reads? — and each fixes a blind spot of the others:
A single oscillator can only diverge one way. Fifteen lenses across six families let price be unconfirmed by momentum, by trend efficiency, by location, by volatility, by order flow, or by cross-asset carry — independently.
Raw factor-stacking double-counts. Standardizing every lens to one sigma scale makes them directly comparable, and grouping correlated lenses into aspects (then families) means consensus is counted where it carries independent information, not where it merely repeats.
One detection method misses what another catches. Pivot divergence is precise but lags; slope fires earlier; correlation is continuous; sequential catches structured exhaustion; the intra-family split is often the very first crack. Run together, they cover the ways divergence actually appears.
Assertions are cheap. The calibration harness ties the whole construction back to realized forward outcomes, per method, so the tool reports whether its own signals carry edge rather than claiming they do.
Remove any one layer and the central question is answered less completely — which is what makes them one tool.
HOW IT WORKS
The 15 lenses → 14 aspects → 6 families
Momentum — oscillatory (RSI + Know Sure Thing), velocity (low-lag two-pole strength), stationary (fractional-difference of log price)
Trend / Efficiency — path quality (Kaufman efficiency ratio), extension (SAR distance in ATR units), rollover (dual-horizon efficiency gap)
Location / Mean — volume-anchored (VWAP deviation), geometric (linear-regression deviation)
Volatility — realized expansion (directional range), implied-vs-realized (variance-risk-premium spread)
Flow / Volume — net pressure (cumulative signed-volume delta, lower-timeframe estimated), volume-weighted (Money Flow Index)
Cross-Asset — carry (futures-vs-spot basis), fear (volatility-index vs price)
Each lens is z-scored over a rolling window (up = bullish). Correlated lenses that answer the same question (e.g. RSI and KST) are averaged into one aspect — the anti-redundancy step. A family agrees only when a majority of its filled aspects align; when its aspects disagree it is flagged SPLIT.
Two consensus axes, both at family resolution, auto-scaled by timeframe
Extreme-count — how many families are stretched to their extreme.
Divergence-count — how many families are diverging from price right now.
Five detection methods
Pivot — regular, hidden, exaggerated (equal-extreme) and triple divergence on the composite.
Slope — price-vs-composite regression-slope sign disagreement (fires earlier than pivots).
Correlation — rolling price-composite correlation flipping negative (continuous, always-on).
Sequential — a structured RSI exhaustion pattern (three deeper pushes, then a turn).
Leading — the intra-family SPLIT, often the first warning before a family flips.
Calibration. Each event is a directional hypothesis, queued and resolved a fixed horizon later versus an ATR threshold, then compared with the unconditional same-horizon base rate. The dashboard reports, per method: number of events, Hit %, and Edge = Hit − Base. Events are logged and resolved on confirmed bars only.
HOW TO USE
The dashboard has two modes. Compact (default) shows the decision essentials: the composite zone, the two consensus counts (Stretched X/6 · Diverging Y/6), a one-line family summary (bull / bear / split), and the single best-calibrated method with its Edge. Pro expands this to every family row (vote arrow, aspect agreement, SPLIT flag) and every per-method calibration class. In both, a high divergence-count backed by clean family agreement is strong context; the Edge figure tells you whether that read has actually preceded a move on this symbol and timeframe. Treat consensus as context, never a standalone trigger.
UNIVERSAL ACROSS MARKETS
Price, high, low, the VWAP source, the spot reference symbol and the volatility symbol are all inputs, so the engine runs on any instrument and timeframe. Volume-based lenses (VWAP, flow, MFI) need real traded volume — use the futures contract, not a cash index. Defaults target NSE NIFTY index futures intraday with an NSE:NIFTY spot reference and NSE:INDIAVIX; lenses without data quietly drop out and the consensus scales to whatever stays active.
ORIGINALITY
The individual techniques are public and credited below. The original work is the integration: standardizing fifteen heterogeneous reads onto one sigma axis, the aspect → family → composite roll-up that counts agreement only where it is independent, the dual extreme-and-divergence consensus, the surfacing of intra-family disagreement as a leading signal, and the forward base-rate calibration over every detection method. No third-party Pine code is reused.
CONCEPT CREDIT
RSI, Parabolic SAR, ATR, DMI — J. Welles Wilder. Know Sure Thing — Martin J. Pring. Efficiency Ratio — Perry J. Kaufman. Money Flow Index — Quong & Soudack. VWAP and cumulative volume delta — standard public market-microstructure concepts. Fractional differentiation — the long-memory / stationarity literature (Hosking 1981; adapted for finance by M. López de Prado). Two-pole low-pass smoothing — John F. Ehlers. The basis is explained by the cost-of-carry framework (N. Kaldor 1939; H. Working 1948–49). Variance risk premium — the implied-minus-realized literature. Linear regression and price/oscillator divergence are long-established public techniques. Not affiliated with, nor endorsed by, any third party.
HONESTY / LIMITATIONS
Consensus is context, not a trigger. Independence is managed, not perfect — lenses inside a family still share inputs, which is exactly why consensus counts families and aspects rather than raw lenses, and why a high count is never proof. The Edge figures are in-sample, close-to-close, with overlapping forward windows and no costs — descriptive context, not a verified backtest. An Edge near zero, negative, or unstable across timeframes is the harness honestly telling you the method has no reliable edge on that instrument; do not tune parameters until it turns green — that is curve-fitting. Divergence and reversals confirm a few bars after their pivot (inherent to honest pivot detection). Nothing here predicts price.
DISCLAIMER
Research and educational tool only. NOT financial advice and NO guarantee of profitability or accuracy. Indicators describe past behaviour; they do not predict the future. Trading carries risk of loss. Test out-of-sample and make your own decisions. The author accepts no liability for any use of this script. Indicator
