Skip to main content

bbands

Calculate the Bollinger Bands.

Consist of three lines. The middle band is a simple moving average (generally 20 periods) of the typical price (TP). The upper and lower bands are F standard deviations (generally 2) above and below the middle band. The bands widen and narrow when the volatility of the price is higher or lower, respectively.

Bollinger Bands do not, in themselves, generate buy or sell signals; they are an indicator of overbought or oversold conditions. When the price is near the upper or lower band it indicates that a reversal may be imminent. The middle band becomes a support or resistance level. The upper and lower bands can also be interpreted as price targets. When the price bounces off of the lower band and crosses the middle band, then the upper band becomes the price target.

Example​

from openbb import obb

stock_data = obb.equity.price.historical(symbol='TSLA', start_date='2023-01-01', provider='fmp')
bbands_data = obb.technical.bbands(data=stock_data.results, target='close', length=50, std=2, mamode='sma')

Parameters​

NameTypeDescriptionDefaultOptional
dataList[Data]List of data to be used for the calculation.False
targetstrTarget column name.closeFalse
indexstrIndex column name to use with data, by default "date".dateFalse
lengthintNumber of periods to be used for the calculation, by default 50.50False
stdfloatStandard deviation to be used for the calculation, by default 2.2False
mamodeLiteral['sma', 'ema', 'wma', 'rma']Moving average mode to be used for the calculation, by default "sma".smaFalse
offsetintOffset to be used for the calculation, by default 0.0False

Returns​

OBBject
results : List[Data]
The calculated data.