撤单日内时间结构因子 (Intraday Timing Structure of Cancellations)

大白话:撤单不只看撤了多少,还要看撤在什么时候。开盘三十分钟里撤单的人,和收盘前半小时撤单的人,想的不是同一件事。把一天的撤单按时间切开、比较各段的占比,就得到这一族因子——这也是全篇唯一一族信号方向为正、且强度能进前三的因子。

为什么时间维度会带信息

A 股的交易时段本身有强周期性:开盘半小时和收盘半小时的成交、波动、价差都远高于中间时段(这就是日内 U 型周期)。但撤单的时间结构不等于成交的时间结构——挂单是主动行为,什么时候挂、挂了多久撤,反映的是挂单方对信息的处理节奏。

研报的原话是「投资者在不同交易阶段的订单调整行为存在明显差异,不同阶段的撤单特征能够反映市场参与者交易节奏和信息处理方式」。这句话比较抽象,能落地的是三个可以直接计算的时间切分:

  • 开盘段(open):集合竞价后到某个时点
  • 收盘段(close):收盘前某段时间
  • 下午段(afternoon):13:00 之后

研报没有给出这三段的具体边界。从因子名的构造方式看,time_open_count_share 是撤单笔数落在开盘段的比例,time_afternoon_vol_share 是撤单量落在下午段的比例,time_close_minus_open_count_share 是两个占比之差。

第 4 族:日内时段与时间结构(16 个)

因子 原始 IC 胜率 5 日平滑 20 日平滑
time_close_minus_open_count_share 3.80% 72.76% 5.43% 6.08%
time_close_count_share 2.66% 68.00% 4.00% 4.75%
time_afternoon_vol_share 2.03% 66.35% 2.91% 3.89%
time_open_count_share −3.55% 71.36% −5.20% −5.79%
fast_normal_top5min_share_diff_count 1.47% 56.82% 2.31% 2.55%
fast_afternoon_surprise_vol −0.45% 56.99% 0.69% 1.08%
fast_close_surprise_count −0.41% 51.51% 0.70% 2.11%
fast_close_surprise_vol 0.63% 58.53% 1.23% 2.36%
fast_normal_top5min_share_diff_vol −0.11% 49.69% 0.86% 1.53%
fast_normal_intraday_shift_diff_count 0.15% 52.92% 0.20% 0.30%
fast_normal_intraday_shift_diff_vol 0.16% 53.20% 0.19% 0.28%
fast_afternoon_surprise_count −0.99% 62.28% −0.44% −0.41%
partial_close_surprise_count 0.18% 53.85% 0.62% 0.85%
partial_close_surprise_vol −0.98% 54.46% 0.05% 0.65%
partial_afternoon_surprise_count −1.68% 58.66% −2.42% −2.51%
partial_afternoon_surprise_vol −0.85% 55.93% −0.93% −1.12%

核心三个:开盘与收盘此消彼长

最强的三个因子其实是同一件事的三种说法:

因子 原始 IC 含义
time_open_count_share −3.55% 开盘段撤单笔数占比越高 → 未来收益越低
time_close_count_share +2.66% 收盘段撤单笔数占比越高 → 未来收益越高
time_close_minus_open_count_share +3.80% 二者之差,等于把前两个合并

收盘减开盘是三者里最强的,因为一减就把「全天撤单总量」这个共同成分抵消掉了,剩下的纯粹是时间分布的差异。这正是研报标题里「时间结构」的意思——不是撤单多少,而是撤单摊在哪一头。

越平滑越强:与活跃度族相反的规律

这批因子有个特别之处:5 日和 20 日平滑版本全部强于原始版本,而且平滑后还在变强:

因子 原始 5 日 20 日
time_close_minus_open_count_share 3.80% 5.43% 6.08%
time_open_count_share −3.55% −5.20% −5.79%
time_close_count_share 2.66% 4.00% 4.75%
time_afternoon_vol_share 2.03% 2.91% 3.89%

这与第 1 族「活跃度」正好相反——那边原始最强、越平滑越弱。原因是时间结构是个慢变量:一只股票倾向于在收盘前撤单还是开盘后撤单,是它的投资者结构决定的,不会天天变;日频数据里的时间占比有大量噪声,平滑恰好把这些噪声平均掉。

