高频领先滞后估计:谁先动,谁跟随
两个高度相关的资产几乎从不同时动:期货先于现货、大盘股先于小盘股、美股 ETF 先于亚洲镜像。领先滞后估计要回答的是「谁先动、领先多少秒」。受控模拟(真实滞后 θ=2 秒、泊松异步观测)实测:1 秒网格滞后互相关函数峰值精确落在 +2 秒,同期相关只有 0.066 而峰值 0.120——同步相关严重低估了这对资产的真实耦合。HRY 估计器(Hoffmann-Rosenbaum-Yoshida 2013)按区间重叠配对无需网格,峰值 0.80 落在 2 秒,信号强度是网格法的 6.7 倍。采样频率扫描给出实操上最重要的曲线:h=5s 时不对称度 0.200 最大,h=60s 时只剩 0.020——领先滞后是尺度依赖信号,网格必须与 θ 同数量级,粗网格把先后关系压扁成同期相关。方向性 IC 检验:领先者过去 2 秒预测跟随者未来 2 秒,15 日 IC 均值 0.215(t=125),反向对照只有 0.074。诚实边界:领先滞后利润与延迟军备竞赛绑定、θ 本身随市场状态漂移、Epps 效应与领先滞后互为混杂因素。A 股注记:沪深 300 期货 vs ETF、AH 股是天然领先滞后对,但 T+1 与两融门槛限制了收割方式(高阶)
一句话版本#
两个高度相关的资产,几乎从不同时动。期货先于现货,大盘股先于小盘股,ETF 先于成份股,美股先于亚洲镜像资产。领先滞后估计(lead-lag estimation)要回答的是:谁先动、领先多少、这个先后关系稳不稳定——而答案里藏着高频世界最直接的一类预测信号。
上一篇《Epps 效应》讲的是高频相关估计如何被异步交易摧毁。这一篇是它的镜像问题:当两个资产之间存在真实的时间错位时,怎么把这个错位测出来、而不是被采样机制抹掉。
问题:同期相关是一张糊掉的照片#
标准的相关系数隐含一个假设:两个资产的信息是同时到达价格的。现实里这个假设几乎总是错的:
- 股指期货 vs 现货指数:期货流动性好、杠杆高、做空无约束,宏观信息几乎总是先打进期货,现货指数(尤其被成份股买卖价约束)要慢几百毫秒到几秒;
- 大盘股 vs 小盘股:同行业信息先反映在流动性好的龙头上,小票的调整可以慢几分钟;
- 跨市场镜像:美股收盘价对第二天亚洲市场的开盘有明确的领先性,日内的 ADR 与本地股同理;
- ETF vs 成份股篮子:套利者的存在让 ETF 与篮子高度耦合,但谁先动取决于哪边流动性更好。
如果 X 领先 Y 两秒钟,你在 t 时刻同时取两者的收益算相关,实际上是在比较「X 的新信息」和「Y 对 X 两秒前信息的回应」——同期相关会系统性低估这对资产的真实耦合,而且完全丢掉了方向信息。测出「谁先谁后」这件事,本身就是一个可交易的信号。
受控实验:把真实滞后钉死在 2 秒#
模拟的好处是真值已知,能校准估计器。构造如下:
- 领先者 X 是布朗运动(每 0.1 秒一步),跟随者 Y 的增量 = 0.8 × X 滞后 2 秒的增量 + 独立噪声——真实领先滞后 θ = 2 秒;
- 两个资产都以泊松到达观测(平均 3 秒一笔成交),叠加微观结构噪声——你看不到有效价格,只看到异步的、带噪的成交价;
- 一个 6.5 小时交易日约 7800 笔观测,重复多日取均值。
工具一:滞后互相关函数(网格法)#
最直接的做法:把两个资产 previous-tick 对齐到 1 秒网格,然后计算带滞后的互相关 ,让 从 −8 秒扫到 +8 秒:
def lagged_corr(rx, ry, lag_steps):
"""lag_steps>0:Y 滞后,比较 X 现在的收益与 Y 未来的收益"""
if lag_steps > 0:
return np.corrcoef(rx[:-lag_steps], ry[lag_steps:])[0, 1]
elif lag_steps < 0:
return np.corrcoef(rx[-lag_steps:], ry[:lag_steps])[0, 1]
return np.corrcoef(rx, ry)[0, 1]python
20 日均值的结果(1 秒网格):
| 关键量 | 数值 |
|---|---|
| 同期相关(ℓ=0) | 0.066 |
| 峰值相关 | 0.120 |
| 峰值位置 | +2 秒(精确命中真值) |
两个要点。第一,峰值位置精确落在真实滞后 2 秒上——滞后互相关函数是领先滞后方向和幅度的一致估计。第二,同期相关 0.066 只有峰值的一半——如果你只算同步相关,不仅丢了方向,连耦合强度都低估了 45%。曲线的不对称性就是方向:右侧(Y 滞后)明显高于左侧,X 是领先者。
工具二:HRY 估计器——不用网格的做法#
网格法有一个继承自 Epps 问题的缺陷:previous-tick 对齐引入陈旧价格,且网格宽度是一个需要拍脑袋的超参数。Hoffmann, Rosenbaum & Yoshida (2013) 把 Hayashi-Yoshida 估计器扩展成了领先滞后版本(HRY):
把 Y 的时间轴整体平移 δ,然后按「时间区间重叠」配对两资产的逐笔收益算 HY 协方差,对 δ 扫描,让相关性最大的 δ 就是领先滞后的估计。
def hy_cov_shift(tx, px, ty, py, shift):
"""Y 时间轴平移 -shift 后做 Hayashi-Yoshida 区间重叠配对"""
rx, ry = np.diff(px), np.diff(py)
ax0, ax1 = tx[:-1], tx[1:]
ay0, ay1 = ty[:-1] - shift, ty[1:] - shift
total, j = 0.0, 0
for i in range(len(rx)):
while j < len(ry) and ay1[j] <= ax0[i]:
j += 1
k = j
while k < len(ry) and ay0[k] < ax1[i]:
total += rx[i] * ry[k] # 区间重叠即配对
k += 1
return totalpython
结果:HRY 相关在 δ = 2 秒处达到峰值 0.80——几乎还原了 Y 对 X 的真实载荷,且不需要任何网格。对比网格法的峰值 0.120,HRY 的信号强度是 6.7 倍,因为它不被 previous-tick 的陈旧价格稀释。这就是「用对估计器」的价值:同一份数据,同一个真相,信噪比差近一个数量级。
代价是计算量(双重循环遍历区间重叠,实盘需要用排序+双指针优化到近线性)和对微观结构噪声的敏感——HY 家族对噪声不设防,噪声大时需要先做 pre-averaging,这与上一篇 Epps 文章的结论一致。
采样频率扫描:领先滞后是尺度依赖信号#
实操上最重要的问题:网格该取多细? 把互相关不对称度(正向峰 − 反向峰)作为「领先滞后信号强度」,对采样间隔 h 扫描:

| h | 1s | 2s | 5s | 10s | 30s | 60s |
|---|---|---|---|---|---|---|
| 不对称度 | 0.069 | 0.142 | 0.200 | 0.155 | 0.045 | 0.020 |
这条曲线是个倒 U 形,两端都有明确的机制:
- h 太小(1 秒):Epps 效应主导——异步观测 + 陈旧价格把所有相关性(含滞后相关)都稀释了;
- h 在 θ 附近(2-10 秒):信号最强,网格分辨率恰好能区分「X 先动」和「Y 后动」;
- h 太大(30-60 秒):一个网格内 X 的动作和 Y 的回应被打包进同一个收益区间,先后关系被压扁成同期相关,不对称度趋于零。
结论:领先滞后是尺度依赖信号,采样粒度必须与 θ 同数量级。用 1 分钟线找 2 秒级的领先滞后是缘木求鱼;反过来,用 tick 级数据找几分钟级的大小盘轮动也纯属浪费算力。先猜 θ 的数量级,再选工具。
方向性检验:这个信号真的能预测吗#
领先滞后关系的可交易形式是:用领先者刚刚的动作预测跟随者接下来的动作。检验:用 X 过去 2 秒的累计收益预测 Y 未来 2 秒的收益,逐日算 IC;再做一个反向对照(用 Y 的过去预测 X 的未来):

