(iwencai量化策略)rsi小于65_、9点25分涨幅小于6%、振幅大于1

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

问财量化选股策略逻辑

选股逻辑为:振幅大于1、9点25分涨幅小于6%、rsi小于65。该选股策略主要综合考虑了波动性、短期涨幅和超买超卖情况。

选股逻辑分析

该选股逻辑从波动性、短期走势和超买超卖情况三个方面综合考虑,挑选振幅大于1、9点25分涨幅小于6%、rsi小于65的标的股,可以更准确地判断股票的买卖时机。其中,振幅大于1可以反映出个股的波动性,9点25分涨幅小于6%则可以筛选出短期涨幅较小的股票,而rsi指标则可以反映出股票的超买超卖情况。

有何风险?

该选股逻辑从短期走势出发,可能忽略了股票的长期价值因素,例如PE、PB、ROE等指标,忽略了股票的基本面情况和市场情况的变化可能影响个股长期走势。同时,rsi指标具有滞后性,对于快速上涨或者下跌的股票,rsi指标的反应可能较慢,对超买超卖情况的判断不一定准确。

如何优化?

在该选股逻辑的基础上,可以引入股票的基本面因素,例如PE、PB、ROE等指标,综合考虑个股价值和长期趋势。同时,可以引入其他技术指标,例如KDJ、MACD指标等,更全面地考虑市场情况和经济形势对股票的影响。

最终的选股逻辑

选股逻辑为:振幅大于1,9点25分涨幅小于6%,rsi小于65。该选股策略主要综合考虑了波动性、短期涨幅和超买超卖情况,可以更准确地判断股票的买卖时机。

同花顺指标公式代码参考

FZ_RANGE > 1 AND (LAST<=LAST[1]*1.06 OR HIGH-LAST>=HIGH*0.03) AND RSI(C,14)<65

其中,FZ_RANGE表示振幅大小,LAST表示当天的收盘价,LAST[1]表示前一天的收盘价,HIGH表示当天股票的最高价。通过以上指标查找符合条件的股票。

Python代码参考

import tushare as ts
from datetime import datetime

def get_selected_stocks():
    pro = ts.pro_api()
    
    selected_stocks = []
    for ts_code in pro.stock_basic(exchange='', list_status='L', fields='ts_code').ts_code:
        # 振幅大于1
        k_data = pro.daily(ts_code=ts_code, start_date=(datetime.now()-timedelta(days=30)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,high,low')

        highest_price = k_data['high'][0]
        lowest_price = k_data['low'][0]
        for idx, k in k_data.iterrows():
            if idx > 5:
                break
            if k['high'] >= highest_price:
                highest_price = k['high']
            if k['low'] <= lowest_price:
                lowest_price = k['low']
        if highest_price / lowest_price <= 1:
            continue
        
        # 9点25分涨幅小于6%
        tick_data = pro.tick(ts_code=ts_code, date=datetime.now().strftime('%Y%m%d'))
        current_price = tick_data[tick_data['time'] == '09:25:00']['price'].values[0]
        pre_close = pro.daily(ts_code=ts_code, start_date=(datetime.now()-timedelta(days=6)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,close', freq='1D').iloc[1]['close']
        if current_price / pre_close >= 1.06:
            continue
        
        # rsi小于65
        rsi_data = pro.query('daily', ts_code=ts_code, start_date=(datetime.now()-timedelta(days=6)).strftime('%Y%m%d'), end_date='', fields='ts_code,trade_date,rsi_14')
        if rsi_data.iloc[0]['rsi_14'] >= 65:
            continue
        
        selected_stocks.append(ts_code)
    
    return selected_stocks

其中,在Python代码中,通过使用tushare库获取股票数据,进而筛选符合条件的股票。通过振幅指标判断个股波动性情况,引入当前价格和前日收盘价计算出短期涨幅,RSI指标则筛选出超买超卖的标的股,最后通过筛选符合条件的股票。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