Volume Flow and Delta Analysis [MarkitTick]💡This comprehensive technical indicator is designed for traders who require a granular view of market participation that goes beyond standard volume bars. By leveraging the advanced "Intrabar Analysis" capabilities of Pine Script, this tool deconstructs every single price candle on your chart into its constituent lower-timeframe components. It effectively "X-rays" the market to determine whether the volume inside a bar was primarily driven by aggressive buying or aggressive selling, providing a definitive read on market sentiment and institutional control.
● Originality and Utility
Most standard volume indicators display a simple aggregate total—a single block of volume that fails to distinguish between buying pressure and selling pressure. A high-volume candle could represent a strong breakout, or it could represent a "selling tail" where buyers were absorbed. This script solves that ambiguity. It is not a standard oscillator; it is a quantitative flow analyzer. It reconstructs the "Delta" (the net difference between buying and selling volume) by querying lower-timeframe data (e.g., analyzing 1-minute data inside a 60-minute bar). This allows traders to spot "Hidden Accumulation" (where price is flat but Delta is rising) or "Exhaustion" (where price rises but Delta falls), offering a significant edge in identifying reversals and trend continuations.
● Methodology
The script operates through a sophisticated three-stage quantitative process:
• Intrabar Data Acquisition
The script uses the security_lower_tf function to fetch granular price and volume data from a lower timeframe (automatically detected or user-defined). This allows the script to see what happened "inside" the current chart's bar.
• Directional Flow Distribution
For every lower-timeframe interval, the script assigns volume to either "Bullish Flow" or "Bearish Flow." If the close is higher than the open on the lower timeframe, the volume is credited to buyers. If the close is lower, it is credited to sellers. This logic is far more accurate than simple "Up/Down" tick data, as it respects price action.
• Statistical Volatility Normalization
To filter out noise, the script calculates a dynamic baseline using an Exponential Moving Average (EMA) of the absolute Delta values. It then compares the current bar's Delta against this baseline. This generates an "Intensity Score" (measured in Sigma or Standard Deviations). This ensures that a "High Volume" signal is relevant to the current market volatility, rather than relying on fixed, arbitrary thresholds.
● How to Use
This tool is designed to be a complete decision-support system. Here is how to interpret its various components:
• The Volume Histogram
The background histogram displays Total Volume, while the foreground bars show the split between Buying (Teal) and Selling (Red) flow. Use this to gauge the "quality" of a move. A price rally accompanied by high Teal volume is healthy; a rally on low volume or high Red volume is suspect.
• The Delta Histogram
This plots the net difference.
Strong Positive (Green) Delta: Indicates aggressive market buy orders are hitting the ask.
Strong Negative (Red) Delta: Indicates aggressive market sell orders are hitting the bid.
Divergence: If Price makes a New High but the Delta Histogram makes a Lower High, this is a classic signal of exhaustion and potential reversal.
• The Heads-Up Display (HUD)
A dashboard table pinned to the chart provides real-time metrics:
Session Delta: The cumulative buy/sell pressure for the current trading day.
Flow Regime: Clearly states if the market is in "ACCUMULATION" or "DISTRIBUTION."
Intensity: Shows how statistically significant the current volume is (e.g., "2.5x" means the volume is 2.5 times the standard deviation, indicating an anomaly).
• Visual Signals
The script plots triangle markers on top of the chart when the Delta Intensity exceeds the user-defined threshold.
Up Triangle (Green): Signals strong institutional buying pressure (Delta > Threshold).
Down Triangle (Red): Signals strong institutional selling pressure (Delta < Threshold).
● Inputs and Configuration
Lower Timeframe: By default, the script auto-selects the best resolution (e.g., 1-minute data for hourly charts). Users can override this to fine-tune the granularity.
Volume MA Length: Defines the lookback period for the volume moving average.
Delta Volatility Threshold (Sigma): This is the sensitivity filter for signals. A higher value (e.g., 2.0) results in fewer but more significant signals. A lower value (e.g., 1.0) provides more frequent alerts.
Visual Logic: Users can toggle the Dashboard, Delta Histogram, and Moving Averages on or off to suit their charting aesthetic.
● Disclaimer
All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. I expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion.
Volumeanalysis
Delta Volume EMA Strategy
================================================================================
DELTA VOLUME EMA STRATEGY - STRATEGY GUIDE 📊
================================================================================
💡 COLLABORATION & SUPPORT
---------------------------
If you want to collaborate, have an idea for a strategy, or need help writing
or customizing code, send an email to burdytrader@gmail.com or send me a
message. Suggestions, ideas, and comments are always welcome! 🤝
================================================================================
⚠️ IMPORTANT: INSTRUMENT SELECTION 📈
-------------------------------------
This strategy performs BEST with instruments that have a centralized data flow,
such as Futures contracts. Centralized markets provide more accurate and
reliable volume data, which is essential for Volume Delta analysis to work
effectively.
Why Futures? 🎯
- Centralized exchange = Accurate volume data
- All trades flow through a single exchange
- Volume reflects true buying/selling pressure
- Better correlation between volume and price movements
While the strategy can work with other instruments (stocks, forex, etc.),
volume data quality may vary, which can affect the reliability of Volume Delta
signals. For optimal performance, use Futures contracts or other instruments
with centralized, high-quality volume data.
================================================================================
WHAT DOES THIS STRATEGY DO? 🎯
---------------------------
This strategy uses Volume Delta analysis combined with Exponential Moving
Averages (EMA) to identify high-probability trading opportunities. The Volume
Delta measures the difference between buying and selling pressure, helping to
identify when strong institutional or smart money movements occur. The strategy
automatically enters trades when volume delta reaches extreme levels, indicating
potential trend continuation or reversal points.
HOW IT WORKS? ⚙️
---------------
1. VOLUME DELTA CALCULATION 📈
The strategy calculates the Volume Delta using the following formula:
- Volume Ratio (v) = Current Volume / Previous Volume
- EMA of Close (mac) = EMA(Close, MA Length) × Volume Ratio
- EMA of Open (mao) = EMA(Open, MA Length) × Volume Ratio
- Volume Delta (vd) = mac - mao
The Volume Delta shows:
- Positive values (green) = Buying pressure (buyers are more active)
- Negative values (red) = Selling pressure (sellers are more active)
2. VOLUME DELTA MOVING AVERAGE 📊
The strategy calculates an EMA of the Volume Delta (vdma) to smooth out
fluctuations and identify the overall trend of buying/selling pressure:
- vdma = EMA(Volume Delta, EMA Length)
- When vdma is above zero = Overall buying pressure
- When vdma is below zero = Overall selling pressure
3. PERCENTILE-BASED ENTRY CONDITIONS 🎲
Instead of using fixed thresholds, the strategy uses percentile analysis to
identify extreme volume delta movements:
For LONG entries:
- Analyzes seller volumes (negative volume delta) over the lookback period
- Calculates the percentile threshold (default: 80th percentile)
- Enters LONG when volume delta becomes positive AND exceeds the threshold
- This indicates a strong shift from selling to buying pressure
For SHORT entries:
- Analyzes buyer volumes (positive volume delta) over the lookback period
- Calculates the percentile threshold (default: 80th percentile)
- Enters SHORT when volume delta becomes negative AND exceeds the threshold
- This indicates a strong shift from buying to selling pressure
4. POSITION SIZING 💰
The strategy offers two position sizing methods:
a) RISK VALUE (Fixed Risk in Dollars):
- Calculates position size based on a fixed dollar risk amount
- Formula: Position Size = Risk Amount / (Entry Price × Stop Loss %)
- Ensures consistent risk per trade regardless of price level
b) LOTS SIZE:
- Uses a fixed lot size for all trades
- Simple and straightforward approach
- Useful when you want consistent position sizes
5. TAKE PROFIT & STOP LOSS SETTINGS 🎯
The strategy offers flexible TP/SL configuration in three modes:
a) PERCENTAGE (%):
- TP/SL calculated as a percentage of entry price
- Example: 2% TP means entry price × 1.02 (for LONG) or × 0.98 (for SHORT)
- Adapts automatically to different price levels
b) CURRENCY:
- TP/SL set as a fixed currency amount
- Example: $100 TP means entry price + $100 (for LONG) or - $100 (for SHORT)
- Useful for instruments with consistent price movements
c) PIPS:
- TP/SL set as a fixed number of pips
- Automatically converts pips to price using the instrument's minimum tick
- Ideal for forex and other pip-based instruments
6. AUTOMATIC TRADE EXECUTION ⚡
When entry conditions are met:
- Opens a position (LONG or SHORT) at market price
- Automatically sets Take Profit and Stop Loss based on selected mode
- Sends an alert with all trade information
- Only one position at a time (waits for current position to close)
AVAILABLE PARAMETERS ⚙️
----------------------
1. MA LENGTH (Default: 10)
- Length of the Exponential Moving Average used for close and open prices
- Lower values = More sensitive to recent price action
- Higher values = More smoothed, less sensitive
2. EMA LENGTH (Default: 20)
- Length of the EMA applied to Volume Delta
- Controls the smoothing of the volume delta signal
- Lower values = Faster signals, more trades
- Higher values = Slower signals, fewer but potentially more reliable trades
3. POSITION SIZE MODE
- "Risk Value": Calculate position size based on fixed dollar risk
- "Lots Size": Use fixed lot size for all trades
4. FIXED RISK IN $ (Default: 50)
- Only used when Position Size Mode = "Risk Value"
- The dollar amount you're willing to risk per trade
- Strategy calculates position size automatically
5. LOT SIZE (Default: 0.01)
- Only used when Position Size Mode = "Lots Size"
- Fixed lot size for all trades
6. TAKE PROFIT MODE
- "%": Percentage of entry price
- "Currency": Fixed currency amount
- "Pips": Fixed number of pips
7. STOP LOSS MODE
- "%": Percentage of entry price
- "Currency": Fixed currency amount
- "Pips": Fixed number of pips
8. TAKE PROFIT / STOP LOSS VALUES
- Different input fields appear based on selected mode
- Configure TP and SL independently
9. VOLUME LOOKBACK PERIOD (Default: 20)
- Number of bars used to calculate percentile thresholds
- Lower values = More sensitive, adapts faster to recent conditions
- Higher values = More stable, uses longer-term statistics
10. PERCENTILE THRESHOLD (Default: 80%)
- The percentile level used to identify extreme volume delta movements
- 80% means: only enter when volume delta exceeds 80% of recent values
- Higher values = Fewer but potentially stronger signals
- Lower values = More frequent signals
VISUALIZATION 📊
---------------
The strategy displays on the chart:
1. VOLUME DELTA COLUMNS
- Green columns = Positive volume delta (buying pressure)
- Red columns = Negative volume delta (selling pressure)
- Height represents the magnitude of buying/selling pressure
2. VOLUME DELTA MA AREA
- Two overlapping area plots showing the smoothed volume delta
- Black area (base layer) for overall visualization
- Green area (when positive) = Overall buying pressure trend
- Red area (when negative) = Overall selling pressure trend
- Helps identify the dominant market sentiment
3. ZERO LINE
- Horizontal line at zero
- Helps visualize when buying/selling pressure crosses the neutral point
ALERTS 🔔
--------
When enabled, the strategy sends alerts when a trade is opened. The alert
message includes:
- Direction: "Buy" for LONG positions or "Sell" for SHORT positions
- Entry Price: The price at which the position was opened
- TP (Take Profit): The target profit price
- SL (Stop Loss): The stop loss price
Example alert message:
"Buy | Entry: 1.2050 | TP: 1.2250 | SL: 1.1950"
Alerts can be configured in TradingView to send notifications via email,
SMS, webhooks, or other platforms.
RECOMMENDED SETTINGS 🎯
-----------------------
To get started, you can use these settings:
STRATEGY PARAMETERS:
- MA Length: 10 (default)
- EMA Length: 20 (default)
- Volume Lookback Period: 20 (default)
- Percentile Threshold: 80% (default)
POSITION SIZING:
- Position Size Mode: "Risk Value" (for risk management)
- Fixed Risk in $: Adjust based on your account size (e.g., 1-2% of account)
- OR use "Lots Size" with 0.01 lots for small accounts
TAKE PROFIT & STOP LOSS:
- TP Mode: "%" (recommended for most instruments)
- SL Mode: "%" (recommended for most instruments)
- Take Profit (%): 2.0% (adjust based on your risk/reward preference)
- Stop Loss (%): 1.0% (adjust based on your risk tolerance)
For Forex:
- Consider using "Pips" mode for TP/SL
- Typical values: 20-50 pips TP, 10-30 pips SL
For Stocks/Indices:
- Use "%" mode for TP/SL
- Typical values: 2-5% TP, 1-2% SL
PRACTICAL EXAMPLE 📝
-------------------
Scenario: LONG Entry on EUR/USD
1. Market conditions:
- Price: 1.1000
- Volume Delta becomes strongly positive
- Volume Delta exceeds 80th percentile of recent seller volumes
2. Strategy calculates:
- Entry Price: 1.1000 (current close)
- Position Size Mode: "Risk Value"
- Fixed Risk: $50
- Stop Loss Mode: "%"
- Stop Loss: 1.0%
- Position Size = $50 / (1.1000 × 0.01) = 4.55 lots
3. Strategy opens position:
- Direction: LONG (Buy)
- Entry: 1.1000
- Take Profit: 1.1220 (2% above entry)
- Stop Loss: 1.0890 (1% below entry)
- Alert sent: "Buy | Entry: 1.1000 | TP: 1.1220 | SL: 1.0890"
4. Outcome scenarios:
- If price rises to 1.1220 → Take Profit hit (profit)
- If price falls to 1.0890 → Stop Loss hit (loss limited to $50)
IMPORTANT NOTE ⚠️
-----------------
This strategy is a technical analysis tool based on volume delta analysis.
Like all trading strategies, it does NOT guarantee profits. Trading involves
significant risks and you can lose money, including your entire investment.
Past performance does not guarantee future results.
Always:
- Use appropriate risk management
- Never risk more than you can afford to lose
- Test the strategy on historical data (backtesting) before using real money
- Start with small position sizes or paper trading
- Understand that no strategy works 100% of the time
- Consider market conditions, news events, and other factors
- Keep a trading journal to learn and improve
The author and contributors are NOT responsible for any losses incurred from
using this strategy. Trading decisions are your own responsibility. Profits
are NOT guaranteed, and losses are possible.
LICENSE 📄
---------
This code is open source and available for modification. You are free to use,
modify, and distribute this strategy. If you republish or share a modified
version, please kindly mention the original author.
================================================================================
SNIPER Trend Continuation V1TC SNIPER (Trend Continuation)
### When to Use
- Market is **OUT OF BALANCE** (trending, momentum)
- Clear **displacement** away from prior value
- **New York session** (AVOID London open fakeouts!)
- Strong directional moves with follow-through
### The Setup Sequence
```
1. IMPULSE DETECTED
└── Strong directional move (2× ATR+)
└── Multiple momentum bars
└── Price above/below fast EMA
2. LVN ZONE IDENTIFIED
└── 23.6% - 61.8% Fibonacci retracement
└── Low volume pullback area
3. PRICE PULLS BACK TO LVN
└── Retraces into the zone
└── Volume decreases (exhaustion)
4. AGGRESSION CONFIRMATION
└── Entry candle in trend direction
└── Volume spikes (1.3×+ average)
└── Fat body, minimal adverse wick
└── EMA alignment confirms trend
5. ENTRY → TARGET: PREV POC
```
Harmonic Liquidity Waves [JOAT]Harmonic Liquidity Waves
Overview
Harmonic Liquidity Waves is an open-source oscillator indicator that combines multiple volume-based analysis techniques into a unified liquidity flow framework. It integrates VWAP calculations, Chaikin Money Flow (CMF), Money Flow Index (MFI), and Klinger Volume Oscillator (KVO) with custom harmonic wave calculations to provide a comprehensive view of volume dynamics and money flow.
What This Indicator Does
The indicator calculates and displays:
Liquidity Flow - Volume-weighted price movement accumulated over a lookback period
Harmonic Wave - Multi-depth smoothed oscillator derived from liquidity flow
Chaikin Money Flow (CMF) - Classic accumulation/distribution indicator
Money Flow Index (MFI) - Volume-weighted RSI showing buying/selling pressure
Klinger Volume Oscillator (KVO) - Trend-volume relationship indicator
Wave Interference - Combined constructive/destructive wave patterns
Volume Profile POC - Point of Control from simplified volume distribution
How It Works
The core liquidity flow calculation tracks volume-weighted price changes:
calculateLiquidityFlow(series float vol, series float price, simple int period) =>
float priceChange = ta.change(price)
float volumeFlow = vol * math.sign(priceChange)
// Accumulated over period using buffer array
float avgFlow = flowSum / period
avgFlow
The harmonic oscillator applies multi-depth smoothing:
harmonicOscillator(series float flow, simple int depth, simple int period) =>
float harmonic = 0.0
for i = 1 to depth
float wave = ta.ema(flow, period * i) / i
harmonic += wave
harmonic / depth
CMF measures accumulation/distribution using the Money Flow Multiplier:
float mfm = ((close - low) - (high - close)) / (high - low)
float mfv = mfm * vol
float cmf = ta.sum(mfv, period) / ta.sum(vol, period) * 100
Signal Generation
Liquidity shift signals occur when:
Bullish Shift: Smoothed wave crosses above signal line
Bearish Shift: Smoothed wave crosses below signal line
Strong signals require volume indicator confirmation:
Strong Bull: Bullish shift + CMF > 0 + MFI > 50 + KVO > 0
Strong Bear: Bearish shift + CMF < 0 + MFI < 50 + KVO < 0
Divergence detection compares price pivots with liquidity wave pivots to identify potential reversals.
Dashboard Panel (Bottom-Right)
Wave Strength - Normalized wave magnitude
Volume Pressure - Current volume vs average percentage
Flow Direction - BUYING or SELLING based on wave sign
Histogram - Wave minus signal line value
CMF - Chaikin Money Flow reading
MFI - Money Flow Index value (0-100)
KVO - Klinger oscillator value
Vol Confluence - Combined volume indicator score
Signal - Current actionable status
Visual Elements
Liquidity Wave - Main oscillator line
Wave Signal - Smoothed signal line for crossover detection
Wave Histogram - Difference between wave and signal
Wave Interference - Area plot showing combined wave patterns
CMF/KVO/MFI Lines - Individual volume indicator plots
Divergence Labels - BULL DIV / BEAR DIV markers
Shift Markers - Triangles for basic shifts, labels for strong shifts
Input Parameters
Wave Period (default: 21) - Base period for liquidity calculations
Volume Weight (default: 1.5) - Multiplier for volume emphasis
Harmonic Depth (default: 3) - Number of smoothing layers
Smoothing (default: 3) - Final wave smoothing period
Suggested Use Cases
Identify accumulation/distribution phases using CMF and wave direction
Confirm momentum with MFI overbought/oversold readings
Watch for divergences between price and liquidity flow
Use strong signals when multiple volume indicators align
Timeframe Recommendations
Best on 15m to Daily charts. Volume-based indicators require sufficient trading activity for meaningful readings.
Limitations
Volume data quality varies by exchange and instrument
Divergence detection uses pivot-based lookback and may lag
Volume Profile POC is simplified and not a full profile analysis
Open-Source and Disclaimer
This script is published as open-source under the Mozilla Public License 2.0 for educational purposes. It does not constitute financial advice. Past performance does not guarantee future results. Always use proper risk management.
- Made with passion by officialjackofalltrades
Volatility Squeeze Pro [JOAT]
Volatility Squeeze Pro — Advanced Volatility Compression Analysis System
This indicator addresses a specific analytical challenge in volatility analysis: how to identify periods when different volatility measurements show compression relationships that may indicate potential energy buildup in the market. It combines two distinct volatility calculation methods—standard deviation-based bands and ATR-based channels—with a momentum oscillator to provide comprehensive volatility state analysis.
Why This Combination Provides Unique Analytical Value
Traditional volatility indicators typically focus on single measurements, but markets exhibit different types of volatility that require different analytical approaches:
1. **Closing Price Volatility** (Standard Deviation): Measures how much closing prices deviate from their average
2. **Trading Range Volatility** (ATR): Measures the actual high-to-low trading ranges
3. **Directional Momentum**: Measures where price sits within its recent range
The problem with using these individually:
- Standard deviation alone doesn't account for intraday volatility
- ATR alone doesn't consider closing price clustering
- Momentum alone doesn't provide volatility context
- No single measurement captures the complete volatility picture
This indicator's originality lies in creating a comprehensive volatility analysis system that:
**Identifies Volatility Compression**: When closing price volatility contracts inside trading range volatility, it suggests potential energy buildup
**Provides Momentum Context**: Shows directional bias during compression periods
**Offers Multi-Dimensional Analysis**: Combines three different analytical approaches into one coherent system
**Delivers Real-Time Assessment**: Continuously monitors the relationship between different volatility types
Technical Innovation and Originality
While individual components (Bollinger Bands, Keltner Channels, Linear Regression) are standard, the innovation lies in:
1. **Volatility Relationship Detection**: The mathematical comparison between standard deviation bands and ATR channels creates a unique compression identification system
2. **Integrated Momentum Analysis**: Linear regression-based momentum calculation provides directional context specifically during volatility compression periods
3. **Multi-State Visualization**: The indicator provides clear visual encoding of different volatility states (compressed vs. normal) with momentum direction
4. **Adaptive Threshold System**: The squeeze detection automatically adapts to different instruments and timeframes without manual calibration
How the Components Work Together Analytically
The three components create a comprehensive volatility analysis framework:
**Standard Deviation Component**: Measures closing price dispersion around the mean
float bbBasis = ta.sma(close, bbLength)
float bbDev = bbMult * ta.stdev(close, bbLength)
float bbUpper = bbBasis + bbDev
float bbLower = bbBasis - bbDev
**ATR Channel Component**: Measures actual trading range volatility
float kcBasis = ta.ema(close, kcLength)
float kcRange = ta.atr(atrLength)
float kcUpper = kcBasis + kcRange * kcMult
float kcLower = kcBasis - kcRange * kcMult
**Squeeze Detection Logic**: Identifies when closing price volatility compresses within trading range volatility
bool squeezeOn = bbLower > kcLower and bbUpper < kcUpper
// This condition indicates closing prices are clustering more tightly
// than the typical trading range would suggest
**Momentum Context Component**: Provides directional bias during compression
float highestHigh = ta.highest(high, momLength)
float lowestLow = ta.lowest(low, momLength)
float momentum = ta.linreg(close - math.avg(highestHigh, lowestLow), momLength, 0)
float momSmooth = ta.sma(momentum, smoothLength)
The analytical relationship creates a system where:
- Squeeze detection identifies WHEN volatility compression occurs
- Momentum analysis shows WHERE price is positioned during compression
- Combined analysis provides both timing and directional context
How the Volatility Comparison Works
The indicator compares two volatility measurements:
Standard Deviation Bands
These measure how much closing prices deviate from their average. When prices cluster tightly around the average, the bands contract.
// Standard deviation bands calculation
float bbBasis = ta.sma(close, bbLength)
float bbDev = bbMult * ta.stdev(close, bbLength)
float bbUpper = bbBasis + bbDev
float bbLower = bbBasis - bbDev
ATR-Based Channels
These measure volatility using Average True Range—the typical distance between high and low prices. They respond to the actual trading range rather than closing price dispersion.
// ATR-based channels calculation
float kcBasis = ta.ema(close, kcLength)
float kcRange = ta.atr(atrLength)
float kcUpper = kcBasis + kcRange * kcMult
float kcLower = kcBasis - kcRange * kcMult
The Squeeze Condition
A "squeeze" is detected when the standard deviation bands are completely contained within the ATR channels:
// Squeeze detection
bool squeezeOn = bbLower > kcLower and bbUpper < kcUpper
This condition indicates that closing price volatility has compressed relative to the overall trading range.
The Momentum Component
The momentum oscillator measures where price sits relative to its recent high-low range, using linear regression for smoothing:
// Momentum calculation
float highestHigh = ta.highest(high, momLength)
float lowestLow = ta.lowest(low, momLength)
float momentum = ta.linreg(close - math.avg(highestHigh, lowestLow), momLength, 0)
float momSmooth = ta.sma(momentum, smoothLength)
Positive values indicate price is above the midpoint of its recent range; negative values indicate below.
Why Display Both Together
The squeeze detection shows WHEN volatility is compressed. The momentum reading shows the current directional bias of price within that compression. Together, they provide two pieces of information:
1. Is volatility currently compressed? (squeeze status)
2. Where is price leaning within the current range? (momentum)
These are observations about current conditions, not predictions about future movement.
Visual Elements
Momentum Histogram — Bars showing momentum value
- Green shades: Positive momentum (price above range midpoint)
- Red shades: Negative momentum (price below range midpoint)
- Brighter colors: Momentum increasing
- Faded colors: Momentum decreasing
Squeeze Dots — Circles on the zero line
- Red: Squeeze condition active
- Green: No squeeze condition
Release Markers — Triangle markers when squeeze condition ends
Dashboard — Current readings and status
Color Scheme
Squeeze Active — #FF5252 (red)
No Squeeze — #4CAF50 (green)
Momentum Positive — #00E676 / #81C784 (green shades)
Momentum Negative — #FF5252 / #E57373 (red shades)
Inputs
Standard Deviation Bands:
Length (default: 20)
Multiplier (default: 2.0)
ATR Channels:
Length (default: 20)
Multiplier (default: 1.5)
ATR Period (default: 10)
Momentum:
Length (default: 12)
Smoothing (default: 3)
How to Read the Display
Red dots indicate the squeeze condition is present
Green dots indicate normal volatility relationship
Histogram direction shows current momentum bias
Histogram color brightness shows whether momentum is increasing or decreasing
Alerts
Squeeze condition started
Squeeze condition ended
Squeeze ended with positive momentum
Squeeze ended with negative momentum
Extended squeeze (8+ bars)
Important Limitations and Realistic Expectations
Volatility compression detection is a mathematical relationship between calculations—it does not predict future price movements
Many compression periods do not result in significant price expansion or directional moves
Momentum direction during compression does not reliably indicate future breakout direction
This indicator analyzes current and historical volatility conditions only—it cannot predict future volatility
False signals are common—not every squeeze leads to tradeable price movement
Different parameter settings will produce different compression detection sensitivity
Market conditions, news events, and fundamental factors often override technical volatility patterns
No volatility indicator can predict the timing, direction, or magnitude of future price movements
This tool should be used as one component of comprehensive market analysis
Appropriate Use Cases
This indicator is designed for:
- Volatility state analysis and monitoring
- Educational study of volatility relationships
- Multi-dimensional volatility assessment
- Supplementary analysis alongside other technical tools
- Understanding market compression/expansion cycles
This indicator is NOT designed for:
- Standalone trading signal generation
- Guaranteed breakout prediction
- Automated trading system triggers
- Market timing precision
- Replacement of fundamental analysis
Understanding Volatility Analysis Limitations
Volatility analysis, while useful for understanding market conditions, has inherent limitations:
- Past volatility patterns do not guarantee future patterns
- Compression periods can extend much longer than expected
- Expansion periods may be brief and insufficient for trading
- External factors (news, fundamentals) often override technical patterns
- Different markets and timeframes exhibit different volatility characteristics
— Made with passion by officialjackofalltrades
Volume + VWAP + Prior Session Levels DashboardVolume Spike + VWAP + Session Levels Dashboard
This indicator is a real-time market context dashboard designed to help traders quickly understand participation, value, and key reference levels without cluttering the chart with multiple indicators.
Instead of plotting lines or signals, the script summarizes critical intraday information into a compact on-chart table, allowing traders to make faster, more informed decisions based on how active the market is, where fair value is, and where important reference levels exist.
Core Concepts Used
This script is built on three widely used market principles:
Relative Volume Participation
Volume-Weighted Average Price (VWAP)
Prior Session Reference Levels
The indicator does not attempt to predict direction. Its purpose is to provide objective context that traders can combine with their own strategies.
How the Indicator Works
1. Volume Spike Analysis (Relative Volume)
Rather than showing raw volume, the script measures how unusual the current bar’s volume is compared to recent activity.
A moving average of volume is calculated using a user-defined lookback period.
Current volume is divided by this average to produce a volume multiple (for example, 2.0× normal volume).
This multiple is translated into a descriptive strength label, ranging from Below Threshold to Legendary.
This approach helps traders immediately recognize when participation is significantly above normal, which often coincides with institutional activity, breakouts, or important reactions near key levels.
2. Daily VWAP (Current and Prior Day)
VWAP (Volume-Weighted Average Price) represents the average price traded, weighted by volume, and is commonly used as a measure of fair value.
This script calculates VWAP internally by:
Accumulating price × volume throughout the day
Dividing by total volume
Automatically resetting at the start of each new trading day
The dashboard displays:
Current day VWAP – real-time session fair value
Prior day VWAP – an important reference from the previous session
Traders often use these levels to evaluate whether price is trading at a premium, discount, or near equilibrium.
3. Previous Day High and Low
The indicator also displays:
Previous day high
Previous day low
These levels frequently act as liquidity targets, support/resistance zones, or reaction points, especially during intraday trading sessions.
Dashboard Design
All information is presented in a two-column dashboard showing:
Metric name
Current value or status
The dashboard can be positioned in any corner of the chart and updates in real time, allowing traders to maintain awareness without constantly switching indicators or timeframes.
How to Use This Indicator
This script is best used as a decision-support tool, not a standalone trading system.
Typical uses include:
Identifying abnormally high volume near important price levels
Evaluating price position relative to VWAP
Monitoring reactions around prior day highs and lows
Staying oriented during fast market conditions without chart clutter
The indicator works on any timeframe and adapts automatically to the instrument’s trading session.
Customization Options
Users can:
Adjust the volume moving average length to define what “normal” volume means
Choose the price source used for VWAP calculation
Change the dashboard’s on-screen position
Summary
The Volume Spike + VWAP + Session Levels Dashboard provides a clear, objective snapshot of market conditions by combining participation, value, and reference levels into a single visual tool. It is designed to help traders answer a simple but critical question:
“Is the market doing something meaningful right now — and where?”
This indicator focuses on context, clarity, and usability for traders who want insight without unnecessary complexity.
Big Notional Volume Bubbles (Lower-TF Order Flow Approximation)Big Notional Volume Bubbles (Lower-TF Order Flow Approximation)
### Overview
This indicator visualizes large notional trading activity by scanning lower-timeframe candles inside each chart bar and highlighting periods where unusually high traded value (volume × price) occurs.
This script is intended to help short-term traders and scalpers identify bursts of aggressive activity, potential absorption zones, and areas of heightened participation, using standard OHLCV data.
Important: This indicator does not access true market order tape or DOM data. It is an approximation based on lower-timeframe OHLCV data provided by TradingView.
What the Indicator Shows
Each bubble represents a lower-timeframe candle where traded notional value exceeds a user-defined threshold.
Bubble size scales with the notional value of that candle.
Green bubbles indicate the lower-timeframe candle closed higher (buy-side pressure approximation).
Red bubbles indicate the lower-timeframe candle closed lower (sell-side pressure approximation).
Bubbles can be plotted at candle closes or wick extremes for contextual analysis.
How It Works
1. Lower-timeframe OHLCV data is requested using `request.security_lower_tf`.
2. Notional value is calculated as volume × price for each micro-candle.
3. The script selects the largest notional events per bar that exceed the minimum threshold.
4. These events are rendered as bubbles on the main price chart.
Intended Use Cases
Scalping and short-term trading
Momentum ignition and continuation analysis
Absorption and failed breakout detection
Effort versus result analysis
Confirmation at key structural levels
Recommended Settings
Lower timeframe: Start with 1 (1 minute). Seconds-based timeframes may not be supported on all feeds.
Minimum notional (USD/USDT):
BTC / ETH: 25,000 – 250,000
Mid-cap assets: 5,000 – 50,000
Adjust based on liquidity and volatility
Max bubbles per bar: 3–8 to avoid visual clutter
Limitations
This indicator does not display individual market orders or aggressor-side execution.
Buy/sell classification is inferred from candle direction, not bid/ask data.
Lower-timeframe data availability depends on the selected symbol and exchange feed.
This tool should not be used as a standalone signal generator.
Best Practices
Use in conjunction with market structure, VWAP, and key price levels.
Focus on price behavior after a bubble appears rather than the bubble itself.
Interpret bubbles as areas of interest, not directional guarantees.
Liquidity ZonesLiquidity Zones
Liquidity Zones is a price-action–based indicator designed to identify high-probability support and resistance areas where liquidity has historically accumulated.
Instead of drawing single lines, the script builds dynamic price zones based on repeated pivot reactions validated by volume, helping traders focus on meaningful levels rather than noise.
How It Works
Pivot Detection
The indicator scans historical price data for pivot highs and pivot lows using a fixed pivot strength.
Each pivot represents a potential liquidity interaction point.
Volume Qualification
A pivot is only considered valid if the volume at the pivot bar exceeds:
Volume SMA × Sensitivity
This filters out weak or low-participation levels and keeps zones formed during strong market interest.
Zone Construction
Nearby pivots are grouped into a single zone if their price difference stays within an ATR-based threshold.
Each time price reacts within this threshold, the zone’s touch count increases.
Once the minimum number of touches is reached, a liquidity zone is drawn and extended to the right.
Adaptive Zone Expansion
As new qualifying pivots appear, zones automatically expand to reflect the true liquidity range instead of staying static.
Dynamic Zone Coloring
Zones update their color in real time based on price position:
Green (Support) → Price is above the zone
Red (Resistance) → Price is below the zone
Gray (In-Zone) → Price is trading inside the zone
This allows instant visual feedback on whether a level is acting as support, resistance, or an active liquidity area.
Settings Overview
Bars to Apply
Controls how much historical data is scanned for liquidity zones.
Volume Sensitivity
Higher values require stronger volume spikes to validate pivots, resulting in fewer but higher-quality zones.
Styling Options
Fully customizable colors and transparency for support, resistance, and in-zone states.
Best Use Cases
Identifying high-liquidity support and resistance zones
Planning entries, exits, and stop placement
Combining with trend-following or momentum indicators
Filtering out weak levels in sideways or choppy markets
Smart Money Concepts - Absorption Smart Money Concepts - Absorption (SMC-ABS)
Absorption event detector using split-volume VWMA ribbons, entropy filtering, and elasticity validation
Overview
This indicator highlights potential absorption/defense events: moments where price touches a volume-weighted band and then rejects, while additional filters confirm that market conditions are not random/noisy.
What it plots
• Energy ribbons (bands): two split-volume VWMA ribbon sets - Buy-weighted (cyan) and Sell-weighted (magma).
• ABS markers: printed when touch + rejection + validation conditions are met (see Logic section).
• Dashboard (HUD): real-time metrics such as price/volume z-scores, delta, entropy state, and resonance momentum states.
Core logic
1) Volume engine
The script builds Buy Volume and Sell Volume series using one of two modes:
• Geometry (candle-range split): estimates buy/sell participation from the close position within the candle range.
• Intrabar (precise): uses lower-timeframe up/down volume to derive buy/sell flows when data is available.
2) Split-VWMA resonance score
For multiple periods (5, 10, 20, 30, 40, 50), the script computes:
• A standard SMA of price.
• A Buy-weighted VWMA of price (weighted by Buy Volume).
• A Sell-weighted VWMA of price (weighted by Sell Volume).
Resonance is derived from the normalized divergence between the SMA and the split VWMAs, aggregated across the available periods.
3) Validation filters
Signals can be filtered by the following components (each toggleable):
• Volume-weighted entropy: a fractal-efficiency style disorder metric (TR-sum vs range) adjusted by relative volume; high entropy blocks signals.
• Momentum alignment (resonance velocity) : direction filter requiring positive velocity for buy events and negative velocity for sell events.
• Elasticity (recoil vs penetration): rejection quality check based on the bounce-back strength relative to the penetration depth into the fast band.
Absorption event conditions (ABS markers)
ABS markers are generated using the fastest ribbon band (length 5) for the touch/rejection logic:
• Buy absorption: low touches/penetrates the Buy band and the candle closes back above it, with filters passing.
• Sell absorption: high touches/penetrates the Sell band and the candle closes back below it, with filters passing.
Note: acceleration/deceleration is displayed in the HUD as a state; the primary directional filter is the resonance velocity.
Settings
• Volume Model: choose Geometry or Intrabar.
• Intrabar LTF: lower timeframe used by the Intrabar model (only applies when Intrabar is selected).
• Global Lookback: lookback window used for z-score statistics and related calculations.
• Quantum Filters: toggles and thresholds for entropy, momentum alignment, and elasticity validation.
• Dashboard Settings :/ Energy Ribbons / Absorption Events: controls for visuals and filtering behavior.
Usage notes and limitations
• Signals are most reliable after candle close. On the forming candle, conditions can change until the bar closes.
• Results depend on the availability and quality of volume data for the selected symbol and exchange.
• The Geometry mode is an estimate based on candle structure; it is not tick-accurate order flow.
• Terms such as “quantum” and “physics” are metaphorical labels for statistical filters and validation heuristics.
Disclaimer
This tool is provided for analytical and educational use only. It does not constitute investment advice. Trading involves risk.
Important note about Intrabar data and TradingView plan limits
This indicator is volume-dependent. When using the Intrabar model, the best results typically come from very low intrabar timeframes such as 1 tick or 1 second (if your symbol and data feed support it). Please check your TradingView subscription plan and data entitlements - access to 1-second/1-tick lower timeframes is commonly restricted to higher-tier plans (often referred to as Premium/Ultra tiers). If intrabar data is not available, the script falls back to relative buy/sell volume estimation (Geometry mode), and results may be less precise.
Effort-Result Divergence [Interakktive]The Effort-Result Divergence (ERD) measures whether volume effort is producing proportional price result. It quantifies the classic Wyckoff principle: when price moves easily, momentum is real; when price struggles despite heavy volume, absorption is occurring.
Think of ERD as "energy efficiency" for price movement — green means price is gliding, red means price is grinding.
█ WHAT IT DOES
• Measures volume EFFORT relative to average volume
• Measures price RESULT relative to ATR-normalized movement
• Computes ERD = Result minus Effort (each scaled 0-100)
• Flags statistical divergences via Z-score analysis
• Absorption events: high effort, low result (negative ERD)
• Vacuum events: low effort, high result (positive ERD)
█ WHAT IT DOES NOT DO
• NO buy/sell signals
• NO entry/exit recommendations
• NO alerts (v1 is educational only)
• NO performance claims or guarantees
This is a context tool for understanding market participation quality.
█ HOW IT WORKS
The ERD analyzes two dimensions of market activity and compares them.
EFFORT (Volume Intensity)
Compares current volume to a moving average baseline:
Effort Ratio = Volume ÷ SMA(Volume, Length)
Effort Score = clamp(100 × Effort Ratio ÷ Effort Cap)
High effort means above-average volume participation.
Low effort means below-average volume participation.
RESULT (Price Efficiency)
Measures how much price moved relative to expected volatility:
Result Ratio = |Close − Previous Close| ÷ ATR
Result Score = clamp(100 × Result Ratio ÷ Result Cap)
High result means price moved significantly for the volatility regime.
Low result means price barely moved despite market activity.
ERD SCORE
ERD = Result − Effort
• Positive ERD: Result exceeds effort → price moved easily (vacuum/thin liquidity)
• Negative ERD: Effort exceeds result → price struggled (absorption/accumulation)
• Near zero: Balanced effort-to-result relationship
STATISTICAL DIVERGENCE DETECTION
Z-score analysis identifies statistically significant extremes:
Z = (ERD − Mean) ÷ StdDev
• Absorption Event: Z ≤ −threshold (extreme negative ERD)
• Vacuum Event: Z ≥ +threshold (extreme positive ERD)
█ INTERPRETATION
GREEN BARS (Positive ERD)
Price moved with relatively little volume effort. This suggests:
• Thin liquidity / low resistance
• Strong directional interest
• Momentum is "real" — not forced
RED BARS (Negative ERD)
Heavy volume was used but price barely moved. This suggests:
• Absorption / accumulation occurring
• Large players opposing the move
• Inefficiency — someone is working hard for little result
THE KEY INSIGHT
When you see:
• Down moves = high effort (red spikes)
• Up moves = low effort (green bars)
This means: It's easier for price to go up than down.
That is asymmetric strength — classic bullish pressure.
The reverse (red on up moves, green on down moves) signals bearish pressure.
PRACTICAL RULES
Without any other indicators:
• Avoid shorting when ERD is mostly green and red spikes appear only on down candles
• Be cautious buying when ERD turns red on up candles (signals absorption of buying pressure)
• Vacuum events (extreme green) often precede continuation or pause — not violent reversal
• Absorption events (extreme red) often precede reversals or range formation
█ VOLUME DATA NOTE
This indicator uses the volume variable which represents:
• Exchange volume on stocks and futures
• Tick volume on Forex and CFD instruments
Tick volume is a proxy for activity, not actual exchange volume. The indicator remains useful on Forex as relative volume comparisons are still meaningful, but interpretation should account for this limitation.
█ INPUTS
Core Settings
• Volume Average Length: Baseline period for effort calculation (default: 20)
• ATR Length: Volatility normalization period (default: 14)
• Effort Cap: Volume ratio that maps to 100% effort (default: 3.0)
• Result Cap: ATR multiple that maps to 100% result (default: 1.0)
Divergence Detection
• Z-Score Lookback: Statistical analysis window (default: 100)
• Z-Score Threshold: Standard deviations for event flags (default: 2.0)
Visual Settings
• Show ERD Histogram: Toggle main display
• Show Zero Line: Toggle reference line
• Show Divergence Markers: Toggle event circles
• Show Effort/Result Lines: Display component breakdown
█ ORIGINALITY
While Wyckoff's effort-versus-result principle is well-established, existing implementations are typically:
• Purely visual with no quantification
• Pattern-based requiring subjective interpretation
• Not statistically normalized for comparison across instruments
ERD is original because it:
1. Normalizes both effort and result to 0-100 scales for direct comparison
2. Uses ATR for result normalization (adapts to volatility regime)
3. Applies statistical Z-score for objective divergence detection
4. Provides quantified output suitable for systematic analysis
█ DATA WINDOW EXPORTS
When enabled, the following values are exported:
• Effort (0-100)
• Result (0-100)
• ERD Score
• Z-Score
• Absorption Event (1/0)
• Vacuum Event (1/0)
█ SUITABLE MARKETS
Works on: Stocks, Futures, Forex, Crypto
Best on: Instruments with reliable volume data (stocks, futures, crypto)
Timeframes: All timeframes — interpretation adapts accordingly
█ RELATED
• Market Efficiency Ratio — measures price path efficiency
• Wyckoff Volume Spread Analysis — conceptual foundation
█ DISCLAIMER
This indicator is for educational purposes only. It does not constitute financial advice. Past performance does not guarantee future results. Always conduct your own analysis before making trading decisions.
Auto-Anchored Fibonacci Volume Profile [Custom Array Engine]Description:
1. The Theoretical Foundation: Structure vs. Participation In professional technical analysis, traders often struggle to reconcile two distinct datasets: Price Geometry (where price should go) and Market Participation (where money actually went).
Why Fibonacci? (The Structure) Fibonacci Retracements map the mathematical structure of a trend. They identify psychological and algorithmic "interest zones" (0.382, 0.5, 0.618) where a correction is statistically likely to terminate. However, Fibonacci levels are theoretical—they are "lines in the sand" that do not guarantee liquidity or reaction.
Why Volume Profile? (The Verification) Volume Profile maps the historical exchange of shares at specific price levels. It reveals "fair value" (High Volume Nodes) and "market imbalance" (Low Volume Nodes). It is the only tool that verifies if a specific price level was actually accepted by institutional participants.
2. Underlying Calculations (The Custom Engine) This script operates on a custom-built calculation engine that bypasses standard built-in functions entirely. It uses Pine Script Arrays to build a Volume Profile from scratch. Here is the breakdown of the proprietary code logic:
A. The "Smart-Fill" Distribution Algorithm (Solves Gapping)
The Problem: Standard volume scripts often assign a candle's entire volume to a single price row. In volatile markets or steep trends, this creates visual "gaps" or a "barcode" effect because price moved too fast to register on every row.
My Solution: I wrote a custom loop that calculates the vertical overlap of every candle against the profile grid.
The Math: Volume Per Bin = Total Candle Volume / Bins Touched.
The Result: If a single volatile candle spans 10 price rows (bins), the script mathematically divides that volume and distributes it equally into all 10 array indices. This generates a solid, continuous distribution curve that accurately reflects price action through the entire candle range, not just the close.
B. Dynamic Arrays & Split-Volume Logic The script initializes two separate floating-point arrays (buyVolArray and sellVolArray) sized to the user's resolution (up to 300 rows). It iterates through the specific time-window of the swing:
If Close >= Open, the calculated volume slice is injected into the Buy Array.
If Close < Open, it is injected into the Sell Array.
These arrays are then visually stacked to render the dual-color profile, allowing traders to see the "Delta" (Buyer vs. Seller aggression) at key structural levels.
C. Custom Garbage Collection (Performance) To enable the "Auto-Anchoring" feature without causing chart lag or visual artifacts ("ghosting"), the script includes a Garbage Collection System. Before drawing a new profile, the script iterates through a tracking array of all existing objects (box.delete, line.delete) and clears them from memory. This ensures the indicator remains lightweight and responsive even when dragging chart margins or switching timeframes.
3. The Synthesis: Why Combine Them? The core philosophy of this script is Confluence . A Fibonacci level without volume is merely a suggestion; a Fibonacci level backed by volume is a defensive wall. By algorithmically anchoring a Volume Profile to the exact coordinates of a Fibonacci swing, this tool allows traders to instantly answer critical questions:
"Is the Golden Pocket (0.618) supported by a High Volume Node (HVN), or is it a Low Volume Node (LVN) that price might slice through?"
"Is the Shallow Retracement (0.382) holding because of structural support, or just a lack of selling pressure?"
4. How to Read the Indicator
The Geometry: The script automatically detects the trend and draws standard Fib levels (0, 0.236, 0.382, 0.5, 0.618, 0.786, 1.0).
The Confluence Check: Look for the Point of Control (Red Line). If this High Volume Node aligns with a key Fib level (e.g., the 0.618), the probability of a reversal increases significantly.
The Imbalance Check: Look for "Valleys" in the profile (Low Volume Nodes). These gaps often act as "slippage zones" where price travels quickly between structural levels.
Buy/Sell Splits: The dual-color bars (Teal/Red) reveal the composition of the volume. A 0.618 level held up by dominant Buy Volume is a stronger bullish signal than one with mixed volume.
5. Settings & Customization
Lookback Length: Sensitivity of the swing detection (Default: 200 bars).
Resolution: Granularity of the profile rows (Default: 100). Higher values provide smoother definition.
Width (%): Responsive sizing that scales the profile relative to the trend's duration.
Extend Lines: Option to project structural levels infinitely to the right.
Disclaimer This script is an analytical tool for visualizing historical market data. It does not provide trade signals or financial advice.
Session Relative VolumeSession Relative Volume is an advanced intraday futures volume indicator that analyzes volume separately for Asia, London, and New York sessions - something standard relative volume tools can’t do.
Instead of aggregating the entire day’s volume, the indicator compares current volume to historical averages for the same session and time of day, allowing you to spot true volume strength and meaningful spikes, especially around session opens.
Background
Relative volume helps traders spot unusual activity: high volume often signals institutional participation and trending days, while low volume suggests weak commitment and possible mean reversion. In futures markets, sessions ( Asia, London, New York ) must be analyzed separately, but TradingView’s Relative Volume in Time aggregates the entire day, masking session-specific behavior - especially during the New York open. Since volume can vary by more than 20× between sessions, standard averages struggle to identify meaningful volume spikes when trader conviction matters most.
Indicator Description
The “Session Relative Volume” indicator solves these problems by calculating historical average volume specific to each session and time of day, and comparing current volume against those benchmarks. It offers four display modes and fully customizable session times
Altogether, it provides traders with a powerful tool for analyzing intraday futures volume, helping to better assess market participation, trader conviction, and overall market conditions - ultimately supporting improved trading decisions.
Parameters
Mode – display mode:
R-VOL: Relative cumulative session-specific volume at time
VOL CUM: Cumulative session volume at time compared to historical average cumulative session-specific volume
VOL AVG: Average session intrabar volume at time compared to historical average session-specific intrabar volume
VOL: Individual bars volume, highlighting (solid color) unusual spikes
Lookback period – number of days used for calculating historical average session volume at time
MA Len – length of the moving average, representing average bar volume within a session based on previous periods (different from historical cumulative volume!). Used only in VOL and VOL AVG modes
MA Thresh – deviation from moving average, used to detect bar volume spikes (bar volume > K × moving average)
Start Time – End Time and Time Zone parameters for each session. The time zone must be set using TradingView’s format (e.g., GMT+1).
Amihud Illiquidity Ratio [MarkitTick]💡This indicator implements the Amihud Illiquidity Ratio, a financial metric designed to measure the price impact of trading volume. It assesses the relationship between absolute price returns and the volume required to generate that return, providing traders with insight into the "stress" levels of the market liquidity.
Concept and Originality
Standard volume indicators often look at volume in isolation. This script differentiates itself by contextualizing volume against price movement. It answers the question: "How much did the price move per unit of volume?" Furthermore, unlike static indicators, this implementation utilizes dynamic percentile zones (Linear Interpolation) to adapt to the changing volatility profile of the specific asset you are viewing.
Methodology
The calculation proceeds in three distinct steps:
1. Daily Return: The script calculates the absolute percentage change of the closing price relative to the previous close.
2. Raw Ratio: The absolute return is divided by the volume. I have introduced a standard scaling factor (1,000,000) to the calculation. This resolves the issue of the values being astronomically small (displayed as roughly 0) without altering the fundamental logic of the Amihud ratio (Absolute Return / Volume).
- High Ratio: Indicates that price is moving significantly on low volume (Illiquid/Thin Order Book).
- Low Ratio: Indicates that price requires massive volume to move (Liquid/Deep Order Book).
3. Dynamic Regimes: The script calculates the 75th and 25th percentiles of the ratio over a lookback period. This creates adaptive bands that define "High Stress" and "Liquid" zones relative to recent history.
How to Use
Traders can use this tool to identify market fragility:
- High Stress Zone (Red Background): When the indicator crosses above the 75th percentile, the market is in a High Illiquidity Regime. Price is slipping easily. This is often observed during panic selling or volatile tops where the order book is thin.
- Liquid Zone (Green Background): When the indicator drops below the 25th percentile, the market is in a Liquid Regime. The market is absorbing volume well, which is often characteristic of stable trends or accumulation phases.
- Dashboard: A visual table on the chart displays the current Amihud Ratio and the active Market Regime (High Stress, Normal, or Liquid).
Inputs
- Calculation Period: The lookback length for the average illiquidity (Default: 20).
- Smoothing Period: The length of the additional moving average to smooth out noise (Default: 5).
- Show Quant Dashboard: Toggles the visibility of the on-screen information table.
● How to read this chart
• Spike in Illiquidity (Red Zones)
Price is moving on "thin air." Expect high volatility or potential reversals.
• Low Illiquidity (Green/Stable Zones)
The market is deep and liquid. Trends here are more sustainable and reliable.
• Divergence
Watch for price making new highs while liquidity is drying up—a classic sign of an exhausted trend.
Example:
● Chart Overview
The chart displays the Amihud Illiquidity indicator applied to a Gold (XAUUSD) 4-hour timeframe.
Top Pane: Price action with manual text annotations highlighting market reversals relative to liquidity zones.
Bottom Pane: The specific technical indicator defined in the logic. It features a Blue Line (Raw Illiquidity), a Red Line (Signal/Smoothed), and dynamic background coloring (Red and Green vertical strips).
● Deep Visual Analysis
• High Stress Regime (Red Zones)
Visual Event: In the bottom pane, the background periodically shifts to a translucent red.
Technical Logic: This event is triggered when the amihudAvg (the smoothed illiquidity ratio) exceeds the 75th percentile ( hZone ) of the lookback period.
Forensic Interpretation: The logic calculates the absolute price change relative to volume. A spike into the red zone indicates that price is moving significantly on relatively lower volume (high price impact). Visually, the chart shows these red zones aligning with local price peaks (volatility expansion), leading to the bearish reversal marked by the red box in the top pane.
• Liquid Regime (Green Zones)
Visual Event: The background shifts to a translucent green in the bottom pane.
Technical Logic: This triggers when the amihudAvg falls below the 25th percentile ( lZone ).
Forensic Interpretation: This state represents a period where large volumes are absorbed with minimal price impact (efficiency). On the chart, this green zone corresponds to the consolidation trough (green box, top pane), validating the annotated accumulation phase before the bullish breakout.
• Indicator Lines
Blue Line: This is the illiquidityRaw value. It represents the raw daily return divided by volume.
Red Line: This is the smoothedVal , a Simple Moving Average (SMA) of the raw data, used to filter out noise and define the trend of liquidity stress.
● Anomalies & Critical Data
• The Reversal Pivot
The transition from the "High Stress" (Red) background to the "Liquid" (Green) background serves as a visual proxy for market regime change. The chart shows that as the Red zones dissipate (volatility contraction), the market enters a Green zone (efficient liquidity), which acted as the precursor to the sustained upward trend on the right side of the chart.
● About Yakov Amihud
Yakov Amihud is a leading researcher in market liquidity and asset pricing.
• Brief Background
Professor of Finance, affiliated with New York University (NYU).
Specializes in market microstructure, liquidity, and quantitative finance.
His work has had a major impact on both academic research and practical investment models.
● The Amihud (2002) Paper
In 2002, he published his influential paper: “Illiquidity and Stock Returns: Cross-Section and Time-Series Effects” .
• Key Contributions
Introduced the Amihud Illiquidity Measure, a simple yet powerful proxy for market liquidity.
Demonstrated that less liquid stocks tend to earn higher expected returns as compensation for liquidity risk.
The measure became one of the most widely used liquidity metrics in finance research.
● Why It Matters in Practice
Used in quantitative trading models.
Applied in portfolio construction and risk management.
Helpful as a liquidity filter to avoid assets with excessive price impact.
In short: Yakov Amihud established a practical and robust link between liquidity and returns, making his 2002 work a cornerstone in modern financial economics.
Disclaimer: All provided scripts and indicators are strictly for educational exploration and must not be interpreted as financial advice or a recommendation to execute trades. I expressly disclaim all liability for any financial losses or damages that may result, directly or indirectly, from the reliance on or application of these tools. Market participation carries inherent risk where past performance never guarantees future returns, leaving all investment decisions and due diligence solely at your own discretion.
SCOTTGO - Buy Sell Volume📊 SCOTTGO - Buy Sell Volume Bars - Delta - Up Down Volume Bars
This indicator disaggregates the total volume traded on each bar into estimated Buying Volume and Selling Volume to visualize market pressure and dominance directly in a dedicated sub-pane.
Key Features:
Volume Disaggregation: Uses a standard formula to estimate how much of a bar's total volume was associated with upward (buying) pressure and how much was associated with downward (selling) pressure.
Visual Clarity: Plots the Buy Volume (teal, upward) and Sell Volume (red, downward) as separate columns against a transparent total volume background, allowing for quick assessment of pressure balance.
Real-Time Badge: A dynamic badge is fixed to the corner of the chart (default: Top Right) providing a numeric summary of the latest bar:
Buy %: Percentage of the bar's total volume estimated as Buying Volume.
Sell %: Percentage of the bar's total volume estimated as Selling Volume.
Delta %: The magnitude of the volume difference (Delta) as a percentage of total volume, indicating the strength of the dominant side.
Dominance Indicator: The background color of the badge changes dynamically to immediately signal whether Buying (customizable color, default: Teal) or Selling (customizable color, default: Red) pressure was dominant on the current bar.
Usage:
Traders can use this tool to identify periods of heavy accumulation (high Buy Volume) or distribution (high Sell Volume), providing insight into the conviction behind price movements.
Supply and Demand Zones [BigBeluga]🔵 OVERVIEW
The Supply and Demand Zones indicator automatically identifies institutional order zones formed by high-volume price movements. It detects aggressive buying or selling events and marks the origin of these moves as demand or supply zones. Untested zones are plotted with thick solid borders, while tested zones become dashed, signaling reduced strength.
🔵 CONCEPTS
Supply Zones: Identified when 3 or more bearish candles form consecutively with above-average volume. The script then searches up to 5 bars back to find the last bullish candle and plots a supply zone from that candle’s low to its low plus ATR.
Demand Zones: Detected when 3 or more bullish candles appear with above-average volume. The script looks up to 5 bars back for a bearish candle and plots a demand zone from its high to its high minus ATR.
Volume Weighting: Each zone displays the cumulative bullish or bearish volume within the move leading to the zone.
Tested Zones: If price re-enters a zone and touches its boundary after being extended for 15 bars, the zone becomes dashed , indicating a potential weakening of that level.
Overlap Logic: Older overlapping zones are removed automatically to keep the chart clean and only show the most relevant supply/demand levels.
Zone Expiry: Zones are also deleted after they’re fully broken by price (i.e., price closes above supply or below demand).
🔵 FEATURES
Auto-detects supply and demand using volume and candle structure.
Extends valid zones to the right side of the chart.
Solid borders for fresh untested zones.
Dashed borders for tested zones (after 15 bars and contact).
Prevents overlapping zones of the same type.
Labels each zone with volume delta collected during zone formation.
Limits to 5 zones of each type for clarity.
Fully customizable supply and demand zone colors.
🔵 HOW TO USE
Use supply zones as potential resistance levels where sell-side pressure could emerge.
Use demand zones as potential support areas where buyers might step in again.
Pay attention to whether a zone is solid (untested) or dashed (tested).
Combine with other confluences like volume spikes, trend direction, or candlestick patterns.
Ideal for swing traders and scalpers identifying key reaction levels.
🔵 CONCLUSION
Supply and Demand Zones is a clean and logic-driven tool that visualizes critical liquidity zones formed by institutional moves. It tracks untested and tested levels, giving traders a visual edge to recognize where price might bounce or reverse due to historical order flow.
GARCH Volume Volatility [MarkitTick]Title: GARCH Volume Volatility
Description
Overview
The GARCH Volume Volatility (GV) indicator is a sophisticated quantitative tool designed to analyze the rate of change in market participation. While the vast majority of technical indicators focus on Price Volatility (how much price moves), this script focuses on Volume Volatility (how unstable the participation is).
Market volume is rarely distributed evenly; it tends to cluster. Periods of high activity are often followed by more high activity, and periods of calm tend to persist. This behavior is known as "heteroskedasticity." This script utilizes an Exponentially Weighted Moving Average (EWMA) model—a core component of Generalized Autoregressive Conditional Heteroskedasticity (GARCH) frameworks—to model these changing variance regimes.
By isolating volume volatility from raw volume data, this tool helps traders distinguish between sustainable liquidity flows and erratic, unsustainable volume shocks that often precede market reversals or breakouts.
Methodology and Calculations
1. Logarithmic vs. Percentage Returns
The foundation of this indicator is the calculation of "Volume Returns"—the period-over-period change in volume.
- The script defaults to Logarithmic Returns. In financial statistics, log returns are preferred because they normalize data that can vary wildly in magnitude (such as cryptocurrency volume spikes), providing a more symmetric view of changes.
- Users can opt for standard percentage changes if they prefer a linear approach.
2. Variance Proxy (Squared Returns)
To measure volatility, the direction of the volume change (up or down) matters less than the magnitude. The script squares the returns to create a "Variance Proxy." This ensures that a massive drop in volume is treated with the same statistical weight as a massive spike in volume—both represent a significant change in the volatility of participation.
3. GARCH-Style Smoothing (EWMA)
Standard Moving Averages (SMA) treat all data points in the lookback period equally. However, volatility is dynamic. This script uses an EWMA model with a tunable "Lambda" (Decay Factor).
- The Recursive Formula: The current calculation relies on a weighted average of the current variance and the previous period's smoothed variance.
- Memory Effect: This allows the indicator to "remember" recent volatility shocks while gradually letting their influence fade. This mimics the GARCH process of conditional variance.
4. Dynamic Statistical Thresholds
The final output is the Volatility (square root of variance). To make this data actionable, the script calculates a dynamic upper and lower limit based on the standard deviation (Z-Score) of the volatility itself over a user-defined lookback period.
How to Use
The indicator plots a histogram that categorizes the market into four distinct volatility regimes:
1. High Volatility (Red Histogram)
Trigger: Volatility > High Band (Upper Standard Deviation).
Interpretation: This signals an extreme anomaly in volume stability. This is not just "high volume," but "erratic volume behavior." This often occurs at:
- Capitulation bottoms (panic selling).
- Euphoric tops (blow-off tops).
- Major news events or earnings releases.
2. Elevated Volatility (Maroon Histogram)
Trigger: Volatility > Mean Average.
Interpretation: The market is in an active state. Participation is changing rapidly, but within statistically normal bounds. This is common during healthy, trending moves where new participants are entering the market steadily.
3. Normal/Low Volatility (Green Histogram)
Trigger: Volatility is within the lower bands.
Interpretation: The market volume is stable. There are no sudden shocks in participation. This is typical of consolidation phases or "creeping" trends where the price drifts without significant volume conviction.
4. Extremely Low Volatility (Bright Green/Transparent)
Trigger: Volatility < Low Band.
Interpretation: The "calm before the storm." When volume volatility collapses to near-zero, it implies that the market has reached a state of equilibrium or disinterest. Historically, volatility is cyclical; periods of extreme compression often lead to violent expansion.
Settings and Configuration
Core Settings
- Use EWMA: When checked (Default), uses the recursive GARCH-style calculation. If unchecked, it reverts to a simple SMA of variance, which is less sensitive to recent shocks but more stable.
- Log Returns: Uses natural log for calculations. Highly recommended for assets with exponential growth or large volume ranges.
- Length: The baseline period for the calculation.
- Threshold Lookback: The number of bars used to calculate the Mean and Standard Deviation bands.
- EWMA Lambda: The decay factor (0.0 to 1.0). A value of 0.94 is standard for risk metrics.
-- Higher Lambda (e.g., 0.98): The indicator reacts slower and is smoother (long memory).
-- Lower Lambda (e.g., 0.80): The indicator reacts very fast to new data (short memory).
Visuals
- Show Thresholds: Toggles the visibility of the statistical bands on the chart.
- High Band (StdDev): The multiplier for the upper warning zone. Default is 1.5 deviations. Increasing this to 2.0 or 3.0 will filter for only the most extreme events.
Disclaimer This tool is for educational and technical analysis purposes only. Breakouts can fail (fake-outs), and past geometric patterns do not guarantee future price action. Always manage risk and use this tool in conjunction with other forms of analysis.
Fair Value Gap Signals [Kodexius]Fair Value Gap Signals is an advanced market structure tool that automatically detects and tracks Fair Value Gaps (FVGs), evaluates the quality of each gap, and highlights high value reaction zones with visual metrics and signal markers.
The script is designed for traders who focus on liquidity concepts, order flow and mean reversion. It goes beyond basic FVG plotting by continuously monitoring how price interacts with each gap and by quantifying three key aspects of each zone:
-Entry velocity inside the gap
-Volume absorption during tests
-Structural integrity and depth of penetration
The result is a dynamic, information rich visualization of which gaps are being respected, which are being absorbed, and where potential reversals or continuations are most likely to occur.
All visual elements are configurable, including the maximum number of visible gaps per direction, mitigation method (close or wick) and an ATR based filter to ignore insignificant gaps in low volatility environments.
🔹 Features
🔸 Automated Fair Value Gap Detection
The script detects both bullish and bearish FVGs based on classic three candle logic:
Bullish FVG: current low is strictly above the high from two bars ago
Bearish FVG: current high is strictly below the low from two bars ago
🔸 ATR Based Gap Filter
To avoid clutter and low quality signals, the script can ignore very small gaps using an ATR based filter.
🔸Per Gap State Machine and Lifecycle
Each gap is tracked with an internal status:
Fresh: gap has just formed and has not been tested
Testing: price is currently trading inside the gap
Tested: gap was tested and left, waiting for a potential new test
Rejected: price entered the gap and then rejected away from it
Filled: gap is considered fully mitigated and no longer active
This state machine allows the script to distinguish between simple touches, multiple tests and meaningful reversals, and to trigger different alerts accordingly.
🔸 Visual Ranking of Gaps by Metrics
For each active gap, three additional horizontal rank bars are drawn on top of the gap area:
Rank 1 (Vel): maximum entry velocity inside the gap
Rank 2 (Vol): relative test volume compared to average volume
Rank 3 (Dpt): remaining safety of the gap based on maximum penetration depth
These rank bars extend horizontally from the creation bar, and their length is a visual score between 0 and 1, scaled to the age of the gap. Longer bars represent stronger or more favorable conditions.
🔸Signals and Rejection Markers
When a gap shows signs of rejection (price enters the gap and then closes away from it with sufficient activity), the script can print a signal label at the reaction point. These markers summarize the internal metrics of the gap using a tooltip:
-Velocity percentage
-Volume percentage
-Safety score
-Number of tests
🔸 Flexible Mitigation Logic (Close or Wick)
You can choose how mitigation is defined via the Mitigation Method input:
Close: the gap is considered filled only when the closing price crosses the gap boundary
Wick: a full fill is detected as soon as any wick crosses the gap boundary
🔸 Alert Conditions
-New FVG formed
-Price entering a gap (testing)
-Gap fully filled and invalidated
-Rejection signal generated
🔹Calculations
This section summarizes the main calculations used under the hood. Only the core logic is covered.
1. ATR Filter and Gap Size
The script uses a configurable ATR length to filter out small gaps. First the ATR is computed:
float atrVal = ta.atr(atrLength)
Gap size for both directions is then measured:
float gapSizeBull = low - high
float gapSizeBear = low - high
If useAtrFilter is enabled, gaps smaller than atrVal are ignored. This ties the minimum gap size to the current volatility regime.
2. Fair Value Gap Detection
The basic FVG conditions use a three bar structure:
bool fvgBull = low > high
bool fvgBear = high < low
For bullish gaps the script stores:
-top as low of the current bar
-bottom as high
For bearish gaps:
-top as high of the current bar
-bottom as low
This defines the price range that is considered the imbalance area.
3. Depth and Safety Score
Depth measures how far price has penetrated into the gap since its creation. For each bar, the script computes a currentDepth and updates the maximum depth:
float currentDepth = 0.0
if g.isBullish
if l < g.top
currentDepth := g.top - l
else
if h > g.bottom
currentDepth := h - g.bottom
if currentDepth > g.maxDepth
g.maxDepth := currentDepth
The safety score expresses how much of the gap remains intact:
float depthRatio = g.maxDepth / gapSize
float safetyScore = math.max(0.0, 1.0 - depthRatio)
safetyScore near 1: gap is mostly untouched
safetyScore near 0: gap is mostly or fully filled
4. Velocity Metric
Velocity captures how aggressively price moves inside the gap. It is based on the body to range ratio of each bar that trades within the gap and rewards bars that move in the same direction as the gap:
float barRange = h - l
float bodyRatio = math.abs(close - open) / barRange
float directionBonus = 0.0
if g.isBullish and close > open
directionBonus := 0.2
else if not g.isBullish and close < open
directionBonus := 0.2
float currentVelocity = math.min(bodyRatio + directionBonus, 1.0)
The gap keeps track of the strongest observed value:
if currentVelocity > g.maxVelocity
g.maxVelocity := currentVelocity
This maximum is later used as velScore when building the velocity rank bar.
5. Volume Accumulation and Volume Score
While price is trading inside a gap, the script accumulates the traded volume:
if isInside
g.testVolume += volume
It also keeps track of the number of tests and the volume at the start of the first test:
if g.status == "Fresh"
g.status := "Testing"
g.testCount := 1
g.testStartVolume := volume
An average volume is computed using a 20 period SMA:
float volAvg = ta.sma(volume, 20)
The expected volume is approximated as:
float expectedVol = volAvg * math.max(1, (bar_index - g.index) / 2)
The volume score is then:
float volScore = math.min(g.testVolume / expectedVol, 1.0)
This produces a normalized 0 to 1 metric that shows whether the gap has attracted more or less volume than expected over its lifetime.
6. Rank Bar Scaling
All three scores are projected visually along the time axis as horizontal bars. The script uses the age of the gap in bars as the maximum width:
float maxWidth = math.max(bar_index - g.index, 1)
Then each metric is mapped to a bar length:
int len1 = int(math.max(1, maxWidth * velScore))
g.rankBox1.set_right(g.index + len1)
int len2 = int(math.max(1, maxWidth * volScore))
g.rankBox2.set_right(g.index + len2)
int len3 = int(math.max(1, maxWidth * safetyScore))
g.rankBox3.set_right(g.index + len3)
This creates an intuitive visual representation where stronger metrics produce longer rank bars, making it easy to quickly compare the relative quality of multiple FVGs on the chart.
Volume Profile VisionVolume Profile Vision - Complete Description
Overview
Volume Profile Vision (VPV) is an advanced volume profile indicator that visualizes where trading activity has occurred at different price levels over a specified time period. Unlike traditional volume indicators that show volume over time, this indicator displays volume distribution across price levels, helping traders identify key support/resistance zones, fair value areas, and potential reversal points.
What Makes This Indicator Original
Volume Profile Vision introduces several unique features not found in standard volume profile tools:
Dual-Direction Histogram Display:
Unlike conventional volume profiles that only show bars extending in one direction, VPV displays volume bars extending both left (into historical candles) and right (as a traditional histogram). This bi-directional approach allows traders to see exactly where historical price action intersected with high-volume nodes.
Real-Time Candle Highlighting: The indicator dynamically highlights volume bars that intersect with the current candle's price range, making it immediately obvious which volume levels are currently in play.
Four Professional Color Schemes: Each color scheme uses distinct gradient algorithms and visual encoding systems:
Traffic Light: Uses red (POC), green (VA boundaries), yellow (HVN), with grayscale gradients outside the value area
Aurora Glass: Modern cyan-to-magenta gradient with hot magenta POC highlighting
Obsidian Precision: Professional dark theme with white POC and electric cyan accents
Black Ice: Monochromatic cyan family with graduated intensity
Adaptive Transparency System: Automatically adjusts bar transparency based on position relative to value area, with special handling for each color scheme to maintain visual clarity.
Core Concepts & Calculations
Volume Distribution Analysis
The indicator divides the visible price range into user-defined price levels (default: 80 levels) and calculates the total volume traded at each level by:
Scanning back through the specified lookback period (customizable or visible range)
For each historical bar, determining which price levels the bar's high/low range intersects
Accumulating volume for each intersected price level
Optionally filtering by bullish/bearish volume only
Point of Control (POC)
The POC is the price level with the highest traded volume during the analyzed period. This represents the "fairest" price where most traders agreed on value. The indicator marks this with distinct coloring (red in Traffic Light, magenta in Aurora Glass, white in Obsidian Precision, cyan in Black Ice).
Trading Significance: POC acts as a strong magnet for price - markets tend to return to fair value. When price is away from POC, traders watch for:
Mean reversion opportunities when price is far from POC
Rejection signals when price tests POC from above/below
Breakout confirmation when price breaks through and holds beyond POC
Value Area (VA)
The Value Area encompasses the price range where a specified percentage (default: 68%) of all volume traded. This represents the range of "accepted value" by market participants.
Calculation Method:
Start at the POC (highest volume level)
Expand upward and downward, adding adjacent price levels
Always add the level with higher volume next
Continue until accumulated volume reaches the VA percentage threshold
Value Area High (VAH): Upper boundary of accepted value - acts as resistance
Value Area Low (VAL): Lower boundary of accepted value - acts as support
Trading Significance:
Price spending time inside VA indicates market equilibrium
Breakouts above VAH suggest bullish momentum shift
Breakdowns below VAL suggest bearish momentum shift
Returns to VA boundaries often provide high-probability entry zones
High Volume Nodes (HVN)
Price levels with volume exceeding a threshold percentage (default: 80%) of POC volume. These represent areas of strong agreement and consolidation.
Trading Significance:
HVNs act as strong support/resistance zones
Price tends to consolidate at HVNs before making directional moves
Breaking through an HVN often signals strong momentum
Low Volume Nodes (LVN)
Price levels within the Value Area with volume ≤30% of POC volume. These are zones price moved through quickly with minimal consolidation.
Trading Significance:
LVNs represent areas of rejection - price finds little acceptance
Price tends to move rapidly through LVN zones
Useful for setting stop-losses (below LVN for longs, above for shorts)
Can identify potential gaps or "air pockets" in the market structure
Grayscale POC Detection
A secondary POC detection system identifies the highest volume level outside the Value Area (with a 2-level buffer to avoid confusion). This helps identify significant volume accumulation zones that exist beyond the main value area.
How to Use This Indicator
Setup
Choose Lookback Period:
Enable "Use Visible Range" to analyze only what's on your chart
Or set "Fixed Range Lookback Depth" (default: 200 bars) for consistent analysis
Adjust Profile Resolution:
"Number of Price Levels" (default: 80) - higher = more granular analysis, lower = broader zones
Select Color Scheme:
Traffic Light: Best for clear POC/VA/HVN identification
Aurora Glass: Modern aesthetic for dark charts
Obsidian Precision: Professional trader preference
Black Ice: Minimalist single-color family
Visual Customization
Left Extension: How far back the left-side histogram extends into historical candles (default: 490 bars)
Right Extension: Width of the traditional histogram bars on the right (default: 50 bars)
Right Margin: Space between current price bar and histogram (default: 0 for flush alignment)
Left Profile Gap: Space between left-side histogram and candles (default: 0)
Trading Strategies
Strategy 1: Value Area Mean Reversion
Wait for price to move outside the Value Area (above VAH or below VAL)
Look for rejection signals (wicks, bearish/bullish candles)
Enter trades toward the POC
Take profits as price returns to POC or opposite VA boundary
Strategy 2: Breakout Confirmation
Identify when price is consolidating within the Value Area
Wait for a strong close above VAH (bullish) or below VAL (bearish)
Enter on the breakout or on first pullback to the VA boundary
Target previous HVNs or swing highs/lows outside the VA
Strategy 3: POC Support/Resistance
Watch for price approaching the POC level
If approaching from below, look for bullish reversal patterns at POC (support)
If approaching from above, look for bearish reversal patterns at POC (resistance)
Trade in the direction of the bounce with stops beyond the POC
Strategy 4: LVN Fast Movement Zones
Identify LVN zones within the Value Area (marked with "LVN" label)
When price enters an LVN, expect rapid movement through the zone
Avoid entering trades within LVNs
Use LVNs as confirmation of directional momentum
Alert System
The indicator includes 7 customizable alert conditions:
POC Touch: Alerts when price comes within 0.5 ATR of POC
VAH/VAL Touch: Alerts at Value Area boundaries
VA Breakout: Alerts on breakouts above VAH or below VAL
HVN Touch: Alerts when price contacts High Volume Nodes
LVN Entry: Alerts when entering Low Volume zones
POC Shift: Alerts when POC moves to a new price level
Reading the Profile
Price Labels (shown on the right side):
POC: Point of Control - highest volume price level
VAH: Value Area High - upper boundary of accepted value
VAL: Value Area Low - lower boundary of accepted value
LVN: Low Volume Node - expect fast movement through this zone
Color Intensity Interpretation:
Brighter colors = higher volume concentration
Dimmer colors = lower volume
Abrupt color changes = transition between volume zones
Gaps in the histogram = price levels with no trading activity
Technical Details
Volume Accumulation Logic:
For each bar in lookback period:
For each price level:
If bar's high/low range intersects price level:
Add bar's volume to that price level's total
Gradient Algorithm:
Traffic Light: Dual-range piecewise gradient (0-50% and 50-100% volume intensity)
Aurora Glass: Linear cyan-to-magenta interpolation
Obsidian Precision: Dark blue gradient with cyan highlights
Black Ice: Three-stage cyan intensity progression
Real-Time Updates:
The profile recalculates on every bar, including real-time tick data, ensuring the volume distribution always reflects current market structure.
Best Practices
Timeframe Selection: Use higher timeframes (4H, Daily) for swing trading, lower timeframes (5min, 15min) for day trading
Combine with Price Action: Volume profile shows WHERE, price action shows WHEN
Multiple Timeframe Analysis: Check daily VP for major levels, then drill down to intraday for entries
Volume Type Selection: Use "Bullish" volume in uptrends, "Bearish" in downtrends, or "Both" for complete picture
Adjust VA Percentage: 68% (default) captures one standard deviation; try 70% for tighter or 60% for broader value areas
Performance Notes
Maximum bars back: 5000 (handles deep historical analysis)
Maximum boxes: 500 (handles complex profiles)
Optimized calculation: Only recalculates on last bar for efficiency
Real-time capable: Updates as new ticks arrive
Kinetic EMA & Volume with State EngineKinetic EMA & Volume with State Engine (EMVOL)
1. Introduction & Concept
The EMVOL indicator converts a dense family of EMA signals and volume flows into a compact “state engine”. Instead of looking at individual EMA lines or simple crossovers, the script treats each EMA as part of a kinetic vector field and classifies the market into interpretable states:
- Trend direction and strength (from a grid of prime‑period EMAs).
- Volume regime (expansion, contraction, climax, dry‑up).
- Order‑flow bias via delta (buy versus sell volume).
- A combined scenario label that summarises how these three layers interact.
The goal is educational: to help traders see that moving averages and volume become more meaningful when observed as a structure, not as isolated lines. EMVOL is therefore designed as a real‑time teaching tool, not as an automatic signal generator.
2. Volume Settings
Group: “Volume Settings”
A. Calculation Method
- Geometry (Source File) – Default mode.
Buy and sell volume are estimated from each candle’s geometry: the close is compared to the high/low range and the bar’s total volume is split proportionally between buyers and sellers. This approximation works on any TradingView plan and does not require lower‑timeframe data.
- Intrabar (Precise) – Reconstructs buy/sell volume using a lower timeframe via requestUpAndDownVolume(). The script asks TradingView for historical intrabar data (e.g., 15‑second bars) and builds buy/sell volume and delta from that stream. This mode can produce a more accurate view of order flow, but coverage is limited by your account’s history limits and the symbol’s available lower‑timeframe data.
B. Intrabar Resolution (If Precise)
- Intrabar Resolution (If Precise) – Selected only when the calculation method is “Intrabar (Precise)”. It defines which lower timeframe (for example 15S, 30S, 1m) is used to compute up/down volume. Smaller intrabar timeframes may give smoother and more granular deltas, but require more historical depth from the platform.
When “Intrabar (Precise)” is active, the dashboard’s extended section shows the resolution and the number of bars for which precise volume has been successfully retrieved, in the format:
- Mode: Intrabar (15S) – where N is the count of bars with valid high‑resolution volume data.
In Geometry mode this counter simply reflects the processed bars in the current session.
3. Kinetic Vector Settings
Group: “Kinetic Vector”
A. Vector Window
- Vector Window – Controls the temporal smoothing applied to the aggregated vectors (trend, volume, delta, etc.). Internally, each bar’s vector value is averaged with a simple moving window of this length.
- Shorter windows make the state engine more reactive and sensitive to local swings.
- Longer windows make the states more stable and better suited to higher‑timeframe structure.
B. Max Prime Period
- Max Prime Period – Sets the largest prime number used in the EMA grid. The engine builds a family of EMAs on prime lengths (2, 3, 5, 7, …) up to this limit and converts their slopes into angles.
- A higher limit increases the number of long‑horizon EMAs in the grid and makes the vectors sensitive to broader structure.
- A lower limit focuses the analysis on short- and medium‑term behaviour.
C. Price Source
- Price Source – The price series from which the kinetic EMA grid is built (e.g., Close, HLC3, OHLC4). Changing the source modifies the context that the state engine is reading but does not change the core logic.
4. State Engine Settings
Group: “State Engine Settings”
These inputs define how the continuous vectors are translated into discrete states.
A. Trend Thresholds
- Strong Trend Threshold – Value above which the trend vector is treated as “extreme bullish” and below which it is “extreme bearish”.
- Weak Trend Threshold – Inner boundary between neutral and directional conditions.
Roughly:
- |trend| < weak → Neutral trend state.
- weak < |trend| ≤ strong → Bullish/Bearish.
- |trend| > strong → Extreme Bullish/Extreme Bearish.
B. Volume Thresholds
- Volume Climax Threshold – Upper bound at which volume is considered “climax” (unusually expanded participation).
- Volume Expansion Threshold – Boundary for normal expansion versus contraction.
Conceptually:
- Volume above “expansion” indicates increasing activity.
- Volume near or above “climax” marks extreme participation.
- Negative values below the symmetric thresholds map to contraction and extreme dry‑up (liquidity vacuum) states.
C. Delta Thresholds
- Strong Delta Threshold – Cut‑off for extreme buying or selling dominance in delta.
- Weak Delta Threshold – Threshold for mild buy/sell bias versus neutral order flow.
Combined with the sign of the delta vector, these thresholds classify order flow as:
- Extreme Buy, Buy‑Dominant, Neutral, Sell‑Dominant, Extreme Sell.
D. State Hysteresis Bars
- State Hysteresis Bars – Minimum number of bars for which a new state must persist before the engine commits to the change. This prevents the dashboard from flickering during fast spikes and emphasises persistent market behaviour.
- Smaller values switch states quickly; larger values demand more confirmation.
5. Visual Interface
Group: “Visual Interface”
A. Ribbon Base Color
- Ribbon Base Color – Base hue for the multi‑layer EMA ribbon drawn around price. The script plots a dense grid of hidden EMAs and fills the gaps between them to form a semi‑transparent band. Narrow, overlapping bands hint at compression; wider separation hints at dispersion across EMA horizons.
B. Show Dashboard
- Show Dashboard – Toggles the on‑chart table which summarises the current state engine output. Disable this if you only want to keep the EMA ribbon and volume‑based structure on the price chart.
C. Color Theme
- Color Theme – Switch between a dark and light style for the dashboard background and text colours so that the table matches your chart theme.
D. Table Position
- Table Position – Places the dashboard at any corner or edge of the chart (Top / Middle / Bottom × Left / Centre / Right).
E. Table Size
- Table Size – Changes the dashboard’s text size (Tiny, Small, Normal, Large). Use a larger size on high‑resolution screens or when streaming.
F. Show Extended Info
- Show Extended Info – Adds diagnostic rows under the main state summary:
- Mode / Primes / Vector – Shows the current calculation mode (Geometry / Intrabar), the selected intrabar resolution and coverage in bars ( ), how many prime periods are active, and the vector window.
- Values – Displays the current aggregated vectors:
- P: price vector
- V: volume vector
- B: buy‑volume vector
- S: sell‑volume vector
- D: delta vector
Values are bounded between ‑1 and +1.
- Volume Stats – Prints the last bar’s raw buy volume, sell volume and delta as formatted numbers.
- Footer – A final row with the symbol and current time: #SYMBOL | HH:MM.
These extended rows are meant for inspecting how the engine is behaving under the hood while you scroll the chart and compare different assets or timeframes.
6. Language Settings
Group: “Language Settings”
- Select Language – Switches the entire dashboard between English and Turkish.
The underlying calculations and scenario logic are identical; only the labels, titles and comments in the table are translated.
7. Dashboard Structure & Reading Guide
The table summarises the current situation in a few rows:
1. System Header – Shows the script name and the active calculation method (“Geometry” or “Intrabar”).
2. Scenario Title – High‑level description of the current combined scenario (e.g., “Trending Buy Confirmed”, “Sideways Balanced”, “Bull Trap”, “Blow‑Off Top”). The background colour is derived from the scenario family (trending, compression, exhaustion, anomaly, etc.).
3. Bias / Trend Line – States the dominant trend bias derived from the trend vector (Extreme Bullish, Bullish, Neutral, Bearish, Extreme Bearish).
4. Signal / Consideration Line – A short sentence giving qualitative guidance about the current state (for example: continuation risk, exhaustion risk, trap‑like behaviour, or compression). This is deliberately phrased as a consideration, not as a direct trading signal.
5. Trend / Volume / Delta Rows – Three separate rows explain, in plain language, how the trend, volume regime and delta are classified at this bar.
6. Extended Info (optional) – Mode / primes / vector settings, current vector values, and last‑bar volume statistics, as described above.
Together, these rows are meant to be read as a narrative of what price, volume and order‑flow are doing, not as mechanical instructions.
8. State Taxonomy
The state engine organizes market behaviour in three stages.
8.1 Trend States (from the Price Vector)
- Extreme Bullish Trend – The prime‑grid price vector is strongly upward; most EMAs are aligned to the upside.
- Bullish Trend – Upward bias is present, but less extreme.
- Neutral Trend – EMAs are mixed or flat; price is effectively sideways relative to the grid.
- Bearish Trend – Downward bias, with the EMA grid sloping down.
- Extreme Bearish Trend – Strong downside alignment across the grid.
8.2 Volume Regime States (from the Volume Vector)
- Volume Climax (Buy‑Side) – Strong positive volume vector; participation is unusually high in the current direction.
- Volume Expansion – Activity above normal but below the climax threshold.
- Neutral Volume – No major expansion or contraction versus recent history.
- Volume Contraction – Activity is drying up compared with the past.
- Extreme Dry‑Up / Liquidity Vacuum – Very low participation; the market is thin and prone to slippage.
8.3 Delta Behaviour States (from the Delta Vector)
- Extreme Buy Delta – Buying pressure dominates strongly.
- Buy‑Dominant Delta – Buy volume exceeds sell volume, but not at an extreme.
- Neutral Delta – Buy and sell flows are roughly balanced.
- Sell‑Dominant Delta – Selling pressure dominates.
- Extreme Sell Delta – Aggressive, one‑sided selling.
8.4 Combined Scenario State s
EMVOL uses the three base states above to generate a single scenario label. These scenarios are designed to be read as context, not as entry or exit signals.
Trending Scenarios
1. Trending Buy Confirmed
- Bullish or extreme bullish trend, supported by expanding or climax volume and buy‑side delta.
- Educational idea: a healthy uptrend where both participation and order flow agree with the direction.
2. Trending Buy – Weak Volume
- Bullish trend, but volume is neutral, contracting or in dry‑up while delta is still buy‑side.
- Educational idea: price is advancing, yet participation is thinning; trend continuation becomes more fragile.
3. Trending Sell Confirmed
- Bearish or extreme bearish trend, with expanding or climax volume and sell‑side delta.
- Educational idea: strong downtrend with both volume and order‑flow confirmation.
4. Trending Sell – Weak Volume
- Bearish trend, but volume is neutral, contracting or very low while delta remains sell‑side.
- Educational idea: downside continues but with limited participation; vulnerable to short‑covering.
Sideways / Range Scenarios
5. Sideways Balanced
- Neutral trend, neutral delta, neutral volume.
- Classic range environment; low directional edge, suitable for observation and context rather than trend trading.
6. Sideways with Buy Pressure
- Neutral trend, but buy‑side delta is dominant or extreme.
- Range with latent accumulation: price may still appear sideways, but buyers are quietly more active.
7. Sideways with Sell Pressure
- Neutral trend with dominant or extreme sell‑side delta.
- Distribution‑like environment where price chops while sellers are gradually more aggressive.
Exhaustion & Volume Extremes
8. Exhaustion – Buy Risk
- Extreme bullish trend, volume climax and strong buy‑side delta.
- Educational idea: very strong up‑move where both participation and delta are already stretched; risk of exhaustion or blow‑off.
9. Exhaustion – Sell Risk
- Extreme bearish trend, volume dry‑up and strong sell‑side delta.
- Suggests one‑sided selling into increasingly thin liquidity.
10. Volume Climax (Buy)
- Neutral trend, neutral delta, but volume at climax levels.
- Often associated with a “big event” bar where participation spikes without a clear directional commitment.
11. Volume Climax (Sell / Dry‑Up)
- Neutral trend and neutral delta, while the volume vector indicates an extreme dry‑up.
- Highlights a stand‑still episode: very limited interest from both sides, increasing the sensitivity to future impulses.
Divergences
12. Divergence – Bullish Context
- Bullish or extreme bullish trend, but delta has faded back to neutral.
- Price trend continues while order‑flow conviction softens; can precede pauses or complex corrections.
13. Divergence – Bearish Context
- Bearish or extreme bearish trend with a neutral delta.
- Downtrend persists, but selling pressure no longer dominates as clearly.
Consolidation & Compression
14. Consolidation
- Default state when no specific pattern dominates and the market is broadly balanced.
- Educational use: treat this as a “no strong edge” label; focus on structure rather than direction.
15. Breakout Imminent
- Neutral trend with contracting volume.
- Compression phase where energy is building up; often precedes transitions into trending or shock scenarios.
Traps & Hidden Divergences
16. Bull Trap
- Bullish trend, with neutral or contracting volume and sell‑side delta.
- Price appears strong, but order‑flow shifts against it; often seen near fake breakouts or failing rallies.
17. Bear Trap
- Bearish trend, neutral or contracting volume, but buy‑side delta.
- Downtrend “looks” intact, while buyers become more aggressive underneath the surface.
18. Hidden Bullish Divergence
- Bullish trend, contracting volume, but strong buy‑side delta.
- Educational idea: price dips or slows while aggressive buyers step in, often inside an ongoing uptrend.
19. Hidden Bearish Divergence
- Bearish trend, volume expansion and strong sell‑side delta.
- Reinforced downside pressure even if price is temporarily retracing.
Reversal & Transition Patterns
20. Reversal to Bearish
- Neutral trend, volume climax and strong sell‑side delta.
- Suggests that heavy selling appears at the top of a move, turning a previously neutral or rising context into potential downside.
21. Reversal to Bullish
- Neutral trend, extreme volume dry‑up and strong buy‑side delta.
- Often associated with selling exhaustion where buyers start to take control.
22. Indecision Spike
- Neutral trend with extreme volume (climax or dry‑up) but neutral delta.
- Crowd participation changes sharply while order‑flow remains undecided; treat as an informational spike rather than a direction.
Extended Compression & Acceleration
23. Coiling Phase
- Neutral trend, contracting volume, and delta that is neutral or only mildly one‑sided.
- Extended compression where price, volume and delta all contract into a tightly coiled range, often preceding a strong move.
24. Bullish Acceleration
- Bullish trend with volume expansion and strong buy‑side delta.
- Uptrend not only continues but gains kinetic strength; educationally, this illustrates how trend, volume and delta align in the strongest phases of a move.
25. Bearish Acceleration
- Bearish trend with volume expansion and strong sell‑side delta.
- Mirror image of Bullish Acceleration on the downside.
Trend Exhaustion & Climax Reversal
26. Bull Exhaustion
- Bullish or extreme bullish trend, with contraction or dry‑up in volume and buy‑side or neutral delta.
- The move has already travelled far; participation fades while price is still elevated.
27. Bear Exhaustion
- Bearish or extreme bearish trend, with volume climax or contraction and sell‑side or neutral delta.
- Down‑move may be approaching a point where additional selling pressure has diminishing impact.
28. Blow‑Off Top
- Extreme bullish trend, volume climax and extreme buy delta all at once.
- Classic blow‑off behaviour: price, volume and order‑flow are simultaneously stretched in the same direction.
29. Selling Climax Reversal
- Extreme bearish trend with extreme volume dry‑up and extreme sell‑side delta.
- Marks a very aggressive capitulation phase that can precede major rebounds.
Advanced VSA / Anomaly Scenarios
30. Absorption
- Typically neutral trend with expanding or climax volume and extreme delta (either buy or sell).
- Educational focus: large participants are aggressively absorbing liquidity from the opposite side, while price remains relatively contained.
31. Distribution
- Scenario where volume remains elevated while directional conviction weakens and the trend slows.
- Represents potential “selling into strength” or “buying into weakness”, depending on the active side.
32. Liquidity Vacuum
- Combination of thin liquidity (extreme dry‑up) with a directional trend or strong delta.
- Highlights environments where even small orders can move price disproportionately.
33. Anomaly / Shock Event
- Triggered when the vector z‑scores detect rare combinations of price, volume and delta behaviour that deviate from their own historical distribution.
- Intended as a warning label for unusual events rather than a specific tradeable pattern.
9. Educational Usage Notes
- EMVOL does not produce mechanical “buy” or “sell” commands. Instead, it classes each bar into an interpretable state so that traders can study how trends, volume and order‑flow interact over time.
- A common exercise is to overlay your usual EMA crossovers, support/resistance or price patterns and observe which EMVOL scenarios appear around entries, exits, traps and climaxes.
- Because the vectors are normalized (bounded between ‑1 and +1) and then discretized, the same conceptual states can be compared across different symbols and timeframes.
10. Disclaimer & Educational Purpose
This indicator is provided strictly as an educational and analytical tool. Its purpose is to help visualise how price, volume and order‑flow interact; it is not designed to function as a stand‑alone trading system.
Please note:
1. No Automated Strategy – The script does not implement a complete trading strategy. Scenario labels and dashboard messages are descriptive and should not be followed as unconditional entry or exit signals.
2. No Financial Advice – All information produced by this indicator is general market analysis. It must not be interpreted as investment, financial or trading advice, or as a recommendation to buy or sell any instrument.
3. Risk Warning – Trading and investing involve substantial risk, including the risk of loss. Always perform your own analysis, use appropriate position sizing and risk management, and consult a qualified professional if needed. You are solely responsible for any decisions made using this tool.
4. Data Precision & Platform Limits – The “Intrabar (Precise)” mode depends on the availability of high‑resolution historical data at the chosen intrabar timeframe. If your TradingView plan or the symbol’s history does not provide sufficient depth, this mode may only partially cover the visible chart. In such cases, consider switching to “Geometry (Source File)” for a fully populated view.
Volume profilerMulti-Range Volume Analysis & Absorption Detection
This tool visualises market activity through multi-range volume profiling and absorption signal detection. It helps you quickly identify where volume expands, compresses, or diverges from expected behaviour.
What it does
Volume Profiler plots four volume EMAs (short / mid / long / longer) so you can gauge how current volume compares to different market regimes.
It also highlights structural volume extremes:
• Low-volume bars (liquidity withdrawal)
These are potential signs of exhaustion, pauses, or low liquidity environments.
• High-volume + Low-range absorption
A classic footprint-style signal where aggressive volume fails to move price.
Often seen during:
absorption of one side of the book
liquidity collection
failed breakouts
institutional accumulation/distribution
You can choose:
which EMA defines “high volume”
how to measure candle range (High-Low, True Range, or Body)
how to define baseline volatility (ATR or average range)
Alerts are included so you can monitor absorption automatically.
Features
Multi-range volume EMAs (10 / 50 / 100 / 300 by default)
Low-volume bar flags
Absorption detection based on custom thresholds
Customisable volatility baseline
Optional bar colouring
Labels displayed directly in the volume pane
Alert conditions for absorption events
How to use
This indicator is valuable for:
confirming trend strength or weakness
detecting absorption before reversal or breakout continuation
finding low-liquidity pauses
identifying volume expansion across different time horizons
footprint-style behavioural confirmation without needing order-flow data
Works across all markets and timeframes.
Notes
This script is intended for educational and analytical use.
It does not repaint.
Volume Threshold Levels - Crypto LidyaVolume Threshold Levels – Crypto Lidya
Understanding volume behavior is one of the most effective ways to detect trend changes, manipulation candles, aggressive entries, and institutional activity.
Volume Threshold Levels (VTL) not only displays raw volume but also calculates dynamic volume thresholds (2x – 3x – 4x) based on the moving average, allowing you to identify statistically meaningful volume anomalies with precision.
📌 1. Volume Columns
The indicator plots each bar’s volume using traditional column-style visualization.
Green: Bullish candle
Red: Bearish candle
Gray: Neutral candle
This helps traders clearly understand the relationship between price and volume.
📌 2. Average Volume Area
VTL offers two types of moving averages for volume:
SMA (Simple Moving Average)
EMA (Exponential Moving Average)
The average volume is drawn as a soft yellow area across the chart.
This area acts as the baseline for normal volume levels.
📌 3. Dynamic Threshold Lines (2x / 3x / 4x)
The script calculates and displays multipliers of the average volume:
2x Average
3x Average
4x Average
These levels appear as bright yellow lines.
They are extremely useful for identifying breakouts, traps, and aggressive institutional entries.
📌 4. Volume Spike Detection (Alerts)
VTL identifies upward crossovers where volume breaks above key levels:
1x Volume Signal
2x Volume Signal
3x Volume Signal
4x Volume Signal
These can be used directly as TradingView alerts.
This allows you to automate detection of high-impact volume spikes.
📌 5. Use Cases
The indicator performs exceptionally well in:
Breakout confirmation
Liquidity sweep analysis
Detecting manipulation candles
Combining with OB, FVG, or other SMC structures
Scalping and low-timeframe aggressive volume interpretation
Algorithmic filters for volume-based strategies
📌 6. Summary
VTL delivers:
✔ Dynamic average volume baseline
✔ Clear 2x–3x–4x volume thresholds
✔ Accurate detection of upside volume explosions
✔ A strong tool for traders who rely on volume confirmation
Completely open-source and ready to be extended.
Price Volume Heatmap [MHA Finverse]Price Volume Heatmap - Advanced Volume Profile Analysis
Unlock the power of institutional-level volume analysis with the Price Volume Heatmap indicator. This sophisticated tool visualizes market structure through volume distribution across price levels, helping you identify key support/resistance zones, high-probability reversal areas, and optimal entry/exit points.
🎯 What Makes This Indicator Unique?
Unlike traditional volume indicators that only show volume over time, this heatmap displays volume distribution across price levels , revealing where the most significant trading activity occurred. The gradient coloring system instantly highlights high-volume nodes (areas of strong interest) and low-volume nodes (potential breakout zones).
📊 Core Features
1. Dynamic Volume Heatmap
- Visualizes volume concentration across 250 customizable price levels
- Gradient color scheme from high volume (white) to low volume (teal/green)
- Adjustable brightness multiplier for enhanced contrast and clarity
- Real-time updates as market conditions evolve
2. Point of Control (POC)
- Automatically identifies the price level with the highest traded volume
- Acts as a magnetic price level where markets often return
- Critical for identifying fair value areas and potential reversal zones
- Customizable line style, width, and color
3. Flexible Lookback Settings
- Lookback Bars: Set any value from 1-5000 bars to control analysis depth
- Visible Range Mode: Analyze only what's currently visible on your chart
- Timeframe-Specific Settings: Different lookback periods for 1m, 5m, 15m, 30m, 1h, Daily, and Weekly charts
- Adapts to your trading style - scalping to position trading
4. Session Separation Analysis
- Tokyo Session: 00:00-09:00 UTC
- London Session: 07:00-16:00 UTC
- New York Session: 13:00-22:00 UTC
- Sydney Session: 21:00-06:00 UTC
- Daily Reset: Analyze each trading day independently
Session separation allows you to understand volume distribution specific to each major trading session, revealing institutional order flow patterns and session-specific support/resistance levels.
5. Profile Width Options
- Dynamic: Profile width adjusts based on lookback period
- Fixed Bars: Set a specific bar count for consistent profile width
- Extend Forward: Project the profile into future bars for planning trades
6. Smart Alerts
- POC crossover/crossunder alerts
- New session start notifications
- Never miss critical price action at high-volume nodes
📈 How to Use This Indicator Professionally
Understanding Market Structure:
High Volume Nodes (HVN):
- Appear as bright/white areas in the heatmap
- Represent price levels where significant trading occurred
- Act as strong support/resistance zones
- Markets often consolidate or bounce from these levels
- Trading Strategy: Look for entries when price tests HVN areas with confluence from other indicators
Low Volume Nodes (LVN):
- Appear as darker/teal areas in the heatmap
- Represent price levels with minimal trading activity
- Price tends to move quickly through these areas
- Often form "gaps" in the volume profile
- Trading Strategy: Expect rapid price movement through LVN zones; avoid placing stop losses here
Point of Control (POC):
- The single most important price level in your analysis window
- Represents the fairest price where maximum volume traded
- Price gravitates toward POC like a magnet
- Trading Strategy:
* When price is above POC: bullish bias, POC acts as support
* When price is below POC: bearish bias, POC acts as resistance
* POC breaks often lead to significant trend changes
Session-Based Analysis:
Use session separation to understand how different market participants trade:
Asian Session (Tokyo/Sydney):
- Typically lower volatility and range-bound
- Volume profiles often show tight, balanced distribution
- Use for identifying overnight ranges and gap fill zones
London Session:
- Highest volume session for forex pairs
- Often shows strong directional bias
- Look for breakouts from Asian ranges during London open
New York Session:
- Maximum participation when overlapping with London
- Institutional order flow most visible
- POC during NY session often becomes key level for following sessions
🎯 Practical Trading Applications
1. Identifying Support & Resistance:
High volume nodes from the heatmap are far more reliable than traditional swing highs/lows. When price approaches an HVN, expect reaction - either a bounce or a significant breakout if breached.
2. Trend Confirmation:
- Healthy uptrend: POC rising over time, HVN forming at higher levels
- Healthy downtrend: POC falling over time, HVN forming at lower levels
- Consolidation: POC relatively flat, volume balanced across range
3. Breakout Trading:
When price breaks through a Low Volume Node with momentum, it often continues to the next High Volume Node. Use LVN areas as measured move targets.
4. Reversal Zones:
Multiple HVN stacking on top of each other creates a "volume shelf" - an extremely strong support/resistance zone where reversals are highly probable.
5. Risk Management:
- Place stops beyond HVN areas (not within LVN zones)
- Size positions based on distance to nearest HVN
- Use POC as trailing stop level in trending markets
⚙️ Recommended Settings
For Day Trading (Scalping/Intraday):
- Lookback: 200-500 bars
- Rows: 200-250
- Enable session separation for your primary trading session
- Profile Width: Dynamic or Fixed Bars (30-50)
For Swing Trading:
- Lookback: 500-1000 bars
- Rows: 250
- Session separation: Daily Reset
- Profile Width: Dynamic
For Position Trading:
- Lookback: 1000-3000 bars
- Rows: 250
- Use timeframe-specific settings
- Profile Width: Extend Forward (20-50 bars)
💡 Pro Tips
1. Combine this indicator with price action analysis - volume confirms what price is telling you
2. Watch for POC convergence with other technical levels (fibonacci, pivot points, moving averages)
3. Volume at extremes (tops/bottoms of heatmap) often indicates exhaustion
4. Session POC from previous sessions often acts as magnet for current session
5. Increase brightness multiplier (1.5-2.5) for clearer visualization on busy charts
6. Use "Number of Sessions to Display" to analyze consistency of volume levels across multiple sessions
🎨 Customization
Fully customizable visual appearance:
- Gradient colors for volume visualization
- POC line thickness, color, and style
- Session line colors and visibility
- All settings organized in intuitive groups
⚠️ Disclaimer
This indicator is a technical analysis tool and should not be used as the sole basis for trading decisions. Always combine volume analysis with proper risk management, fundamental analysis, and other technical indicators. Past performance does not guarantee future results.
---
Support & Updates
Regular updates and improvements are made to enhance functionality. For questions, suggestions, or bug reports, please use the comments section below.
Happy Trading! 📊💹
RSI Analytic Volume Matrix [RAVM] Overview
RSI Analytic Volume Matrix is an overlay indicator that turns classic RSI into a multi-layered market-reading engine. Instead of treating RSI 30 and 70 as simple buy/sell lines, RAVM combines RSI geometry (angle and acceleration), statistical volume analysis, and a 5×5 VSA-inspired matrix to describe what is really happening inside each candle.
The script is designed as an educational and analytical tool. It does not generate trading signals. Instead, it helps you read the market context, understand where the pressure is coming from (buyers vs. sellers), and see how price, momentum, and volume interact in real time.
Concept & Philosophy
RAVM is built around a hierarchical logic and a few core ideas:
• Hierarchical State Machine: First, RSI defines a context (where we are in the 0–100 range). Then the geometric engine evaluates the angle-of-turn of RSI using a Z-Score. Only after a meaningful geometric event is detected does the system promote a bar to a potential setup (warning vs. confirmed).
• Geometric Primacy: The angle and acceleration of RSI (RSI geometry) are more important than the raw RSI level itself. RAVM uses a geometric veto: if the geometric trigger is not confirmed, the confidence score is capped below 50%, even if volume looks interesting.
• RSI Beyond 30 and 70: Being above 70 or below 30 is not treated as an automatic overbought/oversold signal. RAVM treats those zones as contextual factors that contribute only a partial portion of the final score, alongside geometry, total volume expansion, buy/sell balance, and delta power.
• Volume Decomposition: Volume is decomposed into total, buy-side, sell-side, and delta components. Each of these is normalized with a Z-Score over a shared statistical window, so RSI geometry and volume live in the same statistical context.
• Educational Scoring Pipeline: RAVM builds a 0–100 "Quantum Score" for each detected setup. The score expresses how strong the story is across four dimensions: geometry (RSI angle-of-turn), total volume expansion, which side is driving that volume (buyers vs. sellers), and the power of delta. The score is designed for learning and weighting, not for mechanical trade entries.
• VSA Matrix Engine: A 5×5 matrix combines momentum states and volume dynamics. Each cell corresponds to an interpreted VSA-style scenario (Absorption, Distribution, No Demand, Stopping Volume, Strong Reversal, etc.), shown both as text and as a heatmap dashboard on the chart.
How RAVM Works
1. RSI Context & Geometry
RAVM starts with a classic RSI, but it does not stop at simple level checks. It computes the velocity and acceleration of RSI and normalizes them via a Z-Score to produce an Angle-of-Turn metric (Z-AoT). This Z-AoT is then mapped into a 0–1 intensity value called MSI (Momentum Shift Intensity).
The script monitors both classic RSI zones (around 30 and 70) and geometric triggers. Entering the lower or upper zone is treated as a contextual event only. A setup becomes "confirmed" when a significant geometric turn is detected (based on Z-AoT thresholds). Otherwise, the bar is at most a warning.
2. Volume & Statistical Engine
The volume engine can work in two modes: a geometric approximation (based on candle structure) or a more precise intrabar mode using up/down volume requests. In both cases, RAVM builds a volume packet consisting of:
• Total volume
• Buy-side volume
• Sell-side volume
• Delta (buy – sell)
Each of these series is normalized using a Z-Score over the same statistical window that is used for RSI geometry. This allows RAVM to answer questions such as: Is total volume exceptional on this bar? Is the expansion mostly coming from buyers or from sellers? Is delta unusually strong or weak compared to recent history?
3. Scoring System (Quantum Score)
For each bar where a setup is active, RAVM computes a 0–100 score intended as an educational confidence measure. The scoring pipeline follows this sequence:
A. RSI Geometry (MSI): Measures the strength of the RSI angle-of-turn via Z-AoT. This has geometric primacy over simple level checks.
B. RSI Zone Context: Being below 30 or above 70 contributes only a partial bonus to the score, reflecting the idea that these zones are context, not automatic signals. Mildly supportive zones (e.g., RSI below 50 for bullish contexts) can also contribute with lower weight.
C. Total Volume Expansion: A normalized Volume Power term expresses how exceptional the total volume is relative to its recent distribution. If there is no meaningful volume expansion, the score remains modest even if RSI geometry looks interesting.
D. Which Side Is Driving the Volume: RAVM then checks whether the expansion is primarily on the buy side or the sell side, using Z-Score statistics for buy and sell volume separately. This stage does not yet rely on delta as a power metric; it simply answers the question: "Is this expansion mostly driven by buyers, sellers, or both?"
E. Delta as Final Power: Only at the final stage does the script bring in delta and its Z-Score as a measure of how one-sided the pressure really is. A strong negative delta during a bullish context, for example, can highlight absorption, while a strong positive delta against a bearish context can highlight distribution or a buying climax.
If a setup is not geometrically confirmed (for example, a simple entry into RSI 30/70 without a strong geometric turn), RAVM caps the final score below 50%. This "Geometric Veto" enforces the idea that RSI geometry must confirm before a scenario can be considered high-confidence.
4. Overlay UI & Smart Labels
RAVM is an overlay indicator: all information is drawn directly on the price chart, not in a separate pane. When a setup is active, a smart label is attached to the bar, together with a vertical connector line. Each label shows:
• Direction of the setup (bullish or bearish)
• Trigger type (classic OS/OB vs. geometric/hidden)
• Status (warning vs. confirmed)
• Quantum Score as a percentage
Confirmed setups use stronger colors and solid connectors, while warnings use softer colors and dotted connectors. The script also manages label placement to avoid overlap, keeping the chart clean and readable.
In addition to labels, a dashboard table is drawn on the chart. It displays the currently active matrix scenario, the dominant bias, a short textual interpretation, the full 5×5 heatmap, and summary metrics such as RSI, MSI, and Volume Power.
RSI Is Not Just 30 and 70
One of the central design decisions in RAVM is to treat RSI 30 and 70 as context, not as fixed buy/sell buttons. Many traders mechanically assume that RSI below 30 means "buy" and RSI above 70 means "sell". RAVM explicitly rejects this simplification.
Instead, the script asks a series of deeper questions: How sharp is the angle-of-turn of RSI right now? Is total volume expanding or contracting? Is that expansion dominated by buyers or sellers? Is delta confirming the move, or is there a hidden absorption or distribution taking place?
In the scoring logic, being in a lower or upper RSI zone contributes only part of the final score. Geometry, volume expansion, the buy/sell split, and delta power all have to align before a high-confidence scenario emerges. This makes RAVM much closer to a structured market-reading tool than a classic overbought/oversold indicator.
Matrix User Manual – Reading the 5×5 Grid
The heart of RAVM is its 5×5 matrix, where the vertical axis represents momentum states (M1–M5) and the horizontal axis represents volume dynamics (V1–V5). Each cell in this grid corresponds to a VSA-style scenario. The dashboard highlights the currently active cell and prints a textual description so you can read the story at a glance.
1. Confirmation Scenarios
These scenarios occur when momentum direction and volume expansion are aligned:
• Bullish Confirmation / Strong Reversal: Momentum is shifting strongly upward (often from a depressed RSI context), and expanded volume is driven mainly by buyers. Often seen as a strong bullish reversal or continuation signal from a VSA perspective.
• Bearish Confirmation / Strong Drop: Momentum is turning decisively downward, and expanded volume is driven mainly by sellers. This maps to strong bearish continuation or sharp reversal patterns.
2. Absorption & Stopping Volume
• Absorption: Total volume expands, but the dominant flow is opposite to the recent price move or the geometric bias. For example, heavy selling volume while the geometric context is bullish. This can indicate smart money quietly absorbing orders from the crowd.
• Stopping Volume: Exceptionally high volume appears near the end of an extended move, while momentum begins to decelerate. Price may still print new extremes, but the effort vs. result relationship signals potential exhaustion and the possibility of a turn.
3. Distribution & Buying Climax
• Distribution: Heavy buying volume appears within a bearish or topping context. Rather than healthy accumulation, this often represents larger players offloading inventory to late buyers. The matrix will typically flag this as a bearish-leaning scenario despite strong upside prints.
• Buying Climax: A surge of buy-side volume near the end of a strong uptrend, with momentum starting to weaken. From a VSA point of view, this is often the last push where retail aggressively buys what smart money is selling.
4. No Demand & No Supply
• No Demand: Price attempts to rise but does so on low, non-expansive volume. The market is not interested in following the move, and the lack of participation often precedes weakness or sideways action.
• No Supply: Price tries to push lower on thin volume. Selling pressure is limited, and the lack of supply can precede stabilization or recovery if buyers step back in.
5. Trend Exhaustion
• Uptrend Exhaustion: Momentum remains nominally bullish, but the quality of volume deteriorates (e.g., more effort, less net result). The matrix marks this as an uptrend losing internal strength, often after a series of aggressive moves.
• Downtrend Exhaustion: Similar logic in the opposite direction: strong prior downtrend, but increasingly inefficient downside progress relative to the volume invested. This can precede accumulation or a relief rally.
6. Effort vs. Result Scenarios
• Bullish Effort, Little Result: Buyers invest notable volume, but price progress is limited. This may reveal hidden selling into strength or a lack of follow-through from the broader market.
• Bearish Effort, Little Result: Sellers push volume, but price does not decline proportionally. This can indicate absorption of selling pressure and potential underlying demand.
7. Neutral, Churn & Thin Markets
• Neutral / Thin Market: Momentum and volume both remain muted. RAVM marks these as neutral cells where aggressive decision-making is usually less attractive and observing the broader structure is more important.
• High Volume Churn / Volatility: Both sides are active with high volume but limited directional progress. This can correspond to battle zones, local ranges, or high volatility rotations where the main message is conflict rather than clear trend.
Inputs & Options
RAVM includes several input groups to adapt the tool to your preferences:
• Localization: Multiple language options for all labels and dashboard text (e.g., English, Farsi, Turkish, Russian).
• RSI Core Settings: RSI length, source, and upper/lower contextual zones (typically around 30 and 70).
• Geometric Engine: Z-AoT sigma thresholds, confirmation ratios, and normalization window multiplier. These control how sensitive the script is to RSI angle-of-turn events.
• Volume Engine: Choice between geometric approximation and intrabar up/down volume, Z-Score thresholds for volume expansion, and related parameters.
• Visual Interface: Toggles for smart labels, dashboard table, font sizes, dashboard position, and color themes for bullish, bearish, and warning states.
Disclaimer
RSI Analytic Volume Matrix is provided for educational and research purposes only. It does not constitute financial advice and is not a signal generator. Any trading decisions you make based on this tool, or any other, are entirely your own responsibility. Always consider your own risk management rules and conduct your own analysis.






















