SPONGEsym

大白话:把股票之间「同涨同跌」和「此涨彼跌」的关系分别拆开, 再用特征向量把股票摆到一个空间里聚类——这样得到的簇是簇内同号、簇间反号的, 天然适合做多空篮子。它是目前前瞻型统计套利策略的事实标准聚类后端。

定义

SPONGE = Signed Positive Over Negative Generalized Eigenproblem。 对称变体(SPONGEsym)把股票池看成一个带符号的加权图:正相关与负相关被分解为正 Laplacian 与负 Laplacian, 各自归一化后联合做特征分解,最后在得到的嵌入空间里用 k-means++ 聚类。

SPONGEsym 是 Cartea Cucuringu Jin 2023 SPONGE(原始论文)使用的聚类后端, Korniejczuk Slepaczuk 2024 Graph Clustering Stat Arb 在其上加入 ML 集成信号过滤做了扩展, 而 Fanshawe Masih Cameron 2025 THGNN Correlation Forecasting 原样沿用了它, 只是把滚动窗口相关性换成了前瞻预测的相关性。

算法

输入:N 只股票之间的相关性矩阵 \rho \in [-1, 1]^{N \times N}。步骤:

  1. 构造邻接矩阵。 A_{ij} = \rho_{ij}(带符号)。分解 A = A_+ - A_-,其中 A_+ = \max(A, 0),A_- = \max(-A, 0)。

  2. 带符号 Laplacian。 构造正图与负图的 Laplacian L_+ = D_+ - A_+, \qquad L_- = D_- - A_- 其中 D_\pm 是 A_\pm 的对角度矩阵。

  3. 归一化对称 Laplacian。 L^{\text{sym}}_+ = D_+^{-1/2} L_+ D_+^{-1/2}, \qquad L^{\text{sym}}_- = D_-^{-1/2} L_- D_-^{-1/2}

  4. 广义特征值问题。 求解 L^{\text{sym}}_- \, v = \lambda \, (L^{\text{sym}}_+ + \tau_+ I) \, v 取最小的 k 个特征值(Cartea 等 2023 按对称化相似度矩阵上 90% 解释方差准则选 k)。 这就是对称变体;非对称版本用不同的归一化方式。

  5. 在 k 维特征向量嵌入上做 k-means++,得到 k 个簇。

显式地拆分正/负 Laplacian 是这里的核心设计:它让算法能找到 簇内强正相关、簇间强负相关的分组——这正是市场中性多空篮子所需的结构。

为什么不选其他聚类方法

方法 问题
谱聚类(Ng 等 2002) 只用正相似度,忽略符号结构
带符号 Laplacian 聚类(Kunegis 等 2010) 正负证据的平衡不如前者干净
最小生成树 / PMFG(Mantegna 1999; Tumminello 等 2005) 产出稀疏树,不是给 k-means 用的软嵌入
板块分类(Fama-French 48) 静态,忽略跨板块依赖;在相关性数日内飙升的危机中彻底失效

Cartea 等 (2023) 在标普 500 上把上述方法全部做了基准测试,报告 SPONGEsym 最好—— 而且明确是对称变体更好。原始 SPONGEsym 策略(每 3 日做一次多空篮子、等权反向权重) 在扣除交易成本前取得 12.2% 的年化收益,夏普 1.1。

前瞻化扩展——THGNN 的贡献

静态 SPONGEsym 策略有两个失效模式:

  1. 交易成本侵蚀 3 日再平衡的利润。Korniejczuk & Slepaczuk (2024) 把再平衡拉长到 10 日, 并加上一个 ML 集成过滤器(5 个分类器软投票),只交易盈利概率最高的 top-10% 信号。
  2. 滞后看的相关性适应太慢。新冠(2020)或俄乌冲突(2022)中相关性在数日内飙升, 但滚动 30 日窗口要数周才反应过来,在簇结构追上之前持续亏损。

Fanshawe Masih Cameron 2025 THGNN Correlation Forecasting 保留 Korniejczuk–Slepaczuk 的交易引擎, 但把滚动 30 日相关性矩阵换成 THGNN 预测的 10 日后相关性。结果:

指标 Korniejczuk–Slepaczuk 静态版 THGNN 前瞻版
夏普 (论文声称大幅提升;未复现) 1.84
年化收益 (基线不稳定) 19.20%
最大回撤 — −9.4%
最长亏损持续 — 82 天

区间 2019–2024,标普 500,约 45 只股票的 top-10% 过滤篮子。

簇内头寸构造

在每个簇内:

  • 计算过去 5 天的簇内平均累计收益。
  • 做多跑输簇均值的股票,做空跑赢的股票。簇内等权。
  • 每 10 日再平衡一次,以控制换手与交易成本。

「簇内反向」的逻辑就是均值回归假设:偏离簇内同伴的股票会回归。 但这只在簇结构本身是对的时才成立——而这正是前瞻相关性预测 supposed to 保证的东西。

自适应 k——处理状态切换

簇数 k 在每次再平衡时按对称化相似度矩阵上的 90% 解释方差准则选取。 这一点在状态切换期至关重要:新冠期间相关性飙升、资产「高度同质化」, 「正确的」簇数随之下降。自适应的 k 让算法能够优雅地合并簇, 而不是硬套一个已经不匹配市场现实的固定 k。

局限

  • 除等权外没有仓位管理——没有波动率目标、没有风险平价、没有凯利。
  • 公布的回测里没有滑点与市场冲击。
  • THGNN 作者没能复现 Korniejczuk–Slepaczuk 的 ML 过滤增益(那个被广泛引用的基线), 转而与标普 500 买入持有做对比。
  • 簇的可解释性有限——特征向量无法直接对应到经济因子。

SPONGEsym 落地检查清单

  • [ ] 决定用滚动还是前瞻的相关性矩阵。THGNN 式前瞻预测明显更好,但需要 ML 基础设施。
  • [ ] 用解释方差准则做自适应 k —— 绝不写死。
  • [ ] 在栈顶加 ML 集成信号过滤器以控制换手。
  • [ ] 约 10 个交易日的再平衡周期,在均值回归的持仓持久性与交易成本之间取平衡。
  • [ ] 加一层波动率目标(见 Volatility Targeting)——等权多空忽略了簇间波动率的差异。
  • [ ] 对篮子收益序列做夏普比率推断时用 Stationary Bootstrap。

相关页面