问财量化选股策略逻辑
选股逻辑为RSI小于65、KDJ(K)增长值、昨日竞价换手率大于0.26的股票。此选股策略主要用于找到技术面和市场环境表现良好,同时具备高换手率的股票,通过短期投机和操作获取高收益。
选股逻辑分析
选股逻辑主要从技术面和市场环境出发,选取RSI小于65的股票,过滤出超卖状况,同时选择KDJ(K)增长值,判断股票的短期涨势。在此基础上,加入昨日竞价换手率大于0.26的条件,筛选出相对较高的换手率,即具有市场关注度的股票,提高收益。
有何风险?
此选股逻辑过于依赖市场情况,换手率波动较大。同时,KDJ指标受市场因素影响也较明显,可能会出现误判的情况,导致亏损。此外,选择不当也可能会出现流动性风险较高的股票,导致操作难度增加。
如何优化?
除了技术面和市场环境因素之外,加入股票市场价值因素,如市盈率、市净率等条件,可以更好地评估股票的投资价值。同时,在选取换手率指标时,可以考虑加入相对涨跌幅、均线情况等因素进行综合筛选,提高准确率。
最终的选股逻辑
选股逻辑为RSI小于65、KDJ(K)增长值、昨日竞价换手率大于0.26、市盈率小于30、市净率小于4等条件的股票。同时加入相对涨跌幅、均线情况等因素进行综合筛选,提高准确率,有效控制风险和流动性风险。
同花顺指标公式代码参考
通达信代码:RSI(CLOSE, 14) < 65 AND KDJ(K, D, J, 9, 3, 3) - REF(KDJ(K, D, J, 9, 3, 3), 2) > 0 AND BHVRAT_GAP > 2.6 AND PE_TTM < 30 AND PB < 4
python代码参考
# 选股函数
def stock_picking(data):
# 计算RSI
rsi = talib.RSI(data['close'], 14)
# 计算KDJ
kdj = talib.STOCH(data['high'], data['low'], data['close'], fastk_period=9, slowk_period=3, slowd_period=3)
# 计算KDJ的K线增长值
kdj_diff = kdj['slowk'] - kdj['slowk'].shift(2)
# 计算昨日竞价换手率
bhvrat_gap = (data['turnover_rate'] - data['turnover_rate'].shift(1)) / data['turnover_rate'].shift(1) * 100
bhvrat_gap = bhvrat_gap.iloc[-1]
# 计算市盈率和市净率
pe_ttm = data['pe_ttm'].iloc[-1]
pb = data['pb'].iloc[-1]
# 筛选条件
cond1 = rsi < 65
cond2 = kdj_diff > 0
cond3 = bhvrat_gap > 2.6
cond4 = pe_ttm < 30
cond5 = pb < 4
cond = cond1 & cond2 & cond3 & cond4 & cond5
stock_list = []
if sum(cond) >= 5:
selected_data = data[cond]
selected_data = selected_data.sort_values(by='pctChg', ascending=False)
for i in range(5):
stock_list.append(selected_data.index[i])
return stock_list
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
