(supermind量化策略)a1/rsi小于65、流通市值50-100亿、20日均线大于

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

问财量化选股策略逻辑

选股逻辑为RSI小于65、流通市值50亿-100亿、20日均线大于120日均线的股票,选取估值合理、成长性良好的个股。

选股逻辑分析

该选股策略主要考虑了技术面和基本面因素影响,包含了股票估值、规模、成长性等因素,通过RSI指标选取技术面表现较好的股票,并通过20日均线大于120日均线筛选出近期强势股,具有一定的选股价值。

有何风险?

该选股策略主要依赖于技术面指标和市值,对于公司财务状况、竞争环境等因素的考虑较少,存在选到市值下跌、未来业务前景不佳等风险。

如何优化?

可以考虑在基本面、财务指标方面进行加强,如增加股息率等财务指标,同时在技术面方面加入一些其他的技术指标或统计量,如K线形态。在选股策略中加入其他基本面因素,如利润增长率、ROE等因素,来提高选股策略的综合能力。

最终的选股逻辑

选股逻辑为RSI小于65、流通市值50亿-100亿、20日均线大于120日均线的股票,并加入ROE因素。

同花顺指标公式代码参考

RSI指标公式

LC:=REF(CLOSE,1);
AA:=SMA(MAX(CLOSE-LC,0),N,1)/SMA(ABS(CLOSE-LC),N,1)*100;
RSI:EMA(AA,M);

MA指标公式

MA(CLOSE,M);

python代码参考

# 计算RSI指标
def calc_rsi(close, n):
    lc = close.shift(1)
    aa = pd.Series(np.nan, index=close.index)
    aa[n-1:] = close.sub(lc).clip(lower=0).rolling(n).mean() / close.sub(lc).abs().rolling(n).mean() * 100
    rsi = aa.ewm(com=1.0/14, adjust=False).mean()
    return rsi

# 选股函数
def stock_picking(data):
    # 计算RSI指标和MA指标
    rsi = calc_rsi(data['close'], 14)
    ma20 = data['close'].rolling(20).mean()
    ma120 = data['close'].rolling(120).mean()
    # 根据估值指标、市值和股价选取股票
    cond = (data['negotiableMV'] >= 5e10) & (data['negotiableMV'] <= 1e11) & \
            (data['totalShares'] >= 2e8) & (rsi < 65) & (ma20 > ma120)
    stock_list = []
    if sum(cond) >= 5:
        selected_data = data[cond]
        selected_data = selected_data.sort_values(by='changePct', ascending=False)
        for i in range(5):
            stock_list.append(selected_data.index[i])
    return stock_list
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论