一、多空指标BBI概述
二、多空指标BBI的计算公式

三、多空指标BBI的交易策略
-
趋势跟随策略:
-
当BBI呈上升趋势时,表明市场处于多头行情,投资者可积极买入或持有股票。
-
当BBI呈下降趋势时,表明市场处于空头行情,投资者应保持谨慎,避免买入或考虑卖出股票。
-
-
买卖信号确认:
-
买入信号:股价在低位区域突破BBI,并伴随成交量放大,视为买入信号。
-
卖出信号:股价在高位区域跌破BBI,并伴随成交量萎缩,视为卖出信号。
-
-
交叉信号:
-
金叉:股价自下而上穿过BBI形成金叉,是强烈的买入信号。
-
死叉:股价自上而下穿过BBI形成死叉,是明确的卖出信号。
-

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import pandas_datareader.data as web
# 获取股票数据
def get_stock_data(stock_symbol, start_date, end_date):
df = web.DataReader(stock_symbol, 'yahoo', start_date, end_date)
return df
# 计算BBI指标
def calculate_bbi(df, short_window=3, medium_window=6, long_window=12, very_long_window=24):
df['short_mavg'] = df['Close'].rolling(window=short_window, min_periods=1).mean()
df['medium_mavg'] = df['Close'].rolling(window=medium_window, min_periods=1).mean()
df['long_mavg'] = df['Close'].rolling(window=long_window, min_periods=1).mean()
df['very_long_mavg'] = df['Close'].rolling(window=very_long_window, min_periods=1).mean()
df['BBI'] = (df['short_mavg'] + df['medium_mavg'] + df['long_mavg'] + df['very_long_mavg']) / 4
return df
# 交易策略
def trading_strategy(df):
df['position'] = 0 # 初始化为0
df.loc[df['Close'] > df['BBI'][1:] & (df['Close'].shift(1) <= df['BBI'].shift(1)), 'position'] = 1 # 买入信号
df.loc[df['Close'] < df['BBI'][1:] & (df['Close'].shift(1) >= df['BBI'].shift(1)), 'position'] = -1 # 卖出信号
return df
# 主函数
def main():
stock_symbol = 'AAPL' # 以苹果公司为例
start_date = '2020-01-01'
end_date = '2021-01-01'
df = get_stock_data(stock_symbol, start_date, end_date)
df = calculate_bbi(df)
df = trading_strategy(df)
# 绘制BBI和交易信号
plt.figure(figsize=(14, 7))
plt.subplot(2, 1, 1)
plt.title('BBI Indicator')
plt.plot(df['BBI'], label='BBI')
plt.legend(loc='upper left')
plt.subplot(2, 1, 2)
plt.title('Trading Signals')
plt.plot(df['position'], label='Buy Signal', marker='^', markersize=10, color='g', lw=0)
plt.plot(df['position'], label='Sell Signal', marker='v', markersize=10, color='r', lw=0)
plt.legend(loc='upper left')
plt.show()
return df
if __name__ == '__main__':
main()
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/105406
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!