债券 ETF 的流动性转换:日内可交易的底层其实一周才成交一次
债券 ETF 的流动性转换是两个可分别证伪的机制。第一个有闭式解:T=sqrt(N/(1+(N-1)ρ)),只由投资者流量相关性决定、与产品设计无关——ρ=1 安慰剂给出精确 1.000000x(偏差 0.000e+00),ETF 一分钱流动性也没创造;ρ=0 上界是 sqrt(N)=22.36 而非 N。剂量反应:ρ 从 0 到 0.05(风险报告里写作「几乎不相关」)转换比就从 22.3x 塌到 4.4x,损失 80.4%,而毛成交额几乎不变。第二个机制推翻了「折价=脱锚」:底层 5 日才成交一次,NAV 是滞后平滑量,观测折溢价波动的 96.92% 来自分母陈旧、只有 3.08% 是真实脱锚(解析 0.6719% vs 实测 0.6721%,误差 2.85e-04)。副作用:σ_NAV/σ_真实=sqrt(p/(2-p)),p=0.2 时 Sharpe 被系统性放大 3.00 倍,压力期虚高 6.26 倍。压力期 -7.73% 折价里 99.95% 是陈旧——此时该被怀疑的是 NAV。两个机制不可加:单独相加 -12.26% 而同时发生 -18.31%,交互项 -6.05%。12 宇宙 CV=0.0002
核心结论:债券 ETF 的「流动性转换」不是产品创造的,是投资者的分歧创造的。而它在二级市场报出的折价,绝大部分不是脱锚,是分母算错了——底层几天才成交一次,NAV 是个滞后量。
关于债券 ETF,有两句话被反复引用,方向相反但同样流行:
- 卖方版本:「它把不流动的资产变成了日内可交易的份额。」
- 空方版本:「它是流动性错配,危机时一定会断。」
这两句话都对,也都没说清楚是什么东西在转换,以及转换比取决于谁。本文把它拆成两个可以分别度量、分别用安慰剂证伪的机制。

一、转换比有闭式解,而它与 ETF 无关#
设有 个独立资金方,每个的日流量 服从相同分布、两两相关系数为 。
- 二级市场毛成交额 ≈
- 必须进入一级申赎的净额 =
比值就是流动性转换比:
用 500 个资金方、20 万次抽样暴力核对:
| 情景 | 毛成交额 | 净额 | 转换比(实测) | 解析 |
|---|---|---|---|---|
| 平静期 ρ=0.002 | 7.979% NAV/日 | 0.504% | 15.843x | 15.819x |
| 压力期 ρ=0.25 | 7.978% NAV/日 | 4.000% | 1.995x | 1.994x |
相对误差 1.47e-03。
注意毛成交额在两个情景下几乎完全相同(7.979 vs 7.978)。塌掉 87.4% 的不是交易量,是抵消率。
两条安慰剂锁死机制#
| 安慰剂 | 结果 | 含义 |
|---|---|---|
| ρ=1(所有人完全同向) | 转换比 1.000000x,偏差 0.000e+00 | 流动性转换在数学上完全消失,ETF 一分钱也没创造 |
| ρ=0(完全独立) | 22.2054x vs 理论 sqrt(500)=22.3607,误差 6.94e-03 | 上界是 ,不是 |
第二条比第一条更有实践价值:上界是根号级的。投资者数量翻一倍,转换能力只多买到 41%。「我们这只 ETF 持有人非常分散」这句话的边际收益递减得比直觉快得多。
二、剂量反应:0.05 的相关性就够了#
import numpy as np
def transformation_ratio(n_inv, rho, n_obs=200_000, s=0.02, seed=0):
"""暴力模拟:毛成交额 / 净额。返回转换比与净额均值。"""
rng = np.random.default_rng(seed)
z = rng.standard_normal((n_obs, 1)) # 共同因子
e = rng.standard_normal((n_obs, n_inv)) # 特质因子
f = s * (np.sqrt(rho) * z + np.sqrt(1 - rho) * e)
gross = np.abs(f).sum(axis=1)
net = np.abs(f.sum(axis=1))
return gross.mean() / net.mean(), net.mean()
for rho in [0.0, 0.002, 0.01, 0.05, 0.25, 1.0]:
T, net = transformation_ratio(500, rho)
theory = np.sqrt(500 / (1 + 499 * rho))
print(f"rho={rho:<6} T={T:7.3f}x 理论={theory:7.3f}x 净额={net:.3f}% NAV")python| ρ | 转换比 | 净额 %NAV | 触发一级申赎的天数占比 |
|---|---|---|---|
| 0.0000 | 22.316x | 0.358 | 50.23% |
| 0.0020 | 15.796x | 0.505 | 63.85% |
| 0.0100 | 9.109x | 0.876 | 78.48% |
| 0.0500 | 4.369x | 1.826 | 89.61% |
| 0.2500 | 1.997x | 3.996 | 95.19% |
| 1.0000 | 1.000x | 8.017 | 97.67% |
ρ 从 0 涨到 0.05,转换比损失 80.4%。
0.05 的相关系数在任何一份风险报告里都会被描述成「几乎不相关」。而它已经吃掉了这个产品五分之四的核心功能。
这里的结构性问题是:ρ 不是外生参数,它是市场状态的函数。 平静期投资者因为各自的现金流需求交易,彼此抵消;压力期所有人读同一条新闻。转换比恰恰在你最需要它的时候消失——这不是产品缺陷,是这个数学式的必然。
三、第二个机制:「折价」的分母本身就是错的#
债券和股票有个根本区别:一只债券可能一周才成交一次。
基金公司必须每天报一个 NAV,做法是用最后成交价(或对标估值)。在 的极限下,如果每只债券每天以概率 成交,账面 NAV 服从:
一个指数平滑器。于是陈旧缺口 的稳态标准差有闭式解:
设底层真实年化波动 8%、(平均 5 个交易日成交一次)、真实脱锚(AP 无套利带内噪声)SD = 0.12%:
| 分量 | SD | 占折溢价方差 |
|---|---|---|
| 陈旧缺口(分母错了) | 0.6721%(解析 0.6719%,误差 2.85e-04) | 96.92% |
| 真实脱锚(ETF 定价偏离) | 0.1199% | 3.08% |
| 观测折溢价合计 | 0.6829% | 100% |
观测到的折溢价波动,96.92% 是 NAV 陈旧,只有 3.08% 是 ETF 本身偏离。
三层验证#
| 检验 | 结果 |
|---|---|
| 安慰剂 C:p=1(底层每日成交) | 陈旧缺口 SD = 0.000e+00,观测折溢价塌到 0.1199% ≈ 真实脱锚 |
| 安慰剂 D:底层零波动 | 陈旧缺口 SD = 0.000e+00 |
| 暴力核对:M=400 只债券逐只模拟最后成交价 | 0.6712% vs 极限解析 0.6719%,相对误差 0.0011 |
陈旧缺口 = 成交稀疏 × 真实波动。任一为零则精确消失——这排除了实现 bug,也给了这个量一个干净的名字。
四、同一个机制让债券基金的风险报告系统性低估波动#
这是个几乎没人提、但影响所有债券基金业绩归因的推论。
如果 NAV 是真实价值的指数平滑,那么用 NAV 算出来的收益率序列,波动被系统性压缩:

