📑 本文目录
论文解读组合优化马尔可夫链动量排名MarkowitzarXiv矩阵动力学

三个矩阵就够了?用相关距离+排名马尔可夫链做动态组合优化——arXiv 2607.27461解读


本文是对 arXiv 预印本 2607.27461《Are Three Matrices All You Need To Beat the Market? Observable Matrix Dynamics for Portfolio Optimization》(Igor Halperin,2026-07-31)的解读类文章。重点不在复述论文,而在于:①讲清”三个矩阵”这套反直觉的极简状态表示为什么能替代 Markowitz 的期望收益+协方差;②把它与一周前我们解读过的 TDA+FinBERT 组合优化(arXiv 2607.21170)以及 Barra/最小方差组合做横向对比;③从 A 股工程化视角拆解可落地路径和不可忽视的陷阱。本文不包含回测代码,属于方法论解读。

论文信息表

项目内容
标题Are Three Matrices All You Need To Beat the Market? Observable Matrix Dynamics for Portfolio Optimization
作者Igor Halperin(独立研究,声明观点仅代表作者本人)
类型arXiv 预印本(未经同行评审)
arXiv ID2607.27461
发表时间2026 年 7 月 31 日
页数50 页(含附录)
代码仓库 github.com/ighalp/omd_portfolio,解读时仍为私有(作者声明可邮件索取)
计算工具论文明确说明:所有计算、数值分析和手稿撰写由 Claude Code + Opus 4.8 作为 AI 助手在作者监督下完成
数据S&P 500 成分股;主测试用 CRSP 数据,第二干净测试集用 Yahoo Finance 独立重建(475 只全历史股票)
测试集三段:样本内 2018-2021、样本外一 2022-2024、样本外二 2025-2026(“clean window”,完全不重叠)

一、问题陈述:除了”期望收益+协方差”,组合优化还需要什么?

经典 Markowitz 均值-方差优化的输入是 期望收益向量 + 协方差矩阵,目标是权衡期望收益与方差。这套框架七十年没变,但实践者都知道它有两个顽疾:

  1. 期望收益那一半是”浑水”。收益极难预测,最好的 alpha 模型样本外预测力也极弱,利润来自分散在大量交易上的薄边缘,而非任何自信的预测。
  2. 协方差矩阵需要求逆。在 N 很大时数值不稳定,对异常值敏感,而且单期快照无法刻画时变结构。

业界的常见回应是直接丢弃收益预测——最小方差组合和最大分散化组合只保留协方差,在它上面优化权重,用稳健性换收益估计。这篇论文走的是第三条路:保留价量信息,但换一种状态表示。作者把”市场的全部动态”压缩进 三个固定大小的矩阵,用排名和距离的离散结构,替代连续的收益向量和协方差矩阵。

标题”Are Three Matrices All You Need”是对 Google “Attention Is All You Need” 的致敬与调侃。作者自己也说:希望它不只是 “(N+1)-th entry”(第 N+1 篇跟风论文)。

二、核心设计:三个矩阵 + 两条带协变量的排名链

流水线总览

原始数据                              ┌──────────────────────────────┐
(日频OHLCV + 市值,                  │  矩阵1:相关距离矩阵 M(t)      │
 仅价量市值三件套)            ─────→ │  = arccos(相关系数)            │
                                     │  刻画"名字在相关流形上的远近"  │
                                     └──────────────────────────────┘

                ┌─────────────────────────────────┴──────────────────┐
                ▼                                                    ▼
  ┌──────────────────────────────┐                   ┌──────────────────────────────┐
  │ 矩阵2:收益排名的转移矩阵     │                   │ 矩阵3:波动率排名的转移矩阵   │
  │ 按月对 trailing return 排名   │                   │ 按月对 trailing volatility 排名│
  │ 分到 10 个 decile,构成 MC    │                   │ 分到 10 个 decile,构成 MC    │
  └──────────────────────────────┘                   └──────────────────────────────┘
                │                                                    │
                └──────────────┬─────────────────────────────────────┘

                ┌─────────────────────────────────────────┐
                │ 协变量条件化的 log-linear 条件 logit 模型  │
                │ 协变量也全部排名分桶到 {1,...,10}          │
                │ → 预测下期排名(收益链+波动率链)          │
                └─────────────────────────────────────────┘


                ┌─────────────────────────────────────────┐
                │ 多空选股 + 自适应 λ 的 long-only sleeve   │
                │ + no-trade band 控制换手                  │
                │ + 凸性信息领袖 overlay 做尾部保险         │
                └─────────────────────────────────────────┘

