Open-source scriptindicator/v1
Percentage Volume Oscillator
Compare fast and slow exponential averages of volume as a percentage difference.
#oscillator#pvo#volume
Description
The Volume Oscillator measures whether short-term activity is expanding or contracting relative to a slower volume baseline. Positive values indicate the fast average is above the slow average and negative values indicate it is below.
Open-source script. Everyone can inspect the source code, use the script on a chart, and save an editable copy.
Release notes
Version history · 1 published version
Version 1CurrentChart updatedPercentage Volume Oscillator · Aug 31, 2026
Source codempl-2.0View sourceHide source
indicator("Percentage Volume Oscillator", { overlay: false });
const fastLength = input.int("Fast Length", 5, { min: 1, max: 200 });
const slowLength = input.int("Slow Length", 10, { min: 2, max: 500 });
const fast = ema(volume, fastLength);
const slow = ema(volume, slowLength);
const line = fast.map((v, i) => slow[i] === 0 ? 0 : 100 * (v - slow[i]) / slow[i]);
plot(line, { title: "PVO", color: "#2962ff", type: "histogram" });
hline(0, { title: "Zero", color: "#78909c", style: "dotted" });
Community discussion
0 comments
No comments yet. Start the discussion.