问财量化选股策略逻辑
选股逻辑:振幅大于1,K线小于20,换手率3%-12%。
选股逻辑分析
该选股逻辑是综合考虑了股票的波动程度、超卖状态和市场活跃度三个方面来进行选股。具体来说,振幅大于1表示该股票波动幅度比较大,K线小于20表示股票处于超卖状态,换手率3%-12%表示市场比较活跃但是不过度活跃。综合考虑这些因素,可以找到具备一定投资价值的股票。
有何风险?
该选股策略可能出现的风险包括:市场行情变化导致指标失效,选股时未考虑到行业因素的影响,选股过于依赖技术指标等。另外,由于换手率并不是绝对的评价指标,股票流动性可能受到其他因素的影响,导致选股结果不准确。
如何优化?
可以结合宏观经济、行业研究等基本面因素来优化选股策略,以更全面、准确地考虑股票的投资价值。此外,需要对指标的权重和选股池进行调整,以满足不同市场环境和趋势的要求。同时,对于不同的股票品种,可以更灵活地设置参数来实现更好的选股效果。
最终的选股逻辑
在综合考虑以上分析基础上,我们提出完善后的选股逻辑:
- 振幅大于1;
- K线小于20;
- 换手率3%-12%。
同花顺指标公式代码参考
以下是该选股策略在同花顺中的指标公式代码:
C:CLOSE;
D:EMA(CLOSE,12)-EMA(CLOSE,26);
J:EMA(D,9);
F1:J>=0;
F2:(HIGH-LOW)/C>0.01; // 振幅大于1
F3:(REF(VOL,1)>0) AND ((VOL-REF(VOL,1))/REF(VOL,1)>0.03) AND ((VOL-REF(VOL,1))/REF(VOL,1)<0.12); // 换手率3%-12%
FILTER:F1 AND F2 AND F3; // K线小于20和MACD零轴以上
其中,EMA()
用于计算指数平均数,详细定义可参考同花顺文档。
Python 代码参考
以下是 Python 实现该策略的选股逻辑:
# 数据预处理部分
close = dv.get_ts('close', symbol=symbols)
high = dv.get_ts('high', symbol=symbols)
low = dv.get_ts('low', symbol=symbols)
turnover_rate = dv.get_ts('turnover_rate', symbol=symbols)
df_pct_chg = close.pct_change()
df_pct_chg[df_pct_chg.isna()] = 0
amp_filter = (high / low - 1) > 0.01
kline_filter = df_pct_chg.shift(1) < 0.2
turnover_rate_filter = (turnover_rate > 0.03) & (turnover_rate < 0.12)
selected_stocks = ((amp_filter & kline_filter) & turnover_rate_filter).sort_values(ascending=False)
return selected_stocks.index.tolist()
通过 Python 实现该策略的选股逻辑,同样利用 TA-Lib 库函数以及其他指标计算 K线和换手率指标。同时也关注指标之间的权重关系和选股池的变化,尽可能地减少风险。
## 如何进行量化策略实盘?
请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
select_sentence = '市值小于100亿' #选股语句。
模板如何使用?
点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
## 如果有任何问题请添加 下方的二维码进群提问。
