布林线(BOLL)由约翰布林先生创造,其利用统计原理,求出股价的标准差及其信赖区间,从而确定股价的波动范围及未来走势,利用波带显示股价的安全高低价位,因而也被称为布林带。其上下限范围不固定,随股价的滚动而变化。布林指标和麦克指标MIKE一样同属路径指标,股价波动在上限和下限的区间之内,这条带状区的宽窄,随着股价波动幅度的大小而变化,股价涨跌幅度加大时,带状区变宽,涨跌幅度狭小盘整时,带状区则变窄。
计算公式 中轨线=N日的移动平均线
上轨线=中轨线+两倍的标准差
下轨线=中轨线-两倍的标准差
- ################ Bollinger Bands #############################
- # Load the necessary packages and modules
- import pandas as pd
- import pandas.io.data as web
- # Compute the Bollinger Bands
- def BBANDS(data, ndays):
- MA = pd.Series(pd.rolling_mean(data['Close'], ndays))
- SD = pd.Series(pd.rolling_std(data['Close'], ndays))
- b1 = MA + (2 * SD)
- B1 = pd.Series(b1, name = 'Upper BollingerBand')
- data = data.join(B1)
- b2 = MA - (2 * SD)
- B2 = pd.Series(b2, name = 'Lower BollingerBand')
- data = data.join(B2)
- return data
- # Retrieve the Nifty data from Yahoo finance:
- data = web.DataReader('^NSEI',data_source='yahoo',start='1/1/2010', end='1/1/2016')
- data = pd.DataFrame(data)
- # Compute the Bollinger Bands for NIFTY using the 50-day Moving average
- n = 50
- NIFTY_BBANDS = BBANDS(data, n)
- print(NIFTY_BBANDS)
复制代码
|