Detrended Price Oscillator (DPO)

What is it?


The Detrended Price Oscillator (DPO) is a lagging, oscillating cycle indicator that was developed to identify cyclical shifts in equities by removing the overarching trend from the price action, hence the name Detrended Price Oscillator. DPO identifies cycles in the underlying price action by comparing a past price to a displaced simple moving average (SMA). The result is an oscillator that moves above and below a zero line as prices moves above and below the displaced SMA. This makes it easier to identify the cycle length, as well as the overbought or oversold conditions.

How is it calculated?

In essence, the DPO calculates the difference between the underlying price of the equity, and a displaced simple moving average (SMA) of that price. Thus, the DPO is calculated in three steps:

First, calculate the simple moving average (SMA), which is the ( Sum of price for n periods ) / n where n is the period for the DPO.

Now shift the SMA back by half of n plus 1 period using the formula: ( n / 2 ) + 1.

Finally, subtract the price from the displaced SMA.

This leaves us with the formula: SMA: DPO = Price – SMA of ( ( n / 2 ) + 1 ) periods ago

For better performance, the period for the DPO, n, should be adjusted until it matches the length of a complete cycle.

How is it used?

It is important to note that unlike most other oscillators, the DPO is essentially a lagging indicator that can projected forward. In other words, the actual cycle that the DPO plots correlates to the price of ( n / 2 ) + 1 periods ago and not to the current price. Once the cycle length is identified, it can be projected forward to indicate the possible points at which the price action can be expected to turn. Thus, the cycle length, which can be identified by the rhythmic repetition of highs and lows traced by the DPO, is of importance.

The DPO is best used as an early warning system for a possible trend reversal, but should be used with other indicators, which would act to confirm the warning.