方方面面

A 股的三条制度约束,决定因子怎么用

量化 2026.10.12 约 4 分钟

涨跌停、T+1、做空难——这三条不是「交易细节」,它们直接决定了一个因子能不能落地、怎么落地。很多学术因子的多空组合,在 A 股根本没有实现路径。

写因子的时候很容易忘一件事:回测里的每一笔交易,都要在真实市场里成交。

A 股的交易制度跟美股差别很大,而这些差别不是「滑点大一点」这么简单——它们会直接改变因子的经济含义。我把影响最大的三条列在下面。

一、涨跌停:信号日的价格,不是成交日的价格

板块涨跌幅限制
主板±10%
ST / *ST±5%
创业板、科创板±20%
北交所±30%

因子通常是 T 日收盘后计算,T+1 日开盘或收盘建仓。问题在于:一只股票 T 日涨停,T+1 日大概率高开甚至一字板——你的信号越强,越买不进去。

这不是随机误差,是系统性偏差。动量因子尤其严重:它专门挑涨得多的股票,而这些恰恰是最容易涨停的。

处理办法有三个,各有代价:

  1. 剔除涨跌停股票 —— 简单,但样本有偏,等于系统性放弃了「最强的那批信号」
  2. 假设以涨停价成交 —— 回测好看,实盘做不到
  3. 延后建仓(T+2) —— 更真实,但信号衰减

我倾向第 3 种,同时在因子构造里控制「近 20 日涨停次数」,把靠涨停堆出来的动量信号降权。

二、T+1:日内策略的物理上限

当天买入的股票,最早次日才能卖出。

对因子的影响:

  • 日内反转、日内动量这类高频因子,直接不成立
  • 任何需要「当天止损」的策略,都做不了
  • 组合调仓只能按天,不能按事件

更微妙的影响在开盘价的使用上。很多研究会用「T+1 开盘价买入」,但如果 T+1 开盘就冲高,你既不能当天卖,又要承担一整天的波动。这在因子评价里会体现为「胜率高但单笔回撤大」。

三、做空受限:多空组合变成纸面游戏

学术因子的标准构造是「做多前 10%,做空后 10%」。在 A 股,这件事很难做:

  • 融券券源有限,小市值股票基本借不到
  • 融券成本高(年化 8-10% 甚至更高),且不稳定
  • 部分标的在限制名单里
  • 股指期货只能对冲指数,对冲不掉个股的行业和风格暴露

结果是:多空因子的收益,你只能拿到多头那一半。

这件事的后果常被低估。一个 IC 0.05 的因子,多空组合可能年化 15%,但纯多头只有 6-8%。而且空头端的贡献在 A 股往往主要来自「剔除烂股票」,这部分可以通过不买来实现,不需要真的做空。

所以 A 股的因子落地,标准形态是:

全市场选股 + 行业中性 + 市值中性 + 只做多 + 用指数期货对冲系统性风险

还有几个不能忘的

停牌与缺失值。 长期停牌的股票,因子值怎么填?前值填充会让它看起来「很稳」,实际上是在制造虚假信号。我的做法是:停牌超过 20 个交易日的,直接从样本里剔除,不填充。

ST 与退市风险。 ST 股票的涨跌幅是 5%,流动性差,而且有退市风险。很多因子在「含 ST」和「不含 ST」的样本里表现差异很大,必须明确口径。

财报披露的时间差。 A 股年报最晚 4 月 30 日,一季报也是 4 月 30 日。如果用「报告期」而不是「公告日」来对齐财务数据,会产生严重的未来函数。这个坑极其常见,而且回测里看不出来。

一句话总结

在 A 股,因子的「可实施性」比「显著性」更重要。

一个 t 值 4.0 但需要做空小市值股票才能实现的因子,实际价值接近零。一个 t 值 2.5 但纯多头可执行、换手不高的因子,才是能用的。

写因子的时候我现在的顺序是:先问怎么成交,再问统计显不显著。这个顺序反了,前面所有工作都白做。

边界:制度会变(涨跌幅、T+0 试点、融券规则),本文基于 2026 年的规则环境。做任何回测前请重新核对当时的交易规则。

参考来源

  • 上海证券交易所交易规则(现行版本,涨跌幅限制与 T+1 交收)
  • 深圳证券交易所交易规则(创业板涨跌幅 20%)
  • Liu J, Stambaugh RF, Yuan Y. Size and Value in China. Journal of Financial Economics. 2019;134(1):48-69.