(同花顺量化)10日涨幅大于0小于35_、价格<12、rsi小于65

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

问财量化选股策略逻辑

选股逻辑:选择RSI小于65、价格小于12元、近10日涨幅大于0小于35的股票。

选股逻辑分析

该选股策略同时考虑了技术面和基本面,主要考虑了RSI、价格和涨幅等技术指标。可以抓住某些特定情境下股票市场的赚钱机会。

有何风险?

只考虑技术面和基本面,可能会错过一定的市场机会和风险控制能力不足。另外,单一的技术指标也容易被市场大势所左右,需要结合其他的指标进行综合考虑。

如何优化?

除了考虑RSI、价格和涨幅等技术指标,还应考虑市场情绪指标、宏观经济指标以及基本面指标,综合考虑各种因素可以增加策略的可靠性和市场机会把握的机率。

最终的选股逻辑

选股逻辑:选择RSI小于65、价格小于12元、近10日涨幅大于0小于35的股票,同时考虑市场情绪指标、宏观经济指标和基本面指标。

同花顺指标公式代码参考

  • RSI小于65:RSI(6)<65
  • 价格小于12元:CLOSE<12
  • 近10日涨幅大于0小于35:(REF(CLOSE, 0) - REF(CLOSE, 9))/REF(CLOSE, 9)>0 and (REF(CLOSE, 0) - REF(CLOSE, 9))/REF(CLOSE, 9)<0.35

python代码参考

通过聚宽等股票API获取数据,代码示例:

import jqdatasdk as jq
jq.auth('username', 'password')  # jq 连接凭证

# 选股条件
cond1 = jq.query(
    jq.valuation.code,
    jq.valuation.market_cap,
).filter(
    # 过滤掉ST类股票和上市时间过短的股票
    jq.valuation.code.notlike('*ST%'),
    jq.valuation.code.notlike('300%'),
    jq.valuation.code.notlike('688%'),
    jq.valuation.code.notlike('900%'),
    jq.valuation.code.notlike('000001'),
    jq.valuation.code.notlike('002001'),
    jq.valuation.code.notlike('600401'),
    jq.valuation.code.notlike('601985'),
    jq.valuation.code.notlike('600100'),
    jq.valuation.start_date < '2010-01-01',
    jq.valuation.market_cap > 200,  # 至少200亿市值
)

# 根据行情信息进一步筛选
q1 = jq.query(
    jq.valuation,  # valuation 表
    jq.indicator.ROE,  # 个股 ROE
    jq.indicator.current_ratio,  # 个股流动比率
    jq.indicator.gross_profit_margin,  # 销售毛利率
    jq.advanced_index.eps,  # 每股收益
    jq.bank_indicator.current_asset_yield,  # 流动资产周转率
    jq.bank_indicator.net_profit_margin,  # 净利润率
    jq.bank_indicator.non_interest_income_ratio,  # 手续费及佣金收入占比
    jq.finance.STK_LIST_DATE,  # 上市日期
    jq.finance.STK_BOARDDIR,  # 上市板块
    jq.finance.STK_STATUS,  # 上市状态
    jq.finance.STK_NAME,  # 股票名称
    jq.finance.STK_EXCHANGE, # 所属交易所
).filter(
    jq.valuation.code.in_(
        cond.filter(jq.valuation.pe_ratio > 0).order_by(
            -jq.valuation.market_cap,
            -jq.valuation.pe_ratio,
        ).limit(2000).code.values.tolist()
    ),
)

# 策略选股
stocks = []
for stock in q1:
    # 获取股票K线数据
    k_data = jq.get_price(stock.code, count=10, end_date=context.current_dt.strftime('%Y-%m-%d'), frequency='daily')
    # 获取近10个交易日收盘价、开盘价
    close_prices = k_data['close'].values
    open_prices = k_data['open'].values
    # 计算10日涨幅
    change = (close_prices - open_prices) / open_prices
    # 筛选条件
    if (
        stock.RSI6 < 65
        and stock.close < 12
        and 0 < change[-1] < 0.35
    ):
        stocks.append(stock.code)

# 以结果长度为30进行选股
selected_stocks = stocks[:30]
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论