| p | 平均成交间隔 | σ_NAV/σ_真实 | 解析 | NAV 收益一阶自相关 | Sharpe 虚高倍数 |
|---|---|---|---|---|---|
| 1.00 | 1.0 日 | 1.0000 | 1.0000 | 0.0035 | 1.00x |
| 0.50 | 2.0 日 | 0.5779 | 0.5774 | 0.5012 | 1.73x |
| 0.20 | 5.0 日 | 0.3334 | 0.3333 | 0.7987 | 3.00x |
| 0.10 | 10.0 日 | 0.2293 | 0.2294 | 0.8977 | 4.36x |
| 0.05 | 20.0 日 | 0.1598 | 0.1601 | 0.9470 | 6.26x |
同一个组合、同一段收益,仅仅因为底层 5 日成交一次,报出的 Sharpe 就被放大 3.00 倍。
而且这个失真是可检测的:NAV 收益的一阶自相关在 p=0.2 时高达 0.7987。真实的日收益序列不该有这个自相关。任何一份债券基金业绩报告,只要收益序列的一阶自相关显著为正,波动率和 Sharpe 就都不能按面值采信。
顺带一提,这也解释了为什么私募信贷、非上市地产这类资产的「低波动高 Sharpe」在数学上是自动的——它们的 比债券还小一个数量级。
五、压力期的 -7.73% 折价,99.95% 是分母#
把两个机制放进压力期设定:(20 日成交一次)、真实波动 25%、、底层日承接量 0.25% NAV。
| 分量 | 数值 |
|---|---|
| ① 陈旧缺口(不是脱锚) | 5 分位 −7.729%,SD 4.675% |
| ② AP 变现冲击(真实成本) | 平均 319.4 bp,99 分位 926.3 bp(平静期平均 10.1 bp,放大 31.7 倍) |
| ③ 真实脱锚(AP 带内噪声) | SD 0.12% |
| 观测折溢价 | 5 分位 −7.733%,1 分位 −11.03% |
一个 −7.73% 的「折价」里,99.95% 是分母陈旧。
这给 2020 年 3 月债券 ETF 大幅折价一个不同的读法:不是 ETF 脱锚了,是 NAV 那一侧根本没有价格。 当底层 20 天才成交一次,NAV 引用的是三周前的市场;而 ETF 二级市场的价格是此刻真实成交出来的。
此时该被怀疑的是 NAV,不是 ETF。 ETF 价格是可交易、可证伪的;NAV 是一个用陈旧报价拼出来的会计量。把前者叫做「脱锚」,等于用一个更差的价格去指责一个更好的价格。
需要说清楚的是:这不意味着折价里没有真实成本。② 那一项是真的——AP 要变现一篮子没人买的债券,冲击成本平均 319 bp、99 分位 926 bp。只是它的量级(个位数 bp 到几百 bp)和陈旧缺口(几个百分点)差一个数量级。
六、两个机制不可加:它们共享同一个触发器#
分别打开两个开关,再一起打开:
| 情景 | 转换比 | 净额% | 冲击 99 分位 | 陈旧 SD | 观测折价 1 分位 |
|---|---|---|---|---|---|
| 平静 | 15.83x | 0.504 | 29.7 bp | 0.667% | −1.87% |
| 只有流量相关性上升 | 1.99x | 4.016 | 232.2 bp | 0.667% | −3.90% |
| 只有底层成交枯竭 | 15.91x | 0.501 | 116.6 bp | 4.723% | −12.11% |
| 两者同时 | 1.99x | 4.016 | 923.9 bp | 4.723% | −20.18% |
单独效应相加 −12.26%,实际同时发生 −18.31%,交互项 −6.05%。
这两个机制不是可加的,因为它们由同一个事件触发。 风险偏好逆转会同时做两件事:让所有投资者同向(ρ↑),让做市商停止报价(p↓)。
于是「净额变大」和「篮子没有价格」精确地发生在同一天。这也是为什么分别压力测试两个维度会低估三分之一的尾部——而分开测试恰恰是标准做法。
七、AP 库存缓冲:平静期几乎免费,压力期几乎无效#

