mirror of
https://github.com/mihakralj/QuanTAlib.git
synced 2026-07-29 18:17:43 +00:00
35a6702b06
Deep review of all indicator categories verified .md headers against .cs WarmupPeriod, parameters, inputs, and outputs. Fixes include warmup corrections, parameter documentation, output type accuracy, and Pine Script alignment.
26 lines
804 B
Plaintext
26 lines
804 B
Plaintext
// Licensed under the Apache License, Version 2.0
|
|
// © mihakralj
|
|
//@version=6
|
|
indicator("Price Volume Rank (PVR)", "PVR", overlay=false)
|
|
|
|
//@function Calculates Price Volume Rank
|
|
//@param price Price series for comparison
|
|
//@param vol Volume series for comparison
|
|
//@returns Price Volume Rank (0-4)
|
|
//@optimized for performance and dirty data
|
|
pvr(series float price, series float vol=volume) =>
|
|
float p = nz(price, close), float v = nz(vol, 0.0)
|
|
float pp = nz(p[1], p), float pv = nz(v[1], v)
|
|
p > pp ? (v > pv ? 1 : 2) : p < pp ? (v < pv ? 3 : 4) : 0
|
|
|
|
// ---------- Main loop ----------
|
|
|
|
// Inputs
|
|
i_price_source = input.source(close, "Price Source")
|
|
|
|
// Calculation
|
|
pvr_value = pvr(i_price_source)
|
|
|
|
// Plot
|
|
plot(pvr_value, "PVR", color=color.yellow, linewidth=2, style=plot.style_stepline)
|