矩阵一:相关距离矩阵 M(t)

第一矩阵是相关系数矩阵的”几何化身”。对 N 只股票在长度 L(约一年)的滑动窗口里算 Pearson 相关 C(t),然后取元素级的 arccos

M_ij(t) = arccos(C_ij(t)),M ∈ [0, π]

这不是简单的变量替换。它把横截面放进了随机距离矩阵的数学理论里,让 M(t) 的谱分析(特征值、参与率)可以当作描述市场结构的统计量。直觉上:两只股票正相关越强,距离越接近 0;零相关时为 π/2;完美负相关时为 π。论文后面用这个矩阵的三个衍生量去条件化排名链:主特征向量、中心性(centrality)、转移熵 lead-lag 分数。

这个 arccos 变换让我们想起一篇一周前我们解读过的 TDA+FinBERT 组合优化论文——那篇用Vietoris-Rips复形做”拓扑距离”。两者都是”把相关系数变换成更结构化的几何对象”,但 OMD 的 arccos 距离是线性的、闭式的、O(N²) 可算,而 TDA 的持久同调是非线性的、迭代的、计算量大得多。这是本文相对 TDA 路线的一大工程优势。

矩阵二、三:两条排名马尔可夫链

这是论文真正的核心创新。每个月,对全部 S&P 500 名字分别按:

  • trailing return(过去收益)
  • trailing volatility(过去波动率)

排名,分到 10 个等量的 decile 桶里。这样每只股票每月有两个状态 ∈ {1, 2, …, 10}。把所有股票的月度状态转移统计出来,就得到 两个 10×10 的转移矩阵——这就是矩阵二和矩阵三。

关键设计决策:排名而非原值。 这是论文反复强调的”反脆弱”选择:

  1. 异常值免疫。一只股票的月收益是 +200% 还是 +50%,对排名的影响都是”进入第 10 桶”,不会主导转移概率。
  2. 跨特征同质化。市值、beta、Amihud 非流动性、动量、短期反转……所有协变量都被同样的方式排名分桶,于是”异质的连续特征库”被归约成”统一的离散表示”,可以放在同一个 log-linear 模型里。
  3. 对任何单调重参数化不敏感。这对金融数据特别重要——收益分布厚尾,单调变换(如 log、winsorize)很常见,但用排名就完全免疫。

协变量条件化:让转移概率”看一眼”公司特征

OMD-Stocks 的原版框架把这两条链当作无记忆、无条件:转移只依赖当前排名,不依赖公司其他任何信息。本文的关键扩展是让转移概率依赖协变量——也就是实践者用作选股信号的那些公司特征

模型形式是 log-linear conditional logit:在零系数处恰好嵌套无条件链。这意味着”加入协变量”是一种严格的精炼,可以用信息论的工具去度量”协变量解释了多少原来被聚合掉的方向性结构”。

这是整篇论文最精妙的设计:离散化让信息论的工具全部可用。因为状态和协变量都是离散的,熵产生(entropy production)和转移熵(transfer entropy)都变成了精确的求和,没有连续变量的密度估计负担。下面会看到,这套工具成了诊断”哪些信号真有预测力”的利器。

三、核心实证发现:收益排名不可预测,波动率排名可预测

这是论文最反直觉、也最有价值的诊断结果。作者用两把尺子度量每条链:

  1. 熵产生的条件化提升。把链条件化在协变量上,由于熵产生泛函的凸性,条件熵产生 ≥ 池化熵产生。差距越大,说明协变量”解释”的方向性结构越多。
  2. 转移熵的方向性。计算”协变量分桶过程 → 排名过程”的转移熵,以及反向的转移熵。不对称性告诉你:是协变量驱动排名,还是排名带动协变量

实证结果极其清晰:

是否可预测关键诊断
波动率排名链✅ 强可预测条件化后熵产生提升数倍;多步检验显示记忆超过一步;风险描述子(size、beta、非流动性、波动率本身)是排名的领导者
收益排名链❌ 几乎不可预测动量在转移熵上只是一个跟随者而非领导者;多步预测与一步预测几乎无差别

