量化模型

Copula与模型风险


Copula是一种可以用于投资组合风险计量的工具。本文首先从数学上给出一个简单直观的例子,展示边际分布相同(下图中,红色与蓝色线)但联合分布(绿色圈内点的分布)不同的情况。然后进一步介绍Copula及其在风险计量中的应用。

copula

下面两组散点集的X、Y变量的边际分布均为1维正态分布,只有第一组点是来自于2维联合正态分布,但是两组点集中X、Y变量之间的线性相关系数却同为0.9。

copula

图 1 二元正态分布(左)与Clayton Copula(右)散点图

两组点集之间存在明显差异,尤其是右图所示两侧极端位置点的分布情况,非常明显的展示了两组点集有着不同的多元分布。虽然两组点集中X、Y变量之间的线性相关系数同为0.9,但在右侧集合中,点的分布状态并不符合传统线性相关意义下高相关性应该表现出的特点,这说明线性相关系数已经无法用来刻画右侧点集的实际相关性。

由此可以得出结论,即使一个投资组合中的风险因子(例如,组合中一只股票的收益率)均为独立且服从正态分布(或者其他已知的分布),这个投资组合的风险也可能大于我们采用普通方法(例如,直接采用正态参数法计算VaR或ES)计算所得的水平,原因之一就是各风险因子之间可能存在无法通过简单线性相关来刻画的影响因素。因此我们必须充分识别各风险因子之间的相互依赖关系,以准确计量极端市场状况下投资组合的损失。

什么是Copula?

一个Copula函数的数学意义实际等同于一个多元联合分布函数,它的所有边际分布都为(0,1)上的均匀分布(Uniform Distribution)。

根据Sklar定理:对于任意一个多元联合分布函数F,总会存在一个Copula函数C,使得下述公式成立:

\(F(x_1,x_2,…,x_n)=C(U_1(x_1),U_2(x_2),…,U_n(x_n))\)

其中,U代表服从均匀分布的随机变量。

通俗的说,Copula是一种“连接函数”,可以用来刻画具有不同边际分布的变量之间内在的非线性相关关系。Copula函数可以用来作为计量投资组合风险的一种测度:

1、引入Copula,我们不需要对任意单一资产考虑特定的边际分布假设或对整个投资组合考虑特定的联合分布假设。在金融领域中,最为理想状态下各个风险因子是相互独立的,即所有的分布均属于“高斯”的世界。然而如前述所示,即使各个风险因子的边际分布属于正态分布,我们也无法假定整个投资组合的多元分布是正态的。总结金融领域收益率分布研究的结果可以发现,资产组合收益率是联合正态分布这个假设是错误的,这一错误假设会导致金融工具估值和风险计量结果产生较大误差和错误结论。当然,单个资产收益率服从正态分布的假设也是错误的。

2、通过Copula,我们可以实现对线性相关之外的相关关系进行测度。需要明确的是,线性相关系数仅可以刻画两风险因子间的线性变化关系,忽略厚尾变量,不足以完全代表两者之间的全部关系。同时,线性相关系数受非典型数据的影响较大,这类数据在金融工具估值和风险计量中十分重要。人们经常错误地将线性相关性等同于依赖关系或因果关系。

Copula的数理逻辑与应用范围简介

数学上,通过概率分布函数可以将任何随机变量映射为一个均匀分布函数U(0,1)。根据上部分Copula的公式,如果已经知道单个变量的边际分布,例如两支不同行业背景的股票收益率所服从的不同类型的边际分布,就可以在不需要提前给出联合分布假设的前提下(例如假设联合分布为二元正态分布),选取适当的Copula直接将他们连接起来,构造出联合分布函数,进而计算由这两只股票组成的投资组合的VaR、ES等指标,或者通过Copula的特性刻画两只股票之间的非线性相关关系。

可以说,Copula是已知边际分布条件下构造联合分布以及进行非线性相关性分析的一种十分便捷的工具。实际操作时只需要通过已知边际分布的概率分布函数生成数据作为(0,1)上的均匀分布,然后选取合适的Copula,采用合适的算法进行参数拟合就可以了。

Copula函数有很多种类,不同种类的Copula有不同的特性,其中有三种Copula(Gumbel、Clayton and Frank)常被用于对尾部极端值建模,从而度量变量间的尾部相关性这一非线性相关关系。尾部相关性可以理解为极端情况出现的相关性,例如,下尾相关性代表两只证券同时出现巨额亏损的可能性的大小,上尾相关性代表其同时出现收益暴涨的可能性。用于刻画尾部相关性大小的量化结果称为尾部相关系数

在图1中,右侧的点产生于常用Copula函数之一的Clayton-Copula,用其生成的散点呈向左下尾部聚集的状态,即存在下尾相关性。如图2示例,Gumbel Copula模拟的数据在右上尾部存在聚集效应,即存在上尾相关性;Frank Copula整体上不存在尾部聚集效应,即不存在尾部相关性。

