Diabolicus

Wash Volume Remover [Dia]

25
Open-source script

In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.

Disclaimer

The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.

Want to use this script on a chart?
//@version=2
// Logic:
// determine ratio of current volume to current price range.
// If ratio greater 150% of the average ratio of the past 100 bars then assume wash trade and replace suspicious volume with
// an hypothetical volume equivalent to 75% of the 100 bar average (75% because the average might also be distorted by past wash trades;
// if anyone knows how to replace this with a median value let me know), normalized by current range.
study("Wash Volume Remover [Dia]")
lb=input(100, title = "Lookback Period")
th=input(3.0, minval=1.0, title = "Threshold")
range=high-low
ratio=volume/range
newvol=ratio<th*sma(ratio,lb)?volume:max(0.75*(sma(volume,lb)+sma(ratio,lb)*(range-sma(range,lb))),0)
plot(newvol,color=open<close?green:red,style=columns)