(同花顺量化)规模2亿以上_、按个股热度从大到小排序名、至少5根均线重合的股票

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

问财量化选股策略逻辑

首先,我们定义一个函数来筛选至少5根均线重合的股票。具体来说,我们定义一个函数get_crossing_moments(),该函数接受一个股票的收盘价数据作为输入,并返回一个包含至少5根均线重合的股票的列表。

def get_crossing_moments(prices):
    # 计算移动平均线
    mom1 = prices.rolling(window=10).mean()
    mom2 = prices.rolling(window=20).mean()
    mom3 = prices.rolling(window=30).mean()
    mom4 = prices.rolling(window=40).mean()
    mom5 = prices.rolling(window=50).mean()
    
    # 筛选出至少5根均线重合的股票
    crossing_moments = []
    for i in range(1, len(prices)):
        if mom1[i] > mom2[i] and mom2[i] > mom3[i] and mom3[i] > mom4[i] and mom4[i] > mom5[i]:
            crossing_moments.append(prices[i])
    
    return crossing_moments

接下来,我们按照股票的规模大小排序,并返回前20个股票的列表。

def get_sorted_crossing_moments(prices):
    crossing_moments = get_crossing_moments(prices)
    sorted_crossing_moments = sorted(crossing_moments, key=lambda x: x.shape[0], reverse=True)
    return sorted_crossing_moments[:20]

最后,我们将上述两个函数组合在一起,得到最终的选股逻辑。

def get_top_crossing_moments(prices):
    crossing_moments = get_crossing_moments(prices)
    sorted_crossing_moments = sorted(crossing_moments, key=lambda x: x.shape[0], reverse=True)
    return sorted_crossing_moments[:20]

选股逻辑分析

该策略的逻辑是基于股票的收盘价数据,计算移动平均线,并筛选出至少5根均线重合的股票。然后,按照股票的规模大小排序,并返回前20个股票的列表。这种策略的优点是简单易懂,可以快速筛选出规模较大的股票。然而,它可能无法捕捉到一些重要的市场趋势

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

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

模板如何使用?

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


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

评论