这个发现直接决定了策略的结构:你不能用收益链去预测收益(那是徒劳),但你可以用收益链的当前状态作为动量信号(因为当前的高排名有惯性),同时用波动率链去预测风险——后者真的有效。

这和我们实证的动量 vs 均值回归结论高度一致:A 股月度动量信号的转移也是缓慢漂移而非跳变,但用作”选谁”的横截面排序仍有意义。本文给出了这个现象的信息论解释。

四、组合构建:四层”防御性”结构

预测出来后怎么变成组合?论文构造了一个月度调仓的多空组合,结构精巧。

第一层:动量多空核心

  • 多头:收益链得分最高的 K 个名字
  • 空头:得分最低的 K 个名字
  • 等权、美元中性

注意:得分是”协变量条件化的未来排名概率”——具体是”进入最高收益十分位的概率”与”进入最平静波动率十分位的概率”的某种混合。但作者发现一个反直觉的事实:把波动率得分加权进来反而拉低表现(λ 调到 0)。原因是这些年动量赢家就是波动大的股票,向”平静股”倾斜反而稀释收益。

第二层:自适应 long-only sleeve

  • 持有 2K 个得分最高的名字,满仓多
  • 与多空核心按状态依赖权重 θ 混合:市场涨时 θ=1(满仓 long-only),市场跌时 θ=0.4(更多权重给市场中性多空)

这是一个**“防御性”设计**——市场强时长仓吃 beta,市场弱时切到市场中性避险。

第三层:no-trade band(核心工程创新)

这是全文最重要的工程贡献,没有它整个策略不赚钱。

按预测概率选股,每月会洗牌约 60% 的持仓(换手 2.4)。在 5bp 单边成本下,月度成本拖累 12bp;在 10bp 下月度成本 24bp——把所有毛收益吃光。毛 Sharpe 只有 0.17、约 10% 的总收益,在这么高的换手下基本是盈亏平衡甚至净亏。

解法:设定一个”不交易容忍带”——只有当挑战者的得分比当前持仓高出超过容忍带时才换。任何 5%-25% 之间的容忍带都把换手压到 0.9,把成本压到月度 4-5bp,把全周期 Sharpe 抬到 0.23-0.34。最终设带在 8%。

这个发现和 backtest-guardrails B5”换仓门槛” 的精神完全一致:扩大标的池或高频调仓时必须设门槛(REBALANCE_THRESHOLD),否则摩擦成本能到年化 8-9%。论文用信息论的语言重新证明了同一件事:慢信号不需要频繁更新,no-trade band 是免费的午餐

第四层:凸性信息领袖 overlay

在多空保护层之上,叠加 1/4 权重的 HITS-hub leader 多空。这是从距离矩阵衍生出的”信息领袖”组合:做多那些”向别人发送信息”的中心性高的股票,做空其他。它是市场中性且凸性的——在市场两个尾部都上涨,相当于给组合买了一份凸性保险

代价:年化收益从 18.1% 略降到 16.8%,波动从 17.0% 降到 15.8%,Sharpe 不变(仍是 1.06),但最大回撤从 -16% 缓解到 -13%。这是”用小部分收益换更浅回撤”的典型保险定价。

五、实验结果:两段不重叠的样本外都跑赢市场

主表(Table 7 / Table 10 浓缩)

测试期组合年化收益年化波动Sharpe最大回撤
样本外一 2022-2024(CRSP)OMD 组合(band 0.08)18.1%17.0%1.06-16%
市值加权市场12.6%17.0%0.78-22%
等权组合8.7%16.1%0.60-19%
样本外二 2025-2026(Yahoo,clean)OMD 基础组合44%1.32
OMD + 残差距离分散56%1.44
市值加权市场20%1.14
SPY ETF1.05
全 2021-2026OMD 基础27%1.09
OMD + 分散33%1.17
市场16%0.98

所有数字已扣 5bp 单边成本、按日 marking-to-market。样本外二(2025-2026)是真正干净的窗口:每个超参数都冻结在第一次研究选的值上,只有马尔可夫链系数按 walk-forward 每月用历史数据重训,没有任何未来信息泄漏。

统计显著性

