(同花顺量化)500日内至少2次涨停_、上市大于、rsi小于65

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

问财量化选股策略逻辑

选股逻辑:rsi小于65,上市大于1年,500日内至少2次涨停。

选股逻辑分析

该选股逻辑同样结合了技术面和基本面因素,通过RSI指标评估股票是否处于超卖状态,选择上市时间较久的股票,500日内至少2次涨停反映了股票当前热度,以此判断股票的投资价值。通过该选股逻辑,预计可以挑选出一些具备一定潜力的热门股票。

有何风险?

该选股逻辑依然存在单一技术指标和基本面指标的盲目性。另外,同一股票有时是由于某种因素所导致的连续两次涨停,若这种原因无法持续,短时间内的热度会随之降温,股价可能会出现下跌的风险。此外,还有涨停板机制下的流动性风险,可能存在无法买入或卖出的情况。

如何优化?

为了提高选股逻辑的准确度,可以引入更多指标进行综合分析,如成交量、市盈率、市净率等指标,并考虑数据来源和准确度的问题。可以通过回测和实盘测试,不断地优化选股策略的参数和指标,减少盲目性,并且可以考虑加入其他算法,如机器学习等,提高模型预测准确度。此外,可以根据实际需求和市场行情,灵活调整选股指标和阈值。

最终的选股逻辑

选股逻辑:rsi小于65,上市大于1年,500日内至少2次涨停。

同花顺指标公式代码参考

C1: MAINBORADINFO(0) == 1 AND HSL >= 0.1
C2: RSI(CLOSE, 14) <= 65
C3: REF(HIGH, 1) / REF(CLOSE, 2) >= 1.1
C4: REF(HIGH, 2) / REF(CLOSE, 3) >= 1.1
SELECT IF(C1 AND C2 AND (C3 + C4 >= 2), 1, 0)

Python代码参考

import pandas as pd
import akshare as ak
import talib

def get_stock_list():
    result_df = pd.DataFrame()
    stock_pool = ak.stock_zh_a_spot().astype({'证券代码':'str'})['证券代码'].tolist()

    for code in stock_pool:
        # 获取股票基本信息
        stock_info = ak.stock_info_a_name(code).reset_index(drop=True)
        if len(stock_info) == 0:
            continue
        stock_info.rename(columns={"0": "name", "1": "market_cap"}, inplace=True)
        stock_info['code'] = code
        stock_info = stock_info[['code', 'name']]

        # 获取股票K线数据并计算技术指标
        df = ak.stock_zh_a_daily(symbol=code, adjust="qfq")
        if len(df) == 0:
            continue
        # 计算RSI指标
        df['rsi'] = talib.RSI(df['收盘价'].values, timeperiod=14)
        # 判断涨停次数
        high_price_ratio_1 = df['最高价'].shift(1) / df['收盘价'].shift(2)
        high_price_ratio_2 = df['最高价'].shift(2) / df['收盘价'].shift(3)
        count_limit_up = ((high_price_ratio_1 >= 1.1) & (high_price_ratio_2 >= 1.1)).sum()
        condition = (count_limit_up >= 2)
        if condition:
            result_df = result_df.append(stock_info, ignore_index=True)

    return result_df

Python依赖库

  • pandas

  • akshare

  • talib

      ## 如何进行量化策略实盘?
      请把您优化好的选股语句放入文章最下面模板的选股语句中即可。
    
      select_sentence = '市值小于100亿' #选股语句。
    
      模板如何使用?
    
      点击图标右上方的复制按钮,复制到自己的账户即可使用模板进行回测。
    
    
      ## 如果有任何问题请添加 下方的二维码进群提问。
      ![94c5cde12014f99e262a302741275d05.png](http://u.thsi.cn/imgsrc/pefile/94c5cde12014f99e262a302741275d05.png)
    
收益&风险
源码

评论