Volume X-ray [LucF]█ OVERVIEW
This tool analyzes the relative size of volume reported on intraday vs EOD (end of day) data feeds on historical bars. If you use volume data to make trading decisions, it can help you improve your understanding of its nature and quality, which is especially important if you trade on intraday timeframes.
I often mention, when discussing volume analysis, how it's important for traders to understand the volume data they are using: where it originates, what it includes and does not include. By helping you spot sizeable differences between volume reported on intraday and EOD data feeds for any given instrument, "Volume X-ray" can point you to instruments where you might want to research the causes of the difference.
█ CONCEPTS
The information used to build a chart's historical bars originates from data providers (exchanges, brokers, etc.) who often maintain distinct historical feeds for intraday and EOD timeframes. How volume data is assembled for intraday and EOD feeds varies with instruments, brokers and exchanges. Variations between the two feeds — or their absence — can be due to how instruments are traded in a particular sector and/or the volume reporting policy for the feeds you are using. Instruments from crypto and forex markets, for example, will often display similar volume on both feeds. Stocks will often display variations because block trades or other types of trades may not be included in their intraday volume data. Futures will also typically display variations. It is even possible that volume from different feeds may not be of the same nature, as you can get trade volume (market volume) on one feed and tick volume (transaction counts) on another. You will sometimes be able to find the details of what different feeds contain from the technical information provided by exchanges/brokers on their feeds. This is an example for the NASDAQ feeds . Once you determine which feeds you are using, you can look for the reporting specs for that feed. This is all research you will need to do on your own; "Volume X-ray" will not help you with that part.
You may elect to forego the deep dive in feed information and simply rely on the figure the indicator will calculate for the instruments you trade. One simple — and unproven — way to interpret "Volume X-ray" values is to infer that instruments with larger percentages of intraday/EOD volume ratios are more "democratic" because at intraday timeframes, you are seeing a greater proportion of the actual traded volume for the instrument. This could conceivably lead one to conclude that such volume data is more reliable than on an instrument where intraday volume accounts for only 3% of EOD volume, let's say.
Note that as intraday vs EOD variations exist for historical bars on some instruments, there will typically also be differences between the realtime feeds used on intraday vs 1D or greater timeframes for those same assets. Realtime reporting rules will often be different from historical feed reporting rules, so variations between realtime feeds will often be different from the variations between historical feeds for the same instrument. A deep dive in reporting rules will quickly reveal what a jungle they are for some instruments, yet it is the only way to really understand the volume information our charts display.
█ HOW TO USE IT
The script is very simple and has no inputs. Just add it to 1D charts and it will calculate the proportion of volume reported on the intraday feed over the EOD volume. The plots show the daily values for both volumes: the teal area is the EOD volume, the orange line is the intraday volume. A value representing the average, cumulative intraday/EOD volume percentage for the chart is displayed in the upper-right corner. Its background color changes with the percentage, with brightness levels proportional to the percentage for both the bull color (% >= 50) or the bear color (% < 50). When abnormal conditions are detected, such as missing volume of one kind or the other, a yellow background is used.
Daily and cumulative values are displayed in indicator values and the Data Window.
The indicator loads in a pane, but you can also use it in overlay mode by moving it on the chart with "Move to" in the script's "More" menu, and disabling the plot display from the "Settings/Style" tab.
█ LIMITATIONS
• The script will not run on timeframes >1D because it cannot produce useful values on them.
• The calculation of the cumulative average will vary on different intraday timeframes because of the varying number of days covered by the dataset.
Variations can also occur because of irregularities in reported volume data. That is the reason I recommend using it on 1D charts.
• The script only calculates on historical bars because in real time there is no distinction between intraday and EOD feeds.
• You will see plenty of special cases if you use the indicator on a variety of instruments:
• Some instruments have no intraday volume, while on others it's the opposite.
• Missing information will sometimes appear here and there on datasets.
• Some instruments have higher intraday than EOD volume.
Please do not ask me the reasons for these anomalies; it's your responsibility to find them. I supply a tool that will spot the anomalies for you — nothing more.
█ FOR PINE CODERS
• This script uses a little-known feature of request.security() , which allows us to specify `"1440"` for the `timeframe` argument.
When you do, data from the 1min intrabars of the historical intraday feed is aggregated over one day, as opposed to the usual EOD feed used with `"D"`.
• I use gaps on my request.security() calls. This is useful because at intraday timeframes I can cumulate non- na values only.
• I use fixnan() on some values. For those who don't know about it yet, it eliminates na values from a series, just like not using gaps will do in a request.security() call.
• I like how the new switch structure makes for more readable code than equivalent if structures.
• I wrote my script using the revised recommendations in the Style Guide from the Pine v5 User Manual.
• I use the new runtime.error() to throw an error when the script user tries to use a timeframe >1D.
Why? Because then, my request.security() calls would be returning values from the last 1D intrabar of the dilation of the, let's say, 1W chart bar.
This of course would be of no use whatsoever — and misleading. I encourage all Pine coders fetching HTF data to protect their script users in the same way.
As tool builders, it is our responsibility to shield unsuspecting users of our scripts from contexts where our calcs produce invalid results.
• While we're on the subject of accessing intrabar timeframes, I will add this to the intention of coders falling victim to what appears to be
a new misconception where the mere fact of using intrabar timeframes with request.security() is believed to provide some sort of edge.
This is a fallacy unless you are sending down functions specifically designed to mine values from request.security() 's intrabar context.
These coders do not seem to realize that:
• They are only retrieving information from the last intrabar of the chart bar.
• The already flawed behavior of their scripts on historical bars will not improve on realtime bars. It will actually worsen because in real time,
intrabars are not yet ordered sequentially as they are on historical bars.
• Alerts or strategy orders using intrabar information acquired through request.security() will be using flawed logic and data most of the time.
The situation reminds me of the mania where using Heikin-Ashi charts to backtest was all the rage because it produced magnificent — and flawed — results.
Trading is difficult enough when doing the right things; I hate to see traders infected by lethal beliefs.
Strive to sharpen your "herd immunity", as Lionel Shriver calls it. She also writes: "Be leery of orthodoxy. Hold back from shared cultural enthusiasms."
Be your own trader.
█ THANKS
This indicator would not exist without the invaluable insights from Tim, a member of the Pine team. Thanks Tim!
חפש סקריפטים עבור "莱加内斯VS皇家社会"
Relative StrengthThis indicator is called Relative Strength and is no way related to RSI ( Relative strength indicator).
It is simply a ratio of asset A to asset B plotted. Usually it is used to look for strength vs a particular index. Since it is a ratio, all the trendlines work on it. The default index is NIFTY. You can change it any index/script you want to compare:
1. Script vs Index
2. Index vs Index
Market BuySell RatioA script using 1m small candle size (configurable) to compute the volume of buy (up) vs sell (down) candles (instead of actual market buy vs sell orders which are not available in pine script).
It then plots the buy vs sell ratio as an oscillator below the cart.
This gives traders an idea of current order flow in the market.
To compute the small candles this script uses the "Smart Volume" script which can be found here:
WorldCup Dashboard + Institutional Sessions© 2025 NewMeta™ — Educational use only.
# Full, Premium Description
## WorldCup Dashboard + Institutional Sessions
**A trade-ready, intraday framework that combines market structure, real flow, and institutional timing.**
This toolkit fuses **Institutional Sessions** with a **price–volume decision engine** so you can see *who is active*, *where value sits*, and *whether the drive is real*. You get: **CVD/Delta**, volume-weighted **Momentum**, **Aggression** spikes, **FVG (MTF)** with nearest side, **Daily Volume Profile (VAH/POC/VAL)**, **ATR regime**, a **24h position gauge**, classic **candle patterns**, IBH/IBL + **first-hour “true close”** lines, and a **10-vote confluence scoreboard**—all in one view.
---
## What’s inside (and how to trade it)
### 🌍 Institutional Sessions (Sydney • Tokyo • London • New York)
* Session boxes + a highlighted **first hour**.
* Plots the **true close** (first-hour close) as a running line with a label.
**Use:** Many desks anchor risk to this print. Above = bullish bias; below = bearish. **IBH/IBL** breaks during London/NY carry the most signal.
### 📊 CVD / Delta (Flow)
* Net buyer vs seller pressure with smooth trend state.
**Use:** **Rising CVD + acceptance above mid/POC** confirms continuation. Bearish price + rising CVD = caution (possible absorption).
### ⚡ Volume-Weighted Momentum
* Momentum adjusted by participation quality (volume).
**Use:** Momentum>MA and >0 → trend drive is “real”; <0 and falling → distribution risk.
### 🔥 Aggression Detector
* ROC × normalized volume × wick factor to flag **forceful** candles.
**Use:** On spikes, avoid fading blindly—wait for pullbacks into **aligned FVG** or for aggression to cool.
### 🟦🟪 Fair Value Gaps (with MTF)
* Detects up to 3 recent FVGs and marks the **nearest** side to price.
**Use:** Trend pullbacks into **bullish FVG** for longs; bounces into **bearish FVG** for shorts. Optional threshold to filter weak gaps.
### 🧭 24h Gauge (positioning)
* Shows current price across the 24h low⇢high with a mid reference.
**Use:** Above mid and pushing upper third = momentum continuation setups; below mid = sell the rips bias.
### 🧱 Daily Volume Profile (manual per day)
* **VAH / POC / VAL** derived from discretized rows.
**Use:** **POC below** supports longs; **POC above** caps rallies. Fade VAH/VAL in ranges; treat them as break/hold levels in trends.
### 📈 ATR Regime
* **ATR vs ATR-avg** with direction and regime flag (**HIGH / NORMAL / LOW**).
**Use:** HIGH ⇒ give trades room & favor trend following. LOW ⇒ fade edges, scale targets.
### 🕯️ Candle Patterns (contextual, not standalone)
* Engulfings, Morning/Evening Star, 3 Soldiers/Crows, Harami, Hammer/Shooting Star, Double Top/Bottom.
**Use:** Only with session + flow + momentum alignment.
### 🤝 Price–Volume Classification
* Labels each bar as **continuation**, **exhaustion**, **distribution**, or **healthy pullback**.
**Use:** Align continuation reads with trend; treat “Price↑ + Vol↓” as a caution flag.
### 🧪 Confluence Scoreboard & B/S Meter
* Ten elements vote: 🔵 bull, ⚪ neutral, 🟣 bear.
**Use:** Execution filter—take setups when the board’s skew matches your trade direction.
---
## Playbooks (actionable)
**Trend Pullback (Long)**
1. London/NY active, Momentum↑, CVD↑, price above 24h mid & POC.
2. Pullback into **nearest bullish FVG**.
3. Invalidate under FVG low or **true-close** line.
4. Targets: IBH → VAH → 24h high.
**Range Fade (Short)**
1. Asia/quiet regime, **Price↑ + Vol↓** into **VAH**, ATR low.
2. Nearest FVG bearish or scoreboard skew bearish.
3. Invalidate above VAH/IBH.
4. Targets: POC → VAL.
**News/Impulse**
Aggression spike? Don’t chase. Let it pull back into the aligned FVG; require CVD/Momentum agreement before entry.
---
## Alerts (included)
* **Bull/Bear Confluence ≥ 7/10**
* **Intraday Target Achieved** / **Daily Target Achieved**
* **Session True-Close Retests** (Sydney/Tokyo/London/NY)
*(Keep alerts “Once per bar” unless you specifically want intrabar triggers.)*
---
## Setup Tips
* **UTC**: Choose the reference that matches how you track sessions (default UTC+2).
* **Volume threshold**: 2.0× is a strong baseline; raise for noisy alts, lower for majors.
* **CVD smoothing**: 14–24 for scalps; 24–34 for slower markets.
* **ATR lengths**: Keep defaults unless your asset has a persistent regime shift.
---
## Why this framework?
Because **timing (sessions)**, **truth (flow)**, and **location (value/FVG)** together beat any single signal. You get *who is trading*, *how strong the push is*, and *where risk lives*—on one screen—so execution is faster and cleaner.
---
**Disclaimer**: Educational use only. Not financial advice. Markets are risky—backtest and size responsibly.
VBE Pro - Advanced Volatility Bands with Zero Lag & PredictionVBE Pro: Zero-Lag Predictive Bands
A next-gen volatility envelope that blends zero-lag smoothing with forward-looking volatility models (EWMA/GARCH/HAR/ML) to keep bands tight in calm markets, responsive in shocks, and adaptive across regimes.
What it does
Builds volatility from multiple methods (ATR, StDev, Parkinson, Garman-Klass, Rogers-Satchell, Yang-Zhang).
Projects near-term vol with your choice of predictor, then blends it via a weight slider.
Applies zero-lag smoothing (ZLEMA/ZLMA/DEMA/TEMA/HMA/JMA/Ehlers/Kalman/T3) to cut delay without over-shoot.
Auto-adapts band width by regime (high/low/normal) and can expand dynamically with price acceleration.
Optional displacement to align with your execution style.
On-chart
Upper/Lower zero-lag bands with optional fill.
Middle line (ZL-smoothed source).
Regime-tinted background (High/Low).
Displacement marker (if used).
Compact top-right info table: current vs predicted vol, regime, squeeze, multiplier, methods, ZL gain, est. lag reduction.
Signals & Alerts
Break↑ / Break↓ when price crosses the bands.
Vol↑ / Vol↓ expansion/contraction sequences.
“Squeeze” when band width compresses vs its ZL average.
“ZL” marker when significant zero-lag is active.
Prediction divergence ⚠ when projected vol deviates > threshold.
Built-in alertconditions for all of the above.
Quick start
Method: ATR or Hybrid for robustness.
Smoothing: ZLEMA, length 5–8, ZL gain 2–3 (push higher only if you accept more projection).
Bands: Multiplier 2.0, Adaptive on, Dynamic off to start.
Prediction: EWMA, weight 0.25–0.35. Move to GARCH in mean-reverty tapes; HAR-RV for mixed regimes.
Regime lookback: 50.
PulseRPO Zero-Lag BandsPulseRPO is a momentum and volatility timing suite built on a zero-lag Relative Price Oscillator. It pairs an RPO (fast vs slow MA spread, in %) with adaptive volatility envelopes that tighten or widen as conditions change, so you can spot true momentum bursts, exhaustion and “quiet-before-the-move” squeezes—without the usual MA lag.
What it shows
Zero-Lag RPO: Choose EMA, SMA, WMA, RMA, HMA or ZLEMA for the base, then apply ZLEMA/DEMA/TEMA/HMA zero-lag smoothing to cut delay.
Adaptive Bands: StdDev, ATR, Range or Hybrid volatility; bands auto-tighten in high vol and widen in quiet regimes.
Dynamic OB/OS: Levels scale with current regime so extremes mean something even as volatility shifts.
Signal & Histogram: Classic signal cross plus histogram for quick read of acceleration vs deceleration.
Squeeze Paint: Subtle background highlight when band width compresses below its average.
Divergences & Triggers: Optional bullish/bearish divergence tags, plus band-cross and signal-cross alerts out of the box.
How to use it (general guide)
Momentum entries: Look for RPO crossing up its signal from below or snapping out of a squeeze; extra weight if it also re-enters from below the lower band.
Trend continuation: RPO riding outside the upper (or lower) band with rising histogram = power move; trail risk on pullbacks to the signal line.
Exhaustion / fades: Taps beyond dynamic OB/OS or band re-entries can mark mean-revert windows—confirm with price/volume.
Risk filter: During squeeze, size down and prepare for expansion; after expansion, respect extremes.
Tweak the MA type, band method and zero-lag strength to match your timeframe. PulseRPO is designed to be a self-contained read: regime → setup → trigger → alert.
Swing Breakout Strategy ver 1Overview
A multi-confirmation swing strategy that seeks trend breakouts and adds three optional confluence modules: candlestick patterns, RSI/MACD regular divergences, and simple chart patterns (double top/bottom). Built for clarity, fast testing, and togglable debug markers.
Core Logic
Trend filter: SMA(50) vs SMA(200) + price vs SMA(21).
Breakout engine: Close breaks prior N-bar high/low (lookback configurable).
Momentum: Stochastic cross (optional view), MACD cross/zone, RSI regime (>50 or <50).
Volume: Above SMA(volume) filter.
Optional Confluence Modules
Candlestick analysis (enable/disable):
Bull/Bear Engulfing, Hammer, Shooting Star, Inside Bar (bull/bear flavors).
Divergence (enable/disable):
Regular divergences on RSI and MACD histogram using confirmed pivots (HH/LH or LL/HL).
Chart patterns (enable/disable):
Double Bottom (two similar lows + neckline break).
Double Top (two similar highs + neckline break).
Tolerance and pivot width are configurable.
Entries & Exits
Entry Long: Any of (Base Breakout + Trend + Momentum + Volume) OR enabled confluences (candles / divergence / pattern).
Entry Short: Symmetric logic for downside.
Risk management: Optional ATR-based stop loss and take profit (configurable length & multipliers).
Note: If you prefer confluences to be filters (AND), change the final buySignal/sellSignal lines accordingly.
Inputs (key)
SMA lengths (21/50/200), RSI length, Stochastic lengths & smoothing, MACD (12/26/9).
Breakout lookback, Volume SMA.
ATR exits (on/off, ATR length, SL/TP multipliers).
Toggles for Candlesticks, Divergences, Patterns, plus per-module debug markers.
Plots & Markers
Plots SMA 21/50/200.
Buy/Sell arrows on chart.
Optional debug markers for each condition (global-scope safe).
Divergence/pattern markers offset to the actual pivot/neckline bars.
Good Practices
Test on multiple timeframes and instruments; tune lookbacks and ATR multipliers.
Consider using the modules as filters in trending markets to reduce whipsaws.
Always forward-test and combine with position sizing.
Disclaimer
For educational purposes only. This is not financial advice. Trading involves risk.
Version & Credits
Pine Script® v6 — Strategy.
Developed by: Mohammed Bedaiwi.
Swing Breakout Strategy — Candles + Divergences + Patterns (rev)Overview
A multi-confirmation swing strategy that seeks trend breakouts and adds three optional confluence modules: candlestick patterns, RSI/MACD regular divergences, and simple chart patterns (double top/bottom). Built for clarity, fast testing, and togglable debug markers.
Core Logic
Trend filter: SMA(50) vs SMA(200) + price vs SMA(21).
Breakout engine: Close breaks prior N-bar high/low (lookback configurable).
Momentum: Stochastic cross (optional view), MACD cross/zone, RSI regime (>50 or <50).
Volume: Above SMA(volume) filter.
Optional Confluence Modules
Candlestick analysis (enable/disable):
Bull/Bear Engulfing, Hammer, Shooting Star, Inside Bar (bull/bear flavors).
Divergence (enable/disable):
Regular divergences on RSI and MACD histogram using confirmed pivots (HH/LH or LL/HL).
Chart patterns (enable/disable):
Double Bottom (two similar lows + neckline break).
Double Top (two similar highs + neckline break).
Tolerance and pivot width are configurable.
Entries & Exits
Entry Long: Any of (Base Breakout + Trend + Momentum + Volume) OR enabled confluences (candles / divergence / pattern).
Entry Short: Symmetric logic for downside.
Risk management: Optional ATR-based stop loss and take profit (configurable length & multipliers).
Note: If you prefer confluences to be filters (AND), change the final buySignal/sellSignal lines accordingly.
Inputs (key)
SMA lengths (21/50/200), RSI length, Stochastic lengths & smoothing, MACD (12/26/9).
Breakout lookback, Volume SMA.
ATR exits (on/off, ATR length, SL/TP multipliers).
Toggles for Candlesticks, Divergences, Patterns, plus per-module debug markers.
Plots & Markers
Plots SMA 21/50/200.
Buy/Sell arrows on chart.
Optional debug markers for each condition (global-scope safe).
Divergence/pattern markers offset to the actual pivot/neckline bars.
Good Practices
Test on multiple timeframes and instruments; tune lookbacks and ATR multipliers.
Consider using the modules as filters in trending markets to reduce whipsaws.
Always forward-test and combine with position sizing.
Disclaimer
For educational purposes only. This is not financial advice. Trading involves risk.
Version & Credits
Pine Script® v6 — Strategy.
Developed by: Mohammed Bedaiwi.
EMA Trend RecognitionEMA Trend Recognition — “Double-Vision Trend Glasses” 👓⚡
In short:
Your chart gets two voices — the Major trend (EMA50 vs EMA200) for the big picture, and the Minor trend (EMA9 vs EMA20) for the short-term mood.
When both sing the same tune, you get a STRONG signal.
When they argue, it’s a WEAK one. Simple. Clean. Effective.
🧭 What this indicator does
Major Trend (Long-Term):
EMA50 above EMA200 → Bullish.
EMA50 below EMA200 → Bearish.
This tells you where the market really wants to go.
Minor Trend (Short-Term):
EMA9 above EMA20 → Bullish.
EMA9 below EMA20 → Bearish.
This shows you what the market feels like right now.
Trend Combinations (The Magic):
🟢 STRONG BUY: Major ↑ + Minor ↑ → full alignment, go with the flow.
🔴 STRONG SELL: Major ↓ + Minor ↓ → both down, no mercy.
🟡 WEAK BUY: Major ↑, Minor ↓ → pullback zone? early dip? maybe.
🟠 WEAK SELL: Major ↓, Minor ↑ → short-term bounce inside a downtrend.
🎨 Background Colors & Info Panel
Bright Green: STRONG BUY
Bright Red: STRONG SELL
Faded Green/Red: WEAK signals (trend disagreement)
Bottom Info Table:
Major Trend: “BULLISH ↑” or “BEARISH ↓”
Minor Trend: same logic, faster tempo
Signal: shows STRONG/WEAK/NEUTRAL status
Price: latest close price (because yes, we all check that)
🔔 Alerts (so you don’t stare all day)
MAJOR TREND CHANGE: “Now Bullish!” or “Now Bearish!”
MINOR TREND CHANGE: quicker reversals
STRONG BUY/SELL: when both trends line up perfectly
(Alerts trigger only on bar close — no disco flicker alerts.)
🧠 Visuals — Simple but Smart
EMA 200 & 50: thick lines = your market highway
EMA 20 & 9: thin lines = your turn signals
Muted colors, so your eyes survive long trading sessions
🚀 Why it’s useful
Trend Trading: Filter out noise, ride the momentum.
Pullback Entries: WEAK signals often mark “turning back in” moments.
System Building: Use “STRONG” as a market bias filter, “MINOR” flips as entry triggers.
⚙️ Pro Tips
Timeframes: EMAs are fixed, but meaning scales with TF.
On 1H or 4H, they often reflect daily/weekly momentum.
Context: Combine with structure (HH/HL/LH/LL), zones (OB/FVG), or volume.
Risk Management: Signal ≠ free money. Always define SL/TP and RR.
⚠️ Disclaimer
No financial advice, no crystal ball.
This indicator helps you see — but you still decide when to act.
Backtest and paper-trade before going live.
Short Pitch (for the top “Summary” line on TradingView):
“Two EMA pairs, one clear trend compass — Major shows direction, Minor sets the rhythm. When both agree, it’s STRONG. When they argue, it’s WEAK. Clean, fast, and easy to read.” ✅
Feel free to commend and if u have inspirations to add something, let me know, cheers :D
Real Relative Strength Breakout & BreakdownReal Relative Strength Breakout & Breakdown Indicator
What It Does
Identifies high-probability trading setups by combining:
Technical Breakouts/Breakdowns - Price breaking support/resistance zones
Real Relative Strength (RRS) - Volatility-adjusted performance vs benchmark (SPY)
Key Insight: The strongest signals occur when price action contradicts market direction—breakouts during market weakness or breakdowns during market strength show exceptional buying/selling pressure.
Real Relative Strength (RRS) Calculation
RRS measures outperformance/underperformance on a volatility-adjusted basis:
Power Index = (Benchmark Price Move) / (Benchmark ATR)
RRS = (Stock Price Move - Power Index × Stock ATR) / Stock ATR
RRS (smoothed) = 3-period SMA of RRS
Interpretation:
RRS > 0 = Relative Strength (outperforming)
RRS < 0 = Relative Weakness (underperforming)
Signal Types
🟢 Large Green Triangle (Premium Long)
Condition: Breakout + RRS > 0
Meaning: Stock breaking resistance WHILE outperforming benchmark
Best when: Market is weak but stock breaks out anyway = exceptional strength
Use: High-conviction long entries
🔵 Small Blue Triangle (Standard Breakout)
Condition: Breakout + RRS ≤ 0
Meaning: Breaking resistance but underperforming benchmark
Typical: "Rising tide lifts all boats" scenario during market rally
Use: Lower conviction—may just be following market
🟠 Large Orange Triangle (Premium Short)
Condition: Breakdown + RRS < 0
Meaning: Stock breaking support WHILE underperforming benchmark
Best when: Market is strong but stock breaks down anyway = severe weakness
Use: High-conviction short entries
🔴 Small Red Triangle (Standard Breakdown)
Condition: Breakdown + RRS ≥ 0
Meaning: Breaking support but outperforming benchmark
Typical: Stock falling less than market during selloff
Use: Lower conviction—may recover when market does
Why Large Triangles Matter
Large signals show divergence = genuine institutional flow:
Stock breaking out while market falls → Aggressive buying despite headwinds
Stock breaking down while market rallies → Aggressive selling despite tailwinds
These setups reveal where real conviction lies, not just momentum-following behavior.
Quick Settings
RRS: 12-period lookback, 3-bar smoothing, vs SPY
Breakouts: 5-period pivots, 200-bar lookback, 3% zone width, 2 minimum tests
Diwali Lights Pro — 7-Diyas Signal Matrix [KedArc Quant]🎯 Overview
“Diwali Lights Pro — 7-Diyas Signal Matrix” is a precision-built trend-sentiment indicator that blends the glow of seven technical “diyas” — each representing a different momentum or strength dimension — into one intuitive signal matrix. It was designed to celebrate light, discipline, and clarity in trading — helping traders filter noise, identify strong trend shifts, and take trades with conviction. Each diya is powered by a proven indicator component: RSI, Stochastic, EMA trend strength, and momentum slopes.Together, they light up your chart with buy/sell signals only when technical confluence aligns — like the diyas of Diwali shining in harmony.
💡 Core Concept
The indicator computes a composite score (–9 to +9) by evaluating seven key parameters:
| # | Diya | Logic | Interpretation |
| 1 | RSI | Overbought / Oversold | Short-term momentum exhaustion |
| 2 | Stochastic | Direction & zones | Confirmation of RSI |
| 3 | Price vs EMA20 | Position of price | Near-term trend bias |
| 4 | EMA20 Slope | Short-term momentum | Strength confirmation |
| 5 | EMA50 Slope | Mid-term trend | Trend stability |
| 6 | EMA100 Slope | Medium-term sentiment | Institutional bias |
| 7 | EMA200 Slope | Long-term sentiment | Market direction baseline |
The total of these 7 diyas creates a signal matrix that dynamically adapts to trend conditions.
⚙️ Inputs & Configuration
| RSI Length | 14 | Standard RSI window |
| Stochastic Length | 14 | Measures momentum oscillation |
| EMA Periods | 20, 50, 100, 200 | Multi-layer trend structure |
| Overbought / Oversold Zones | 70 / 30 | Configurable thresholds |
| Show Buy/Sell Labels | ✅ | Toggle signal markers |
| Show Banner | ✅ | Festive Diwali header with fireworks |
| Twinkle Interval | 10 bars | Animation timing |
| Fireworks Count | 18 | Visual celebration intensity |
| Background Opacity | 100% | Style preference |
🧭 Entry & Exit Logic
# ✅ Buy Signal (🪔)
A Buy triggers when:
* The total diya score crosses above zero,
* And at least four of seven components turn bullish.
This indicates that short-term oscillators, price action, and moving averages are all turning in unison — a strong entry zone after a pullback.
# 🔥 Sell Signal (🔥)
A Sell triggers when:
* The total diya score crosses below zero,
* And multiple slopes or price conditions flip bearish.
This flags weakening momentum and possible trend exhaustion.
# 💬 Suggested Usage
* Works beautifully on 5-min to 1-hour charts.
* Best when used with trend confirmation tools (volume, price structure).
* Avoid entering trades when signals flip rapidly within narrow ranges (sideways zones).
🧪 Mathematical Formulae
1. RSI Bucket (p₁):
p₁ =
2 if RSI < Very Oversold
1 if RSI < Oversold
0 if neutral
-1 if RSI > Overbought
-2 if RSI > Very Overbought
2. Stochastic Bucket (p₂): Similar to RSI bucketing.
3. Price vs EMA20 (p₃):
p₃ = sign(close - EMA20)
4–7. Slope Sign (EMA20, 50, 100, 200):
p₄₋₇ = sign(EMA - EMA )
Total Score = Σ(p₁…p₇)
→ Crossover(total_score, 0) → Buy Signal
→ Crossunder(total_score, 0) → Sell Signal
📊 Why It’s Not Just a Mash-Up
Diwali Lights Pro uses:
* A unified scoring engine with weighted logic rather than conflicting triggers.
* Each component (diya) contributes equally, creating a normalized sentiment index.
* Smart signal filtering prevents repetitive false flips by enforcing trend alignment across multiple time frames.
* A dynamic, responsive structure optimized for clarity and minimal repainting.
🎆 Unique Add-Ons
* Top-Right Diwali Banner: Festive “Happy Diwali” with animated fireworks 🎇 and diyas 🪔.
* Signal Filtering: Reduces noise in volatile ranges.
* EMA Cloud Context: Visual clarity of multi-layer trend zones.
* Optional Light Mode: Change fireworks opacity for a subtle or bright effect.
📘 FAQ
Q1: Does this repaint?
No — it uses confirmed values (RSI, Stochastic, EMA slopes). Signals appear only after the bar closes.
Q2: Which timeframes work best?
Between 5m and 1h, depending on your strategy.
Use higher EMAs for swing setups.
Q3: Can I use it with alerts?
Yes, both Buy and Sell triggers come with built-in `alertcondition()` for instant notifications.
Q4: Can it be combined with other indicators?
Absolutely — it pairs well with volume profiles, volatility bands, or order-flow systems.
🪔 Glossary
| Diya | Candle or light — here, each diya = one technical indicator |
| EMA | Exponential Moving Average — measures smoothed trend bias |
| RSI | Relative Strength Index — momentum overbought/oversold oscillator |
| Stochastic | Momentum oscillator measuring closing levels relative to highs/lows |
| Slope Sign | Direction of EMA movement — rising or falling |
| Signal Matrix | The combined system of all seven diyas generating a unified score |
🧭 Final Note
> *Diwali Lights Pro* is not just a trading tool — it’s a visual celebration of confluence and discipline.
> When the diyas align, trends shine. Use it to trade in harmony with light, not against it. 🌟
⚠️ Disclaimer
This script is provided for educational purposes only.
Past performance does not guarantee future results.
Trading involves risk, and users should exercise caution and use proper risk management when applying this strategy.
Lorentzian Harmonic Flow - Temporal Market Dynamic Lorentzian Harmonic Flow - Temporal Market Dynamic (⚡LHF)
By: DskyzInvestments
What this is
LHF Pro is a research‑grade analytical instrument that models market time as a compressible medium , extracts directional flow in curved time using heavy‑tailed kernels, and consults a history‑based memory bank for context before synthesizing a final, bounded probabilistic score . It is not a mashup; each subsystem is mathematically coupled to a single clock (time dilation via gamma) and a single lens (Lorentzian heavy‑tailed weighting). This script is dense in logic (and therefore heavy) because it prioritizes rigor, interpretability, and visual clarity.
Intended use
Education and research. This tool expresses state recognition and regime context—not guarantees. It does not place orders. It is fully functional as published and contains no placeholders. Nothing herein is financial advice.
Why this is original and useful
Curved time: Markets do not move at a constant pace. LHF Pro computes a Lorentz‑style gamma (γ) from relative speed so its analytical windows contract when the tape accelerates and relax when it slows.
Heavy‑tailed lens: Lorentzian kernels weight information with fat tails to respect rare but consequential extremes (unlike Gaussian decay).
Memory of regimes: A K‑nearest‑neighbors engine works in a multi‑feature space using Lorentz kernels per dimension and exponential age fade , returning a memory bias (directional expectation) and assurance (confidence mass).
One ecosystem: Squeeze, TCI, flow, acceleration, and memory live on the same clock and blend into a single final_score —visualized and documented on the dashboard.
Cognitive map: A 2D heat map projects memory resonance by age and flow regime, making “where the past is speaking” visible.
Shadow portfolio metaphor: Neighbor outcomes act like tiny hypothetical positions whose weighted average forms an educational pressure gauge (no execution, purely didactic).
Mathematical framework (full transparency)
1) Returns, volatility, and speed‑of‑market
Log return: rₜ = ln(closeₜ / closeₜ₋₁)
Realized vol: rv = stdev(r, vol_len); vol‑of‑vol: burst = |rv − rv |
Speed‑of‑market (analog to c): c = c_multiplier × (EMA(rv) + 0.5 × EMA(burst) + ε)
2) Trend velocity and Lorentz gamma (time dilation)
Trend velocity: v = |close − close | / (vel_len × ATR)
Relative speed: v_rel = v / c
Gamma: γ = 1 / √(1 − v_rel²), stabilized by caps (e.g., ≤10)
Interpretation: γ > 1 compresses market time → use shorter effective windows.
3) Adaptive temporal scale
Adaptive length: L = base_len / γ^power (bounded for safety)
Harmonic horizons: Lₛ = L × short_ratio, Lₘ = L × mid_ratio, Lₗ = L × long_ratio
4) Lorentzian smoothing and Harmonic Flow
Kernel weight per lag i: wᵢ = 1 / (1 + (d/γ)²), d = i/L
Horizon baselines: lw_h = Σ wᵢ·price / Σ wᵢ
Z‑deviation: z_h = (close − lw_h)/ATR
Harmonic Flow (HFL): HFL = (w_short·zₛ + w_mid·zₘ + w_long·zₗ) / (w_short + w_mid + w_long)
5) Flow kinematics
Velocity: HFL_vel = HFL − HFL
Acceleration (curvature): HFL_acc = HFL − 2·HFL + HFL
6) Squeeze and temporal compression
Bollinger width vs Keltner width using L
Squeeze: BB_width < KC_width × squeeze_mult
Temporal Compression Index: TCI = base_len / L; TCI > 1 ⇒ compressed time
7) Entropy (regime complexity)
Shannon‑inspired proxy on |log returns| with numerical safeguards and smoothing. Higher entropy → more chaotic regime.
8) Memory bank and Lorentzian k‑NN
Feature vector (5D):
Outcomes stored: forward returns at H5, H13, H34
Per‑dimension similarity: k(Δ) = 1 / (1 + Δ²), weighted by user’s feature weights
Age fading: weight_age = mem_fade^age_bars
Neighbor score: sᵢ = similarityᵢ × weight_ageᵢ
Memory bias: mem_bias = Σ sᵢ·outcomeᵢ / Σ sᵢ
Assurance: mem_assurance = Σ sᵢ (confidence mass)
Normalization: mem_bias normalized by ATR and clamped into band
Shadow portfolio metaphor: neighbors behave like micro‑positions; their weighted net forward return becomes a continuous, adaptive expectation.
9) Blended score and breakout proxy
Blend factor: α_mem = 0.45 + 0.15 × (γ − 1)
Final score: final_score = (1−α_mem)·tanh(HFL / (flow_thr·1.5)) + α_mem·tanh(mem_bias_norm)
Breakout probability (bounded): energy = cap(TCI−1) + |HFL_acc|×k + cap(γ−1)×k + cap(mem_assurance)×k; breakout_prob = sigmoid(energy). Caps avoid runaway “100%” readings.
Inputs — every control, purpose, mechanics, and tuning
🔮 Lorentz Core
Auto‑Adapt (Vol/Entropy): On = L responds to γ and entropy (breathes with regime), Off = static testing.
Base Length: Calm‑market anchor horizon. Lower (21–28) for fast tapes; higher (55–89+) for slow.
Velocity Window (vel_len): Bars used in v. Shorter = more reactive γ; longer = steadier.
Volatility Window (vol_len): Bars used for rv/burst (c). Shorter = more sensitive c.
Speed‑of‑Market Multiplier (c_multiplier): Raises/lowers c. Lower values → easier γ spikes (more adaptation). Aim for strong trends to peak around γ ≈ 2–4.
Gamma Compression Power: Exponent of γ in L. <1 softens; >1 amplifies adaptation swings.
Max Kernel Span: Upper bound on smoothing loop (quality vs CPU).
🎼 Harmonic Flow
Short/Mid/Long Horizon Ratios: Partition L into fast/medium/slow views. Smaller short_ratio → faster reaction; larger long_ratio → sturdier bias.
Weights (w_short/w_mid/w_long): Governs HFL blend. Higher w_short → nimble; higher w_long → stable.
📈 Signals
Squeeze Strictness: Threshold for BB1 = compressed (coiled spring); <1 = dilated.
v/c: Relative speed; near 1 denotes extreme pacing. Diagnostic only.
Entropy: Regime complexity; high entropy suggests caution, smaller size, or waiting for order to return.
HFL: Curved‑time directional flow; sign and magnitude are the instantaneous bias.
HFL_acc: Curvature; spikes often accompany regime ignition post‑squeeze.
Mem Bias: Directional expectation from historical analogs (ATR‑normalized, bounded). Aligns or conflicts with HFL.
Assurance: Confidence mass from neighbors; higher → more reliable memory bias.
Squeeze: ON/RELEASE/OFF from BB
Advanced Speedometer Gauge [PhenLabs]Advanced Speedometer Gauge
Version: PineScript™v6
📌 Description
The Advanced Speedometer Gauge is a revolutionary multi-metric visualization tool that consolidates 13 distinct trading indicators into a single, intuitive speedometer display. Instead of cluttering your workspace with multiple oscillators and panels, this gauge provides a unified interface where you can switch between different metrics while maintaining consistent visual interpretation.
Built on PineScript™ v6, the indicator transforms complex technical calculations into an easy-to-read semi-circular gauge with color-coded zones and a precision needle indicator. Each of the 13 available metrics has been carefully normalized to a 0-100 scale, ensuring that whether you’re analyzing RSI, volume trends, or volatility extremes, the visual interpretation remains consistent and intuitive.
The gauge is designed for traders who value efficiency and clarity. By consolidating multiple analytical perspectives into one compact display, you can quickly assess market conditions without the visual noise of traditional multi-indicator setups. All metrics are non-overlapping, meaning each provides unique insights into different aspects of market behavior.
🚀 Points of Innovation
13 selectable metrics covering momentum, volume, volatility, trend, and statistical analysis, all accessible through a single dropdown menu
Universal 0-100 normalization system that standardizes different indicator scales for consistent visual interpretation across all metrics
Semi-circular gauge design with 21 arc segments providing smooth precision and clear visual feedback through color-coded zones
Non-redundant metric selection ensuring each indicator provides unique market insights without analytical overlap
Advanced metrics including MFI (volume-weighted momentum), CCI (statistical deviation), Volatility Rank (extended lookback), Trend Strength (ADX-style), Choppiness Index, Volume Trend, and Price Distance from MA
Flexible positioning system with 5 chart locations, 3 size options, and fully customizable color schemes for optimal workspace integration
🔧 Core Components
Metric Selection Engine: Dropdown interface allowing instant switching between 13 different technical indicators, each with independent parameter controls
Normalization System: All metrics converted to 0-100 scale using indicator-specific algorithms that preserve the statistical significance of each measurement
Semi-Circular Gauge: Visual display using 21 arc segments arranged in curved formation with two-row thickness for enhanced visibility
Color Zone System: Three distinct zones (0-40 green, 40-70 yellow, 70-100 red) providing instant visual feedback on metric extremes
Needle Indicator: Dynamic pointer that positions across the gauge arc based on precise current metric value
Table Implementation: Professional table structure ensuring consistent positioning and rendering across different chart configurations
🔥 Key Features
RSI (Relative Strength Index): Classic momentum oscillator measuring overbought/oversold conditions with adjustable period length (default 14)
Stochastic Oscillator: Compares closing price to price range over specified period with smoothing, ideal for identifying momentum shifts
MFI (Money Flow Index): Volume-weighted RSI that combines price movement with volume to measure buying and selling pressure intensity
CCI (Commodity Channel Index): Measures statistical deviation from average price, normalized from typical -200 to +200 range to 0-100 scale
Williams %R: Alternative overbought/oversold indicator using high-low range analysis, inverted to match 0-100 scale conventions
Volume %: Current volume relative to moving average expressed as percentage, capped at 100 for extreme spikes
Volume Trend: Cumulative directional volume flow showing whether volume is flowing into up moves or down moves over specified period
ATR Percentile: Current Average True Range position within historical range using specified lookback period (default 100 bars)
Volatility Rank: Close-to-close volatility measured against extended historical range (default 252 days), differs from ATR in calculation method
Momentum: Rate of change calculation showing price movement speed, centered at 50 and normalized to 0-100 range
Trend Strength: ADX-style calculation using directional movement to quantify trend intensity regardless of direction
Choppiness Index: Measures market choppiness versus trending behavior, where high values indicate ranging markets and low values indicate strong trends
Price Distance from MA: Measures current price over-extension from moving average using standard deviation calculations
🎨 Visualization
Semi-Circular Arc Display: Curved gauge spanning from 0 (left) to 100 (right) with smooth progression and two-row thickness for visibility
Color-Coded Zones: Green zone (0-40) for low/oversold conditions, yellow zone (40-70) for neutral readings, red zone (70-100) for high/overbought conditions
Needle Indicator: Downward-pointing triangle (▼) positioned precisely at current metric value along the gauge arc
Scale Markers: Vertical line markers at 0, 25, 50, 75, and 100 positions with corresponding numerical labels below
Title Display: Merged cell showing “𓄀 PhenLabs” branding plus currently selected metric name in monospace font
Large Value Display: Current metric value shown with two decimal precision in large text directly below title
Table Structure: Professional table with customizable background color, text color, and transparency for minimal chart obstruction
📖 Usage Guidelines
Metric Selection
Select Metric: Default: RSI | Options: RSI, Stochastic, Volume %, ATR Percentile, Momentum, MFI (Money Flow), CCI (Commodity Channel), Williams %R, Volatility Rank, Trend Strength, Choppiness Index, Volume Trend, Price Distance | Choose the technical indicator you want to display on the gauge based on your current analytical needs
RSI Settings
RSI Length: Default: 14 | Range: 1+ | Controls the lookback period for RSI calculation, shorter periods increase sensitivity to recent price changes
Stochastic Settings
Stochastic Length: Default: 14 | Range: 1+ | Lookback period for stochastic calculation comparing close to high-low range
Stochastic Smooth: Default: 3 | Range: 1+ | Smoothing period applied to raw stochastic value to reduce noise and false signals
Volume Settings
Volume MA Length: Default: 20 | Range: 1+ | Moving average period used to calculate average volume for comparison with current volume
Volume Trend Length: Default: 20 | Range: 5+ | Period for calculating cumulative directional volume flow trend
ATR and Volatility Settings
ATR Length: Default: 14 | Range: 1+ | Period for Average True Range calculation used in ATR Percentile metric
ATR Percentile Lookback: Default: 100 | Range: 20+ | Historical range used to determine current ATR position as percentile
Volatility Rank Lookback (Days): Default: 252 | Range: 50+ | Extended lookback period for Volatility Rank metric using close-to-close volatility
Momentum and Trend Settings
Momentum Length: Default: 10 | Range: 1+ | Lookback period for rate of change calculation in Momentum metric
Trend Strength Length: Default: 20 | Range: 5+ | Period for directional movement calculations in ADX-style Trend Strength metric
Advanced Metric Settings
MFI Length: Default: 14 | Range: 1+ | Lookback period for Money Flow Index calculation combining price and volume
CCI Length: Default: 20 | Range: 1+ | Period for Commodity Channel Index statistical deviation calculation
Williams %R Length: Default: 14 | Range: 1+ | Lookback period for Williams %R high-low range analysis
Choppiness Index Length: Default: 14 | Range: 5+ | Period for calculating market choppiness versus trending behavior
Price Distance MA Length: Default: 50 | Range: 10+ | Moving average period used for Price Distance standard deviation calculation
Visual Customization
Position: Default: Top Right | Options: Top Left, Top Right, Bottom Left, Bottom Right, Middle Right | Controls gauge placement on chart for optimal workspace organization
Size: Default: Normal | Options: Small, Normal, Large | Adjusts overall gauge dimensions and text size for different monitor resolutions and preferences
Low Zone Color (0-40): Default: Green (#00FF00) | Customize color for low/oversold zone of gauge arc
Medium Zone Color (40-70): Default: Yellow (#FFFF00) | Customize color for neutral/medium zone of gauge arc
High Zone Color (70-100): Default: Red (#FF0000) | Customize color for high/overbought zone of gauge arc
Background Color: Default: Semi-transparent dark gray | Customize gauge background for contrast and chart integration
Text Color: Default: White (#FFFFFF) | Customize all text elements including title, value, and scale labels
✅ Best Use Cases
Quick visual assessment of market conditions when you need instant feedback on whether an asset is in extreme territory across multiple analytical dimensions
Workspace organization for traders who monitor multiple indicators but want to reduce chart clutter and visual complexity
Metric comparison by switching between different indicators while maintaining consistent visual interpretation through the 0-100 normalization
Overbought/oversold identification using RSI, Stochastic, Williams %R, or MFI depending on whether you prefer price-only or volume-weighted analysis
Volume analysis through Volume %, Volume Trend, or MFI to confirm price movements with corresponding volume characteristics
Volatility monitoring using ATR Percentile or Volatility Rank to identify expansion/contraction cycles and adjust position sizing
Trend vs range identification by comparing Trend Strength (high values = trending) against Choppiness Index (high values = ranging)
Statistical over-extension detection using CCI or Price Distance to identify when price has deviated significantly from normal behavior
Multi-timeframe analysis by duplicating the gauge on different timeframe charts to compare metric readings across time horizons
Educational purposes for new traders learning to interpret technical indicators through consistent visual representation
⚠️ Limitations
The gauge displays only one metric at a time, requiring manual switching to compare different indicators rather than simultaneous multi-metric viewing
The 0-100 normalization, while providing consistency, may obscure the raw values and specific nuances of each underlying indicator
Table-based visualization cannot be exported or saved as an image separately from the full chart screenshot
Optimal parameter settings vary by asset type, timeframe, and market conditions, requiring user experimentation for best results
💡 What Makes This Unique
Unified Multi-Metric Interface: The only gauge-style indicator offering 13 distinct metrics through a single interface, eliminating the need for multiple oscillator panels
Non-Overlapping Analytics: Each metric provides genuinely unique insights—MFI combines volume with price, CCI measures statistical deviation, Volatility Rank uses extended lookback, Trend Strength quantifies directional movement, and Choppiness Index measures ranging behavior
Universal Normalization System: All metrics standardized to 0-100 scale using indicator-appropriate algorithms that preserve statistical meaning while enabling consistent visual interpretation
Professional Visual Design: Semi-circular gauge with 21 arc segments, precision needle positioning, color-coded zones, and clean table implementation that maintains clarity across all chart configurations
Extensive Customization: Independent parameter controls for each metric, five position options, three size presets, and full color customization for seamless workspace integration
🔬 How It Works
1. Metric Calculation Phase:
All 13 metrics are calculated simultaneously on every bar using their respective algorithms with user-defined parameters
Each metric applies its own specific calculation method—RSI uses average gains vs losses, Stochastic compares close to high-low range, MFI incorporates typical price and volume, CCI measures deviation from statistical mean, ATR calculates true range, directional indicators measure up/down movement, and statistical metrics analyze price relationships
2. Normalization Process:
Each calculated metric is converted to a standardized 0-100 scale using indicator-appropriate transformations
Some metrics are naturally 0-100 (RSI, Stochastic, MFI, Williams %R), while others require scaling—CCI transforms from ±200 range, Momentum centers around 50, Volume ratio caps at 2x for 100, ATR and Volatility Rank calculate percentile positions, and Price Distance scales by standard deviations
3. Gauge Rendering:
The selected metric’s normalized value determines the needle position across 21 arc segments spanning 0-100
Each arc segment receives its color based on position—segments 0-8 are green zone, segments 9-14 are yellow zone, segments 15-20 are red zone
The needle indicator (▼) appears in row 5 at the column corresponding to the current metric value, providing precise visual feedback
4. Table Construction:
The gauge uses TradingView’s table system with merged cells for title and value display, ensuring consistent positioning regardless of chart configuration
Rows are allocated as follows: Row 0 merged for title, Row 1 merged for large value display, Row 2 for spacing, Rows 3-4 for the semi-circular arc with curved shaping, Row 5 for needle indicator, Row 6 for scale markers, Row 7 for numerical labels at 0/25/50/75/100
All visual elements update on every bar when barstate.islast is true, ensuring real-time accuracy without performance impact
💡 Note:
This indicator is designed for visual analysis and market condition assessment, not as a standalone trading system. For best results, combine gauge readings with price action analysis, support and resistance levels, and broader market context. Parameter optimization is recommended based on your specific trading timeframe and asset class. The gauge works on all timeframes but may require different parameter settings for intraday versus daily/weekly analysis. Consider using multiple instances of the gauge set to different metrics for comprehensive market analysis without switching between settings.
Relative Strength Ratio • Leader Shift Signals## Overview
This indicator computes a **Relative Strength (RS) ratio** between your chart’s symbol and a reference symbol (e.g. BTC or index), then overlays an EMA-based trend filter and detects **RS divergences** via RSI on that ratio. It highlights when your symbol is leading vs lagging, and spots potential turning points via bullish/negative divergences. No alerts are forced, you get visual cues (lines & labels) only.
---
## How It Works
1. **RS Ratio** = (base symbol price) ÷ (reference symbol price).
2. Two EMAs (fast & slow) filter trend context and help identify “leader shifts” (when ratio crosses the fast EMA under trend constraints).
3. **RSI on the ratio** is used to detect divergences. We find swing highs/lows in the *ratio* and compare their RSI values:
* **Bearish RS divergence**: ratio makes a higher high, but RSI makes a lower high
* **Bullish RS divergence**: ratio makes a lower low, but RSI makes a higher low
4. When divergence is confirmed, the script draws connecting lines (and optional markers) on the RS ratio pane to visually flag them.
5. You can customize pivot sensitivity, minimum separation, colors, and toggles for which graphics to show.
---
## Best Usage Suggestions
* Use a **reference symbol** that is meaningfully related (e.g. BTC for altcoins, SPX for equities, or a sector index for a stock). The interpretive power comes from seeing relative strength vs a meaningful peer.
* On **higher timeframes** (4H, daily), divergences tend to carry more weight. On lower intraday charts, tighten pivot settings to avoid noise.
* Prefer divergence signals when the RS ratio is also in a favorable trend (e.g. above its EMA for bullish divergences, below for bearish). Using the trend filter EMAs helps reduce false signals.
* Always confirm divergence signals with **price structure, volume, or other momentum indicators**. Divergence is a warning or a hint—not a standalone trigger.
* Because RSI on ratio is subject to noise, avoid over-tuning pivots too tight; broader pivot widths give more robust divergence lines.
---
## Inputs & Customization
* **Reference Symbol & Timeframe** for ratio comparison
* **Fast EMA / Slow EMA lengths** and slope threshold (trend filter)
* **RSI length** applied to the RS ratio
* **Pivot left / right bars** and **min separation** to define sturdy swings
* **Toggle lines / markers** visibility, and pick colors for divergence, ratio, EMAs
* Optional “shade” or fill modes (if you have them)
---
## Limitations & Disclaimers
* Divergence does **not guarantee** reversals—it often signals **weakening momentum or potential turning zones**, which may not always play out.
* In extremely volatile or fast-moving markets, divergence lines may lag or fail.
* The script relies on historical data (no future lookahead). Because pivots are confirmed after a few bars, some signals show with delay.
* As always: combine with price action, structure, risk management. This is a tool—not a magic eight ball.
---
Adaptive Z-Momentum (AZM) [Blk0ut]Adaptive Z-Momentum (AZM) is a momentum indicator that expresses the normalized deviation of price from a dynamic anchor (VWAP or EMA) in standard-score (z-score) terms, with adaptive “extreme” thresholds, trend sensitivity, and optional regime filtering. The line color, background shading, and labels help you visually discern when momentum is mild, building, or overextended.
---
## Features & Concept
* Computes **z = (price – anchor) / σ**, where the anchor is either Session VWAP (intraday) or EMA (non-intraday).
* Uses exponential moving averages (EWMA) to adaptively estimate the running mean and variance, making the indicator responsive to regime changes.
* Defines an **adaptive extreme threshold** (±z threshold) based on the chosen percentile of |z| over a lookback window (e.g. 90th percentile) — dynamically adjusting to volatility environment.
* Colors the main z-line **differently when inside vs. outside the extreme thresholds**, giving immediate visual feedback.
* Optionally shades the background when momentum is over the extremes (bullish or bearish).
* Supports a **self-tuning mode** (ADX-aware) that tightens or relaxes lookback/smoothing in strong trend vs. chop regimes.
* Regime filtering options (EMA slope or ADX threshold) let you filter signals in trend vs. non-trend markets.
* Plots Δz (the change in z) in various styles to help detect acceleration or deceleration in momentum.
* Adds optional thrust/fade labels to highlight when z crosses ±extreme zones, or when momentum stalls.
---
## How to Use
* Look for **z crossing** above zero (bullish momentum) or below zero (bearish momentum).
* When **z enters the extreme band**, it suggests strong momentum; when it exits, that may indicate exhaustion or reversal.
* Watch **Δz** (momentum acceleration) for clues of weakening or strengthening momentum before z itself reacts.
* Use the **regime filter** to enforce that signals only count in favorable directional markets.
* Customize inputs: lookback window, smoothing length, extreme percentile, ADX/auto settings, colors, etc., to match your trading style and timeframe.
*Use VWAP as the anchor on intraday/session charts — because it resets each session, it highlights deviations from session “fair value” and captures volume-flow bias.
*Use EMA on swing or multi-day charts — it doesn’t reset, so it preserves trend structure and gives a smoother momentum baseline across sessions.
*In trending markets, EMA tends to deliver more reliable momentum extremes; in range or mean-reversion regimes, VWAP often gives more intuitive reversal zones.
---
## Limitations & Disclaimers
* Like all indicators, AZM is **lagging** (though adaptive) and should not be used as a standalone entry/exit trigger — always combine with price action, structure, or confirmation.
* The extreme thresholds are **percentile-based**, meaning in very quiet or very noisy periods, “extreme” may shift rapidly; use your eyes alongside the indicator.
* Because the script uses historical data and smoothing, earlier bars may differ from real-time behavior.
* Past behavior is no guarantee of future performance. Use proper risk management and test ideas on historical data before trading live.
---
## Inputs & Customization
* **Anchor** mode: Session VWAP (intraday) or EMA
* **Lookback window** and **smoothing EMA** for computing z
* **Extreme percentile** (e.g. 90) to define ±z thresholds
* **Auto / ADX-based tuning** to allow dynamic parameter changes in trending vs chop markets
* **Regime filter** (EMA slope or ADX) to restrict signals to trending conditions
* **Color settings** for inside vs outside extremes, background shading, zero line, Δz style, labels, etc.
* **Show/hide labels**, choose Δz style (columns, histogram, line, etc.)
---
## Why It’s Useful
By combining standard-score normalization with adaptive thresholds and regime sensitivity, AZM helps you see **relative momentum extremes** in a way that adjusts to market regime shifts. The dual visual cues (line color + background) reduce ambiguity at a glance.
---
Session-Conditioned Regime ATRWhy this exists
Classic ATR is great—until the open. The first few bars often inherit overnight gaps and 24-hour noise that have nothing to do with the intraday regime you actually trade. That inflates early ATR, scrambles thresholds, and invites hyper-recency bias (“today is crazy!”) when it’s just the open being the open.
This tool was built to:
Separate session reality from 24h noise. Measure volatility only inside your defined session (e.g., NYSE 09:30–16:00 ET).
Judge candles against the current regime, not the last 2–3 bars. A rolling statistic from the last N completed sessions defines what “typical” means right now.
Label “large” and “small” objectively. Bars are colored only when True Range meaningfully departs from the session regime—no gut feel, no open-bar distortion (gap inclusion optional).
Overview
Purpose: objectively identify unusually big or small candles within the active trading session, compared to the recent session regime.
Use cases: volatility filters, entry/exit confirmation, session bias detection, adaptive sizing.
This indicator replaces generic ATR with a session-conditioned, regime-aware measure. It colors candles only when their True Range (TR) is abnormally large/small versus the last N completed sessions of the same session window.
How it works
Session gating: Only bars inside the selected session are evaluated (presets for NYSE, CME RTH, FX NY; custom supported).
Per-bar TR: TR = max(high, prevRef) − min(low, prevRef).
prevRef is the prior close for in-session bars.
First bar of the session can include the overnight gap (optional; default off).
Regime statistic: For any bar in session k, aggregate all in-session TRs from the previous N completed sessions (k−N … k−1), then compute Median (default) or Mean.
Today’s anchor: Running statistic from today’s session start → current bar (for context and the on-chart ratio).
Color logic:
Big if TR ≥ bigMult × RegimeStat
Small if TR ≤ smallMult × RegimeStat
Colored states: big bull, big bear, small bull, small bear.
Non-triggering bars retain the chart’s native colors.
Panel (top-right by default)
Regime ATR (Nd): session-conditioned statistic over the past N completed sessions.
Today ATR (anchored): running statistic for the current session.
Ratio (Today/Regime): intraday volatility vs regime.
Sample size n: number of bars used in the regime calculation.
Inputs
Session Preset: NYSE (09:30–16:00 ET), CME RTH (08:30–15:00 CT), FX NY (08:00–17:00 ET), Custom (session + IANA timezone).
Regime Window: number of completed sessions (default 5).
Statistic: Median (robust) or Mean.
Include Open Gap: include overnight gap in the first in-session bar’s TR (default off).
Big/Small thresholds: multipliers relative to RegimeStat (defaults: Big=1.5×, Small=0.67×).
Colors: four independent colors for big/small × bull/bear.
Panel position & text size.
Hidden outputs: expose RegimeStat, TodayStat, Ratio, and Z-score to other scripts.
Alerts
RegimeATR: BIG bar — triggers when a bar meets the “Big” condition.
RegimeATR: SMALL bar — triggers when a bar meets the “Small” condition.
Hidden outputs (for strategies/screeners)
RegimeATR_stat, TodayATR_stat, Today_vs_Regime_Ratio, BarTR_Zscore.
Notes & limitations
No look-ahead: calculations only use information available up to that bar. Historical colors reflect what would have been known then.
Warm-up: colors begin once there are at least N completed sessions; before that, regime is undefined by design.
Changing inputs (session window, multipliers, median/mean, gap toggle) recomputes the full series using the same rolling regime logic per bar.
Designed for standard candles. Styling respects existing chart colors when no condition triggers.
Practical tips
For a broader or tighter notion of “unusual,” adjust Big/Small multipliers.
Prefer Median in markets prone to outliers; use Mean if you want Z-score alignment with the panel’s regime mean/std.
Use the Ratio readout to spot compression/expansion days quickly (e.g., <0.7× = compressed session, >1.3× = expanded).
Roadmap
More session presets:
24h continuous (crypto, index CFDs).
23h/Globex futures (CME ETH with a 60-minute maintenance break).
Regional equities (LSE, Xetra, TSE), Asia/Europe/NY overlaps for FX.
Half-day/holiday templates and dynamic calendars.
Multi-regime comparison: track multiple overlapping regimes (e.g., RTH vs ETH for futures) and show separate stats/ratios.
Robust stats options: trimmed mean, MAD/Huber alternatives; optional percentile thresholds instead of fixed multipliers.
Subpanel visuals: rolling TodayATR and Ratio plots; optional Z-score ribbon.
Screener/strategy hooks: export boolean series for BIG/SMALL, plus a lightweight strategy template for backtesting entries/exits conditioned on regime volatility.
Performance/QOL: per-symbol presets, smarter warm-up, and finer control over sample caps for ultra-low TF charts.
Changelog
v0.9b (Beta)
Session presets (NYSE/CME RTH/FX NY/Custom) with timezone handling.
Panel enhancements: ratio + sample size n.
Four-state bar coloring (big/small × bull/bear).
Alerts for BIG/SMALL bars.
Hidden Z-score stream for downstream use.
Gap-in-TR toggle for the first in-session bar.
Disclaimer
For educational purposes only. Not investment advice. Validate thresholds and session settings across symbols/timeframes before live use.
Aggression Bulbs v3.1 (Sessions + Bias, fixed)EYLONAggression Bulbs v3.2 (Sessions + Bias + Volume Surge)
This indicator highlights aggressive buy and sell activity during the London and New York sessions, using volume spikes and candle body dominance to detect institutional momentum.
⚙️ Main Logic
Compares each candle’s volume vs average volume (Volume Surge).
Checks body size vs full candle range to detect strong directional moves.
Uses an EMA bias filter to align signals with the current trend.
Displays green bubbles for aggressive buyers and red bubbles for aggressive sellers.
🕐 Sessions
London: 08:00–12:59 UTC+1
New York: 14:00–18:59 UTC+1
(Backgrounds: Yellow = London, Orange = New York)
📊 How to Read
🟢 Green bubble below bar → Aggressive BUY candle (strong demand).
🔴 Red bubble above bar → Aggressive SELL candle (strong supply).
Bubble size = relative strength (volume × candle dominance).
Use in confluence with key POI zones, volume profile, or delta clusters.
⚠️ Tips
Use on 1m–15m charts for scalping or intraday analysis.
Combine with your session bias or FVG zones for higher accuracy.
Set alerts when score ≥ threshold to catch early momentum.
NS ND - EVR - Daily Bias - TRFxVolume & Price Action Signals
What It Does
Combines three proven trading methodologies: Effort vs Result (EVR), No Supply/No Demand (NS/ND), and Daily Bias tracking for intraday traders.
Features
Effort vs Result (EVR)
- **Bullish**: Green triangle below bar when price sweeps previous low with high volume and significant wick
- **Bearish**: Red triangle above bar when price sweeps previous high with high volume and significant wick
- Identifies potential reversals where volume doesn't match price movement
No Supply / No Demand (NS/ND)
- **No Demand (Red dot)**: Up-candle with declining volume - buyers weakening
- **No Supply (Green dot)**: Down-candle with declining volume - sellers weakening
- Grey dots = unconfirmed, colored dots = confirmed within lookahead period
- Based on Volume Spread Analysis (VSA) principles
Daily Bias Label
Top-right corner shows market direction:
- **BULLISH ↑** - Closed above Previous Day High
- **BEARISH ↓** - Closed below Previous Day Low
- **BULLISH/BEARISH REV** - Swept level but closed back inside
- **RANGE ↔** - Trading between PDH/PDL
## Settings
- **EVR**: Toggle on/off, volume multiplier, wick %, inside bars, transparency
- **NS/ND**: Toggle on/off, lookahead bars (default: 10)
- **Daily Bias**: Toggle label display
## Best For
✓ Intraday trading (1m-1h timeframes)
✓ Reversal setups
✓ Volume analysis
✓ Confluence trading (all signals align)
How to Use
1. Enable components you want (all can be toggled independently)
2. Trade EVR signals in direction of Daily Bias
3. Look for NS/ND confirmation at key levels
4. Wait for colored dots (confirmed signals) over grey (unconfirmed)
**Note**: Works on intraday timeframes only. NS/ND signals may repaint during confirmation period.
Reversal Nexus Pro Suite — Smart Scalper/Swing Trader/Hybrid 📝 Description
The Reversal Suite (5–15m) is a dynamic price-action-driven indicator built for scalpers and intraday traders who want to catch high-probability reversals with precision.
This system combines SFP (Swing Failure Patterns), Volume Climax filters, EMA bias, and momentum confirmation logic — all customizable to match your personal trading style.
The default configuration is tuned for NASDAQ futures (NQ1!) and similar indices on 5–15-minute charts, but it can adapt seamlessly to crypto, forex, and equities.
⚙️ How It Works
The indicator looks for exhaustion points in price where:
Volume Climax confirms liquidity sweeps,
EMA bias determines directional filters (single or dual-EMA),
Reclaim and rejection mechanics confirm structure shifts,
Momentum thrust ensures strength on reversal confirmation.
Each setup requires multi-factor alignment to reduce noise and increase signal precision.
🧩 Default Custom Settings (Recommended Start)
Setting Value Description
Mode Custom Enables full manual control
Signals must align within N bars 6 Forces confluence across recent bars
TP1 / TP2 (R-Multiples) 1.5 / 2.5 Default reward zones
RSI Divergence Enabled Adds secondary reversal confirmation
Volume Climax Enabled Detects high-volume exhaustion
Vol SMA Length 21 Volume baseline calculation
Climax ≥ k × SMA 7 Strength multiplier for volume spikes
EMA Length 200 Trend bias reference
Bias Both Allows both long and short setups
Dual EMA Bias Enabled Uses fast (21) vs slow (100) bias tracking
Min Distance from EMA Bias 2.55% Filter to avoid signals too close to MAs
Reclaim Buffer After Sweep 0.22% Ensures valid break-and-reclaim setups
Max Bars for Retest 1 Tight retest condition
Momentum Thrust Confirm Enabled Ensures volume and price thrust
Body ≥ ATR -6 Controls candle thrust sizing
TR SMA Length 20 Measures dynamic volatility
Body ≥ k × TR-SMA -4.4 Confirms structure-based rejection
Opposite-Signal Exit Enabled Auto-clears opposite signals
Opposite Signal Window 5 bars Short-term conflict filter
Swing Lookback (SFP) 2 Finds recent liquidity highs/lows
Cooldown Bars After Signal 8 Prevents over-triggering
🟢 Inputs are fully adjustable, so traders can optimize for:
Scalping (lower EMA, smaller swing lookback)
Swing trading (higher EMA, larger retest window)
Aggressive vs conservative confirmations
🧭 Recommended Use
Works best on 5m–15m timeframes
Pair with VWAP or EMA cloud overlays for directional context
Use Trend Guard to align only with higher-timeframe trend
Ideal for indices, forex majors, and large-cap stocks
🚀 Highlights
✅ Smart confluence-based reversal detection
✅ Built-in retest and rejection logic
✅ Dual EMA and volume climax filters
✅ Customizable momentum thrust confirmation
✅ Optimized for scalpers and intraday swing traders
🧱 Suggested Layout
Chart type: Candlestick
Timeframe: 5m or 15m
Overlay: VWAP / EMA Cloud / ORB Zone
Optional filters: ATR Bands, Volume Profile (VPVR), Session Boxes
⚠️ Disclaimer
The Reversal Nexus Pro indicator is provided for educational and informational purposes only. It is not financial advice and should not be interpreted as a recommendation to buy, sell, or trade any financial instrument.
Trading involves significant risk and may not be suitable for all investors. Past performance does not guarantee future results. Always perform your own analysis and use proper risk management before placing any trades.
The author of this script is not responsible for any financial losses or decisions made based on the use of this tool.
By using this indicator, you acknowledge that you understand these terms and accept full responsibility for your own trading results.
© 2025. All rights reserved. Redistribution or resale of this indicator, in full or in part, is strictly prohibited without the author’s written consent.
Quant Trend + Donchian (Educational, Public-Safe)What this does
Educational, public-safe visualization of a quant regime model:
• Trend : EMA(64) vs EMA(256) (EWMAC proxy)
• Breakout : Donchian channel (200)
• Volatility-awareness : internal z-scores (not plotted) for concept clarity
Why it’s useful
• Shows when trend & breakout align (clean regimes) vs conflict (chop)
• Helps explain why volatility-aware systems size up in smooth trends and scale down in noise
How to read it
• EMA64 above EMA256 with price near/above Donchian high → trend-following alignment
• EMA64 below EMA256 with price near/below Donchian low → bearish alignment
• Inside channel with EMAs tangled → range/chop risk
Notes
• Indicator is educational only (no orders).
• Built entirely with TradingView built-ins.
• For consistent visuals: enable “Indicator values on price scale” and disable “Scale price chart only” in Settings → Scales .
Volume Aggregated Spot & Futures -- Crypto (by plyst & more)📊 Volume Aggregated Spot & Futures - Enhanced Edition
🎯 Overview
Advanced volume aggregation indicator that combines spot and perpetual futures volume across the top 10 cryptocurrency exchanges. This enhanced version builds upon the original work by @HALDRO Project with optimized calculations and expanded functionality.
✨ Key Features
- 📈 Real-time aggregated volume from 10 major exchanges (Binance, Bybit, OKX, Coinbase, Bitget, KuCoin, Kraken, MEXC, Gate.io, HTX)
- 🔄 Multiple visualization modes: Volume, Delta, Cumulative Delta, Spot vs Perp analysis, Liquidations, OBV, and MFI
- 💱 Multi-currency support: Display volume in COIN, USD, or EUR
- 🎨 Clean, single-color bar chart showing total cumulative volume
- 📊 Multiple calculation methods: SUM, AVG, MEDIAN, VARIANCE
- 🎯 Separate spot (USDT, USD, USDC, etc.) and perpetual futures (.P contracts) tracking
🔧 Technical Improvements
✓ Corrected MFI formula for accurate money flow calculations
✓ Optimized volume aggregation logic with proper NA handling
✓ Support for 10 exchanges (up from 9)
✓ Streamlined codebase for better performance
✓ Updated perpetual contract naming conventions (.P format)
📖 Usage
Perfect for analyzing total market volume, identifying liquidation events, tracking buyer/seller pressure through delta analysis, and understanding the spot vs futures market dynamics.
🙏 Credits
Original concept and framework by @HALDRO Project. This version includes mathematical corrections, code optimizations, and expanded exchange support.
⚠️ Note
Aggregated volume is calculated from external exchange data using request.security(). Ensure your plan supports the necessary security calls for optimal performance.
Round Number Analyzer v3Round Number Analyzer v3 is an indicator designed to analyze how price interacts with round number levels (levels spaced at fixed intervals in points or pips).
The indicator does not generate entry/exit signals, but provides detailed statistics to better understand market dynamics around these key levels.
✨ Key Features
Cross Counting: detects every time the price crosses a round number level (up = Long, down = Short).
Continuations & Reversals: classifies each cross as:
Continuation: the move continues in the same direction as the previous sequence.
Reversal: the move changes direction compared to the previous sequence.
Sequence Classification (L1…L5+): each level is labelled based on its position within the consecutive cross sequence:
L1 = first level of the sequence,
L2 = second consecutive,
…
L5+ = fifth or higher.
Comprehensive Stats Table (top right corner):
Total crosses (Long, Short, Totals).
Total continuations + breakdown by L1…L5+.
Total reversals + breakdown by L1…L5+.
Percentages calculated against the proper denominator, displayed directly inside the cells next to the absolute values.
Date range of analysis (user-defined).
Customizable Step: Works in both points and pips, making the indicator suitable for indices and forex.
⚙️ Main Inputs
Start date / End date → sets the analysis period.
Step mode → Points or Pips.
Step value → distance between round levels.
Pip size → pip size (default = 0.0001, typical for forex).
📈 How to Interpret
A high continuation percentage after L1–L2 suggests the market tends to extend multiple times beyond the first breakout levels.
Higher reversal percentages at advanced levels (L4–L5+) may signal trend exhaustion.
The analysis helps estimate the probability of continuation or reversal depending on how many consecutive levels have already been crossed.
🔎 Practical Applications
Support for breakout or mean-reversion strategies.
Comparative analysis across different markets (e.g. indices vs forex) or different time periods.
📝 Notes
The indicator is timeframe-robust, as it accounts for multiple steps within the same candle, ensuring results do not depend on the selected timeframe (except for TradingView’s historical data limits).
It does not provide automatic trading signals, but serves as a quantitative analysis tool to refine your strategies.
---
Round Number Analyzer v3 è un indicatore pensato per analizzare come il prezzo interagisce con i livelli di round number (livelli a distanza fissa in punti o pips).
L’indicatore non genera segnali di ingresso/uscita, ma fornisce statistiche dettagliate utili per comprendere la dinamica del mercato attorno a questi livelli.
✨ Funzionalità principali
Conteggio dei Cross: rileva ogni volta che il prezzo attraversa un livello round (verso l’alto = Long, verso il basso = Short).
Continuations & Reversals: classifica ogni attraversamento come:
Continuation: il movimento prosegue nella stessa direzione della sequenza precedente.
Reversal: il movimento inverte la direzione rispetto alla sequenza precedente.
Classificazione per sequenza (L1…L5+): ogni livello è etichettato in base alla sua posizione nella sequenza di cross consecutivi:
L1 = primo livello della sequenza,
L2 = secondo consecutivo,
…
L5+ = quinto o superiore.
Statistiche complete in tabella (in alto a destra):
Cross totali (Long, Short, Totals).
Continuations totali + breakdown per L1…L5+.
Reversals totali + breakdown per L1…L5+.
Percentuali calcolate sul denominatore corretto, mostrate direttamente dentro le celle accanto ai valori assoluti.
Date range di analisi (impostabile dall’utente).
Step personalizzabile: puoi lavorare sia in punti che in pips, così l’indicatore è adatto sia per indici che per forex.
⚙️ Input principali
Start date / End date → imposta l’intervallo temporale di analisi.
Step mode → punti o pips.
Step value → ampiezza tra i livelli round.
Pip size → dimensione del pip (default = 0.0001, tipico per il forex).
📈 Come interpretarlo
Una percentuale di continuation molto alta dopo L1–L2 indica che il mercato tende a proseguire più volte oltre i primi livelli di breakout.
Percentuali di reversal più elevate nei livelli avanzati (L4–L5+) possono suggerire esaurimento della spinta.
L’analisi permette di stimare la probabilità che un movimento in corso continui o si inverta in base a quanti livelli sono già stati attraversati consecutivamente.
🔎 Applicazioni pratiche
Supporto per strategie di breakout o mean reversion.
Analisi comparativa tra mercati (es. indici vs forex) o tra periodi temporali diversi.
📝 Note
L’indicatore è timeframe-robust: il conteggio tiene conto di multipli step dentro la stessa candela, così i risultati non dipendono dal timeframe scelto (salvo i limiti di caricamento storico di TradingView).
Non fornisce segnali operativi automatici, ma è un tool di analisi quantitativa per affinare le proprie strategie.
Volume Based Sampling [BackQuant]Volume Based Sampling
What this does
This indicator converts the usual time-based stream of candles into an event-based stream of “synthetic” bars that are created only when enough trading activity has occurred . You choose the activity definition:
Volume bars : create a new synthetic bar whenever the cumulative number of shares/contracts traded reaches a threshold.
Dollar bars : create a new synthetic bar whenever the cumulative traded dollar value (price × volume) reaches a threshold.
The script then keeps an internal ledger of these synthetic opens, highs, lows, closes, and volumes, and can display them as candles, plot a moving average calculated over the synthetic closes, mark each time a new sample is formed, and optionally overlay the native time-bars for comparison.
Why event-based sampling matters
Markets do not release information on a clock: activity clusters during news, opens/closes, and liquidity shocks. Event-based bars normalize for that heteroskedastic arrival of information: during active periods you get more bars (finer resolution); during quiet periods you get fewer bars (coarser resolution). Research shows this can reduce microstructure pathologies and produce series that are closer to i.i.d. and more suitable for statistical modeling and ML. In particular:
Volume and dollar bars are a common event-time alternative to time bars in quantitative research and are discussed extensively in Advances in Financial Machine Learning (AFML). These bars aim to homogenize information flow by sampling on traded size or value rather than elapsed seconds.
The Volume Clock perspective models market activity in “volume time,” showing that many intraday phenomena (volatility, liquidity shocks) are better explained when time is measured by traded volume instead of seconds.
Related market microstructure work on flow toxicity and liquidity highlights that the risk dealers face is tied to information intensity of order flow, again arguing for activity-based clocks.
How the indicator works (plain English)
Choose your bucket type
Volume : accumulate volume until it meets a threshold.
Dollar Bars : accumulate close × volume until it meets a dollar threshold.
Pick the threshold rule
Dynamic threshold : by default, the script computes a rolling statistic (mean or median) of recent activity to set the next bucket size. This adapts bar size to changing conditions (e.g., busier sessions produce more frequent synthetic bars).
Fixed threshold : optionally override with a constant target (e.g., exactly 100,000 contracts per synthetic bar, or $5,000,000 per dollar bar).
Build the synthetic bar
While a bucket fills, the script tracks:
o_s: first price of the bucket (synthetic open)
h_s: running maximum price (synthetic high)
l_s: running minimum price (synthetic low)
c_s: last price seen (synthetic close)
v_s: cumulative native volume inside the bucket
d_samples: number of native bars consumed to complete the bucket (a proxy for “how fast” the threshold filled)
Emit a new sample
Once the bucket meets/exceeds the threshold, a new synthetic bar is finalized and stored. If overflow occurs (e.g., a single native bar pushes you past the threshold by a lot), the code will emit multiple synthetic samples to account for the extra activity.
Maintain a rolling history efficiently
A ring buffer can overwrite the oldest samples when you hit your Max Stored Samples cap, keeping memory usage stable.
Compute synthetic-space statistics
The script computes an SMA over the last N synthetic closes and basic descriptors like average bars per synthetic sample, mean and standard deviation of synthetic returns, and more. These are all in event time , not clock time.
Inputs and options you will actually use
Data Settings
Sampling Method : Volume or Dollar Bars.
Rolling Lookback : window used to estimate the dynamic threshold from recent activity.
Filter : Mean or Median for the dynamic threshold. Median is more robust to spikes.
Use Fixed? / Fixed Threshold : override dynamic sizing with a constant target.
Max Stored Samples : cap on synthetic history to keep performance snappy.
Use Ring Buffer : turn on to recycle storage when at capacity.
Indicator Settings
SMA over last N samples : moving average in synthetic space . Because its index is sample count, not minutes, it adapts naturally: more updates in busy regimes, fewer in quiet regimes.
Visuals
Show Synthetic Bars : plot the synthetic OHLC candles.
Candle Color Mode :
Green/Red: directional close vs open
Volume Intensity: opacity scales with synthetic size
Neutral: single color
Adaptive: graded by how large the bucket was relative to threshold
Mark new samples : drop a small marker whenever a new synthetic bar prints.
Comparison & Research
Show Time Bars : overlay the native time-based candles to visually compare how the two sampling schemes differ.
How to read it, step by step
Turn on “Synthetic Bars” and optionally overlay “Time Bars.” You will see that during high-activity bursts, synthetic bars print much faster than time bars.
Watch the synthetic SMA . Crosses in synthetic space can be more meaningful because each update represents a roughly comparable amount of traded information.
Use the “Avg Bars per Sample” in the info table as a regime signal. Falling average bars per sample means activity is clustering, often coincident with higher realized volatility.
Try Dollar Bars when price varies a lot but share count does not; they normalize by dollar risk taken in each sample. Volume Bars are ideal when share count is a better proxy for information flow in your instrument.
Quant finance background and citations
Event time vs. clock time : Easley, López de Prado, and O’Hara advocate measuring intraday phenomena on a volume clock to better align sampling with information arrival. This framing helps explain volatility bursts and liquidity droughts and motivates volume-based bars.
Flow toxicity and dealer risk : The same authors show how adverse selection risk changes with the intensity and informativeness of order flow, further supporting activity-based clocks for modeling and risk management.
AFML framework : In Advances in Financial Machine Learning , event-driven bars such as volume, dollar, and imbalance bars are presented as superior sampling units for many ML tasks, yielding more stationary features and fewer microstructure distortions than fixed time bars. ( Alpaca )
Practical use cases
1) Regime-aware moving averages
The synthetic SMA in event time is not fooled by quiet periods: if nothing of consequence trades, it barely updates. This can make trend filters less sensitive to calendar drift and more sensitive to true participation.
2) Breakout logic on “equal-information” samples
The script exposes simple alerts such as breakout above/below the synthetic SMA . Because each bar approximates a constant amount of activity, breakouts are conditioned on comparable informational mass, not arbitrary time buckets.
3) Volatility-adaptive backtests
If you use synthetic bars as your base data stream, most signal rules become self-paced : entry and exit opportunities accelerate in fast markets and slow down in quiet regimes, which often improves the realism of slippage and fill modeling in research pipelines (pair this indicator with strategy code downstream).
4) Regime diagnostics
Avg Bars per Sample trending down: activity is dense; expect larger realized ranges.
Return StdDev (synthetic) rising: noise or trend acceleration in event time; re-tune risk.
Interpreting the info panel
Method : your sampling choice and current threshold.
Total Samples : how many synthetic bars have been formed.
Current Vol/Dollar : how much of the next bucket is already filled.
Bars in Bucket : native bars consumed so far in the current bucket.
Avg Bars/Sample : lower means higher trading intensity.
Avg Return / Return StdDev : return stats computed over synthetic closes .
Research directions you can build from here
Imbalance and run bars
Extend beyond pure volume or dollar thresholds to imbalance bars that trigger on directional order flow imbalance (e.g., buy volume minus sell volume), as discussed in the AFML ecosystem. These often further homogenize distributional properties used in ML. alpaca.markets
Volume-time indicators
Re-compute classical indicators (RSI, MACD, Bollinger) on the synthetic stream. The premise is that signals are updated by traded information , not seconds, which may stabilize indicator behavior in heteroskedastic regimes.
Liquidity and toxicity overlays
Combine synthetic bars with proxies of flow toxicity to anticipate spread widening or volatility clustering. For instance, tag synthetic bars that surpass multiples of the threshold and test whether subsequent realized volatility is elevated.
Dollar-risk parity sampling for portfolios
Use dollar bars to align samples across assets by notional risk, enabling cleaner cross-asset features and comparability in multi-asset models (e.g., correlation studies, regime clustering). AFML discusses the benefits of event-driven sampling for cross-sectional ML feature engineering.
Microstructure feature set
Compute duration in native bars per synthetic sample , range per sample , and volume multiple of threshold as inputs to state classifiers or regime HMMs . These features are inherently activity-aware and often predictive of short-horizon volatility and trend persistence per the event-time literature. ( Alpaca )
Tips for clean usage
Start with dynamic thresholds using Median over a sensible lookback to avoid outlier distortion, then move to Fixed thresholds when you know your instrument’s typical activity scale.
Compare time bars vs synthetic bars side by side to develop intuition for how your market “breathes” in activity time.
Keep Max Stored Samples reasonable for performance; the ring buffer avoids memory creep while preserving a rolling window of research-grade data.