作者用平稳块 bootstrap(重采样约一个月长度的几何块,保留日收益的序列依赖)检验超额收益:

  • 干净窗口 2025-2026:分散版年化超额 31%,单边 p=0.04(显著)
  • 全周期 2021-2026:年化超额 15%,p=0.03(显著)
  • 但 Sharpe 差异在任何窗口都没达到统计显著——因为市场本身 Sharpe 就高(1.14),18 个月到 5 年的样本量不足以把组合的 Sharpe 和市场的 Sharpe 分开

作者的诚实表述:数据支持的是收益优势,而不是(还)风险调整后的优势。这是一个非常有操守的表述——不掩饰显著性只能到哪。

与经典组合的比较

OMD 组合还击败了最小方差组合最大分散化组合。原因解释得很到位:这两个经典组合丢掉了收益信号,只在协方差上优化权重,而 OMD 通过排名链保留并利用了(虽然微弱但真实存在的)动量和低波信号。

六、工程化落地路径(A股视角)

如果把这套方法搬上 A 股实盘,需要解决下面几层问题。按难度评级(⭐ 最易,⭐⭐⭐⭐⭐ 最难)。

模块论文做法A 股落地难点难度
价量数据CRSP / Yahoo本地 DuckDB(quant_v2.duckdb)已有 4589 只股票日频 + 186 只退市股,✅ 直接可用
市值数据market capakshare/eastmoney 可得流通市值和总市值;A 股要明确用哪个(流通市值更贴近实际)⭐⭐
排名分桶10 个 decile直接照搬,A 股股票数 4500+ 比 S&P 500 多十倍,分桶更稳定
相关距离矩阵Pearson 相关 + arccosA 股相关系数普遍偏高(同涨同跌严重),arccos 后距离分布偏窄,需要检查区分度⭐⭐
协变量条件化log-linear 条件 logit标准统计软件(statsmodels)可做;协变量全用价量衍生的(市值、beta、Amihud、动量、反转、波动率)⭐⭐
转移熵 / 熵产生离散求和离散情况下就是简单的联合频率对数比,Python 几行可写⭐⭐
月度调仓calendar 月末A 股月末日期对齐用 pd.date_range(freq='BM') 再找最近交易日(guardrails B2)⭐⭐
做空美元中性多空A 股融券贵、券池小,建议改 long-only 或用股指期货对冲做”相对做空”⭐⭐⭐⭐
凸性 overlayHITS-hub 多空A 股信息领袖网络是否存在、HITS 是否稳定,需独立验证⭐⭐⭐⭐
交易成本5bp 单边A 股成本结构完全不同:万 5 佣金最低 5 元 + 千 0.5 印花税 + 0.1% 滑点 ≈ 单边 0.15%(30bp),是论文假设的 6 倍⭐⭐⭐⭐⭐

关键工程决策

决策一:成本假设必须重写。这是最大的落地障碍。论文假设 5bp 单边,A 股真实成本 30bp 单边。换手 0.9 时年化换手 10.8 次,对应年化成本 0.9 × 2 × 30bp × 12 ≈ 6.5%(远高于论文的 1.1%)。这意味着 no-trade band 在 A 股必须设得更宽,而且超额收益的容错空间被严重压缩。复现时必须先把成本模型换成 A 股真实结构,不能直接照搬 5bp。

决策二:用收益率排名链还是波动率链做信号? 论文在美国市场上发现”收益链不可预测、波动率链可预测”。这个结论在 A 股未必成立——A 股散户主导、行业轮动剧烈、政策驱动强,动量结构可能与美股截然不同。强烈建议复现时单独重新跑一遍诊断:分别计算两条链的条件熵产生和转移熵,看看 A 股是收益链还是波动率链更可预测。可能 A 股的答案反过来。

决策三:相关距离矩阵的谱分析。论文大量使用 M(t) 的主特征向量、参与率、HITS 中心性。A 股市场”市场模式”(market mode)特别强(第一大特征值远大于其他),需要做”残差形式”(去掉市场模式后再算距离)才能看到有用的横截面结构。这一点论文也提到了(residual form),但在 A 股尤其关键。

