(supermind)振幅大于1、底部抬高、深证主板中市盈率0-29

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

问财量化选股策略逻辑

选股逻辑:振幅大于1,底部抬高,深证主板中市盈率0-29.01,市净率0-3.11的股票。

选股逻辑分析

该选股逻辑除了振幅大于1和底部抬高的要求外,还增加了市盈率和市净率的筛选条件,筛选出具有一定价值投资潜力的股票。同时,该选股逻辑针对深证主板进行筛选,避免了创业板和中小板的高风险。

有何风险?

该选股逻辑所筛选的股票数量可能较少,可能会对投资效果产生影响。此外,仅依据市盈率和市净率来筛选股票,有些股票可能存在市场的错估,不具有真正的价值投资潜力。

如何优化?

在筛选股票时,除了市盈率和市净率以外,还要考虑企业的经营能力、发展前景和行业竞争等因素,以减少风险,提高收益。同时,在选股策略中增加一定的灵活性,避免过度拘泥于单一的指标体系。

最终的选股逻辑

基于以上分析,完善的选股逻辑如下:

1、振幅大于1;
2、底部抬高;
3、深证主板中市盈率0-29.01,市净率0-3.11;
4、其他指标符合要求;
5、优化选股策略。

同花顺指标公式代码参考

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

C1 = AMP() > 1;
C2 = BOTTOM(HIGH, C1) > BOTTOM(HIGH, C1 + 1);
C3 = INDUSTRY('SZSE').PE.include(0, 29.01);
C4 = INDUSTRY('SZSE').PB.include(0, 3.11);
SELECTOR = C1 AND C2 AND C3 AND C4;
RESULT = SELECTOR;

Python代码参考

以下是Python实现该选股策略的部分代码:

# 筛选符合条件的股票
selected_stocks = []
for stock in stocks:
    # 获取该股票的数据
    df = get_fundamentals(query(valuation.pe_ratio, valuation.pb_ratio).filter(valuation.code==stock), date=date)
    
    # 振幅大于1
    condition1 = df['high'].std() > 1

    # 底部抬高
    condition2 = df['low'].tail(3).iloc[0] > df['low'].tail(3).iloc[1] > df['low'].tail(3).iloc[2]

    # 市盈率符合要求
    condition3 = 0 < df['pe_ratio'][0] < 29.01

    # 市净率符合要求
    condition4 = 0 < df['pb_ratio'][0] < 3.11

    # 选取符合条件的股票,加入结果列表中
    if condition1 and condition2 and condition3 and condition4:
        selected_stocks.append(stock)

return selected_stocks

以上代码仅供参考,具体实现还需要根据自身需求进行调整。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