china-specific constraints · limit-up, T+1, halts, ST
很多人觉得"策略逻辑一样,换个数据源就行"。错——A 股的四个约束会让同一个策略跑出完全不同的结果。
涨跌停:主板 ±10%,创业板科创板 ±20%,ST ±5%。听起来只是限制,实际影响巨大——涨停板你想买买不到,跌停板你想卖卖不掉。流动性在极端时刻直接消失,而极端时刻恰恰是策略最想交易的时刻。
T+1:今天买明天才能卖。美股的日内反转、T+0 套利、高频做市在 A 股全部失效。你能做的只有"持仓过夜"型策略,日内波动再大也吃不到。这把 A 股策略的可行域砍掉一大半。
一个理论年化 20% 的策略,在美股无约束下能跑满。搬到 A 股,调涨跌停比例、停牌率、T+1 影响,看实际能跑出多少——约束越严,理论收益打折越狠。
策略最想交易的时刻恰恰是涨跌停时刻,买卖盘被锁死。回测必须模拟"未成交",不能假设按收盘价成交。
今天买明天才能卖,T+0 套利、日内反转、高频做市都做不了。可行策略只剩持仓过夜型。
重组、重大事项停牌几天到几个月,复牌后跳空。回测若不处理停牌,会把停牌期当正常持仓,结果失真。
戴帽后流动性骤降、波动放大、退市风险显性化。ST 股池和正常股池是两个世界,策略要分池设计。
这四个特殊性不是"调参数能绕过"的,是结构性约束。所以 A 股量化圈有一套自己的工具链:tushare/akshare 拿数据、baostock 补历史、本地数据库处理停牌复权、回测引擎必须支持涨跌停模拟和 T+1。直接用 backtrader/zipline 的美股默认配置,回测结果会系统性高估收益。