DCC-GARCH:如何估计资产间随时间变化的相关性
了解 DCC-GARCH 如何区分各资产的条件波动率与动态相关性,Q 矩阵如何更新和标准化,以及标准 DCC 在哪些情况下可能产生误导。
本指南内容为什么要动态建模相关性?
简短摘要
DCC-GARCH 将各自独立的条件波动率模型,与一个参数较精简的过程结合起来,用于更新标准化创新之间的相关性。它的协方差估计可写为 \(H_t=D_tR_tD_t\):对角矩阵 \(D_t\) 表示各资产不断变化的波动尺度,\(R_t\) 则描述条件依赖关系。相关性估计依赖模型,可用于风险度量,但它不是因果解释、收益预测或交易信号。
为什么要动态建模相关性?
协方差矩阵不只是长期关系的列表。在某个决策时点,投资者可能需要根据当时已知的信息,估计每种资产收益率的条件方差,以及任意两种资产之间的条件协方差。如果波动率和共同变动会随时间改变,那么用整个样本估计出的单一协方差矩阵,就会把平静时期、压力时期和可能出现的结构突变平均在一起。
DCC-GARCH 是一种在保持模型紧凑的同时,让条件相关矩阵随时间变化的方法。Robert Engle 于 2002 年提出动态条件相关模型,将单变量波动率模型与参数较少的相关性递推结合起来(Engle,2002)。这种方法回应了实际中的规模问题:资产范围扩大时,完全不受约束的协方差模型需要的参数会迅速增加。
当研究问题是:在允许各序列拥有自身时变波动率之后,条件依赖关系如何变化,这种方法就有用。但它不能说明资产为何共同变动。单一序列的时变方差入门可参见[波动率聚集与 GARCH](/zh-CN/learn/volatility-clustering-garch-explained);外汇货币对相关性及其作为共同风险敞口解释时的限制,可参见[外汇货币对相关性指南](/zh-CN/learn/forex-pair-correlation-shared-exposure-returns-limits-explained)。
将各资产的波动率与相关性分开
令 \(r_t\) 表示 \(N\) 种资产的收益率向量,\(\mu_t\) 表示其条件均值。将创新项记为 \(\epsilon_t=r_t-\mu_t\)。DCC 将创新项的条件协方差矩阵分解为:
\[ H_t=\operatorname{Var}(\epsilon_t\mid\mathcal{F}_{t-1})=D_tR_tD_t, \]
其中,\(\mathcal{F}_{t-1}\) 表示观察 \(t\) 时点数据之前可获得的信息;\(D_t=\operatorname{diag}(\sigma_{1,t},\ldots,\sigma_{N,t})\) 是由条件标准差构成的对角矩阵;\(R_t\) 是条件相关矩阵。
每个 \(\sigma_{i,t}^2\) 都可以用单变量 GARCH 族模型表示。例如:
\[ \sigma_{i,t}^{2}=\omega_i+\alpha_i\epsilon_{i,t-1}^{2}+\beta_i\sigma_{i,t-1}^{2}. \]
这个边际模型回答的是:资产 \(i\) 的创新尺度如何随自身历史变化。它并不表示资产 \(i\) 与资产 \(j\) 的相关性也发生变化。反过来,\(R_t\) 变化本身也不代表任一资产的波动率正在上升。
这种分解很重要,因为协方差同时包含这两类影响:
\[ H_{ij,t}=\sigma_{i,t}\sigma_{j,t}\rho_{ij,t}. \]
即使 \(\rho_{ij,t}\) 保持不变,只要一个或两个资产的边际波动率上升,协方差也可能增加。DCC 尝试单独估计条件相关性剩余的时变部分。这也是多元 DCC 与“分别拟合独立 GARCH,再把原始协方差视为常数”之间的核心区别。
标准化创新携带依赖关系信息
估计条件均值和边际方差后,计算标准化创新:
\[ z_t=D_t^{-1}\epsilon_t. \]
如果边际模型拟合得当,\(z_t\) 每个分量的条件方差应大致为 1。但这些分量仍可能在同一时点相互依赖;相关性更新使用的正是它们的联合变化模式。标准化可以避免这样的情况:某个天然高波动资产出现较大的原始变动,就自动被视为比另一资产中幅度相近的标准化变动更强的依赖证据。
实际中的标准化残差是估计值,并非直接观察到的真相。均值模型不合适,可能让可预测结构残留在 \(\epsilon_t\) 中;波动率模型不合适,则可能让时变尺度残留在 \(z_t\) 中。相关性阶段可能吸收这些问题,从而扭曲 \(R_t\)。厚尾、异常值、缺失日期、交易时段不同步、公司行为和陈旧价格,也都会影响送入递推过程的残差。
Engle 和 Sheppard 描述了一种两步法:先估计单变量 GARCH 模型,再利用其标准化残差估计相关性参数(Engle 和 Sheppard,2001)。分别拟合边际模型使 DCC 在计算上更实用;与此同时,第二阶段相关性结果应结合第一阶段的模型设定以及输入序列的具体对齐方式来理解。
Q 递推经过标准化后成为相关矩阵
标准 DCC 首先更新一个辅助正定矩阵 \(Q_t\):
\[ Q_t=(1-a-b)\bar{Q}+a z_{t-1}z_{t-1}^{\top}+bQ_{t-1}. \]
\(\bar Q\) 是标准化创新的长期矩阵;\(a\) 控制近期共同变动对更新的影响程度,\(b\) 控制前一期 \(Q\) 所带来的持续性。在常见的标量 DCC 设定中,若 \(a,b\) 非负且 \(a+b<1\),并且 \(\bar Q\) 和初始矩阵正定,通常的递推会保持正定。严格平稳性和有效推断仍取决于完整模型及其假设。这些限制属于所选设定,并非适用于所有变体的普遍保证。
\(Q_t\) 通常本身不是相关矩阵:它的对角元素未必等于 1。令 \(S_t=\operatorname{diag}(Q_t)\),再进行标准化:
\[ R_t=S_t^{-1/2}Q_tS_t^{-1/2}. \]
这样,对角元素会变成 1,非对角元素则成为无量纲的条件相关性。随后通过 \(H_t=D_tR_tD_t\) 得到条件协方差。区分 \(Q_t\)、\(R_t\) 和 \(H_t\),可以避免一种常见误读:递推过程更新辅助依赖矩阵,标准化将其转成相关性,边际标准差再把相关性放回资产收益率的尺度。标准化步骤是 Engle(2002)所述方法的核心。
<!-- learn:illustration --> <!-- 无文字概念插图:带有不同且不断变化的波动区间的独立收益率流,汇入一条平滑变化的共同依赖关系带;仅为概念图,不代表市场数据或预测。 -->

