(supermind量化-)振幅大于1、按今日竞价金额排序前5、100亿市值以内的无亏损企

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

问财量化选股策略逻辑

选股条件为:振幅大于1、按今日竞价金额排序前5、100亿市值以内的无亏损企业。

选股逻辑分析

该选股策略综合考虑了技术面、市场情绪和基本面等多方面因素。振幅大的股票波动性较大,但同时也具有较大的涨幅潜力;竞价金额排名靠前的股票可避免个别票的今日交易量太小,增加成交量和成交额的相对稳定性;100亿市值以内的无亏损企业则可以考虑公司的盈利能力和成长性。

有何风险?

该选股策略同样忽视了部分重要因素,如公司股东背景、行业发展前景等。针对市值和盈利能力的限制,可能会忽略一些具有高成长性但市值较大或者有短期亏损的个股。

如何优化?

可以结合其他指标,如市盈率、市净率、PEG等基本面指标和行业指标,综合考虑股票的技术面和基本面因素。此外,针对市值和盈利能力的限制,可以适当扩大市值范围,放宽盈利能力和成长性的要求,以纳入更多可能具有较高成长性的个股。

最终的选股逻辑

选股条件为:振幅大于1、按今日竞价金额排序前5、市值100亿以内、最近季度净利润为正值的企业。

同花顺指标公式代码参考

振幅大于1:AMO > 1
按今日竞价金额排序前5:REF(SORT_AMOUNT, 0) <= 5
市值100亿以内:MCAP < 100
最近季度净利润为正值:IF(XD,IF(DAYOFWEEK=2,STOP,0),REF(IF(XD,IF(DAYOFWEEK=2,C,0),REF(CC,1))),1) > 0

python代码参考

import tushare as ts

def get_selected_stocks(n):
    data = ts.get_today_all()
    condition1 = data['amo'] > 0 # 成交金额大于0
    condition2 = REF(SORT_AMOUNT, 0) <= 5 # 今日竞价金额排名前5
    condition3 = data['mcap'] < 100 # 市值100亿以内
    condition4 = IF(XD,IF(DAYOFWEEK=2,STOP,0),REF(IF(XD,IF(DAYOFWEEK=2,C,0),REF(CC,1))),1) > 0 # 最近季度净利润为正值
    selected_stocks = data[condition1 & condition2 & condition3 & condition4]['code'].values
    return selected_stocks[:n]

result = get_selected_stocks(5)
print(result)

注:以上代码仅供参考,实际选股应结合具体情况进行适度修改。

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

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

    模板如何使用?

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


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

评论