Percent Change Smoothed (PCT + EMA)

ROC works great on data with only positive numbers (like prices).
But it fails to correctly represent the rate of change when source series have negative values.

ROC is positive when:
  • Source is positive AND Source is rising
  • OR Source is negative AND Source is falling

Percent change (PCT) is just a ROC that deals with this sign confusion.
Anyone with Data Science backgroud would likely know about it.

PCT is positive only when:
  • Source is rising

When applying to only positive data PCT = ROC they are exactly equal.

I've also added EMA smoothing option.

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.


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?