(同花顺量化)20日均线大于120日均线_、酷特智能早晨之星、至少5根均线重合的股票

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

问财量化选股策略逻辑

  • 至少5根均线重合的股票
  • 酷特智能早晨之星
  • 20日均线大于120日均线

选股逻辑分析

这个策略基于技术分析,通过寻找至少5根均线重合的股票,以及20日均线大于120日均线的股票,来筛选出可能具有上涨潜力的股票。这些技术指标可以提供一些关于股票走势的信号,帮助投资者做出更明智的决策。

有何风险?

尽管这个策略可能能够帮助投资者找到一些具有上涨潜力的股票,但它并不是完美的。以下是一些可能的风险:

  • 这个策略可能无法准确预测股票的走势。技术分析并不是一种精确的预测方法,而是基于历史数据和趋势的分析。
  • 这个策略可能会忽略其他重要的因素,例如公司的财务状况、行业趋势和政治经济环境等。
  • 这个策略可能会导致投资者过度交易。如果投资者过于依赖技术指标进行决策,可能会频繁买卖股票,从而增加交易成本并导致投资失误。

如何优化?

为了优化这个策略,以下是一些建议:

  • 确保选择的均线数量和时间周期适合股票市场的当前情况。不同的市场和股票可能需要不同的技术指标和时间周期。
  • 考虑将其他因素纳入考虑,例如公司的财务状况、行业趋势和政治经济环境等。这些因素可能对股票的走势产生更大的影响。
  • 使用更复杂的算法来筛选股票。例如,可以使用机器学习算法来分析历史数据并预测股票的走势。

最终的选股逻辑

以下是一个基于技术分析的问财量化选股策略:

  • 选择至少5根均线重合的股票,这些均线可以是不同时间周期的均线,例如5日均线、10日均线、20日均线、50日均线和200日均线。
  • 选择20日均线大于120日均线的股票。
  • 将符合以上两个条件的股票加入筛选列表。

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

import talib

def check_ma_crosses(ma1, ma2, ma3, ma4, ma5):
    if ma1[-1] > ma2[-1] and ma1[-1] > ma3[-1] and ma1[-1] > ma4[-1] and ma1[-1] > ma5[-1]:
        return True
    else:
        return False

def check_ma_merges(ma1, ma2, ma3, ma4, ma5):
    if ma1[-1] == ma2[-1] and ma1[-1] == ma3[-1] and ma1[-1] == ma4[-1] and ma1[-1] == ma5[-1]:
        return True
    else:
        return False

def get_top_merging_ma股票(data, n):
    ma_list = talib.MA(data, timeperiods=n)
    ma1 = ma_list[0]
    ma2 = ma_list[1]
    ma3 = ma_list[2]
    ma4 = ma_list[3]
    ma5 = ma_list[4]
    top_merging_ma = []
    for i in range(len(data)):
        if check_ma_crosses(ma1, ma2, ma3, ma4, ma5):
            top_merging_ma.append(data[i])
    return top_merging_ma

def get_top_merging_ma_201ma(data, n):
    ma_list = talib.MA(data, timeperiods=n)
    ma1 = ma_list[0]
    ma2 = ma_list[1]
    ma3 = ma_list[2]
    ma4 = ma_list[3]
    ma5 = ma_list[4]
    top_merging_ma = []
    for i in range(len(data)):
        if check_ma_merges(ma1, ma2, ma3, ma4, ma5):
            top_merging_ma.append(data[i])
    return top_merging_ma

def get_top_201ma_20ma(data, n):
    ma_list = talib.MA(data, timeperiods=n)
    ma1 = ma_list[0]
    ma2 = ma_list[1]
    top_201ma = []
    for i in range(len(data)):
        if ma1[-1] > ma2[-1]:
            top_201ma.append(data[i])
    return top_201ma

def get_top_20ma_200ma(data, n):
    ma_list = talib.MA(data, timeperiods=n)
    ma1 = ma_list[0]
    ma2 = ma_list[1]
    top_20ma = []
    for i

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

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

模板如何使用?

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


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

评论