The theory behind the indexes is as follows: On days of increasing volume, you can expect prices to increase, and on days of decreasing volume, you can expect prices to decrease. This goes with the idea of the market being in-gear and out-of-gear. Both PVI and NVI work in similar fashions: Both are a running cumulative of values, which means you either keep adding or subtracting price rate of change each day to the previous day`s sum. In the case of PVI, if today`s volume is less than yesterday`s, don`t add anything; if today`s volume is greater, then add today`s price rate of change. For NVI, add today`s price rate of change only if today`s volume is less than yesterday`s.
Great indicator, thank you. I have one query: How is this different from the NVI built into pine script (identified as nvi in the code) ? The lines pretty much trace the same path but the value generated are different.