John Bollinger's famous adaptive volatility bands most often use the typical
price of an HLC series, or may be calculated on a univariate price series
(see BBands
).
PBands(prices, n = 20, maType = "SMA", sd = 2, ..., fastn = 2,
centered = FALSE, lavg = FALSE)
A univariate series of prices.
Number of periods to average over.
A function or a string naming the function to be called.
The number of standard deviations to use.
any other pass-thru parameters, usually for function named by
maType
.
Number of periods to use for smoothing higher-frequency 'noise'.
Whether to center the bands around a series adjusted for high
frequency noise, default FALSE
.
Whether to use a longer (n*2)
smoothing period for
centering, default FALSE
.
A object of the same class as prices
or a matrix (if
try.xts
fails) containing the columns:
The lower price volatility Band.
The smoothed centerline (see details).
The upper price volatility Band.
This function applies a second moving average denoted by fastn
to
filter out higher-frequency noise, making the bands somewhat more stable to
temporary fluctuations and spikes.
If centered
is TRUE
, the function also further smoothes and
centers the bands around a centerline adjusted to remove this higher
frequency noise. If lavg
is also TRUE
, the smoothing applied
for the middle band (but not the volatility bands) is doubled to further
smooth the price-response function.
If you have multiple different price series in prices
, and want to use
this function, call this functions using lapply(prices,PBands,...)
.
# NOT RUN {
data(ttrc)
pbands.close <- PBands( ttrc[,"Close"] )
# }
Run the code above in your browser using DataLab