(supermind)振幅大于1、连续5年ROE>15%、归属母公司股东的净利润(同比增长

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

问财量化选股策略逻辑

选股逻辑:振幅大于1,连续5年ROE>15%,归属母公司股东的净利润(同比增长率)大于20%小于等于100%。

选股逻辑分析

该选股逻辑首先筛选出振幅大于1的股票,要求其连续5年ROE>15%,再考虑归属母公司股东的净利润(同比增长率)在20%到100%之间。该逻辑综合考虑了技术面和基本面因素,既注重了价值属性,也关注了成长属性。

有何风险?

该选股策略可能存在以下风险:

  1. 过分强调历史业绩和属性,未考虑未来市场走势,可能出现卖出不及时等情况;
  2. 忽略其他重要影响因素对股价的影响,如市场走势、宏观经济因素等。

如何优化?

为了减少选股策略存在的风险,可以考虑以下优化:

  1. 加强技术面分析指标的选取和补充,如均线、MACD等;
  2. 加强市场预判能力,及时更新市场走势、政策、经济数据等信息;
  3. 增加风险控制意识,控制单只股票和股票池的仓位风险。

最终的选股逻辑

综上所述,我们可以优化出以下选股逻辑:

  1. 振幅>=1;
  2. 连续5年ROE>15%;
  3. 归属母公司股东的净利润(同比增长率)在20%到100%之间。

同花顺指标公式代码参考

C1: IF(HIGH - LOW >= 1, 1, 0);
C2: IF((ROE(CLOSE, 5) > 15) AND (ROE(CLOSE, 4) > 15) AND (ROE(CLOSE, 3) > 15) AND (ROE(CLOSE, 2) > 15) AND (ROE(CLOSE, 1) > 15), 1, 0);
C3: IF((FS_ROE_YOY(CLOSE, 1) > 20) AND (FS_ROE_YOY(CLOSE, 1) <= 100), 1, 0);
SELECTOR: C1 * C2 * C3;
RESULT: SELECTOR;

python代码参考

import pandas as pd

df = pd.read_csv('your_data.csv', index_col='date')

C1 = np.where(df['high'] - df['low'] >= 1, 1, 0)
C2 = np.where(
    df.groupby('code')['roe'].apply(lambda x: (x > 0.15).all()), 1, 0)
C3 = np.where(
    (df['fs_roe_yoy'] > 0.2) & (df['fs_roe_yoy'] <= 1), 1, 0)

selector = C1 * C2 * C3
result = df[selector == 1].index.tolist()
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论