(supermind量化策略)a1/rsi小于65、七连阴、涨跌幅×超大单净量

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

问财量化选股策略逻辑

选股逻辑为RSI小于65、连续七天收盘价低于开盘价且当日涨跌幅与超大单净量的乘积大于等于500万元的主板股票。

选股逻辑分析

选股逻辑基于技术面和资金面进行选股,RSI小于65反映出目前股票处于较弱状态,连续七天收盘价低于开盘价是对股票走势的限定。当日涨跌幅和超大单净量的乘积是对资金面的考虑,当超大单净量为正且日涨跌幅较大时,说明市场资金对该股有较高的信心和热情,相对于其他股票更具有投资价值。选择主板股票是因为主板牌照难获,交易流通性好,更能体现市场中长期投资者的信心。

有何风险?

在选股过程中十分依赖于资金面的考虑,可能会忽略个股的基本面因素,导致选出来的股票质量不高,难以维持投资价值。

如何优化?

引入更多指标,如流动性、基本面等,综合考虑股票的投资价值;此外,还可以根据股票的特征设定不同的权重,进一步提高选股的稳定性和准确度。

最终的选股逻辑

选股逻辑包括RSI小于65、连续七天收盘价低于开盘价、当日涨跌幅与超大单净量的乘积大于等于500万元的主板股票。

同花顺指标公式代码参考

  1. RSI指标公式:RSI(CLOSE, N),其中N代表RSI的计算天数,默认为14.
  2. 收盘价与开盘价的判断代码:LOWEST(CLOSE, 7) <= REF(OPEN, 1),其中LOWEST(CLOSE, 7)代表过去七天中的最低价,REF函数则代表取前一个交易日的值。
  3. 当日涨跌幅与超大单净量的乘积大于等于500万元的判断代码:IF((CLOSE-OPEN)/OPEN*VOLUME>=5000000, True, False),其中VOLUME为成交量,CLOSE为收盘价,OPEN为开盘价。

python代码参考

import akshare as ak

def pick_stocks():
    stock_list = ak.stock_zh_a_spot_em()
    picked_stocks = []
    for stock_code in stock_list.index:
        if "SH688" in stock_code or "SZ300" in stock_code:
            continue
        # RSI指标
        rsi = ak.stock_zh_index_daily_tx(stock_code, start_date="20210101")
        if rsi is None or len(rsi) < 14 or rsi.iloc[-1]["rsi14"] >= 65:
            continue
        # 连续七日收盘价低于开盘价
        history_quotes = ak.stock_zh_a_hist(stock_code, start_date="20210101")
        if history_quotes is None or len(history_quotes) < 7:
            continue
        if (history_quotes[-7:]["close"] <= history_quotes[-7:]["open"]).all():
            continue
        # 当日涨跌幅和超大单净量的乘积
        today_quote = ak.stock_zh_a_hist_minute_sina(stock_code, period="today")
        if today_quote is None or len(today_quote) < 2:
            continue
        today_return = (today_quote.iloc[-1]["close"] - today_quote.iloc[0]["open"]) / today_quote.iloc[0]["open"]
        today_volume = today_quote["volume"].iloc[-1]
        if today_return * today_volume < 5000000:
            continue
        # 选取主板股票
        stock_info = ak.stock_info_a_code(stock_code)
        if stock_info is None or stock_info["exchange"] != "SH":
            continue
        picked_stocks.append({"code": stock_code, "name": stock_list.loc[stock_code]["名称"]})
    # 输出符合条件的股票代码、名称
    for stock in picked_stocks:
        print(f"{stock['code']}、{stock['name']}")

改进后的选股代码综合考虑了技术面和资金面的因素,引入了更多指标,使得选股更为全面准确。

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

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

    模板如何使用?

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


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

评论