估计过程较方便,但包含多个阶段和假设
常见的两步实现会先为每种资产拟合条件均值和单变量 GARCH 族方差模型。然后用拟合结果计算 \(z_t\),再根据似然或准似然中的相关性部分估计 DCC 参数。即使收益率不服从正态分布,第一阶段仍可能使用高斯似然;在适当的正则条件下,这可以作为准极大似然估计。但标准误和推断必须匹配实际采用的估计量与假设。
与估计完全不受约束的多元 GARCH 系统相比,分阶段计算通常更方便。但各阶段仍彼此关联:边际参数的不确定性会影响标准化残差,进而影响第二阶段估计。报告的 \(a\) 或 \(b\) 并不是对某个恒定市场参数的直接测量。它们的解释取决于样本、边际模型、初始化、分布假设,以及相关性动态是否稳定。
长期输入矩阵 \(\bar Q\) 常基于标准化残差的样本协方差,但具体定义和修正方法因实现而异。实现文档应说明如何估计 \(\bar Q\)、如何初始化 \(Q_0\)、如何处理缺失观测、如何施加约束以及如何计算似然。当 \(a+b\) 接近 1、\(\bar Q\) 接近奇异或资产范围过大时,数值优化可能不稳定。应报告收敛诊断,并检查结果对合理替代边际设定和样本窗口的敏感程度。
对于时间不规则的交易数据,如果没有经过审慎设计的抽样方案,标准 DCC 所需的同步收益率输入可能并不合适。处理非同步观测可能需要其他估计量,可参阅 [Hayashi–Yoshida 协方差指南](/zh-CN/learn/hayashi-yoshida-asynchronous-covariance-estimator-explained)。对噪声较大的协方差目标进行收缩(参见 [Ledoit–Wolf 协方差收缩](/zh-CN/learn/ledoit-wolf-covariance-shrinkage-portfolio-estimation-explained))也属于独立步骤,不应与 DCC 的动态相关性递推混为一谈。
一个假设更新说明了标准化为何重要
考虑两个标准化创新以及一次人为设定的 DCC 更新。令 \(a=0.05\)、\(b=0.90\)、\(\bar q_{12}=0.10\)、\(q_{12,t-1}=0.30\)、\(z_{1,t-1}=1.5\)、\(z_{2,t-1}=1.0\)。这些输入仅为展示算术而构造,并非来自市场数据的估计值。非对角元素的更新为:
\[ q_{12,t}=(1-0.05-0.90)(0.10)+0.05(1.5)(1.0)+0.90(0.30)=0.350. \]
为展示标准化,假设人为设定的对角值为 \(\bar q_{11}=\bar q_{22}=1\) 且 \(q_{11,t-1}=q_{22,t-1}=1\)。同一递推得出:
\[ q_{11,t}=0.05(1)+0.05(1.5^2)+0.90(1)=1.0625,\qquad q_{22,t}=0.05(1)+0.05(1.0^2)+0.90(1)=1. \]
因此,标准化后的相关系数为:
\[ \rho_{12,t}=\frac{0.350}{\sqrt{1.0625\cdot1}}\approx0.340. \]
辅助矩阵的非对角元素从 0.30 变为 0.35,但由于 \(Q_t\) 的对角也发生变化,最终报告的相关性约为 0.34。若跳过标准化,就把 \(q_{12,t}=0.35\) 当作相关系数是不正确的。这个计算只展示递推的一步,并不说明统计显著性、未来持续性、最优组合权重或交易价值。
标准 DCC、cDCC 和 AG-DCC 是不同的模型设定
标准 DCC 的参数较精简,因为它通常在所有资产对之间采用相同的标量反应和持续性参数。资产较多时,这一限制有其作用;但如果不同资产对的调整速度不同,限制就可能过强。名称同为 DCC 的模型也可能采用不同的参数化方式、约束、估计方案或初始化规则,因此必须明确说明具体设定。
Aielli 关于修正 DCC 的研究指出,传统 DCC 估计量及其相关性参数的解释在资产维度较大时可能存在问题,并提出使用修订递推的 cDCC(Aielli,2013)。cDCC 不只是标准 DCC 的另一个名称。在扩展到大量资产或从结构角度解释估计系数时,这一区别尤其重要。
非对称广义 DCC 设定解决的是另一个限制:正向和负向的标准化冲击可能以不同方式影响未来相关性。Cappiello、Engle 和 Sheppard 的 AG-DCC 模型允许各序列采用不同的新闻冲击和衰减参数,也允许条件相关性存在非对称性(Cappiello、Engle 和 Sheppard,2006)。与共用标量的标准 DCC 递推相比,AG-DCC 更灵活,因此参数数量、限制和解释也会变化。未经评估,不应悄然用 AG-DCC 取代标准 DCC,也不能预先认定它更好。
在估计结果的适用范围内进行解释和验证
拟合得到的 \(R_t\) 描述的是在选定数据频率、样本窗口、均值设定、边际波动率模型和 DCC 变体下,模型所隐含的条件相关性。它不能识别因果性的溢出效应。经济下行期间相关性上升,可能源于共同新闻、资产构成变化、流动性影响、波动率模型设定错误或其他机制;单靠这项估计无法区分它们。
用于风险度量时,应将动态协方差预测与合理基准进行比较,例如滚动样本协方差或恒定相关模型。每个预测起点只使用当时可获得的信息,采用相同的资产范围和预测期限,并报告损失函数。如果计划用于投资组合,还应追踪它对权重、集中度、换手率、融资和交易成本的后续影响。根据某个具体风险模型,估计相关性上升可能降低分散化收益,但这并不预测任一资产将下跌。
应检查估计相关性是否处于有效范围,隐含的 \(R_t\) 是否保持正定,以及边际标准化残差中是否仍有序列相关或时变方差。还要检验结果对资产集合、初始化、异常值、样本窗口和模型变体的敏感性。持续性参数接近 1 时,估计可能对结构突变反应缓慢;平滑的递推也可能滞后于突然的状态变化。大量的配对图或备选模型容易引发选择性解释,因此应预先说明选择标准,并保留样本外比较。
DCC-GARCH 更准确地说是一种紧凑的条件协方差模型:边际方程估计时变尺度,依赖递推跟踪标准化创新的共同变动,标准化再将辅助矩阵转换为相关性。当假设明确且预测经过评估时,拟合矩阵可以用于风险分析;但它本身不能证明对冲稳定、解释冲击成因或证明某种策略能够获利。
常见问题
Q1DCC-GARCH 会在一步中同时估计各资产的波动率与相关性吗?
协方差整体表示为 \(H_t=D_tR_tD_t\),但一种常见的估计方法是先拟合边际波动率模型,再从标准化残差估计相关性动态。也存在其他估计方案,因此应注明具体实现方式。
Q2\(Q_t\) 的非对角元素就是条件相关系数吗?
通常不是。\(Q_t\) 是辅助矩阵,对角元素一般不等于 1。应使用对角线将它标准化为 \(R_t\),再将 \(R_t\) 与 \(D_t\) 结合以得到条件协方差 \(H_t\)。
Q3DCC 相关性升高能证明传染效应吗?
不能。它是在拟合模型和数据设计下的条件关联。仅凭估计结果不能识别因果机制,也不能区分共同冲击与其他共同变动来源。
Q4可以对数百或数千种资产使用标准 DCC 吗?
参数精简有帮助,但高维估计仍需审慎检查。Aielli 指出了传统 DCC 在大型系统中的问题,并提出 cDCC。应针对目标资产范围比较具体设定、计算表现、正定性和样本外表现。
资料来源与延伸阅读
报告问题
我们会准备一封包含本文链接的邮件。发送后,Mark 才会收到你的反馈
快速检查
读完指南后,用 3 道题检查一下
问题 01
在条件协方差分解中,Rₜ 表示什么?
选择答案即可查看解释