(supermind量化投资)task13/a/元宇宙、前日实际换手率>3~28、归属母公

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

问财量化选股策略逻辑

该选股策略选取元宇宙行业中,在前日实际换手率在3%至28%之间,且归属母公司股东的净利润(同比增长率)大于20%小于等于100%的股票进行投资。

选股逻辑分析

该选股策略主要围绕以下条件进行选股:

  1. 选取元宇宙行业中的股票,因为这些企业可能受到元宇宙行业内用户需求的影响,具有潜在的成长性;
  2. 前日实际换手率在3%至28%之间,可能表示该个股存在着资金流动性和市场认可度;
  3. 归属母公司股东的净利润同比增长率大于20%小于等于100%,可能表示该股票具有业绩增长潜力。

综合以上条件,选择符合条件的个股进行投资。

有何风险?

  1. 可能存在过度依赖股票的财务指标分析;
  2. 只适用于盈利能力较好的公司,不适合投资亏损企业;
  3. 可能存在由于基本面变化不及时而错过股票爆发机会的风险。

如何优化?

  1. 综合考虑股票的基本面和技术面指标进行投资决策;
  2. 结合自身投资风格进行量化选股。

最终的选股逻辑

该选股策略选取元宇宙行业中,在前日实际换手率在3%至28%之间,且归属母公司股东的净利润(同比增长率)大于20%小于等于100%的股票进行投资。

同花顺指标公式代码参考

  • 元宇宙行情:GNBK("gnxq");
  • 前日实际换手率:TURNOVER(2);
  • 归属母公司股东的净利润同比增长率:INC(NP_PARENT_COMP_OWNED, 4);

选股公式:GNBK("gnxq") AND TURNOVER(2)>3 AND TURNOVER(2)<28 AND INC(NP_PARENT_COMP_OWNED, 4)>20 AND INC(NP_PARENT_COMP_OWNED, 4)<=100

Python代码参考

import pandas as pd
import tushare as ts

def stock_selector():
    ts.set_token('your_token')
    pro = ts.pro_api()
    data1 = pro.query('stock_basic', exchange='', list_status='L', fields='ts_code,name,industry')
    data1 = data1[data1['industry'].str.contains('元宇宙')]
    data2 = pro.daily(ts_code='', start_date='20220111', end_date='20220114', fields='ts_code,trade_date,open,close')
    data2 = data2.groupby('ts_code').tail(1)
    data3 = pro.fin_indicator(ts_code='', start_date='20200101', end_date='20211231', fields='ts_code,end_date,np_parent_comp_owned')
    data3 = data3[data3['ts_code'].isin(list(data1['ts_code']))]
    data3['np_yoy'] = data3.groupby(['ts_code'])['np_parent_comp_owned'].apply(lambda x: x.pct_change(periods=4))
    data3 = data3[data3['np_yoy'].between(0.2, 1)]
    data4 = pd.DataFrame(columns=['ts_code', 'name', 'industry'])
    for ts_code in list(data3['ts_code']):
        data5 = pd.DataFrame(columns=['ts_code', 'name', 'industry'])
        data5.loc[0, 'ts_code'] = ts_code
        data5.loc[0, 'name'] = data1[data1['ts_code'] == ts_code]['name'].iloc[0]
        data5.loc[0, 'industry'] = data1[data1['ts_code'] == ts_code]['industry'].iloc[0]
        data4 = pd.concat([data4, data5])
    data4 = data4.merge(data2, how='inner')
    return data4
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论