DPO {TTR} | R Documentation |
The Detrended Price Oscillator (DPO) removes the trend in prices - or other series - by subtracting a moving average of the price from the price.
DPO(x, n=10, maType="SMA", shift=n/2+1, percent=FALSE, ...)
x |
Price, volume, etc. series to use. |
n |
Number of periods for moving average. |
maType |
A function or a string naming the function to be called. |
shift |
The number of periods to shift the moving average. |
percent |
logical; if TRUE , the percentage difference between the slow and fast moving
averages is returned, otherwise the difference between the respective averages is returned. |
... |
Other arguments to be passed to the maType function. |
The Detrended Price shows cycles and overbought / oversold conditions. Note the calculation
shifts the results shift
periods, so the last shift
periods will be zero.
A vector containing the DPO values.
As stated above, the DPO can be used on any univariate series, not just price.
Josh Ulrich
The following site(s) were used to code/document this indicator:
http://www.fmlabs.com/reference/DPO.htm
http://www.equis.com/Customer/Resources/TAAZ/?c=3&p=48
See EMA
, SMA
, etc. for moving average options; and note
Warning section. See MACD
for a general oscillator.
data(ttrc) priceDPO <- DPO(ttrc[,"Close"]) volumeDPO <- DPO(ttrc[,"Volume"])