(supermind)振幅大于1、反包、30日平均线向上_

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

问财量化选股策略逻辑

选股逻辑:振幅大于1,反包出现,30日平均线向上。

选股逻辑分析

该选股逻辑结合了技术指标和基本面,通过振幅和反包指标较准确地判断股价暂时止跌且向上攀升的趋势,同时根据股价走势的长期表现来判断股价是否具有上涨的趋势。通过加入选股条件,有助于减少一些不稳定的股票,增加选股策略的正确性和稳定性。

有何风险?

该选股策略多基于技术指标和短期股价趋势的预测,而忽略了企业的长期质量和价值。对于那些财务数据表现不佳但走势令人瞩目的企业,该策略可能会误判。除此之外,需要注意的是,股市走势会受到宏观经济政策、大盘热点、公司财务等多种因素的影响,不宜对单一因素过于依赖。

如何优化?

我们可以通过进一步增加选股条件,加强基本面分析来优化该策略。例如,可以将公司的财务指标和行业分析纳入考虑因素。同时,为了更好地把握市场趋势,应该及时了解并分析大盘走势、行业热点等多方面的信息。

最终的选股逻辑

基于上述分析,我们提出改进后的股票筛选逻辑:

  1. 振幅大于1
  2. 反包出现
  3. 30日移动平均线向上

同花顺指标公式代码参考

以下是通达信指标的公式代码示例:

F01:HIGH / LOW - 1 > 0.01;  // 振幅大于1
F02:NOT(SIGN(CLOSE-REF(CLOSE, 1)) == SIGN(REF(CLOSE, 1) - REF(CLOSE, 2)));  // 反包
F03:MA(CLOSE, 30) > MA(CLOSE, 60);  // 30日均线向上

FILTER:F01 AND F02 AND F03;
SYMBOL_SORT("热点板块", SORT_DESCEND);
SELECT(IF(F03, 1, 0), "诊股"); // 输出文本信息:选股

python代码参考

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

def stock_filter(dv, symbol):
    # 获取数据,计算指标
    high = dv.get_ts("high", symbol=symbol)
    low = dv.get_ts("low", symbol=symbol)
    close = dv.get_ts("close", symbol=symbol)
    ma30 = close.rolling(window=30).mean().iloc[-1]
    ma60 = close.rolling(window=60).mean().iloc[-1]
    amplitude = high / low - 1
    reverse_pattern = (Ta('CDL2CROWS', 0, open, high, low, close) == 100)
    ma_trend = ma30 > ma60

    # 筛选符合条件的股票并按照热度排序
    selected_stocks = (amplitude > 0.01) & reverse_pattern & ma_trend
    selected_stocks = selected_stocks[selected_stocks].sort_values(by="heat_rank", ascending=False)

    return selected_stocks.index.tolist()

选股逻辑中,我们从数据源取出每日的最高价、最低价和收盘价数据并与各项条件进行比对,只筛选出符合要求的股票进行分析。我们采用了 Python 的 Pandas 库和 TA-Lib 库中的 rolling() 函数和 MA() 函数来计算移动平均线,更方便快捷。

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

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

    模板如何使用?

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


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

评论