| 方向 | 15 日 IC 均值 | IC 标准差 |
|---|---|---|
| X→Y(正向) | 0.215 | 0.007 |
| Y→X(反向对照) | 0.074 | 0.007 |
正向 IC 稳定在 0.215,且 15 天里没有一天低于反向对照——方向性是实打实的。反向 IC 不为零(0.074)是因为 Y 的收益里有 X 的滞后成分,而 X 自身有自相关为零的增量——这个非零值来自 previous-tick 对齐让部分同期信息渗漏到「过去」,这正是实盘中评估领先滞后信号时最常见的假象来源:对照组不做,你不知道 IC 里有多少是对齐机制送的。
0.2 级别的 IC 在高频世界是巨大信号——但先别激动,看下一节。
为什么这钱不好赚#
第一,你在和光速竞赛。 领先滞后利润的收割者是延迟最低的玩家:期现之间几百毫秒的领先性,套利容量几乎全部被 co-location 的 HFT 吃掉。你能测出 θ=2 秒不代表你能在 2 秒内完成「观测 X → 下单 Y → 成交」的闭环——减去你的全链路延迟后剩下的才是你的可收割窗口。模拟里 IC=0.215 对应的是零延迟的理想执行。
第二,θ 不是常数。 真实市场的领先滞后随波动率状态、流动性分布、参与者结构漂移:高波动时段信息传导加快(θ 收缩),午盘清淡时段 θ 拉长。用全样本估计一个静态 θ 然后固定使用,等于假设市场结构十年不变。实盘需要滚动重估,而滚动窗口内的 HRY 估计方差不小。
第三,Epps 与领先滞后互为混杂。 观测到的互相关曲线同时被两个机制塑形:真实的领先滞后把峰值推离零点,异步采样的 Epps 效应把整条曲线往下压且展宽。清淡资产做跟随者时,你测出的「滞后」里有一部分只是它成交稀疏导致的机械延迟——成交间隔本身就会制造 θ 量级的伪滞后。区分「信息传导慢」和「成交更新慢」需要把成交强度作为协变量建模,或者直接用报价数据(报价更新远比成交密集)重估。
A 股场景注记#
- 天然领先滞后对:沪深 300 股指期货 vs 300ETF(期货领先,秒级);AH 两地上市股(A 股日内领先性受港股通资金流影响);行业龙头 vs 小票(分钟级)。期现之间的领先性在 2015 年股指期货受限后一度反转——θ 的符号都可能变,这是市场结构依赖性的极端例子;
- T+1 的约束:现货腿今天买了明天才能卖,跟随者方向的高频往返交易做不了。实操上 A 股的领先滞后信号更多用于执行择时(已决定要买时,等领先者回落再入场)而非独立策略;
- 数据条件:Level-2 快照 3 秒一档,报价级领先滞后估计的分辨率下限就是 3 秒——比美股的毫秒级报价流粗得多,θ 小于 3 秒的结构测不出来。
与前文的连接#
这是市场微观结构系列的一篇:《Epps 效应》讲了异步交易如何摧毁同期相关估计——本篇是同一个硬币的另一面,异步性既是需要修复的偏差(Epps),也掩盖着真实的时间错位信号(领先滞后),HY/HRY 这对估计器分别处理这两个问题。《Tick 失衡 Bar》《Run Bars》讲的知情交易签名,在跨资产维度的对应物就是领先滞后:知情者先打流动性好的腿。
本文实验代码基于受控模拟(真实滞后已知),用于校准估计器行为。实盘环境的 θ 估计需叠加处理报价数据、成交强度协变量与滚动重估,复杂度显著高于本文演示。