Hidden Markov Regime Detection (隐马尔可夫市场状态识别)

用 Gaussian-emission HMM 把市场划入 K 个 latent regime 的标准方法; 本文 (arXiv:2603.04441) 在 Wasserstein HMM 资产配置框架 中作为最内层检测器使用。

模型设定

观测 x_t \in \mathbb{R}^{d} (市场特征向量), latent state s_t \in \{1,\dots,K\}:

P(s_t = j \mid s_{t-1} = i) = A_{ij},\qquad P(x_t \mid s_t = k) = \mathcal{N}(\mu_k, \Sigma_k)

推断给出过滤概率:

\gamma_{t,k} = P(s_t = k \mid x_{1:t}) = \frac{\alpha_t(k) \beta_t(k)}{\sum_j \alpha_t(j) \beta_t(j)}

实际工程上用 forward algorithm 即得 \alpha_t(k), 无须 \beta。

与隐变量 / 状态识别的关系

  • 不是聚类 (k-means / Gaussian Mixture), 因为显式有 transition matrix A, 状态有时间持续性。
  • 不是变化点检测 (Pettitt / CUSUM), 因为是逐点软分配而非硬切点。
  • 不是 Kalman 滤波, 因为 latent 是离散 state 而非连续向量。

Gaussian emission 的选择

本文发射分布取多元 Gaussian \mathcal{N}(\mu_k, \Sigma_k) (即 Gaussian HMM):

替代方案 (本文未选): Student-t emission (隐含 co-skewness)、Copula HMM (跨资产依赖更灵活)、隐 semi-Markov (允许变长持续期)。

实际工程要点

  1. 特征构造: 仅用 t-1 及之前, 防 future leakage。
  2. 协方差约束: 对高维 d 必须加收缩估计或 Ledoit-Wolf shrinkage, 否则 \Sigma_k 病态。
  3. K 选择: BIC / AIC 一次性选 → 可能错过 regime 复杂度突变; 本文改用滑动窗验证集预测表现 + 复杂度惩罚 (见 Wasserstein HMM 资产配置框架 步 3)。

输出接口

HMM 本身只给 \gamma_{t,k}, 但组合需要 (\hat\mu_t, \hat\Sigma_t)。两种接法:

接法 公式 解释
混合 (mixture) \hat\mu = \sum_k \gamma_k \mu_k, \hat\Sigma = \sum_k \gamma_k(\Sigma_k + (\mu_k - \hat\mu)(\mu_k - \hat\mu)^\top) 总均值 + 总协方差, 经典 mixture identity
硬分配 + 不确定性 选 k^* = \arg\max_k \gamma_k, 用 (\mu_{k^*}, \Sigma_{k^*}), 再加 switching risk premium 工程简化, 但丢失概率信息

本文选混合。

与 wiki 已有概念的关系

Open Questions

  • Student-t / Copula emission 在 regime 边界处的表现差异。
  • 与 hidden semi-Markov (HSMM) 相比, 变长 regime duration 对组合稳定性的影响。
  • A 股制 (涨跌停 / T+1) 下 regime 切换的实际频率 — 制度事件会否主导 regime?
  • 在线 EM (而不是全窗 Baum-Welch) 在日频 regime 漂移场景下是否能维持后验质量。

Cross-ref