Learn R Programming

TTR (version 0.23-4)

BBands: Bollinger Bands

Description

Bollinger Bands are a way to compare a security's volatility and price levels over a period of time. Developed by John Bollinger.

Usage

BBands(HLC, n = 20, maType, sd = 2, ...)

Arguments

HLC

Object that is coercible to xts or matrix and contains High-Low-Close prices. If only a univariate series is given, it will be used. See details.

n

Number of periods for moving average.

maType

A function or a string naming the function to be called.

sd

The number of standard deviations to use.

Other arguments to be passed to the maType function.

Value

A object of the same class as HLC or a matrix (if try.xts fails) containing the columns:

dn

The lower Bollinger Band.

mavg

The middle Moving Average (see notes).

up

The upper Bollinger Band.

pctB

The %B calculation.

Details

Bollinger Bands consist of three lines:

The middle band is generally a 20-period SMA of the typical price ([high + low + close]/3). The upper and lower bands are sd standard deviations (generally 2) above and below the MA.

The middle band is usually calculated using the typical price, but if a univariate series (e.g. Close, Weighted Close, Median Price, etc.) is provided, it will be used instead.

References

The following site(s) were used to code/document this indicator: http://www.fmlabs.com/reference/Bollinger.htm http://www.fmlabs.com/reference/BollingerWidth.htm https://www.metastock.com/Customer/Resources/TAAZ/?p=36 https://www.linnsoft.com/techind/bollinger-bands http://www.stockcharts.com/school/doku.php?id=chart_school:technical_indicators:bollinger_bands http://www.stockcharts.com/school/doku.php?id=chart_school:technical_indicators:bollinger_band_width

See Also

See EMA, SMA, etc. for moving average options; and note Warning section.

Examples

Run this code
# NOT RUN {
## The examples below show the differences between using a
## High-Low-Close series, and just a close series when
## calculating Bollinger Bands.
data(ttrc)
bbands.HLC <- BBands( ttrc[,c("High","Low","Close")] )
bbands.close <- BBands( ttrc[,"Close"] )
# }

Run the code above in your browser using DataLab