(同花顺量化)500日内至少2次涨停_、10日涨幅大于0小于35、至少5根均线重合的股票

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

问财量化选股策略逻辑

首先,我们需要找到至少5根均线重合的股票。这可以通过计算股票价格与5条不同时间周期的移动平均线之间的差异来实现。具体来说,我们可以计算股票价格与5条不同时间周期的移动平均线之间的差异,如果这些差异的绝对值都小于某个阈值,则认为这些均线重合。

接下来,我们需要找到10日涨幅大于0小于35的股票。这可以通过计算股票价格在10天内的涨幅来实现。具体来说,我们可以计算股票价格在10天内的涨幅,并将其与35%进行比较。如果涨幅大于0且小于35%,则认为该股票符合该条件。

最后,我们需要找到500日内至少2次涨停的股票。这可以通过计算股票价格在500天内的涨幅来实现。具体来说,我们可以计算股票价格在500天内的涨幅,并将其与某个阈值进行比较。如果涨幅大于某个阈值,则认为该股票符合该条件。

选股逻辑分析

该策略的逻辑是基于移动平均线、涨幅和涨停次数来筛选股票。移动平均线可以帮助我们判断股票的趋势,而涨幅和涨停次数则可以帮助我们判断股票的强度。综合考虑这些因素,我们可以筛选出一些具有较强趋势和较强强度的股票。

然而,该策略也存在一些风险。首先,移动平均线的选取会影响策略的效果。如果选取的移动平均线时间周期过长或过短,可能会导致策略失效。其次,涨幅和涨停次数的选取也会影响策略的效果。如果选取的涨幅和涨停次数阈值过高或过低,可能会导致策略失效。最后,该策略可能会忽略一些具有较强趋势和较强强度的股票,因为这些股票可能不符合该策略的条件。

如何优化?

为了优化该策略,我们可以尝试以下方法:

  1. 选择合适的移动平均线时间周期。可以尝试不同的时间周期,并比较它们的效果,以找到最佳的时间周期。

  2. 调整涨幅和涨停次数的阈值。可以尝试不同的阈值,并比较它们的效果,以找到最佳的阈值。

  3. 尝试加入其他因素。可以尝试加入其他因素,如股票的市值、市盈率等,以提高策略的准确性和可靠性。

最终的选股逻辑

以下是最终的选股逻辑:

  1. 计算股票价格与5条不同时间周期的移动平均线之间的差异,如果这些差异的绝对值都小于0.1,则认为这些均线重合。

  2. 计算股票价格在10天内的涨幅,并将其与0.35进行比较。如果涨幅大于0且小于0.35%,则认为该股票符合该条件。

  3. 计算股票价格在500天内的涨幅,并将其与0.5进行比较。如果涨幅大于0.5,则认为该股票符合该条件。

  4. 将符合以上条件的股票加入筛选列表中。

以下是该策略的python代码参考:

import talib

def get_indicator_prices(prices, n):
    ma = talib.MA(prices, n)
    return ma

def get_diff(prices, ma1, ma2, ma3, ma4, ma5):
    diff1 = abs(prices - ma1)
    diff2 = abs(prices - ma2)
    diff3 = abs(prices - ma3)
    diff4 = abs(prices - ma4)
    diff5 = abs(prices - ma5)
    return diff1 + diff2 + diff3 + diff4 + diff5

def get_profit(prices, n):
    return prices[-n] - prices[0]

def get_stocks():
    # Get stock prices
    prices = get_prices()

    # Get moving averages
    ma1 = get_indicator_prices(prices, 10)
    ma2 = get_indicator_prices(prices, 20)
    ma3 = get_indicator_prices(prices, 30)
    ma4 = get_indicator_prices(prices, 40)
    ma5 = get_indicator_prices(prices, 50)

    # Get differences between moving averages
    diff1 = get_diff(prices, ma1, ma2, ma3, ma4, ma5)
    diff2 = get_diff(prices, ma2, ma3, ma4, ma5, ma6)
    diff3 = get_diff(prices, ma3, ma4, ma5, ma6, ma7)
    diff4 = get_diff(prices, ma4, ma5, ma6, ma7, ma8)
    diff5 = get_diff(prices, ma5, ma6, ma7, ma8, ma9)

    # Get profits over the past 10 days
    profits = get_profit(prices, 10

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

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

模板如何使用?

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


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

评论