(supermind量化-)振幅大于1、500日内至少2次涨停、深证主板中市盈率0-29

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

问财量化选股策略逻辑

本选股策略在日线上选取以下股票:振幅大于1、500日内至少2次涨停,深证主板中市盈率0-29.01市净率0-3.11的股票。

选股逻辑分析

本选股策略在振幅大于1和500日内至少2次涨停的基础上,加入了市盈率和市净率的过滤条件。指定市盈率和市净率范围可以筛选出相对估值较低的标的股票。同时,深证主板是国内最具活力的股票市场之一,与上海证券交易所一起构成了A股市场,在市场流动性等方面具有优势。

有何风险?

市盈率和市净率指标可能会被利用进行操纵,例如业绩造假,因此需要选取质量较高的数据源进行筛选。此外,市盈率和市净率波动较大,需要选择合适的时间窗口进行计算,以避免选股策略的稳定性受到影响。

如何优化?

可以选择多个质量较高的数据源,例如巨潮资讯、Wind等进行市盈率和市净率数据的获取,以避免被操纵的风险。同时,可以采用滚动时间窗口的方式计算市盈率和市净率,并根据选取的时间窗口进行调整,以降低波动性对选股策略带来的影响。

最终的选股逻辑

选取振幅大于1和500日内至少2次涨停,且市盈率在0-29.01,市净率在0-3.11范围内的深证主板股票。

同花顺指标公式代码参考

振幅大于1和500日内至少2次涨停参考上文的公式。

市盈率:PE ,市净率:PB 。

python代码参考

import tushare as ts

# 定义要筛选的企业性质列表
property_list = ['证券', '银行', '保险']

# 定义市盈率和市净率的范围
pe_range = [0, 29.01]
pb_range = [0, 3.11]

data = ts.get_stock_basics()
selected_stocks = data[(data['high'] - data['low']).mean() / data['close'].mean() > 0.01]
selected_stocks = selected_stocks[(selected_stocks['high'] / selected_stocks['low'].shift(1) > 1.099).rolling(500).sum() >= 2]
selected_stocks = selected_stocks[(selected_stocks['pe'] >= pe_range[0]) & (selected_stocks['pe'] <= pe_range[1])]
selected_stocks = selected_stocks[(selected_stocks['pb'] >= pb_range[0]) & (selected_stocks['pb'] <= pb_range[1])]
selected_stocks = selected_stocks[selected_stocks.index.map(lambda x: x.startswith('00'))]
#输出选中的股票
print(selected_stocks.index.tolist())

以上代码仅供参考,投资者可以根据自身需求和市场情况进行调整和验证。

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

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

    模板如何使用?

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


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

评论