(supermind量化-)振幅大于1、前日实际换手率_3~28、剔除昨日涨停_

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

问财量化选股策略逻辑

挑选振幅大于1、前日实际换手率在3%到28%,并且剔除昨日涨停的股票。

选股逻辑分析

该选股策略在振幅和换手率两个方面筛选了热门活跃的标的,配合昨日的价格行为,排除了昨日表现过于优异的股票,以期望在未来获得更好的收益。多维度的选股可以有效降低选股风险。

有何风险?

如果市场变化剧烈,振幅和换手率多数情况下会有所增加,可能会影响选股结果。同样,该策略可能会过于剔除“热门”的股票,而忽略了这些股票的潜在收益和价值。此外,如果剔除涨停过于频繁,也可能会导致选股的准确性降低。

如何优化?

加入更多的筛选条件,如市盈率、市净率等基本面指标,以及财务指标的筛选,如 ROE 等,可以更好地挑选出符合投资价值、成长性和安全性的个股,使选股更加全面化。同时,也需要根据市场的变动灵活调整选股策略,以更好地捕捉市场机会。

最终的选股逻辑

挑选振幅大于1、前日实际换手率在3%到28%,并且剔除昨日涨停的股票。

同花顺指标公式代码参考

// 挑选振幅大于1的股票
amplitude = (HIGH-LOW)/OPEN
amplitude_bool = amplitude >= 1

// 挑选前日实际换手率在3到28之间的股票
volume_ratio = TODAY_VOLUME / REF(YESTERDAY_VOLUME,1)
volume_ratio_bool = (volume_ratio >= 0.03) & (volume_ratio <= 0.28)

// 剔除昨日涨停的股票
last_close = REF(CLOSE,1)
limit_bool = last_close != last_close.limit_up

// 挑选合适的股票
result = amplitude_bool & volume_ratio_bool & limit_bool

// 输出筛选结果
result

python代码参考

import tushare as ts

# 挑选振幅大于1的股票
today_data = ts.get_today_all()
amplitude = (today_data['high'] - today_data['low']) / today_data['open']
amplitude_bool = amplitude >= 1

# 挑选前日实际换手率在3到28之间的股票
hist_data = ts.get_hist_data('600519')
volume_ratio = hist_data['volume'] / hist_data['volume'].shift(1)
volume_ratio_bool = (volume_ratio >= 0.03) & (volume_ratio <= 0.28)

# 剔除昨日涨停的股票
last_day_data = ts.get_today_ticks('600519')
last_close = last_day_data[last_day_data['change']!=0]['price'].values[-1]
limit_bool = today_data['code'].apply(lambda x: last_close not in ts.get_today_ticks(x).tail(1)['price'].values)

# 挑选合适的股票
final_result = today_data.loc[amplitude_bool & volume_ratio_bool & limit_bool]

# 输出筛选结果
print(final_result)

注:以上仅为示例代码,请根据实际情况进行调整。

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

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

    模板如何使用?

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


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

评论

需要帮助?

试试AI小助手吧