多策略相关性矩阵:Kelly 之外的二阶纪律
为什么仅依靠 Kelly 不够——跨策略相关性才是限制总杠杆的真正瓶颈。一份 12 个月的实证报告。
— C. Yi
Kelly 公式给出的是「单一机会」的最优仓位。但一只真正的量化基金从来不只跑一个策略——它有 6 支、12 支、甚至 30 支策略同时运行。这时候单策略 f* 加起来会暴露一个隐藏问题:策略之间不是独立的。
考虑两支看起来不相关的策略:一支是 funding rate 套利,一支是期权做市。在 2024-07-21 那种「永续合约爆仓潮 + 期权 IV 突升」的事件里,它们同时遭受短期回撤——因为驱动它们的潜变量是同一个:市场流动性骤减。如果你按各自的单策略 f* 全仓运行,那一天的组合回撤会是单策略的 1.8 倍。
把单策略 Kelly 加总,得到「一阶最优」;用协方差矩阵约束总杠杆与单策略峰值仓位,得到「二阶最优」。F* 协议层 KellyPolicy 默认实现的就是二阶版本。Kelly 是公式,相关性是工艺。
我们在 6 支策略上跑了 12 个月的滚动协方差估计,结果不令人意外但仍然警醒——所谓「不相关的策略」在不同市场制下相关性差异巨大。
| 策略对 | 低波动制 (Ρ) | 中波动制 (Ρ) | 高波动制 (Ρ) |
|---|---|---|---|
| Funding × Options MM | 0.08 | 0.18 | 0.61 |
| MEV × CTA 趋势 | 0.04 | 0.09 | 0.34 |
| Yield+ × Active Alpha | 0.02 | 0.05 | 0.12 |
| Cross-mkt arb × MEV | 0.12 | 0.21 | 0.55 |
高波动制下,原本「不相关」的策略相关性可以从 0.08 跳到 0.61——也就是说你以为分散到 6 支的资金,实际上是分散到 ≈ 2 支独立单元。这是为什么 F* Allocation Engine 实现的不是静态权重 + 单策略 f*,而是带相关性约束的动态 fractional Kelly。
一阶 Kelly
FIRST ORDER每支策略独立 f*/4 · 加总作为总杠杆 · 假设零相关 · 在低波动制下大致 OK · 在高波动制下严重低估风险
二阶 Kelly + 协方差
SECOND ORDER构造 6×6 协方差矩阵 · 滚动估计 · 优化目标改为「在协方差约束下最大化几何均值」· F* KellyPolicy 默认实现
三阶 · 制度切换
THIRD ORDER识别低/中/高波动制 · 在不同制下使用不同协方差矩阵 · 当前为路线图项 · 需要 protocol governance + Policy 提交
如果你正在筹备一只基于 F* 的链上基金:用 KellyPolicy 作为默认 Policy 已经包含二阶相关性约束;如果你想要自定义协方差结构(比如把 RWA 国债策略与加密策略明确分块),fork ISettlementPolicy 接口并向 Hub 提交。社区会审查、签名,再链上注册。
Kelly 公式回答的是「应该投多少」,相关性回答的是「能同时投多少」。后者比前者难——它需要数据、滚动估计、以及对市场结构变化的判断。F* 把这套机制作为协议层默认,是因为:这是「机构级数字资管」与「拍脑袋仓位决策」的分水岭。