(supermind量化策略)task14/a/元宇宙、前25天有涨停、至少5根均线重合的

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

问财量化选股策略逻辑

本股票选股策略为:在元宇宙行业中,选择前25天有涨停板且至少5根均线重合的股票,以寻找趋势明显、具有较好业绩的标的。

选股条件为:元宇宙、前25天有涨停板、至少5根均线重合。

选股逻辑分析

本选股策略选取元宇宙行业中历史涨势好,且处于多条均线重合区间的个股作为买入标的,以精准、有效的方式捕捉行业走势。前25天有涨停板体现了市场对该股票的热度,5日以上的均线重合则表明该股走势稳定,并且在满足行业趋势的同时,体现了该股管理层较好的战略规划和风险控制意识。

有何风险?

本选股策略存在以下风险:

  1. 过于追求均线重合的数量,可能会错过某些脱颖而出的标的;
  2. 忽略了公司基本面的因素;
  3. 过去表现不代表未来走势,需注意市场风险。

如何优化?

为进一步提高选股策略的准确性和稳定性,可以:

  1. 考虑股票的板块、市值等因素,更全面地衡量企业优劣;
  2. 引入其他量化指标,如相对强弱指标、MACD等,辅助判断趋势;
  3. 适度降低对过去表现的依赖,引入未来业绩预估等指标。

最终的选股逻辑

在元宇宙行业中,选择前25天有涨停板、至少5根均线重合的个股作为买入标的,以寻找具有较好业绩和趋势的股票。

选股条件为:元宇宙、前25天有涨停板、至少5根均线重合。

同花顺指标公式代码参考

选股条件:前25天有涨停板,至少5根均线重合
TDX公式:
C1: REF(CLOSE>REF(CLOSE,1),25) > 0; // 前25天有涨停板
C2: MA(CLOSE,5) > MA(CLOSE,10) AND MA(CLOSE,10) > MA(CLOSE,20) AND MA(CLOSE,20) > MA(CLOSE,30) AND MA(CLOSE,30) > MA(CLOSE,60) AND MA(CLOSE,60) > MA(CLOSE,120); // 至少5根均线重合
SELECT IF(C1 AND C2, 1, 0);

同花顺公式:
选出前25天有涨停板且至少5根均线重合的股票。

python代码参考

import pandas as pd
from typing import List

def select_stocks(data: pd.DataFrame) -> List[str]:
    df = data.copy()
    today = df.index.get_level_values('date').unique()[-1]
    codes = df.loc[today]['证券代码'].unique().tolist()
    select_df = []
    for code in codes:
        his_df = df.loc[df.index.get_level_values('code') == code]
        if his_df.empty or len(his_df) < 120:
            continue
        if his_df['涨停板'].rolling(window=25).sum().iloc[-1] == 0:
            continue
        if (his_df['收盘价'].rolling(window=5).mean().iloc[-1] > his_df['收盘价'].rolling(window=10).mean().iloc[-1]
            and his_df['收盘价'].rolling(window=10).mean().iloc[-1] > his_df['收盘价'].rolling(window=20).mean().iloc[-1]
            and his_df['收盘价'].rolling(window=20).mean().iloc[-1] > his_df['收盘价'].rolling(window=30).mean().iloc[-1]
            and his_df['收盘价'].rolling(window=30).mean().iloc[-1] > his_df['收盘价'].rolling(window=60).mean().iloc[-1]
            and his_df['收盘价'].rolling(window=60).mean().iloc[-1] > his_df['收盘价'].rolling(window=120).mean().iloc[-1]):
            select_df.append(code)
    select_df.sort(key=lambda x: df.loc[(today, x), '市值'], reverse=False)
    return select_df
    ## 如何进行量化策略实盘?
    请把您优化好的选股语句放入文章最下面模板的选股语句中即可。

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

    模板如何使用?

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


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

评论