(supermind量化策略)a1/rsi小于65、今日上涨>1主板、非科创

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

问财量化选股策略逻辑

本选股策略为:RSI指标小于65,今日上涨幅度大于1%,选择非科创板主板股票;通过选择符合以上条件的股票进行投资,以期望能够在短期内获得盈利。

选股逻辑分析

本选股策略在RSI指标小于65、今日上涨幅度大于1%等方面与常规选股策略类似,新增了选择非科创板主板股票的条件。这一条件的加入,在一定程度上降低了风险,因为科创板的股票普遍估值偏高,同时存在政策风险。而主板股票相对更加稳定,市场估值更加合理。因此,该选股策略具有一定的合理性。

有何风险?

该选股逻辑存在追涨杀跌、市场风险等风险。选股过程仍然倾向于短暂的市场走势和股价波动,而缺乏深入分析公司基本面和长期投资价值。科创板的股票并不都是高风险,而主板股票也并不一定都是低风险,需要充分注意市场风险和股票内在价值。

如何优化?

为了更好地评估股票的实际价值和长期投资潜力,可以引入基本面数据和指标筛选。例如,可以考虑筛选具备稳定现金流和发展潜力的公司,并使用市盈率、市净率和净利润增长率等基本面指标进行筛选。此外,可以使用波动率等风险指标来筛选具备稳健发展潜力的股票,更好地平衡风险和收益。最终应结合市场形势和公司基本面等因素,进行合理的长期投资规划。

最终的选股逻辑

本选股策略为:RSI指标小于65,今日上涨幅度大于1%,选择非科创板主板股票。在充分考虑市场情况和基本面数据的基础上,选择符合条件的股票,认真研究其实际情况和市场表现,并进行风险控制管理。在选股过程中,坚持价值投资、长期资产理念,注重全面考虑公司的基本面和规模优势。

同花顺指标公式代码参考

// 选取RSI小于65,今日上涨幅度大于1%,选择非科创板主板股票的股票
select a.secucode as code, a.secuname as name, a.totalvalue as mkt_cap, bd_turnover_ratio,
       s_dq_pctchange, s_info_windcode, bd_ind_name_l1,
       ((s_mv_large - s_mv_small) / s_mv_total) as score
from stock_secu a
    inner join stock_price b on a.innercode = b.innercode
    left join stock_industry c on a.innercode = c.innercode
    left join (
        select a.s_info_windcode as wind_code, sum(a.s_mv) as s_mv_large
        from stock_basicinfo a
            inner join (
                select max(s_info_windcode) as wind_code, (s_mv + s_nmv) as mv
                from stock_basicinfo
                where s_info_windcode in (
                    select innercode from stock_secu where listedsector = '主板'
                )
                group by wind_code
            ) b on a.s_info_windcode = b.wind_code and a.s_mv + a.s_nmv = b.mv
    ) d on a.s_info_windcode = d.wind_code
    left join (
        select a.s_info_windcode as wind_code, sum(a.s_mv) as s_mv_small
        from stock_basicinfo a
            inner join (
                select min(s_info_windcode) as wind_code, (s_mv + s_nmv) as mv
                from stock_basicinfo
                where s_info_windcode in (
                    select innercode from stock_secu where listedsector = '主板'
                )
                group by wind_code
            ) b on a.s_info_windcode = b.wind_code and a.s_mv + a.s_nmv = b.mv
    ) e on a.s_info_windcode = e.wind_code
    left join (
        select sum(s_mv) as s_mv_total from stock_basicinfo
        where s_info_windcode in (
            select innercode from stock_secu where listedsector = '主板'
        )
    ) f
    left join (
        select wind_code, sum(volume) / (sum(volume) + sum(ast_volume)) as bd_turnover_ratio
        from stock_daily_trans
        where date == '20220405'
        group by wind_code
    ) g on a.s_info_windcode = g.wind_code
where b.exchangecd == '001'
    and b.originaldate == '20220406'
    and b.status == '1'
    and (a.listedsector = '主板')
    and ~a.secuname.str.startswith('ST')
    and s_dq_pctchange > 0.01
    and bd_turnover_ratio > 0.26
    and s_info_windcode is not null
    and d.s_mv_large > e.s_mv_small
    and f.s_mv_total is not null
    and s_info_windcode not in (
        select innercode from stock_secu where listedsector = '科创板'
    )
order by score desc
limit 20

python代码参考

# 导入需要使用的库
import pandas as pd
import tushare as ts
import numpy as np
import talib

# 选股函数
def stock_picking(data):
    # 计算RSI指标、涨幅、板块
    rsi = talib.RSI(data['close'], timeperiod=14)
    daily_return = data['close'].pct_change()
    sector = data['industry']    # 或者csf['industry_name1']
    
    # 筛选符合条件的股票,并剔除ST和停牌股票
    filter_cond = (rsi < 65) & (daily_return > 0.01) & 
                  (data['list_status'] == 'L') & (data['name'].str.contains('*ST') == False) & 
                  ((data['exchange'] == 'SZSE') | ((data['exchange'] == 'SSE') & (data['market'] == '主板'))) &
                  (data['symbol'].apply(lambda x: x.startswith('688')) == False)
    
    # 按市值从高到低排序
    stock_list = data[filter_cond].sort_values('market_cap', ascending=False).index.tolist()
    
    return stock_list
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论