copula

图 2 Gumbel Copula(左)以及Frank Copula(右)散点图

应用1:计算VaR

在度量非线性相关的基础上,Copula在风险管理上的重要应用之一是它可以用于计算在险价值(VaR)。

举一个简单的例子,若采用Gumbel、Clayton以及Frank Copula分别计算一个包含两支股票的投资组合(用a、b代表,假设持仓份额相等)在99%置信度下的VaR值,借助下述公式,计算方法可以这样表述:

\(F(a,b)=C(F_1(a),F_2(b))\)

其中\(F_1()\) 、\(F_2()\) 分别为a、b的历史收益率数据所服从的概率分布函数, 代表所选取的Copula函数,参数拟合可以采用极大似然估计法。

1、首先根据a、b的历史收益率数据拟合其概率分布函数 \(F_1()\) 、\(F_2()\)  ,得到概率分布拟合值的计算结果;

2、然后应用上述拟合值对Copula函数进行参数估计,得到模型参数;

3、采用蒙特卡洛方法生成模拟收益率数据,具体分两步:

首先由所得Copula函数生成足够数量的边缘分布的概率分布数据;

然后根据Copula函数所生成数据结果,结合\(F_1()\) 、\(F_2()\) 的逆函数,计算模拟的收益率数据。

4、根据上述模拟收益率数据计算这两支股票的组合收益率,然后通过取分位点的方法获得VaR值。

对于两只股票之间可能包含非线性相关的部分,应用上述三种Copula模型之后,可以识别尾部相关意义下的非线性相关关系(Gumbel Copula-上尾相关、Clayton Copula-下尾相关、Frank Copula-无尾部相关),这样可以弥补不考虑任何相关性分析而直接通过历史模拟法计算VaR的不足。

应用2:衍生品定价

Copula模型在2000年后被众多金融机构的产品设计部门与金融量化研究员用于担保债务凭证(Collateralized Debt Obligation, CDO)的定价。主要应用于定价过程中对信用风险相关性的量化分析。

造成CDO不同层次价格波动的因素除了资产池中每个实体信用资质的变化以外,还有这些实体的信用风险相关性(Credit Risk Correlation)。例如,如果这些实体的信用风险相关性为1,也就是说当其中的任何一个实体违约时,其他全部实体同时违约,那么任何时候只有两种可能:要么完全没有违约,要么全部违约。那么,当任何一次违约发生时,高级层的客户将会和权益层的客户一样无法收回本金(这里我们假设违约后的回收率为0%)。因此,实体之间的信用风险相关性是CDO各层次定价的一个重要因素。

模型风险

Copula模型被引入CDO的定价,始于David X. Li(李祥林)[2]2000年于J.P Morgan期间发表的论文:On Default Correlation: A Copula Function Approach,通过Copula方法来给CDO定价,这一方法被国外金融量化领域广为接受并迅速应用。

2008年次贷危机之后,人们开始反思危机发生的原因。次贷危机中信用衍生品定价方法中存在盲目的模型应用与算法不合理之处逐步被国外专家学者发现,其中最重要的发现之一就是CDO的高斯Copula定价方法。

次贷危机前,国外金融机构通过高斯Copula方法进行CDO定价时忽视了其应用的潜在假设和局限性。虽然Copula模型本身是一类十分优秀的统计模型,但高斯Copula实际上无法合理、准确度量CDO各层所涉及实体间的信用风险相关性的。原因在于,相比其他Copula,高斯Copula无法对尾部相关等常见的非线性相关关系进行刻画,因此将其直接应用于CDO定价是有缺陷的。然而现实中,这些因素却被从业者盲目乐观的情绪与不断繁荣扩大的金融泡沫所掩盖,未能引起众多模型使用者的警觉,间接导致了次贷危机的爆发。

这就是金融产品定价中的模型风险。在金融衍生品高速发展的背景之下,如果忽视金融产品定价模型的设计细节或模型应用的潜在假设和局限性,将可能引发模型风险,给金融机构带来更大的损失。

 

[1] 参考资料:国内外CDS市场发展现状

[2] 李祥林,拥有加拿大滑铁卢大学统计学博士与精算学硕士学位、魁北克拉瓦尔大学MBA学位、南开大学数学本科与经济学硕士学位,曾担任中金公司首席风险官、董事总经理,曾在花旗银行和巴克莱投行担任全球信用衍生产品数量分析和研究部负责人。

本文是全系列中第3 / 6篇:模型风险

量化模型
利用正态法计算股票组合VaR实例
量化模型
市场风险测度之VaR概述
量化模型
利用R语言aggregrate函数计算年化波动率
还没有评论哦,快来抢沙发吧!