Q-CodeQ-Code 打开工作台

低换手率选股

因子选股A股风险 中进阶更新 2026-09-24#换手率#流动性#截面因子

利用换手率异象:在截面剔除投机性高换手个股,从低换手且趋势健康的股票中构建月度组合。

策略目标

换手率同时承载两层信息:流动性水平与投机情绪强度。流动性溢价理论认为高流动性资产被交易者竞相持有、定价偏高,预期收益反而更低 [1][2]。A 股个人投资者占比高、整体换手水平居全球前列,投机性换手对价格的短期推高更明显,换手率因子在 A 股的区分度值得重点验证。本策略在截面剔除高换手个股,从低换手且趋势健康的股票中构建组合。

数据需求

数据 字段 频率 用途
量价 日成交量、收盘价(后复权) 日频 换手率与动量计算
股本 流通股本(或自由流通股本) 随公告更新 换手率分母
成分 股票池清单 月度 截面范围

股本口径变更(增发、解禁)会造成换手率跳变,计算前需做口径一致性检查。

换手率与截面排名

个股月均换手率:

TOi,t=120∑d=120Volumei,dFloatSharesiTO_{i,t} = \frac{1}{20}\sum_{d=1}^{20} \frac{Volume_{i,d}}{FloatShares_{i}}

在股票池内做截面百分位排名,剔除 TOTO 最高的前 20%,剩余按 20 日动量为正过滤,再按 TOTO 升序取前 40 只。

组合构建规则

月度调仓,持有约 40 只等权。设置换手率排名缓冲:已持有股票只要仍处于低换手 40% 分位内就不强制卖出,减少边缘排名反复造成的换手。单票权重上限约束集中度。新股票上市不足一年不入池(次新股换手失真)。

风险与失效场景

  • 低关注陷阱:低换手可能对应基本面恶化或长期无人问津,需要动量过滤与基本面底线条件兜底;
  • 流动性冲击:低换手股票的建仓与退出冲击成本更高,等权 40 只可分散单票流动性风险;
  • 风格反转:高换手投机行情主导时(题材牛市),低换手组合会显著跑输;
  • 因子拥挤:异象被广泛使用后区分度下降,需滚动观察分组收益差;
  • 股本口径:解禁与增发导致的换手率假性跳变会污染截面排名。

验证状态

待验证。需要完成:换手率十分位分组收益的单调性检验;动量过滤开关的消融;缓冲带宽度与换手成本平衡;2015、2020-2021 等高换手行情段的相对表现。本文不提供任何未实测的收益或回撤数字。

参考文献与延伸

[1] Datar, V. T., Naik, N. Y., & Radcliffe, R. (1998). Liquidity and Stock Returns: An Alternative Test. Journal of Financial Markets, 1(2).(换手率与预期收益负相关的经典证据)

[2] Amihud, Y. (2002). Illiquidity and Stock Returns: Cross-Section and Time-Series Effects. Journal of Financial Markets, 5(1).(非流动性溢价度量与检验)

[3] Q-Code 量化策略工作台

策略逻辑结构

  1. 行情与股本 — 日成交量、流通股本、后复权价
  2. 月均换手率 — 20 日换手率均值与截面排名
  3. 高换手剔除 — 剔除截面最高 20% 分位
  4. 动量确认 — 20 日动量为正才入池
  5. 组合构建 — 低换手前 40 只等权
  6. 调仓纪律 — 月度调仓与排名缓冲

AI 生成提示词

复制以下提示词,打开 Q-Code 工作台粘贴到 AI 对话框,即可自动生成该策略的 QMT 策略代码(单个完整 .py 文件,支持 QMT 回测与实盘)。

请生成一个 QMT 兼容的 A 股低换手率截面选股策略。股票池为参数注入的成分股清单,按月计算每只股票过去 20 日平均换手率(成交量除以流通股本),在截面中剔除换手率最高的 20%,剩余股票中筛选 20 日动量为正者,按换手率从低到高取前 40 只等权持有,单票权重上限写入 init。月度调仓、换手率缓冲减少边缘进出,禁止未来函数,兼容回测与实盘分支,输出单个完整 Python 文件并包含详细日志。
用自然语言,生成你的 QMT 策略
注册即赠 200 积分,约可生成 5 次 · 支持 Kimi / GLM / DeepSeek
打开 Q-Code 工作台