Student-t Copula:对称的尾部相依怎么搞对
高斯 copula 在尾部说谎。t-copula 是最保守的修正:同一个相关矩阵,多一个参数 ν——它同时是尾指数,也是你给『资产一起爆』定的价。
高斯 copula 的尾部相依是 0。任何经历过市场危机的人都知道这是错的。2008 年次贷违约相关性是教科书级的例子:经验上实现的联合违约率是高斯 copula 预测的好几倍(Salmon, 2009)。
最省事的修正是 Student- copula。它保守到近乎吝啬:躯干的相关结构跟高斯完全一样,只多一个参数 ,专门管”多个资产同时走向极端”这件事。金融相依建模的文献大量转向了 -copula,信用建模和股票收益里都常见(Bouchaud & Potters, 2003),理由就是这一个参数补上的正是高斯漏掉的那块。这篇文章推导 -copula,算清它的尾部相依为什么不是 0,然后回答一个实务问题: 到底是什么、该设多少。
从多元 构造
-copula 从多元 Student- 分布导出,套路跟高斯 copula 从多元正态导出一模一样。自由度 、位置 、尺度矩阵 的多元 有随机表示(McNeil, Frey & Embrechts, 2015, §7.3):
其中 , 与 独立。等价地说:给定 , 就是按 缩放的多元正态。这个表示是理解全文的钥匙——所有分量共享同一个随机缩放因子 , 抽到很小的时候,所有分量一起被放大。联合极端不是巧合,是构造里写死的。
构造 copula 本身只需两步:取一个多元 ,自由度 、离散度矩阵 (单位对角,此时每个边际恰好是标准 );然后对每个分量套上自己的边际 CDF,把边际抹平成均匀分布。抹平之后剩下的相依结构就是 -copula。形式化地,若 是标准 的 CDF、 是对应多元 的联合 CDF,则
模拟同样直接:抽多元 ,逐分量套 ,得到的 就服从 -copula。
两个参数: 是相关矩阵,跟高斯 copula 里的完全同角色; 是自由度,越小联合尾部越肥。 时 ,随机缩放退化成常数,-copula 收敛到高斯 copula——高斯是 的边界特例,这一点后面比较模型时还会用到。
为什么尾部相依不是 0
诊断一个 copula 的尾部,看尾部相依系数。上尾定义为
在 的极限下的值,下尾 对称地定义。-copula 的四条性质:它可交换且尾部对称();任何有限 下 ; 时 ; 时 。第二条就是它对高斯的全部胜利:只要 有限,联合极端的条件概率就不归零。
对二元 -copula(自由度 、相关 ),上尾相依有闭式:
其中 是标准 的 CDF(Demarta & McNeil, 2005)。自变量为负,所以 、,符合要求;由对称性 。推导就是对随机表示里那个潜在 chi-squared 变量积分。
代入中等相关 算一遍:
| 2 | 0.39 |
| 4 | 0.25 |
| 6 | 0.17 |
| 10 | 0.08 |
| 30 | 0.003 |
| 0 |
以 为例:。注意这张表的衰减有多快—— 到 30,尾部相依已经基本没了。 不是一个”微调”参数,它在 2 到 10 之间的选择直接决定你的模型认不认联合崩盘。
读法举例:日频股票收益的经验拟合常落在 –(下一节细说),在 时对应尾部相依大约 0.1 到 0.25。翻译成人话:资产 A 处于它最差 1% 的日子里,资产 B 同处最差 1% 的条件概率有一两成。高斯 copula 对同一问题的渐近回答是零。这个差异在组合层面会被指数级放大:50 只股票、平均两两相关 0.4,“全部同时落在各自最差 5%“的联合概率, 的 -copula 给出的值比高斯高出多个数量级(McNeil, Frey & Embrechts, 2015, §7.4.4)——事件越极端,两个模型的分歧越荒谬。
就是尾指数
有个不依赖 copula 语境的直接含义。单变量 的生存函数在大 处是幂律:
所以尾指数 。 是 Cauchy——尾巴肥到连均值都不存在( 才有均值, 才有方差); 是高斯,指数尾,没有幂律行为。尾指数决定极端损失变罕见的速率: 时概率减半只让损失阈值抬 倍,不算什么; 时是 倍,就显著了。
日频股票数据的经验拟合给 –,对应尾指数 4–7——跟 EVT 文章里 GPD 尾指数的估计范围一致。这不是巧合而是自洽:两种方法量的都是同一份数据的”尾部斜率”,从两个方向逼近同一个数,是让人放心的交叉验证。
没有数据、需要先验时,不同产品的经验量级不同:个股日频 –;股指日频 –(指数更分散,尾部比个股瘦);信用违约时间的 CDO 建模常用 –、相关 0.05–0.30;外汇日频 –;利率日频 –,尾部比股票瘦。这些只是文献量级、随样本和时期变化,内部模型该用自己的数据估计 ——估法就是下一节。
拟合:两阶段推断
经典拟合方法分两阶段,利用边际和相依的分离(McNeil, Frey & Embrechts, 2015, §7.5)。
第一阶段估边际:每个 单独拟合,不管相依。可以用经验 CDF(半参数路线),也可以用参数族(正态、、generalized hyperbolic 等)。拟合完做变换 ,把数据压到均匀边际上。第二阶段在均匀值上拟合 copula 参数 ,对数似然是
其中 是样本量、 是 -copula 密度。这套两阶段方法(Joe, 1997 的 IFM 一系)在边际估计一致时对 copula 参数也是一致的。 的估计近似于变换后数据的样本相关; 没有闭式,要数值优化。中等维度下两阶段 MLE 表现不错;维度很高时 需要正则化(图模型、收缩估计等)来维持正定和可估性。
拟合时有三个坑,每个都值得点名。可识别性:copula 的 和边际 分布的 (如果你边际也用 )不是分开可识别的,经典修法是第一阶段用不施加 形状的边际估计(核密度之类), 完全留给第二阶段从 copula 似然里估。过拟合 :有限样本下 的 MLE 可能偏低——模型想要比真相更肥的尾——用先验把它往高斯方向()正则化通常给出更好的样本外表现,贝叶斯 copula 文献里常用 inverse-gamma 这类 先验。计算成本:-copula 的密度和 CDF 都比高斯贵, 个资产可行,上千维就痛苦了。
跟高斯 copula 掰手腕
比较两个模型时,记住结构关系:相关矩阵 完全同角色,差别全在联合尾部;而高斯是 -copula 在 处的边界特例。所以在训练数据上,放开 的 -copula 拟合优度不会输给高斯——真正的问题从来是样本外的尾部:多出来的 买到的是真实的尾部相依,还是噪音。
实务上区分它们最直接的检验是经验尾部相依:取阈值(比如 95% 分位),数”两个资产同时超阈值”的频率,跟独立情形对比。高斯 copula 下这个条件概率随阈值推向极端趋于零;-copula 下收敛到正常数。也可以做正式的似然比较(备择模型下先把 估出来,再对比两边的最大对数似然;由于高斯落在参数边界上,常规的卡方渐近要打折扣,实务里更常直接看 AIC 和样本外尾部诊断)。
模拟里看一遍:
import numpy as np
from scipy.stats import t as t_dist
# 从二元 t-copula 模拟
np.random.seed(7)
n = 10_000
nu = 5 # 自由度
rho = 0.5
# 方法 1:随机表示
S = np.random.chisquare(nu, size=n) / nu
Z = np.random.multivariate_normal([0, 0], [[1, rho], [rho, 1]], size=n)
Y = Z / np.sqrt(S)[:, None] # 二元 t
U = t_dist.cdf(Y, df=nu) # 均匀
# 方法 2:显式走 Cholesky(与方法 1 等价)
L = np.linalg.cholesky([[1, rho], [rho, 1]])
Z2 = np.random.normal(size=(n, 2)) @ L.T
S2 = np.random.chisquare(nu, size=n) / nu
Y2 = Z2 / np.sqrt(S2)[:, None]
U2 = t_dist.cdf(Y2, df=nu)
# 尾部相依诊断
threshold = 0.95
both_high = ((U[:, 0] > threshold) & (U[:, 1] > threshold)).mean()
print(f"Joint upper-tail prob at 95%: {both_high:.4f}")
print(f"Independent (Gaussian) prediction: {(1-threshold)**2:.4f}")
print(f"Conditional tail dependence at 95%: {both_high/(1-threshold):.3f}")
跑一下,条件尾部相依显著大于零——这就是 -copula 的经验签名。
参数不确定性别忘了报
组合层面的统计量(99% VaR、ES)依赖 和 的精度,而 在有限样本里估得并不稳。拿置信区间的实务方法是 bootstrap:有放回地重抽样联合观测,重新拟合边际和 copula,重算组合 VaR / ES,重复上千次,取分布的 95% 区间。对千级样本量、几十个资产的组合,99% VaR 的区间往往宽到两位数百分比——报点估计不报区间,等于把模型不确定性藏起来了。
它赢在哪、停在哪
-copula 成为默认选择的场景,共同点都是”联合极端是主要风险”:2008 年之后的 CDO 定价广泛从高斯换到 -copula,尾部相依对夹层 tranche 的定价影响相当可观;多资产组合的压力测试,用 -copula 能看到高斯直接抹掉的联合极端;跨业务线的操作风险聚合,在怀疑尾部相依时用它;对手方敞口里的 wrong-way risk——对手方违约概率和你对他的敞口同向而动——天然就是尾部相依问题。
它停下的地方也清楚: 是构造性的对称,而经验上股票收益的下尾相依高于上尾——下跌的聚集性强于上涨。需要不对称尾部时,-copula 给不了,要换 Clayton、Gumbel、Joe 这类 Archimedean copula,下一篇讲。但作为基线,“同一个 、多一个 、对称地把联合尾部撑肥”是从高斯出发最保守也最常用的一步升级:对日频金融数据, 取 4–7 是有经验支撑的起点,再小就是更极端的尾部观点了——那是你的选择,但要知道自己在选什么。
参考文献
Aas, K., Czado, C., Frigessi, A., & Bakken, H. (2009). Pair-copula constructions of multiple dependence. Insurance: Mathematics and Economics, 44(2), 182-198.
Bouchaud, J.-P., & Potters, M. (2003). Theory of Financial Risk and Derivative Pricing (2nd ed.). Cambridge University Press.
Demarta, S., & McNeil, A. J. (2005). The copula and related copulas. International Statistical Review, 73(1), 111-129.
Joe, H. (1997). Multivariate Models and Dependence Concepts. Chapman & Hall.
McNeil, A. J., Frey, R., & Embrechts, P. (2015). Quantitative Risk Management: Concepts, Techniques and Tools (2nd ed.). Princeton University Press. Ch. 7.
Salmon, F. (2009, February 27). Recipe for disaster: the formula that killed Wall Street. Wired Magazine.