(supermind量化策略)task17/a/换手率3%-12%、流通市值50-100亿

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

问财量化选股策略逻辑

选股逻辑为:在换手率3%到12%、流通市值50亿元到100亿元范围内,连续5年ROE大于15%的个股中进行选股。

选股逻辑分析

选股逻辑的目的是在保证股票基本面较好的前提下,寻找具有成长性的股票。通过筛选ROE指标,可以排除一些短期盈利却长期缺乏成长潜力的股票,提高选股的稳定性。同时,控制选取的换手率和流通市值范围,以降低投资风险。

有何风险?

在应用此选股逻辑时,需要注意该筛选指标对行业、经济周期及政策环境的影响。例如,一些稳健型传统行业企业的ROE水平较低,而新兴产业企业的ROE水平较高,虽然后者有较大成长潜力,但可能受到市场风险等因素的影响。此外,ROE高不代表利润稳定或可持续增长,例如,企业利用负债放大营收,ROE虽然高但利润风险大。

如何优化?

在使用该选股逻辑时,可以结合其他财务指标,如市盈率等进行综合分析,以提高选股策略的准确性。另外,由于ROE主要衡量企业资产的盈利效率,若将净利润纳入考虑,则可以更加全面地分析企业盈利水平。

最终的选股逻辑

在换手率3%到12%、流通市值50亿元到100亿元范围内,筛选连续5年ROE大于15%的个股,以寻找具有较高成长性且基本面较好的股票。

同花顺指标公式代码参考

通达信选股公式:

选股条件:TURNOVERRATE>3 AND TURNOVERRATE<12 AND CIRCULATION_VALUE>5e9 AND CIRCULATION_VALUE<1e10 AND ROE[1]>15 AND ROE[2]>15 AND ROE[3]>15 AND ROE[4]>15 AND ROE[5]>15

其中,TURNOVERRATE表示换手率,CIRCULATION_VALUE表示流通市值,ROE[1]表示最近一年的ROE,ROE[2]到ROE[5]分别表示5年前到2年前的ROE指标。

Python代码参考

import pandas as pd
from typing import List

def select_stock(data: pd.DataFrame) -> List[str]:
    selected_stocks = []
    for code, df in data.groupby(level=0):
        if df['circulation_value'].mean() >= 5e9 and df['circulation_value'].mean() <= 1e10:
            if all(df['roe'] >= 15):
                selected_stocks.append(code)
    return selected_stocks

该代码中,筛选出换手率在3%至12%之间、流通市值在50亿至100亿元之间、连续5年ROE大于等于15%的个股,返回符合条件的股票列表。

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

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

    模板如何使用?

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


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

评论