问财量化选股策略逻辑
- 至少5根均线重合的股票
- 10日涨幅大于0小于35
- KDJ刚形成金叉
选股逻辑分析
这个策略的逻辑是基于技术分析的。首先,它要求至少5根均线重合,这可能意味着股票价格在一段时间内处于稳定状态,或者表明股票价格可能即将出现变化。其次,它要求10日涨幅大于0小于35,这可能意味着股票价格在过去10天内有一定的上涨趋势,但还没有达到过高的水平。最后,它要求KDJ刚形成金叉,这可能意味着股票价格的短期趋势正在发生变化,即将出现上涨。
有何风险?
这个策略的潜在风险是,它可能无法准确预测股票价格的未来走势。由于技术分析是一种统计学方法,它并不保证能够准确预测股票价格的未来走势。此外,这个策略也可能无法考虑到其他因素,例如公司的财务状况、行业发展趋势等,这些因素可能对股票价格产生更大的影响。
如何优化?
为了优化这个策略,可以考虑以下几点:
- 增加均线的数量,例如增加到10根均线,以更好地反映股票价格的稳定性和趋势。
- 改变KDJ金叉的条件,例如将金叉的条件改为交叉点在0轴上方,以更好地反映股票价格的短期趋势。
- 考虑其他技术指标,例如布林线、移动平均线等,以更好地反映股票价格的走势。
最终的选股逻辑
- 股票价格至少有5根均线重合
- 过去10天内股票价格上涨,涨幅大于0小于35
- KDJ金叉,交叉点在0轴上方
python代码参考
import talib
def check_ma_crossed(ma1, ma2, ma3, ma4, ma5):
if ma1[-1] > ma2[-1] and ma2[-1] > ma3[-1] and ma3[-1] > ma4[-1] and ma4[-1] > ma5[-1]:
return True
else:
return False
def check_kdj_crossed(kd, j):
if kd[-1] > j[-1] and j[-1] > 30:
return True
else:
return False
def check_stock(stock):
ma1 = talib.MA(stock, timeperiod=10)
ma2 = talib.MA(stock, timeperiod=20)
ma3 = talib.MA(stock, timeperiod=30)
ma4 = talib.MA(stock, timeperiod=40)
ma5 = talib.MA(stock, timeperiod=50)
kd = talib.STOCHKDJ(stock, fastperiod=10, slowperiod=3, fastkperiod=3, slowkperiod=3)
j = kd['k']
if check_ma_crossed(ma1, ma2, ma3, ma4, ma5) and check_kdj_crossed(kd, j):
return True
else:
return False
这个函数会检查股票的价格、均线和KDJ指标,如果满足条件则返回True,否则返回False。可以将这个函数应用到一个股票的列表中,以筛选出符合条件的股票。
如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
如果有任何问题请添加 下方的二维码进群提问。


