(supermind量化策略)a1/rsi小于65、kdj(k)增长值、主升起动

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

问财量化选股策略逻辑

选股逻辑为RSI小于65、KDJ(K)增长值、主升起动的股票。此选股策略主要用于找到技术面和市场环境都表现良好的股票,通过短期投机和操作获取高收益。

选股逻辑分析

选股逻辑主要从技术面和市场环境出发,选取RSI小于65的股票,过滤出超卖状况,同时选择KDJ(K)增长值,判断股票的短期涨势。在这基础上,结合主升起动的条件来筛选出市场环境较好的个股,获取更高的收益。

有何风险?

此选股逻辑对股票的短期波动性有较大依赖,市场出现无法预料的不确定性因素时,可能会导致投资者出现较大的亏损情况。同时,主升起动的条件较为主观,选择不当可能会出现误判的情况,导致收益下降。

如何优化?

除了技术面和市场环境因素之外,加入股价与均线的关系因素,如股价破60日均线等条件,可以更好地过滤出持续上涨的股票。同时,可以加入其他市场环境因素,如是否处于市场追涨情况等来筛选股票,降低误判的风险。

最终的选股逻辑

选股策略为RSI小于65、KDJ(K)增长值、主升起动、股价破60日均线等条件的股票,同时加入其他市场环境因素,筛选出更好的股票进行操作,获取更高收益。

同花顺指标公式代码参考

通达信代码:RSI(CLOSE, 14) < 65 AND KDJ(K, D, J, 9, 3, 3) - REF(KDJ(K, D, J, 9, 3, 3), 2) > 0 AND MA(C, 5) > MA(C, 20) AND (C - MA(C, 60)) / MA(C, 60) * 100 > 0

python代码参考

# 选股函数
def stock_picking(data):
    # 计算RSI
    rsi = talib.RSI(data['close'], 14)
    # 计算KDJ
    kdj = talib.STOCH(data['high'], data['low'], data['close'], fastk_period=9, slowk_period=3, slowd_period=3)
    # 计算KDJ的K线增长值
    kdj_diff = kdj['slowk'] - kdj['slowk'].shift(2)
    # 计算股票是否处于主升起动状态
    ma5 = talib.MA(data['close'], timeperiod=5)
    ma20 = talib.MA(data['close'], timeperiod=20)
    cond_ma = ma5 > ma20
    # 计算股价与60日均线的差值百分比
    ma60 = talib.MA(data['close'], timeperiod=60)
    ma_diff = (data['close'] - ma60) / ma60 * 100
    # 筛选条件
    cond1 = rsi < 65
    cond2 = kdj_diff > 0
    cond3 = cond_ma
    cond4 = ma_diff > 0
    cond = cond1 & cond2 & cond3 & cond4
    stock_list = []
    if sum(cond) >= 5:
        selected_data = data[cond]
        selected_data = selected_data.sort_values(by='pctChg', 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)
收益&风险
源码

评论