布林线指标的python技术实现

0
回复
6399
查看
[复制链接]

209

主题

26

回帖

1424

积分

超级版主

积分
1424
来源: 2019-7-10 06:50:14 显示全部楼层 |阅读模式
布林线(BOLL)由约翰布林先生创造,其利用统计原理,求出股价的标准差及其信赖区间,从而确定股价的波动范围及未来走势,利用波带显示股价的安全高低价位,因而也被称为布林带。其上下限范围不固定,随股价的滚动而变化。布林指标和麦克指标MIKE一样同属路径指标,股价波动在上限和下限的区间之内,这条带状区的宽窄,随着股价波动幅度的大小而变化,股价涨跌幅度加大时,带状区变宽,涨跌幅度狭小盘整时,带状区则变窄。


计算公式

中轨线=N日的移动平均线
上轨线=中轨线+两倍的标准差
下轨线=中轨线-两倍的标准差


  1. ################ Bollinger Bands #############################

  2. # Load the necessary packages and modules
  3. import pandas as pd
  4. import pandas.io.data as web

  5. # Compute the Bollinger Bands
  6. def BBANDS(data, ndays):

  7. MA = pd.Series(pd.rolling_mean(data['Close'], ndays))
  8. SD = pd.Series(pd.rolling_std(data['Close'], ndays))

  9. b1 = MA + (2 * SD)
  10. B1 = pd.Series(b1, name = 'Upper BollingerBand')
  11. data = data.join(B1)

  12. b2 = MA - (2 * SD)
  13. B2 = pd.Series(b2, name = 'Lower BollingerBand')
  14. data = data.join(B2)

  15. return data

  16. # Retrieve the Nifty data from Yahoo finance:
  17. data = web.DataReader('^NSEI',data_source='yahoo',start='1/1/2010', end='1/1/2016')
  18. data = pd.DataFrame(data)

  19. # Compute the Bollinger Bands for NIFTY using the 50-day Moving average
  20. n = 50
  21. NIFTY_BBANDS = BBANDS(data, n)
  22. print(NIFTY_BBANDS)

复制代码
油轮3.jpg

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册
关注微信