决策四:市值协变量的代理。论文用市值作为 size 协变量。A 股市值和流动性的关系比美股更复杂(小盘股流动性折价更大),可能需要同时引入 Amihud 非流动性(论文也用了)。我们之前在 backtest-expert 的 Amihud 5d 因子严格验证 中实测过:Amihud 在 A 股有显著选股力,但严格回测后年化从宽松假设的 47% 缩水到 12.2%——这是”宽松→严格”的典型缩水幅度,OMD 论文从 5bp 成本切换到 A 股 30bp 成本时也会经历类似幅度的缩水。

七、与已有系统的横向对比

这是本文最有价值的部分——把 OMD 放进我们已有的工具箱里看它的位置。

四类”组合优化/资产选择”方法对比

方法状态表示用收益预测?矩阵求逆?计算成本与 OMD 的关系
Markowitz 均值-方差期望收益向量 + 协方差✅ 强依赖✅ 需要⭐ 低OMD 的对照组,OMD 替代了它的两半
最小方差 / 最大分散化仅协方差❌ 丢弃✅ 需要⭐ 低OMD 在样本外击败它们(因为 OMD 保留了动量信号)
Barra 多因子因子暴露向量✅ 用因子预测部分⭐⭐ 中OMD 把因子”排名分桶”作为协变量,思路相通
TDA 持久同调2607.21170拓扑距离❌ 用于聚类❌ 不需要⭐⭐⭐⭐⭐ 极高同为”把相关性变成更结构化的距离”,但 OMD 的 arccos 远比持久同调便宜
OMD 三矩阵(本文)相关距离 + 两条排名链✅ 用排名链❌ 不需要⭐⭐ 中

核心洞察:OMD 不是替代品,而是在”线性相关 → 几何距离”这一维度的轻量化升级。相比 TDA,它用闭式的 arccos 替代了昂贵的持久同调;相比 Markowitz,它用排名和马尔可夫链替代了难估计的期望收益向量和需要求逆的协方差。它的工程甜点在于:保留了收益信号,但用离散结构规避了连续估计的不稳定性。

与 TDA 论文(一周前解读)的对比

这两篇论文是绝佳的对照阅读材料:

维度OMD(2607.27461)TDA+FinBERT(2607.21170)
相似性度量arccos(相关) 距离持久同调的 Wasserstein 距离
特征工程仅价量市值(10 个 decile 排名)技术指标 + FinBERT 新闻情绪
计算成本O(N²) 相关 + O(N²) arccos,秒级O(N²) 持久同调,S&P 500 单窗口数分钟
信号诊断熵产生 + 转移熵(精确离散求和)主要靠回测对比
样本期7 年(2018-2026),两段不重叠 OOS1 年(2025),外加 6 个月压力测试
显著性检验平稳块 bootstrap,p=0.03-0.04单边 t 检验 + Ledoit-Wolf Sharpe 检验
数据可得性极强(仅用价量)弱(需 Refinitiv 新闻 API)
开源代码私有仓库,邮件索取未提供
年化 Sharpe1.06-1.44日频 0.10-0.15(年化约 1.6-2.4,触发红线

判断:从可复现性和工程成本看,OMD 远优于 TDA。TDA 的拓扑距离在理论上更深刻(捕捉孔洞、环等高阶结构),但在 S&P 500 这种规模上算持久同调不现实,且只用了一年样本——Sharpe 年化超过 2 触发 backtest-guardrails 的过拟合红线。OMD 的 arccos 距离是 TDA 想逼近的”低阶拓扑”的廉价近似,而且用了 7 年两段样本外、显著性检验诚实。

与我们复现过的择时/聚类系统的对比

  • 国信 AI Agent 行业轮动复现):用 LLM 选行业,本质是横截面动量。OMD 用排名链做横截面选择,思路相通,但 OMD 的”得分是排名概率”比 LLM 打分更可诊断、更稳健。
  • 西部 RRG ETF 轮动:用相对强度动量轮动。OMD 的收益链核心也是动量,但用排名分桶避免了原始收益的异常值。
  • 中邮 LSTM-GHMM 择时解读):用 HMM 识别市场状态做仓位。OMD 用”trailing 市场收益的符号”做 regime 切换(θ=1 or 0.4),是同一问题的极简版——LSTM-HMM 用神经网络学状态,OMD 用一阶符号切。OMD 的实验显示:复杂的状态识别未必比简单的符号切换好(论文附录 B 的 ablation),这对我们是重要提醒。

八、局限性分析

