一、乖离率指标简介
乖离率指标的交易信号
-
当BIAS达到一定正值阈值时,可能预示着股价超买,是卖出信号。
-
当BIAS达到一定负值阈值时,可能预示着股价超卖,是买入信号。
二、构建交易策略
-
选择适当的时间周期计算移动平均线。
-
设定BIAS的超买和超卖阈值。
-
根据BIAS指标生成买入和卖出信号。
三、BIAS策略量化实战
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 假设df是包含股票价格的DataFrame,其中'Close'是收盘价
def calculate_bias(df, window):
ma = df['Close'].rolling(window=window).mean()
bias = (df['Close'] - ma) / ma * 100
return bias
# 设定超买和超卖阈值
overbought_threshold = 5 # 超买阈值
oversold_threshold = -5 # 超卖阈值
# 计算BIAS
bias = calculate_bias(df, 10) # 以10日移动平均线为例
# 生成交易信号
df['Signal'] = 0
df['Signal'][bias > overbought_threshold] = -1 # 卖出信号
df['Signal'][bias < oversold_threshold] = 1 # 买入信号
# 绘制BIAS和交易信号
plt.figure(figsize=(14, 7))
plt.plot(df['Close'], label='Close Price')
plt.plot(ma, label='10-Day MA', alpha=0.7)
plt.plot(df.index, df[bias], label='BIAS', alpha=0.7)
plt.plot(df[df['Signal'] == 1].index, df[bias][df['Signal'] == 1], 'g^', markersize=10, label='Buy Signal')
plt.plot(df[df['Signal'] == -1].index, df[bias][df['Signal'] == -1], 'mv', markersize=10, label='Sell Signal')
plt.legend()
plt.show()
-
策略回测
四、结语
发布者:股市刺客,转载请注明出处:https://www.95sca.cn/archives/106028
站内所有文章皆来自网络转载或读者投稿,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。敬请谅解!