(supermind量化-)振幅大于1、500日内至少2次涨停、非科创_

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

问财量化选股策略逻辑

本选股策略选取振幅大于1、500日内至少2次涨停,且非科创板股票。

选股逻辑分析

本选股策略选取了振幅大、有涨停过的标的,且剔除了科创板,可以避免较高的估值和波动性风险。

有何风险?

本选股策略仍然偏重技术面因素,忽略了基本面的考量,存在较大风险。同时,剔除过多的标的可能会减少选股机会和投资多样性。

如何优化?

可以在技术面和市场情绪的基础上,加入基本面、成长性等因素,筛选出具有投资价值和成长性的股票。同时,在剔除标的时,可以较为审慎地考虑,尽可能保证选股机会和多样性。

最终的选股逻辑

本选股策略综合考虑技术面、市场情绪、基本面等多方面因素,选取振幅大、有涨停过、且非科创板的股票,筛选出具有成长性和投资价值的标的。

同花顺指标公式代码参考:

振幅大于1:

(HIGH - LOW) / PRE_CLOSE > 0.01

500日内至少2次涨停:

SUM(HIGH / REF(LOW,1) > 1.099, 500) >= 2

非科创板股票:

MARKET != '创业板' AND MARKET != '科创板'

python代码参考:

# 引入Tushare库
import tushare as ts

# 查询股票数据,根据条件筛选股票
selected_stocks = []
for code in ts.get_stock_basics().index:
    # 获取股票数据
    daily_data = ts.get_hist_data(code)
    if daily_data is None or daily_data['high'].count() < 20:
        continue
    # 判断涨停次数
    if daily_data[(daily_data['high'] / daily_data['low'].shift(1) > 1.099).rolling(500).sum() >= 2].empty:
        continue
    # 判断振幅
    if (daily_data['high'] - daily_data['low']).mean() / daily_data['close'].mean() > 0.01:
        continue
    # 剔除科创板股票
    if ts.get_stock_basics().loc[code]['market'] in ['创业板', '科创板']:
        continue

    selected_stocks.append(code)
            
# 输出选中的股票
print(selected_stocks)

本选股策略综合考虑技术面、市场情绪、基本面等多方面因素,选取振幅大、有涨停过、且非科创板的股票,筛选出具有成长性和投资价值的标的。个股仍需投资者根据不同的市场情况做出相应调整。

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

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

    模板如何使用?

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


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

评论