问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

布林带(Bollinger Bands)

创作时间:
作者:
@小白创作中心

布林带(Bollinger Bands)

引用
CSDN
1.
https://m.blog.csdn.net/heixiniu/article/details/144674901

布林带(Bollinger Bands)是一种技术分析工具,由约翰·布林格(John Bollinger)在20世纪80年代提出。它主要用于衡量市场的波动性,并识别价格可能的高低点。布林带由三条线组成:

  • 中轨线(Middle Band):通常是一条简单移动平均线(SMA),一般取20日收盘价的平均值。
  • 上轨线(Upper Band):中轨线加上一定倍数的标准差。通常,倍数为2。
  • 下轨线(Lower Band):中轨线减去一定倍数的标准差。通常,倍数也为2。

布林带的计算公式如下:

  • 中轨线(MB)= N日收盘价的简单移动平均线
  • 上轨线(UB)= 中轨线 + K * N日收盘价的标准差
  • 下轨线(LB)= 中轨线 - K * N日收盘价的标准差

其中,N为计算周期,通常取20;K为标准差的倍数,通常取2。

布林带的主要作用有:

  1. 识别价格趋势:当价格在布林带中轨线以上时,市场被认为是上涨趋势;当价格在布林带中轨线以下时,市场被认为是下跌趋势。
  2. 衡量波动性:布林带的宽度可以反映市场的波动性。当布林带变宽时,市场波动性增加;当布林带变窄时,市场波动性减小。
  3. 识别超买超卖:当价格触及上轨线时,市场可能处于超买状态,价格可能会回调;当价格触及下轨线时,市场可能处于超卖状态,价格可能会反弹。

在实际应用中,投资者可以结合其他技术分析工具和指标,如相对强弱指标(RSI)、移动平均线(MA)等,来提高交易决策的准确性。

以下是布林带的Python实现代码:

def stock_bob(stock_data, window=20, k_std=2):
    rolling_mean = stock_data['close'].rolling(window=window).mean()
    rolling_std = stock_data['close'].rolling(window=window).std()
    upper_band = rolling_mean + (rolling_std * k_std)
    lower_band = rolling_mean - (rolling_std * k_std)
    return rolling_mean, upper_band, lower_band

def plot_stock_bob(stock_data):
    rolling_mean, upper_band, lower_band = stock_bob(stock_data)
    stock_data['trade_date'] = pd.to_datetime(stock_data['trade_date'], format='%Y%m%d')
    plt.plot(stock_data['trade_date'], stock_data['close'], label='Close Price')
    plt.plot(stock_data['trade_date'], rolling_mean, label='Middle Band')
    plt.plot(stock_data['trade_date'], upper_band, label='Upper Band')
    plt.plot(stock_data['trade_date'], lower_band, label='Lower Band')
    plt.legend()
    plt.title('Bollinger Bands')
    plt.xlabel('Date')
    plt.ylabel('Price')
    plt.show()

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号