AP 会持有一定库存来吸收小额净流量,不必每天做一级申赎。
| 缓冲 %NAV | 平静期触发率 | 压力期触发率 | 平静残余净额 | 压力残余净额 |
|---|---|---|---|---|
| 0.00 | 100.00% | 100.00% | 0.504% | 4.000% |
| 0.30 | 63.47% | 95.21% | 0.259% | 3.707% |
| 1.00 | 11.40% | 84.14% | 0.031% | 3.079% |
| 2.00 | 0.14% | 68.99% | 0.000% | 2.315% |
| 4.00 | 0.00% | 42.66% | 0.000% | 1.209% |
0.3% NAV 的缓冲在平静期挡掉 36.5% 的申赎触发,压力期只挡掉 4.8%。
要在压力期挡掉一半,需要 4% NAV 的库存——那不再是「做市库存」,那是一只自营基金。而 AP 没有任何做市义务,也没有理由为一个年化收入有限的业务扛这么大的头寸。
缓冲的成本在平静期支付,收益在压力期兑现,而两者相差一个数量级。 这个结构决定了它总是被设得太薄,和折扣率下限、和银行流动性缓冲是同一类问题。
八、样本量红线:能测准的不重要,重要的测不准#
单个 1 年窗口的转换比估计:均值 15.878x,SD 0.754。
| 要检出的恶化 | 需要样本 |
|---|---|
| 0.5x | 9.1 年 |
| 1.0x | 2.3 年 |
| 2.0x | 0.6 年 |
看起来相当好测——15.8x 掉到 2.0x 是 13.8x 的差距,一年数据绰绰有余。
但这个塌陷只在危机的那几周发生,而年度均值会把它稀释掉:
| 一年中进入压力状态的交易日占比 | 年度口径测到的转换比 | 真实塌陷值 |
|---|---|---|
| 2.0% | 13.91x | 1.99x |
| 5.0% | 11.76x | 1.99x |
| 10.0% | 9.35x | 1.99x |
| 20.0% | 6.63x | 1.99x |
一年里有 5% 的交易日(约 13 天)转换比塌到 1.99x,年度报告上写的仍然是 11.76x。
这不是样本量问题,是聚合口径问题。用年度平均评估流动性韧性,测的是「平常有多好」,而这个产品的风险全部在「不平常的那 13 天」。
12 宇宙稳健性:陈旧占折溢价方差比例均值 96.909%,SD 0.0188,CV=0.0002。
九、实践清单#
- 不要用「日均成交额」评价债券 ETF 的流动性。它测的是毛成交,而危机时消失的是抵消率。要看的是持有人结构的分歧程度
- 折价不等于脱锚。看到债券 ETF 折价 3%,第一反应应该是「底层多久没成交了」,不是「ETF 出问题了」
- 压力期该被怀疑的是 NAV。ETF 价格是此刻成交出来的,NAV 是用陈旧报价拼的
- 任何债券 / 私募信贷 / 非上市资产基金的 Sharpe,先查收益序列的一阶自相关。显著为正,波动率和 Sharpe 就都要打折看。p=0.2 时 Sharpe 虚高 3 倍
- 分开做流量压力测试和底层流动性压力测试会低估三分之一。它们由同一个事件触发,必须联合建模
- AP 缓冲是个安慰剂级别的旋钮。要在压力期起作用需要 4% NAV 量级的库存,而没有人有义务提供它
最后回到开头那两句话。它们其实说的是同一件事的两半:
债券 ETF 确实创造了流动性——但那份流动性来自持有人之间的分歧,不来自基金结构。 分歧存在时,转换比 15x;分歧消失时,转换比精确等于 1,而这个数是数学恒等式,不是压力测试假设。
这不是缺陷,也不是骗局。这是「把不同意的人凑在一起」这门生意的定价方式。 而它唯一的坏消息是:这门生意的产能,恰好在最需要它的那天归零。