论文不是银弹。从实践者视角,我看到以下问题。

论文自身承认的局限

  1. book size(K)欠识别。Sharpe 随组合规模单调改善(越分散越好),没有内部最优点,Optuna 优化会把 long-only 钉在搜索范围上限(K≈25)。这是过拟合的温床——作者用手工网格而不是自动优化来规避,但这本身说明信号微弱。
  2. Sharpe 差异不显著。在 18 个月到 5 年的样本上,组合 Sharpe 与市场 Sharpe 的差异都没达到统计显著。数据支持的只是收益优势,不是风险调整后优势。
  3. 幸存者偏差。第二干净窗口用”当前指数成分+完整历史”重建,作者承认这给早期窗口(2022-2024 切片)有轻微的幸存者偏差,尽管干净窗口本身基本不受影响。
  4. “市场效率”结论的边界。作者明确说:跑赢市值加权指数不等于跑赢了风险调整后的基准。超额收益可能部分是对动量和低波因子风险的补偿,而这两个因子都是有记录的异象。

实践者视角的额外质疑

  1. “Claude Code 写的论文”需要额外审视。作者在脚注里明确说所有计算和分析都是 Claude Code with Opus 4.8 做的。AI 辅助研究本身没问题,但复现的必要性更高了——AI 写的代码可能有意无意引入前视偏差,必须独立重新跑一遍才能采信数字。代码仓库目前还是”私有的,邮件索取”,没有公开可审计。
  2. 5bp 成本假设偏乐观。即便美股,机构投资者的真实单边成本(含市场冲击)通常也在 10-20bp,5bp 是理想化的算法交易成本。论文用 10bp 做了对照,但没测 20bp+ 的真实机构场景。在 A 股(30bp+)这个差距更大。
  3. “信息领袖 overlay”是否过拟合? HITS-hub 多空 overlay 把回撤从 -16% 缓解到 -13%,但只在 2022-2024 测过。凸性保险是不是真在两个尾部都支付,还是只是这段历史的巧合?需要更长样本。
  4. A 股适用性完全未验证。论文只测了 S&P 500。A 股市场结构差异巨大(散户主导、T+1、涨跌停、行业轮动剧烈),排名马尔可夫链的转移概率结构可能截然不同。不可直接迁移结论
  5. “动量+低波”的拥挤度风险。这两个因子都是公开异象,全球因子拥挤度上升的背景下,它们未来是否还能提供超额收益是个开放问题。OMD 的 Sharpe 1.06-1.44 是后视的——拥挤交易在最坏时刻失效(三系统交叉验证:动量信号当日全面溃败 给出了 A 股的真实例子)。

九、总结句

这篇论文最大的贡献不是”三个矩阵能赚钱”(数字层面它和动量+低波因子组合区别不大),而是 用排名分桶和马尔可夫链的离散结构,把 Markowitz 的连续优化问题转化为信息论可诊断的离散问题——这让”哪些信号真有预测力”这个问题第一次有了精确的熵和转移熵度量。它的工程甜点在于:保留了收益信号,但用离散排名规避了连续估计的不稳定性;它的诚实在于:明确承认 Sharpe 差异不显著、book size 欠识别、A 股适用性未验证。

论文信息块

  • 标题:Are Three Matrices All You Need To Beat the Market? Observable Matrix Dynamics for Portfolio Optimization
  • 作者:Igor Halperin
  • arXiv2607.27461
  • PDF下载链接
  • 发表:2026 年 7 月 31 日,预印本
  • 代码github.com/ighalp/omd_portfolio(目前私有,邮件作者索取)
  • AI 声明:所有计算与手稿由 Claude Code + Opus 4.8 在作者监督下完成

相关阅读


本文是研报流水线保底机制下的论文解读产出(触发原因:当日 27 篇已下载未复现研报中,两篇高评分候选——国盛量化漫谈 GLM-5.2(实为国信 AI 行业专题)、arXiv TDA+FinBERT 组合优化——均已于 7 月底产出过解读文章,按发布前查重规则不可重写;其余 15 篇未复现研报均为市场日报/行业周报,无可复现策略。按 skill 规定转入 arXiv q-fin 最新论文解读模式,选取 2026-07-31 上传的 2607.27461)。文章为方法论解读,不含回测代码,已设为草稿待用户审阅。

💬 评论