(supermind)振幅大于1、底部抬高、(昨日换手率_(今日竞价成交量除昨日成交量))

用户头像神盾局量子研究部
2023-08-21 发布

问财量化选股策略逻辑

选股逻辑:振幅大于1,底部抬高,(昨日换手率*(今日竞价成交量/昨日成交量))>0.5<2。

选股逻辑分析

该选股逻辑在前一个选股逻辑的基础上加入了涨跌幅指标,通过昨日的换手率和今日的竞价成交量对比计算出涨跌幅指标,筛选出涨跌幅比较合理的股票。此外,该选股逻辑依旧考虑了价格波动和历史价格走势,较为科学。

有何风险?

该选股策略仍然局限于技术面指标,且引入了涨跌幅指标,未考虑基本面数据和政策环境等因素,可能会导致在长期投资中获得较为有限的回报。

如何优化?

该选股策略可以进一步加入基本面数据和政策环境因素,如PE、PB、EPS、市场前景、行业动态等,在股票池的基础上排除由于基本面数据或政策因素等带来的风险,以获得更好的投资效果。

最终的选股逻辑

基于以上分析,我们可以综合考虑价格走势、涨跌幅和基本面因素的选股策略如下:

1、振幅大于1;
2、底部抬高;
3、(昨日换手率*(今日竞价成交量/昨日成交量))>0.5<2;
4、相应基本面数据符合要求。

同花顺指标公式代码参考

以下是在同花顺上实现该选股策略的指标公式代码:

C1: AMP()>1;
C2: BOTTOM(HIGH,C1)>BOTTOM(HIGH,C1+1);
C3: ((REF(VOL,C1)/VOL/C1)*VOL/REF(VOL,C1+1)) > 0.5 AND ((REF(VOL, C1)/VOL/C1)*VOL/REF(VOL, C1+1)) < 2;
SELECTOR:=C1 AND C2 AND C3;
RESULT:=SELECTOR;

Python代码参考

以下是Python实现该选股逻辑的部分代码:

# 计算涨跌幅
increase_ratio = sdf['open'].pct_change().rolling(window=C1).apply(lambda x: np.prod(1+x)-1, raw=False)

# 筛选振幅大于1,底部抬高,昨日换手率*(今日竞价成交量/昨日成交量)>0.5<2的个股
selected_stocks = (sdf['amp'] > 1) & \
                  (sdf['low'].rolling(window=C2).apply(lambda x: (np.argmax(x[-C2:]) == C2 - 1) and (np.argmax(x[:-C2]) < np.argmax(x[-C2:])), raw=False)) & \
                  (0.5 < (sdf['volume'].shift(1)/sdf['volume'].rolling(window=C2).mean()).rolling(window=C1).apply(lambda x:x[-1], raw=False)*(sdf['b1_v'] / sdf['volume'].shift(1))) & \
                  (基本面数据符合要求)

# 返回选中个股的代码
return selected_stocks['symbol'].tolist()

综合考虑价格走势、涨跌幅和基本面数据,我们可以使用Python编写较为完整且可行的选股策略,通过动态调整选股参数和指标,可以获得更好的选股效果。

    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

    select_sentence = '市值小于100亿' #选股语句。

    模板如何使用?

    点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。


    ## 如果有任何问题请添加 下方的二维码进群提问。
    ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
收益&风险
源码

评论

需要帮助?

试试AI小助手吧