(supermind量化-)振幅大于1、500日内至少2次涨停、周线MA5金叉MA10_

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

问财量化选股策略逻辑

本选股策略在周线上选取振幅大于1、500日内至少2次涨停、MA5上穿MA10的标的股票。

选股逻辑分析

本选股策略在大盘震荡市场时,选取股票的主要条件是振幅大和近期多次涨停,这意味着这些股票在市场波动时变化范围大且具有较强的上涨潜力,同时通过MA5上穿MA10进一步确认了股票的中短期上涨走势,增大了选股的概率。

有何风险?

本策略主要依赖技术分析,无法考虑股票的基本面,因此在遇到市场重大利空消息或公司业绩下滑时,该选股逻辑可能会失效,导致选中的个股下跌并持续下跌。

如何优化?

可以通过加入基本面分析和宏观经济因素进行优化。此外,还可以考虑将技术分析方法进行改进,比如加入更多指标、纠正偏离等技术手段,从而提高选股的准确性。

最终的选股逻辑

选取振幅大,500日内至少2次涨停,周线MA5上穿MA10的标的股票。

同花顺指标公式代码参考

振幅大于1:

(HIGH - LOW) / PRE_CLOSE > 0.01

500日内至少2次涨停:

SUM(HIGH / REF(LOW, 1) > 1.099, 500) >= 2

MA5上穿MA10:

CROSS(MA(CLOSE, 5), MA(CLOSE, 10))

在同花顺中,CLOSE代表收盘价,HIGH代表当日最高价,LOW代表当日最低价,MA(CLOSE, 5)代表收盘价的5日简单移动平均线。

python代码参考

import tushare as ts

selected_stocks = []
for code in ts.get_stock_basics().index:
    #获取股票数据
    basic_data = ts.get_stock_basics()
    if code not in basic_data.index:
        continue
    weekly_data = ts.get_hist_data(code, ktype='W', start='20180101')
    if weekly_data is None or len(weekly_data) < 30:
        continue
    if (weekly_data.high - weekly_data.low).mean() / weekly_data.close.mean() < 0.01:
        continue
    if (weekly_data.high / weekly_data.low.shift(1) > 1.099).rolling(500).sum() < 2:
        continue
    if not (weekly_data.close.rolling(5).mean() > weekly_data.close.rolling(10).mean())[-1]:
        continue
    #加入选中的股票
    selected_stocks.append(code)

#输出选中的股票
print(selected_stocks)

以上仅供参考,具体操作需要根据市场情况和自身的风险偏好进行决策。

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

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

    模板如何使用?

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


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

评论