(同花顺量化)30日平均线向上_、圆弧形、至少5根均线重合的股票

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

问财量化选股策略逻辑

1. 至少5根均线重合的股票

首先,我们需要找到至少5根均线重合的股票。这可以通过计算股票的均线数量来实现。我们可以使用以下代码来计算股票的均线数量:

def count均线数量(df):
    n = df.shape[1]
    count = 0
    for i in range(n):
        if df.iloc[:, i].rolling(window=5).mean().values[-1] == df.iloc[:, i].values[-1]:
            count += 1
    return count

接下来,我们可以使用以下代码来筛选出至少5根均线重合的股票:

def select_5_moving_average(df):
    n = df.shape[1]
    count = count均线数量(df)
    if count >= 5:
        return df
    else:
        return None

2. 圆弧形

接下来,我们需要找到圆弧形的股票。这可以通过计算股票的圆弧度来实现。我们可以使用以下代码来计算股票的圆弧度:

def calculate_roundness(df):
    n = df.shape[1]
    diff = df.iloc[:, n-1] - df.iloc[:, n-2]
    diff = diff.diff()
    angle = diff / diff.abs().mean()
    angle = angle * 180 / np.pi
    return angle

接下来,我们可以使用以下代码来筛选出圆弧形的股票:

def select_rounding(df):
    n = df.shape[1]
    angle = calculate_roundness(df)
    if angle >= 30 and angle <= 150:
        return df
    else:
        return None

3. 30日平均线向上

最后,我们需要找到30日平均线向上的股票。这可以通过计算股票的30日平均线的斜率来实现。我们可以使用以下代码来计算股票的30日平均线斜率:

def calculate_slope(df):
    n = df.shape[1]
    slope = df.iloc[:, n-1] / df.iloc[:, n-2]
    return slope

接下来,我们可以使用以下代码来筛选出30日平均线向上的股票:

def select_slope(df):
    n = df.shape[1]
    slope = calculate_slope(df)
    if slope > 0:
        return df
    else:
        return None

选股逻辑分析

以上三个策略组合在一起,可以筛选出至少5根均线重合、圆弧形和30日平均线向上的股票。这些股票可能具有较好的上涨趋势和较强的支撑力。然而,这些策略也有一定的风险。

首先,这些策略都依赖于历史数据。如果历史数据不准确或市场发生重大变化,这些策略可能会失效。

其次,这些策略都只考虑了股票的短期趋势。如果股票的长期趋势不利,这些策略可能会忽略这些风险。

最后,这些策略可能会筛选出一些看起来非常吸引人的股票,但实际上这些股票可能并不是最好的投资选择。

有何风险?

以上三个策略组合在一起,可能会筛选出一些看起来非常吸引人的股票,但实际上这些股票可能并不是最好的投资选择。这些策略也可能会忽略股票的长期趋势,从而导致投资者错过一些重要的机会。此外,这些策略也可能会忽略股票的历史数据,从而导致投资者做出错误的决策。

如何优化?

为了优化这些策略,我们可以考虑以下几点:

  1. 尝试使用更多的历史数据来计算股票的均线数量、圆弧度和30日平均线斜率。这可能会提高策略的准确性。

  2. 尝试使用更多的技术指标来筛选股票。例如,我们可以使用MACD指标来筛选股票的上涨趋势。

  3. 尝试使用更多的数据源来计算股票的均线数量、圆弧度和30日平均线斜率。例如,我们可以使用不同的交易所的数据来计算这些指标。

最终的选股逻辑

以下是最终的选股逻辑:

  1. 筛选出至少5根均线重合的股票。

  2. 筛选出圆弧形的股票。

  3. 筛选出30日平均线向上的股票。

  4. 使用技术指标(如MACD)来筛选股票的上涨趋势。

  5. 使用不同的数据源来计算股票的均线数量、圆弧度和30日平均线斜率。

  6. 对于每个股票,计算其历史数据的移动平均线、圆弧度和30日平均线斜率。

  7. 对于每个股票,计算其技术指标(如MACD)的信号线和柱状线。

  8. 对于每个股票,计算其移动平均线、圆弧度和30日平均线斜率和技术指标

如何进行量化策略实盘?

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

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

模板如何使用?

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

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

94c5cde12014f99e262a302741275d05.png

收益&风险
源码

评论