PROTECTED SOURCE SCRIPT
Volume vs Price Move (with Buy/Sell %)

📊 Volume vs Price Move (with Buy/Sell %) — Pine Script Indicator
🧠 Overview
This TradingView indicator provides a clean, structured analysis of how price movement correlates with directional volume within each bar. By decomposing buy-side and sell-side effort relative to the price range moved, the script gives traders powerful insight into efficiency, aggression, and imbalance between market participants.
Unlike time-based volume analysis, this tool focuses on price efficiency — how much volume it takes to move price in a particular direction — helping you interpret strength or exhaustion at a glance.
⚙️ How It Works
Each bar is analyzed as follows:
1. Price Range Breakdown
Up Move = high - open (i.e., how far price moved up from the open)
Down Move = open - low (i.e., how far price dropped from the open)
2. Volume Allocation
Total bar volume is split proportionally based on the up and down range length.
If the bar has a bigger up wick than down, more volume is assigned to the buy side.
This approach mimics volume-weighted movement effort, assuming a rough correlation between range and directional participation.
3. Volume per Point (VPP)
Buy VPP = Buy Volume ÷ Up Move
Sell VPP = Sell Volume ÷ Down Move
High VPP suggests more effort (volume) was required to move price; low VPP indicates efficient movement.
4. Volume % Contribution
Buy % and Sell % are calculated as the share of total directional volume.
5. Averages
A rolling average (avgLen) is applied to Buy VPP and Sell VPP for trend smoothing.
📋 Table Output
Column Description
Type “Buy Move” or “Sell Move” row label
Points Distance price moved up or down in the bar
Volume Volume allocated to that direction
Vol/Point Volume used to move 1 point in that direction
Avg VPP Rolling average of Vol/Point over avgLen bars
Vol % Share of total directional volume for the side
📌 Inputs
intrabarTF: Not used in logic directly, but available for future extensions
avgLen: Number of bars used to smooth VPP average
mult: Multiplier to adjust volume scale (useful for normalizing across instruments)
🧪 Use Cases
Confirm strength: High up-move with low Buy VPP confirms strong buyers.
Spot inefficiency: Rising Sell VPP with small price movement = seller exhaustion.
Identify imbalance: Large Buy % with low price move could suggest trapped buyers.
Compare trends: Use VPP and % dominance to assess trend health bar-by-bar.
⚠️ Limitations
Volume assignment is proportional, not based on actual bid/ask trade direction.
It assumes price wicks are meaningful proxies for directional flow.
For true buy/sell volume, traders should use footprint or delta charts (e.g. NinjaTrader, Sierra Chart).
✅ Ideal For
Trend traders wanting to see the effort vs result of buyers/sellers
Scalpers confirming breakout or reversal conviction
Volume profile or order flow enthusiasts wanting a lightweight alternative on TradingView
🧠 Overview
This TradingView indicator provides a clean, structured analysis of how price movement correlates with directional volume within each bar. By decomposing buy-side and sell-side effort relative to the price range moved, the script gives traders powerful insight into efficiency, aggression, and imbalance between market participants.
Unlike time-based volume analysis, this tool focuses on price efficiency — how much volume it takes to move price in a particular direction — helping you interpret strength or exhaustion at a glance.
⚙️ How It Works
Each bar is analyzed as follows:
1. Price Range Breakdown
Up Move = high - open (i.e., how far price moved up from the open)
Down Move = open - low (i.e., how far price dropped from the open)
2. Volume Allocation
Total bar volume is split proportionally based on the up and down range length.
If the bar has a bigger up wick than down, more volume is assigned to the buy side.
This approach mimics volume-weighted movement effort, assuming a rough correlation between range and directional participation.
3. Volume per Point (VPP)
Buy VPP = Buy Volume ÷ Up Move
Sell VPP = Sell Volume ÷ Down Move
High VPP suggests more effort (volume) was required to move price; low VPP indicates efficient movement.
4. Volume % Contribution
Buy % and Sell % are calculated as the share of total directional volume.
5. Averages
A rolling average (avgLen) is applied to Buy VPP and Sell VPP for trend smoothing.
📋 Table Output
Column Description
Type “Buy Move” or “Sell Move” row label
Points Distance price moved up or down in the bar
Volume Volume allocated to that direction
Vol/Point Volume used to move 1 point in that direction
Avg VPP Rolling average of Vol/Point over avgLen bars
Vol % Share of total directional volume for the side
📌 Inputs
intrabarTF: Not used in logic directly, but available for future extensions
avgLen: Number of bars used to smooth VPP average
mult: Multiplier to adjust volume scale (useful for normalizing across instruments)
🧪 Use Cases
Confirm strength: High up-move with low Buy VPP confirms strong buyers.
Spot inefficiency: Rising Sell VPP with small price movement = seller exhaustion.
Identify imbalance: Large Buy % with low price move could suggest trapped buyers.
Compare trends: Use VPP and % dominance to assess trend health bar-by-bar.
⚠️ Limitations
Volume assignment is proportional, not based on actual bid/ask trade direction.
It assumes price wicks are meaningful proxies for directional flow.
For true buy/sell volume, traders should use footprint or delta charts (e.g. NinjaTrader, Sierra Chart).
✅ Ideal For
Trend traders wanting to see the effort vs result of buyers/sellers
Scalpers confirming breakout or reversal conviction
Volume profile or order flow enthusiasts wanting a lightweight alternative on TradingView
Skrip dilindungi
Skrip ini diterbitkan sebagai sumber tertutup. Akan tetapi, anda boleh menggunakannya dengan percuma dan tanpa had – ketahui lebih lanjut di sini.
Penafian
Maklumat dan penerbitan adalah tidak dimaksudkan untuk menjadi, dan tidak membentuk, nasihat untuk kewangan, pelaburan, perdagangan dan jenis-jenis lain atau cadangan yang dibekalkan atau disahkan oleh TradingView. Baca dengan lebih lanjut di Terma Penggunaan.
Skrip dilindungi
Skrip ini diterbitkan sebagai sumber tertutup. Akan tetapi, anda boleh menggunakannya dengan percuma dan tanpa had – ketahui lebih lanjut di sini.
Penafian
Maklumat dan penerbitan adalah tidak dimaksudkan untuk menjadi, dan tidak membentuk, nasihat untuk kewangan, pelaburan, perdagangan dan jenis-jenis lain atau cadangan yang dibekalkan atau disahkan oleh TradingView. Baca dengan lebih lanjut di Terma Penggunaan.