(supermind量化策略)a1/rsi小于65、今日上涨>1主板、非ST(10点之前选

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

问财量化选股策略逻辑

本选股策略为:RSI指标小于65,今日上涨幅度大于1%,选取主板非ST股票,选取前五部涨停的股票进行投资,期望获得超额收益。

选股逻辑分析

该选股策略基于技术面、基本面和市场热点因素,通过筛选符合条件的高质量股票,实现稳健收益增长。RSI指标小于65代表股票处于超卖状态,有望迎来反弹;今日上涨幅度大于1%则代表该股票在短期内有上涨动能;选择前五部涨停的股票可以加速收益增长,同时,选择主板非ST股票也有一定的稳定性。

有何风险?

该选股策略过于依赖市场热点因素,存在一定的投机因素,容易被过度炒作,具有一定的风险。同时,以涨停为唯一的选股标准也存在一定的风险,可能会错过许多优质股票。因此,该选股策略并不完善,存在一定的风险。

如何优化?

可以加入更多的技术分析指标、基本面数据等因素,综合考虑各种因素,得到更加准确的选股策略。同时,在设定选股条件时可以适当添加其他约束条件,如上市时间、行业选择等等,以增加投资组合的多样性。此外,可以加入风控措施,如止损,分散投资组合,以降低风险。

最终的选股逻辑

本选股策略为:RSI指标小于65,今日上涨幅度大于1%,选取主板非ST股票,选取当天前五部涨停的股票进行投资,注重风险控制和分散投资组合。

同花顺指标公式代码参考

// 建立选股语句
SELECT
    a.*
FROM
    (
        stock_market_data a
        JOIN stock_basic_data b ON a.stock_code = b.stock_code
    )
    JOIN (
        SELECT
            stock_code
        FROM
            stock_market_data
        WHERE
            rsi < 65
        AND today_increase_rate > 1
        AND b.is_main = 1
        AND b.is_st = 0
        AND date = CURDATE()
        AND time < '10:00:00'
        ORDER BY
            increase_rate DESC
        LIMIT 5
    ) c ON a.stock_code = c.stock_code;

注意:is_main代表是否为主板股票,is_st代表是否为ST股票。

python代码参考

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

# 选股函数
def stock_picking():
    # 获取当天前五部涨停的股票信息
    today_data = ts.top_list(trade_date='2022-01-10')
    today_data = today_data[today_data['pctChg'] >= 9.9][:5]

    # 计算RSI指标,并筛选RSI指标小于65的、非ST股票
    all_data = ts.get_stock_basics()
    all_data = all_data[~all_data.index.str.contains('ST', regex=False)]
    rsi_data = pd.DataFrame(columns=['rsi'])
    for code in today_data['code'].tolist():
         history_data = ts.pro_bar(ts_code=code, adj='qfq', freq='D', start_date='20180101', end_date='')
         rsi = ta.RSI(history_data['close'], timeperiod=14)
         rsi_data.loc[code] = rsi.values[-1]
    filter_data = today_data.join(all_data, on='code')[rsi_data['rsi'] < 65]

    # 计算涨跌幅度和选股依据,并返回选股结果
    daily_return = filter_data['trade'] / filter_data['open'] - 1
    filter_data['daily_return'] = daily_return
    stock_list = filter_data['code'].tolist()

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

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

    模板如何使用?

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


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

评论