(supermind)振幅大于1、反包、前25天有涨停_

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

问财量化选股策略逻辑

选股逻辑:振幅大于1,反包,前25天有涨停。

选股逻辑分析

该选股逻辑同时考虑了技术因素和市场情况。振幅大于1可以挖掘波动性较大的股票;反包形态可以降低风险;前25天有涨停可以筛选出当前处于上涨势头的股票。这种综合考虑市场情况的选股逻辑,可以有效避免一些风险。

有何风险?

该选股策略在考虑市场情况时,基本上是一种追涨策略,相对忽略了市场风险和基本面因素。而市场情况对于股票走势的影响具有一定的局限性。如果仅凭市场情况选股,可能会遭受市场风险,需要慎重考虑。

如何优化?

在进行选股时,应该同时考虑技术因素和基本面因素,并给予市场情况合理的权重。同时,可以考虑加入更多的股票选择因素,如成交量、均线等指标,以不同的角度寻找优质的股票。

最终的选股逻辑

在以上分析基础上,提出完善后的选股逻辑:

  1. 振幅大于1;
  2. 近3天内出现反包形态;
  3. 前25天有涨停;
  4. 筛选出优质股票。

同花顺指标公式代码参考

使用通达信指标计算,以下是该选股策略的通达信指标公式代码:

F01: HIGH/LOW - 1 > 0.01; // 振幅大于1
F02: NOT(SIGN(CLOSE - REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2))); // 反包
F03: COUNT(MAX(HIGH == REF(HIGH, 1) AND VOLUME > REF(VOLUME, 1) AND CLOSE == REF(HIGH, 1), 0), 25) > 0; // 前25天有涨停
FILTER: F01 AND F02 AND F03;
SELECT(IF(1, 1, 0), "选股"); // 输出选中的股票

python代码参考

以下是 Python 实现该策略的选股逻辑:

def stock_filter(dv, symbols):
    # 获取数据,计算指标
    close = dv.get_ts('close', symbol=symbols)
    high = dv.get_ts('high', symbol=symbols)
    low = dv.get_ts('low', symbol=symbols)
    volume = dv.get_ts('volume', symbol=symbols)
    ta_func_renko = Ta('CDLTRISTAR', 0, dv.get_ts('open', symbol=symbols), high, low, close)

    price_filter = (close.iloc[:, -1] > close.iloc[:, -2])  # 当前收益率大于0
    amp = (close / close.shift(1) - 1).abs() > 0.01
    rt_filter = (ta_func_renko == 100) & (volume > volume.shift(1))
    rt_filter = rt_filter.iloc[:, :-1].sum(axis=1) > 0

    selected_stocks = (price_filter & amp & rt_filter)
    selected_stocks = selected_stocks.sort_values(by='pct_chg', ascending=False)

    return selected_stocks.index.tolist() 

该代码实现了选股策略的核心部分,使用CDLTRISTAR函数计算反包形态,使用涨停日的数量判断是否有前25天有涨停。由于通达信的涨停板指标无法复现,使用K线形态寻找涨停板日,只能做到类似的效果。

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

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

    模板如何使用?

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


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

评论