周一收盘后,你在上海某私募(private fund)的风险组复盘一只沪深300 中性策略。过去 18 个月的日收益样本明显分成两段:平静期里日波动率约 0.6%、收益接近零均值;另一段则散落着 −3% 以上的尾部,日波动率拉到 1.8%。前三课里 GARCH 把这一切压成一条由过去观测确定的递推,SV 把它压成一条连续潜在 AR(1)。两者都默认波动率沿一条平滑曲线演化,然后回答「曲线现在的取值是多少」。可你的直觉读到的不是平滑滑动,而是结构跳变:策略业绩、相关性、流动性都像是被切换到另一套定价规则上去。本课换第三种结构性承诺:背后藏的是一条离散的隐马尔可夫链,在「平静」与「危机」两个机制之间跳跃。Hamilton(1989)正是为美国实际 GNP 的扩张/衰退周期写下这套模型,而它在 NBER 衰退期上的拟合至今仍是教科书示例。
1. K 机制的马尔可夫切换模型
设潜在机制 St 取值于 {1,…,K},服从齐次马尔可夫链(homogeneous Markov chain),转移概率矩阵(transition matrix)P 满足 Pij=P(St=j∣St−1=i)、每行之和为 1。Hamilton(1989)的均值-方差切换模型把可观测收益写成
rt=μSt+σStztwithzt∼iidN(0,1),St∈{1,…,K},Pij=P(St=j∣St−1=i),j∑Pij=1.
zt 是标准正态分布(Gaussian distribution)。两机制(K=2)的典型解释是「平静」(低 μ、低 σ)对「危机」(低或负 μ、高 σ)。完整的 MS-AR(p) 版本在均值里再加一段机制相关的自回归 ∑i=1pϕi,St(rt−i−μSt−i),本课主体走 p=0 的均值-方差情形——参数为 θ=({μk,σk}k=1K,P),自由度共 2K+K(K−1) 个,后一项来自 P 每行求和约束。
2. 平稳分布与期望存续时间
链不可约且非周期时存在唯一的平稳(stationary)分布 π,它给出长期处于各机制的概率。状态 i 上的等待时间服从几何分布,其均值由对角项 Pii 决定:
π⊤P=π⊤ with π⊤1=1 and E[duration in regime i]=1/(1−Pii)
两态闭式解的推导。设 P=(P111−P221−P11P22),把 π⊤P=π⊤ 展开为 π1P11+π2(1−P22)=π1,整理得 π2(1−P22)=π1(1−P11)。结合归一化 π1+π2=1 解出
π=(2−P11−P221−P22,2−P11−P221−P11).
这是估计出 P^ 后立刻可算的两个数:危机机制的长期占比与该机制的平均存续天数 1/(1−P^22) ——风险报告里出现的「危机机制平均持续 X 天」就是它。
Formula Explorer
1 / (1 - p)
把滑块从 0.50 拉到 0.95,期望存续时间从 2 步陡升至 20 步——这就是为什么把对角项从 0.90 上调到 0.99 会让「平均持续多久」的回答完全改变,也是估计 P^ 时对对角项不确定性高度敏感的原因。
3. Hamilton(1989)滤波
潜在状态空间有限,因此条件期望(conditional expectation)可以精确计算,不需要 SV 那种线性化或 MCMC 近似。前向递推给出过滤概率 ξt∣t(即 P(St=k∣Ft) 的 K 维向量)与一步预测概率 ξt∣t−1。先预测、后更新:
ξt∣t−1=P⊤ξt−1∣t−1,ξt∣t=1⊤(ξt∣t−1⊙ηt)ξt∣t−1⊙ηtwithηt,j=f(rt∣St=j,Ft−1)
ηt,j 即机制条件密度(高斯密度在 rt 处的取值),⊙ 为哈达玛积(Hadamard product, 逐元素乘法)。预测步用 P⊤ 把上一时刻后验在转移矩阵上推一步;更新步则是贝叶斯公式的离散版本——把先验 ξt∣t−1 按各机制下观测的相对似然 ηt 重新加权。
更新步的分母正好是 rt 的预测边际密度,也就是一步前向的似然贡献。把它在时间上求和取对数,直接得到样本对数似然:
f(rt∣Ft−1)=1⊤(ξt∣t−1⊙ηt)=j=1∑Kξt∣t−1,jηt,jandℓ(θ)=t=1∑Tlogf(rt∣Ft−1;θ)
这是 MS 模型相对于 SV 的关键优势:由于 St 是有限状态,一遍 O(K2T) 的前向递推就给出精确(非近似)对数似然,没有积分近似。初值 ξ1∣0 通常取平稳分布 π,也可作为自由参数一同估计。
4. Kim(1994)平滑
前向滤波到时刻 T 后,反向递推从 ξT∣T 出发,自 t=T−1 退回到 1:
ξt∣T=ξt∣t⊙(P(ξt+1∣T⊘ξt+1∣t))fort=T−1,T−2,…,1,initialised fromξT∣T.
⊘ 表示逐元素除法。ξt∣T 是「使用全样本信息」下时刻 t 的后验机制概率。括号中的 P(ξt+1∣T⊘ξt+1∣t) 就是 Kalman 平滑增益(Kalman smoother gain)的离散对应物——结构同形的后向信息注入。把每个 t 上 ξt∣T 的最大分量取为机制标签,即得经济上可读的机制日期(regime dating)。
5. EM(Baum-Welch)算法的 M 步
直接对 ℓ(θ) 做 BFGS 数值优化在 K=2 时已可用,但更稳健的做法是 EM 算法(EM, 即在 HMM 语境下的 Baum-Welch 算法)。E 步用前向滤波 + 后向平滑得到平滑边际 ξt∣T,k 与平滑配对概率 ζt,ij=P(St=i,St+1=j∣FT);M 步对完整数据期望对数似然做极大似然估计(maximum likelihood estimation, MLE),给出闭式更新:
μ^k=∑tξt∣T,k∑tξt∣T,krt,σ^k2=∑tξt∣T,k∑tξt∣T,k(rt−μ^k)2,P^ij=∑t=1T−1ξt∣T,i∑t=1T−1ζt,ijwithζt,ij=P(St=i,St+1=j∣FT)
直观就是「软 EM」:每个观测按平滑后验概率分摊到各机制,机制内的均值/方差是这些权重下的加权统计量。两件事必记:似然多峰且存在标签互换(label switching),按惯例固定标签(如令机制 1 = 低波);K=2 时直接 BFGS 通常比 EM 更快,K≥3 时 EM 更稳。
6. 三类框架的并排对照
把本模块四节压成一张表:潜在状态的本性决定了估计路线。
| 框架 | 潜在状态 | 似然评价 | 平滑递推 | 估计方法 | 主要前向连接 |
|---|
| GARCH(1-2 节) | 无;σt2 是 Ft−1 可测的过去观测确定函数 | 高斯 QML 闭式 | 不适用 | 数值 MLE | 1.4.4 节(衍生品定价) |
| SV(3 节) | 连续高斯 ht=logσt2 的 AR(1) | 对数平方收益 + Kalman QML 或 KSC 混合 Gibbs | Kalman 平滑 | 数值 MLE 或 MCMC | 2.7 节 OU 与 1.4.4 节 Heston |
| MS(本节) | 离散 K 值马尔可夫链 St | 精确 O(K2T) Hamilton 滤波 | Kim 平滑 | 数值 MLE 或 EM (Baum-Welch) | 2.6.4 节 HMM |
同一套「状态空间 + 前向滤波 + 后向平滑」脚手架,三种潜在状态承诺,落到三套不同的估计方法。
7. 扩展与边界
仅作名义提示,不展开推导。Markov 切换 GARCH (MS-GARCH)(Klaassen 2002 / Haas-Mittnik-Paolella 2004)让 GARCH 参数本身随机制切换,σt2 通过 σt−12 递归依赖整个机制路径 S1:t−1,朴素 Hamilton 滤波代价飙至 O(KT);两人各自的「坍缩」(collapse)技巧把成本压回 O(K2T),两套坍缩在数值上接近。门限自回归(threshold AR, TAR)与自激励 TAR(self-exciting TAR, SETAR)(Tong 1990)把潜在 St 换成 rt−d 落入门限区间的确定性指示函数,估计退化为门限网格搜索 + 分段 OLS,换得确定性的机制标签。平滑过渡 AR (smooth-transition AR, STAR)(Teräsvirta 1994)用 logistic 权重在两机制间连续插值,是 TAR 与 MS 之间的折中。机制数 K 的统计检验非平凡(Hansen 1992),工程上常用 K=2 与 K=3 拟合,按 AIC / BIC 比较再结合经济解释定夺。
Exercise
设两态马尔可夫切换均值-方差模型 $r_t = \mu_{S_t} + \sigma_{S_t} z_t$,其中 $z_t \overset{\mathrm{iid}}{\sim} N(0, 1)$,$S_t \in \{1, 2\}$,转移矩阵 $P = \begin{pmatrix} P_{11} & 1 - P_{11} \\ 1 - P_{22} & P_{22} \end{pmatrix}$。(a) 写出 $\pi^\top P = \pi^\top$ 与 $\pi_1 + \pi_2 = 1$,给出 $\pi_1$、$\pi_2$ 的闭式解。(b) 写出机制条件高斯密度 $\eta_{t, 1} = \phi(r_t; \mu_1, \sigma_1^2)$、$\eta_{t, 2} = \phi(r_t; \mu_2, \sigma_2^2)$,并把 Hamilton 滤波的预测步与更新步显式写成 2 维向量形式。(c) 取一次观测 $r_1$ 与先验 $\xi_{1 \mid 0} = \pi$,做一次预测+更新,给出 $\xi_{1 \mid 1}$ 的闭式表达。(d) 写出 EM 算法对 $\mu_1, \mu_2, \sigma_1^2, \sigma_2^2, P_{11}, P_{22}$ 的 M 步闭式更新,用 $\xi_{t \mid T, k}$ 与 $\zeta_{t, ij}$ 表示。(e) 指出哪些前向/后向的连接(连续时间 Kalman-Bucy 滤波 / 机器学习中的 HMM Baum-Welch)推广了这一套机器,以及它们在哪些下游模块中重新出现。
提示
(a) 把
π⊤P=π⊤ 写开,得到
π2(1−P22)=π1(1−P11),再代入
π1+π2=1。(b)(c) 预测步用
P⊤ 推
ξ,更新步把
ξt∣t−1 与
ηt 逐元素相乘再归一化。
提示
(d) 每个 M 步分子分母都是「以
ξt∣T,k 为权」的加权统计量,转移概率则是配对概率
ζt,ij 对边缘
ξt∣T,i 的比。(e) Kalman-Bucy 对应连续状态的 2.7 节;HMM/Baum-Welch 对应 2.6.4 节,与本课算法同构,只是命名不同。
8. 收尾桥段
本模块四课呈现了对波动率动力学的三种结构性承诺:GARCH 把它定为过去观测的确定性函数,SV 把它放进连续潜在 AR(1),MS 把它放进离散 K 值马尔可夫链。三者统一在「状态空间模型 + 前向滤波 + 后向平滑」的同一数学框架下——连续状态那一支由 Kalman 滤波/平滑承担,离散状态这一支由 Hamilton 滤波/Kim 平滑承担。向前看,2.7 节(随机微积分)会把 Kalman 滤波推到连续时间的 Kalman-Bucy 形式,并引出 SV 中 ht 背后的 OU 过程;2.6.4 节(无监督学习与强化学习)会用机器学习语义重述同一前向-后向 + EM 算法,只是它在那里叫 Baum-Welch——算法不变,语言不同。Hamilton(1989)对美国实际 GNP 季度增长率的原始拟合 P^11≈0.90、P^22≈0.75 与 NBER 衰退期的高度吻合,既是这套机器最早的实证胜利,也是本模块最佳的「为什么要管机制」的文化注脚。