(iwencai量化)底部抬高_、10日涨幅大于0小于35、至少5根均线重合的股票

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

问财量化选股策略逻辑

  1. 至少5根均线重合的股票
  2. 10日涨幅大于0小于35
  3. 底部抬高

选股逻辑分析

这个策略的逻辑是基于技术分析和趋势跟踪。首先,要求至少5根均线重合,这表明股票的价格趋势相对稳定,不容易受到短期波动的影响。其次,要求10日涨幅大于0小于35,这表明股票价格在最近10天内有一定的上涨趋势,但没有过度上涨。最后,要求底部抬高,这表明股票价格在最近一段时间内有明显的上涨趋势。

有何风险?

这个策略的局限性在于它只能捕捉到股票价格的短期趋势,而不能捕捉到长期趋势。此外,如果股票价格在短期内出现剧烈波动,该策略可能会产生误判。

如何优化?

为了优化这个策略,可以考虑加入更多的技术指标和趋势跟踪方法,以提高策略的准确性和可靠性。此外,可以考虑加入一些风险管理措施,例如设置止损点和止盈点,以降低投资风险。

最终的选股逻辑

以下是最终的选股逻辑:

  1. 筛选出至少5根均线重合的股票
  2. 筛选出10日涨幅大于0小于35的股票
  3. 筛选出底部抬高的股票
  4. 筛选出市盈率小于30的股票
  5. 筛选出流通市值大于10亿的股票

python代码参考:

import talib

def get_moving_average(prices, n):
    """
    计算n日移动平均线
    """
    ma = talib.MA(prices, n)
    return ma

def get_bollinger_bands(prices, n):
    """
    计算n日布林线
    """
    upper, middle, lower = talib.BBANDS(prices, n, 2, 0.2)
    return upper, middle, lower

def get_price_trend(prices, n):
    """
    计算n日价格趋势
    """
    up, down = talib.STOCH(prices, n, 3)
    trend = talib.CCI(prices, n)
    return up, down, trend

def get_filter(prices, ma1, ma2, upper, lower, up, down, trend):
    """
    过滤股票
    """
    if ma1[-1] > ma2[-1] and prices[-1] > upper[-1] and trend[-1] > 0:
        return True
    elif ma1[-1] < ma2[-1] and prices[-1] < lower[-1] and trend[-1] < 0:
        return True
    else:
        return False

def get_filtered_list(prices, ma1, ma2, upper, lower, up, down, trend):
    """
    获取过滤后的股票列表
    """
    filtered_list = []
    for i in range(len(prices)):
        if get_filter(prices[i:], ma1[i:], ma2[i:], upper[i:], lower[i:], up[i:], down[i:], trend[i:]):
            filtered_list.append(prices[i])
    return filtered_list

如何进行量化策略实盘?

请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

模板如何使用?

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

如果有任何问题请添加 下方的二维码进群提问。

94c5cde12014f99e262a302741275d05.png

收益&风险
源码

评论