What it does
Tracks cumulative trend pressure by adding each bar’s percentage price change multiplied by the final aggregate total, then plotting that running Price Volume Trend line with an overlay moving average.
Calculations
1) Read the current close and prior close, and require the prior close to be valid and nonzero.
2) Compute the bar’s PVT step as final aggregate total × (Close – Close[1]) / Close[1].
3) Add that step to the prior PVT value to maintain the cumulative PVT line.
4) Apply the selected moving average to the finished PVT line as a separate overlay.
Unique story it tells
It measures whether percentage price change, weighted by the final aggregate total, is accumulating in a bullish or bearish direction over time.
How it identifies tops/bottoms
It does not include built-in top/bottom markers, thresholds, or reversal labels. Tops and bottoms are usually read through divergence and confirmation, such as price making a new push while PVT stops confirming, or price making a new low while PVT starts improving.
Story it tells when indicator is rising
Rising means positive percentage price change, weighted by aggregate total, is accumulating through time.
Story it tells when indicator is falling
Falling means negative percentage price change, weighted by aggregate total, is accumulating through time.
Story it tells when indicator is neutral
Neutral usually means the cumulative line is flattening because bullish and bearish weighted trend pressure are roughly offsetting each other. It can also happen when price change is small enough that new PVT steps are minimal.
What it means when indicator is rising + price is rising
Bullish confirmation: price is advancing and cumulative weighted trend pressure is also improving.
What it means when indicator is rising + price is falling
Possible bullish divergence or hidden accumulation: price is weakening, but the cumulative weighted trend line is still improving underneath the surface.
What it means when indicator is falling + price is rising
Possible bearish divergence: price is advancing while cumulative weighted trend pressure is deteriorating.
What it means when indicator is falling + price is falling
Bearish confirmation: price is declining and cumulative weighted trend pressure is also worsening.
Unique features and settings
Adjustable settings
Market Type — limits the calculation to Spot, Perps, or Both.
Mode — builds the input using Base Units or USD Turnover before the PVT math is applied.
MA Type — selects the overlay moving average type for the PVT line.
MA Length — sets the overlay moving average length.
Show Debug Table — displays the full per-venue audit table for the active routed asset.
Font Size — changes the debug table text size.
Location — moves the debug table on the chart.
Hardcoded settings
Final launch venue map — uses the suite’s finalized routed spot and perpetual venue lists as the aggregate source.
Spot/perp interpretation metadata — defines whether each venue contributes as Base, Quote, or Contracts.
Contract mode metadata — defines how contract-based rows convert before they enter the aggregate.
Contract Sizes — apply stored multipliers to perpetual rows that use contract counts.
Data-defense behavior — keeps venue-ignore protection enabled when repeated bad data appears.
Bad-bar threshold — removes a venue’s used contribution after 5 consecutive bad bars.
BASE_ONLY enforcement — forces Base Units internally on supported non-USD or index-like charts.
FALLBACK behavior — switches to the chart’s own volume on unsupported-base charts.
Market-type total-selection — uses explicit Spot / Perps / Both logic to choose the active total.
Debug fetch behavior — may widen active routed fetch scope to show the full venue map, while still reusing each venue fetch once and keeping Used and % Share honest.
Price-change source — always uses the chart close versus the prior close.
Percentage-change construction — always multiplies the final aggregate total by the chart’s percentage close change.
Previous-close validity rule — only builds a nonzero PVT step when current close, prior close, and nonzero prior close are all valid.
Cumulative construction — always accumulates the PVT step forward bar to bar.
MA attachment rule — applies the moving average to the final PVT line only.
Notes specific to this script
This script has no indicator-specific settings block beyond the shared Market Type, Mode, Moving Average, and Debug controls. Unlike OBV, it does not use only bar direction; it scales each step by the size of the percentage close change, so a larger price move creates a larger PVT step at the same aggregate total. There is no reset behavior, no signal line, and no threshold or band structure in this script. The PVT line begins only after current close, prior close, nonzero prior close, and an active routed or fallback total are valid; unavailable history is not synthetic-backfilled, and the cumulative line advances only on valid PVT steps.