这也是全篇对因子使用窗口的唯一一处实质性提示:时间结构类用长平滑,活跃度量类用原始值。研报在章节标题里也标注了每个因子的推荐窗口——(一)rel_count_per_active_minute 因子-原始、(二)time_open_count_share 因子-滚动20 日、(三)time_close_minus_open_count_share 因子-滚动5 日、(四)time_afternoon_vol_share 因子-滚动20 日。

多头组合表现:全样本最高的一只

研报对七个重点因子分别给了十分档多头组合(Q1)对比中证全指的分年度表现。时间结构族里展示的两只:

time_close_minus_open_count_share(滚动 5 日)

年份 总收益 年化 最大回撤 换手(单边) 年化波动 夏普 (rf=2%)
全样本 175.87% 14.50% 28.04% 71.93% 20.75% 0.60
2021 年 33.34% 33.19% 8.82% 76.70% 14.28% 2.18
2025 年 34.97% 34.80% 13.33% 66.31% 17.87% 1.84
2022 年 0.86% 0.86% 21.58% 74.01% 21.38% −0.05
2024 年 3.17% 3.17% 24.44% 66.81% 30.07% 0.04

time_open_count_share(滚动 20 日)

年份 总收益 年化 最大回撤 换手(单边) 年化波动 夏普 (rf=2%)
全样本 171.80% 14.27% 25.98% 54.26% 19.82% 0.62
2021 年 31.85% 31.70% 8.76% 59.98% 14.06% 2.11
2025 年 29.31% 29.17% 12.18% 45.76% 16.55% 1.64
2022 年 2.24% 2.24% 19.53% 55.37% 20.77% 0.01
2024 年 4.77% 4.77% 21.99% 47.89% 27.97% 0.10

注意两点:

  1. 这是多头组合,不是多空。 全样本年化 14%–15%、夏普 0.60–0.62,看起来不高,但对比的是中证全指本身。十个因子的表 4–10 全部是这个口径(每节表头都写「十分档多头组合分年度表现统计」)。
  2. 换手极高。 单边换手 54%–72%,是日频调仓的典型水平。这批因子如果扣双边千三的成本,多头超额会被吃掉一大块——研报没有给扣费后的数字。

与 Barra 的相关性:这一族最干净

表 11 里时间结构族有三只上榜,与 Barra 风格因子的相关性全部低于 30%:

因子 最大相关性 出现在
time_open_count_share −28.5% 账面市值比
time_close_minus_open_count_share 22.2% 账面市值比
time_afternoon_vol_share −18.8% 流动性

而且这三只与市值因子的相关性分别是 −22.4% / 12.5% / 7.6%,都不高。对比第 1 族的 rel_count_per_active_minute(市值 48.9%),时间结构族才是真正独立于传统风格的那一批。

因子内部:时间结构三兄弟互相 46%–71%

表 12 的内部相关性矩阵显示,time_open_count_share / time_close_minus_open_count_share / time_afternoon_vol_share 三者之间是 70.8% / 58.4% / 46.4%——高度相关,本质上测的是同一件事的不同切面。这与「收盘减开盘是最强版本」的观察一致:既然三只高度重叠,取信息最集中的那只就够了。

跨族看,时间结构三只与 fast_normal_switch_rate_diff_vol(快速/普通对比族)只有 4.6%–9.8%,与 rel_count_per_active_minute(活跃度族)只有 0.6%–9.8%。跨族几乎完全独立,这是这批因子能组合使用的理由。

与其他页面的接口

Open Questions

  • 开盘段、收盘段、下午段的具体边界未给。 是 9:30–10:00 还是 9:30–10:30?收盘是 14:30–15:00 还是最后 15 分钟?没有定义,因子无法复现
  • afternoon 与 close 是否重叠? 如果下午段是 13:00–15:00、收盘段是 14:30–15:00,那么两者有交集,time_afternoon_vol_share 与 time_close_count_share 就不是并列关系
  • surprise 是什么。 fast_close_surprise_count / partial_afternoon_surprise_vol 等一系列因子都带 surprise,但全文未定义——从绩效看它平滑后变强(如 fast_close_surprise_vol 从 0.63% 升到 2.36%),说明它本身也是慢变量
  • partial_afternoon_surprise_* 方向为负,而 fast_close_surprise_* 为正。 同样带 surprise,前缀不同方向就反了,研报没有解释这一区别
  • 为什么「收盘撤单占比高 = 未来收益高」? 研报只给数字,没有给机制。一个可能的方向是收盘前撤单多意味着尾盘挂单方主动退出、次日承接更轻,但这只是推测

Sources