运用极值理论和交点理论对市场风险进行评估

这个例子展示了如何用蒙特卡罗模拟技术模拟一个假设的全球股票指数投资组合的市场风险。该过程首先利用非对称GARCH模型从每个回归序列中提取滤波后的残差,然后利用内部的高斯核估计和上下尾部的广义帕累托分布估计构建每个资产的样本边际累积分布函数(CDF)。然后将学生的t copula与数据进行拟合,并用于诱导各资产的模拟残差之间的相关性。最后,模拟评估了一个月内全球股票投资组合的风险价值(VaR)。

请注意,这是假定一些熟悉EVT和Copula函数比较先进的,完整的例子。有关广义帕累托分布和Copula函数模拟估算详情,请参阅用广义帕累托分布对尾部数据进行建模(统计和机器学习工具箱)用交点模拟因变量(统计和机器学习工具箱)在统计和机器学习工具箱™。有关在大多数这个例子是基于该方法的详细信息,请参阅[5][6])。

检查全球股票指数数据的每日倒闭

原始数据包括以下代表性的股票指数涵盖了交易的每日收盘价的2665个观测日期27月,1993年至14月,2003:

加拿大:TSX综合(北京时间^ GSPTSE)法国:CAC 40(北京时间^ FCHI)德国:DAX(北京时间^ GDAXI)日本:日经225指数(代码^ N225)英国:金融时报100指数(代码^ FTSE)美国:S&P 500指数(北京时间^ GSPC)
负载Data_GlobalIdx1进口每日指数关闭

以下曲线示出的每个索引的相对价格变动。各指标的初始水平已归一化为一,以促进相对性能的比较,并没有股息调整明确地考虑在内。

figure plot(日期,ret2price(price2ret(数据)))“x”)xlabel('日期')ylabel(“指数值”)标题(“相对每日指数收盘”)传说(系列,'位置'“西北”

在用于随后的建模制备,将每个索引到每天对数返回(有时也被称为几何,或连续进行配料,退货)的闭合水平。

返回= price2ret(数据);%对数返回T =尺寸(返回,1);% #返回值(即。,historical sample size)

由于在整个建模方法的第一步是GARCH过滤和极值理论的重复应用表征每一个人股票指数收益率序列的分布,是有帮助的检查特定国家的详细信息。你可以的下一行代码更改为集合{1,2,3,4,5,6}的任意整数,以检查任何索引的细节。

指数= 1;%1 =加拿大,2 =法国,3 =德国,4 =日,5 =英国,6 = US图图(日期(2:结束),返回(:,索引))datetick(“x”)xlabel('日期')ylabel(“返回”)标题(“每日对数收益”

过滤每个索引的回报

用GPD对一个分布的尾部进行建模,要求观测值近似独立且具有同分布(i.i.d)。然而,大多数财务收益序列表现出一定程度的自相关,更重要的是,存在异方差。

例如,与所选索引相关联的返回的样本自相关函数(ACF)显示了一些温和的序列相关性。

图autocorr(返回(:,索引))标题(“返回的样品ACF”

然而,平方返回的样品ACF示出了方差持久性的程度,并暗示GARCH建模可以显著调节在随后的尾估计处理中使用的数据。

图autocorr(返回(:,索引)^ 2)标题("样本ACF的平方回报"

为了得到一系列的i.i.d.观察结果,可以用一个一阶自回归模型来拟合每个股票指数回报的条件平均值

$$r_t = c + \theta r_{t-1} + \爱扑塞隆_t$$

以及条件方差的非对称GARCH模型

$ $ \ασ^ 2 _t = \ kappa + \ \σ^ 2 _ {t - 1} +φ\ \ε^ 2 _ {t - 1} + \ psi (\ epsilon_ {t - 1} < 0] \ε^ 2 _ {t - 1} $ $

一阶自回归模型补偿自相关,GARCH模型补偿异方差。特别是,最后一项通过一个布尔指标将不对称性(杠杆)合并到方差中,如果之前的模型残差为负,则该指标的值为1,否则为0(参见[3])。

此外,各指标的标准化残差建模为规范学生的t分布,以弥补经常与股票回报率相关的肥尾。那是

$$ z_t = \ epsilon_t / \ sigma_t $$独立同分布分布式$$吨(\ NU)$$

下面的代码段从每个股票指数的收益中提取过滤后的残差和条件方差。

模型= arima (基于“增大化现实”技术的南,“分布”“t”“方差”gjr (1,1));nIndices =大小(数据,2);索引的% #残差= NaN的(T,nIndices);% preallocate存储方差= NaN(T, nIndices);适合=细胞(nIndices, 1);选择= optimoptions (@fmincon,“显示”“关闭”...“诊断”“关闭”“算法”“sqp”'TolCon'1 e);I = 1:nIndices适合{I} =估计(模型,返回(:,i)中,“显示”“关闭”“选项”、选择);(残差(:,i)、方差(:,我)]=推断(适合{我},返回(:,我));结束

对于选定的索引,比较模型残差和从原料返回过滤相应的条件标准偏差。下面的曲线图清楚地示出的挥发性(异)存在于过滤残差的变化。

figure subplot(2,1,1) plot(dates(2:end), residuals(:,index))“x”)xlabel('日期')ylabel('剩余的')标题(过滤后的残差的(2,1,2)(日期(2:结束),sqrt(方差(:,index))“x”)xlabel('日期')ylabel(“波动”)标题("过滤条件标准差"

从每个返回序列中筛选模型残差后,通过相应的条件标准差对残差进行标准化。这些标准化的残差代表了潜在的零均值、单位方差、i.i.d系列,该系列是样本CDF尾部EVT估计的基础。

残差=残差./ SQRT(方差);

要结束本节,检查标准化残差的ACF和平方标准化残差。

比较标准化残差到原始返回的相应的ACF的活性炭纤维揭示了标准化残差现在大致独立同分布,从而更适合于随后的尾估计。

图autocorr(残差(:,索引))标题(" ACF标准残差样本")图autocorr(残数(:,index).^2)“平方标准化残差的ACF样品”

估计半参数CDFs

由于标准化,独立同分布来自前一步骤的残差,判断各指标的经验CDF与高斯内核。这种平滑CDF估计,消除非平滑样本的CDF的阶梯模式。虽然非参数内核CDF估计非常适用于其中大多数数据被发现分布的内部,他们往往在施加到上和下尾表现不佳。为了更好地估计分布的尾部,应用EVT那些落在每个尾部残留物。

具体地说,找到上下阈值,以便为每个尾部保留10%的残差。然后用极大似然法拟合每个尾部的这些极端残差超出相关阈值到参数GPD的量。这种方法通常被称为超过数点的分布要么峰值超过阈值方法。

在各尾数超过数的情况下,优化负对数似然函数来估计GPD的尾指数(zeta)和尺度(beta)参数。

下面的代码段创建类型的对象paretotails,每个索引返回序列对应一个这样的对象。这些paretotails对象封装了参数化GP下尾、非参数化核平滑内部和参数化GP上尾的估计,从而为每个指标构建了一个复合半参数化CDF。

将得到的分段分配对象允许CDF的在每个尾部的内部和外推(功能评价)内插。外推是非常可取的,让历史记录外位数的估计,并且是无价的风险管理应用程序。

此外,Pareto tail objects还提供了计算CDF和求逆CDF(分位数函数)的方法,以及查询分段分布每段边界的累积概率和分位数。

nPoints = 200;在CDF的每个区域中采样点的% #tailFraction = 0.1;分配给每个尾部的残差的小数部分尾巴=细胞(nIndices, 1);单元格数组的帕累托尾巴对象I = 1:nIndices尾巴{I} = paretotails(残差(:,i)中,tailFraction,1  -  tailFraction,“内核”);结束

在估计了复合半参数经验CDF的三个不同区域之后,以图形方式将结果拼接并显示出来。同样,请注意,分别显示为红色和蓝色的底部和上部尾部区域适合外推,而黑色的内核平滑内部区域适合内插。

下面的代码调用感兴趣的Pareto tail对象的CDF和逆CDF方法,使用的数据与fit所基于的数据不同。具体来说,引用的方法可以访问拟合状态,现在可以调用它们来选择和分析概率曲线的特定区域,充当强大的数据过滤机制。

身材保持网格minProbability = CDF(尾部{索引},(分钟(残差(:,索引))));maxProbability = CDF(尾部{索引},(MAX(残差(:,索引))));pLowerTail = linspace(minProbability,tailFraction,nPoints);%样品下尾pUpperTail = linspace(1  -  tailFraction,maxProbability,nPoints);%的样品上尾pinner = linspace(尾分数,1 -尾分数,n分);%样品内部情节(icdf(反面{指数},pLowerTail) pLowerTail,'红色'“线宽”,2)图(ICDF(尾部{索引},pInterior),pInterior,“黑”“线宽”, 2) plot(icdf(tails{index}, pUpperTail), pUpperTail,“蓝”“线宽”,2)xlabel(标准化的剩余的)ylabel(“概率”)标题(“经验提供”)({传奇“帕累托低尾”内核内部平滑的...“帕累托上尾”},'位置'“西北”

评估GPD飞度

虽然前面的图表说明了复合CDF,但是更详细地检查GPD的适合性是有指导意义的。

GP分布的CDF参数化为

$ $ F (y) = 1 -(1 + \ζy / \β)^{1 / \ζ},y # 62; = 0, \β# 62;0 \ζ# 62;-0.5美元美元

对于超过数(y)、尾部指数参数(zeta)和尺度参数(beta)。

在视觉上评估GPD配合,绘制残差的上尾超标的经验CDF与CDF装配由GPD沿。虽然只用10%的标准化残差,拟合分布密切关注的超标数据,因此GPD模型似乎是一个不错的选择。

图[P,Q] =边界(尾端{index});%累积概率和边界分位数y = sort(残差)(残差(:,index) > Q(2), index) - Q(2));%排序超标情节(y) (cdf(反面{指数},y + Q (2)) - P (2)) / P (1)) (F (x) = ecdf (y);%经验提供保持楼梯(X,F,'R'网格)传奇('拟合广义Pareto CDF'“经验提供”'位置''东南');xlabel(“超过数”)ylabel(“概率”)标题(“标准化残差的上尾”

校准t连接

给定标准化的残差,现在使用。估计t copula的标量自由度参数(DoF)和线性相关矩阵(R)copulafit函数发现在统计和机器学习工具箱。的copulafit函数允许用户通过两种不同的方法来估计t copula的参数。

默认方法是在两步处理中进行的正式的最大似然方法。

具体来说,虽然完全对数似然可以直接最大化,但在多维空间中,目标函数的最大值往往出现在狭长、平坦的山谷中,在高维空间中可能出现收敛困难。为了克服这些困难,copulafit分两步进行最大似然估计(MLE)。在给定一个固定的自由度值的情况下,内部步骤使与线性相关矩阵相关的对数似然最大化。这个条件极大化被放置在一个自由度为1-D的极大化中,从而最大化所有参数的对数可能性。在这个外部步骤中要最大化的函数称为自由度的概要文件日志可能性。

与此相反,下面的代码段使用近似为大的样本大小的自由度参数的轮廓数似然的替代方案。虽然这种方法往往比显著快MLE,它应谨慎使用,因为估计和置信区间可能不准确小型或中等样本量。

具体地,近似通过相对于所述线性相关矩阵微分数似然函数,假设自由度衍生是固定不变的。将所得的非线性方程然后迭代求解的相关矩阵。这种迭代,反过来,嵌套在另一个优化内估计自由度。该方法在本质上的型材对数似然方法相似,但不在该相关矩阵不收敛到该条件MLE对于给定的自由度的真实MLE。然而,对于大样本容量的估计往往是相当接近MLE(见[1][7])。

另一种方法是先计算样本秩相关矩阵(Kendall’s tau或Spearman’s rho)来估计线性相关矩阵,然后通过稳健的正弦变换将秩相关转换为线性相关。根据线性相关矩阵的估计,仅考虑自由度参数,对数似然函数就会达到最大值。这种方法似乎也受到概要日志似然方法的启发,但它根本不是MLE方法。然而,这种方法不需要矩阵求逆,因此在存在近似奇异相关矩阵的情况下具有数值稳定的优点[8])。

最后,奈斯特龙和Skoglund[6]建议将自由度参数保留为用户指定的仿真输入,从而允许用户主观地诱导资产之间的尾部依赖程度。特别是,他们建议一个相对较低的自由度,介于1和2之间,因此可以更仔细地检查关节极端情况的可能性。该方法适用于极端相互依赖程度至关重要的应力测试。

下面第一变换的代码段中的标准化残差均匀个变量由半参数经验CDF上面导出,那么适合吨连接函数来变换数据。当均匀分布随机数由每个边距的经验CDF变换,所述校准方法通常被称为经典最大似然(CML)。

U =零(大小(残差));i = 1: nIndices U (:, i) = cdf(反面{我},残差(:,我));%变换余量均一结束[R,自由度] = copulafit(“t”U“方法”'approximateml');%适合的copula

用t连接词模拟全球指数投资组合的回报

给定一吨系动词的参数,现在由第一模拟相应的从属标准化残差模拟共同依赖股票指数的回报。

为此,首先使用copularnd函数发现在统计和机器学习工具箱。

然后,通过外推GP尾部,内插到平滑的内部,通过对各指标的半参数边缘CDF的反演,将均匀变量转化为标准化残差。这就产生了与上述AR(1) + GJR(1,1)滤波过程得到的结果一致的模拟标准化残差。这些残差在时间上是独立的,但在任何时间点都是相关的。模拟的标准化残差阵列的每一列在单独观察时表示一个i.i.d.单变量随机过程,而每一行则共享由copula引起的秩相关。

下面的代码段模拟了2000个独立随机试验的依赖标准化指数残差超过一个月的时间跨度22个交易日。

s = RandStream.getGlobalStream ();重置(s) nTrials = 2000;% #独立随机试验地平线= 22;%的VaR预测地平线Z = 0(地平线,nTrials, nIndices);标准化残差数组U = copularnd (“t”, R, DoF, horizon * nTrials);%T Copula函数模拟J = 1:nIndices Z(:,:,J)=重塑(ICDF(尾部{Ĵ},U(:,j)的),地平线,nTrials);结束

使用模拟的标准化残差作为i.i.d.输入噪声过程,通过Econometrics Toolbox™重新引入在原始指数收益中观察到的自相关和异方差过滤器函数。

请注意,过滤器接受来自连接函数导出的用户指定的标准化的干扰和模拟用于在一个单一的时间指数模型,这意味着所有的样品路径被模拟并存储在继承每个索引的多个路径。

要充分利用当前信息,请指定必要的预样本模型残差、方差和返回值,以便每个模拟路径都从一个公共初始状态演化而来。

Y0 =回报(结束:);% presample回报Z0 =残差(结束:);%样品前标准化残差V0 =方差(结束:);% presample方差simulatedReturns = 0(地平线、nTrials、nIndices);i = 1: nIndices simulatedReturns (:,:, i) =过滤器(适合{我},Z(:,:我),...“Y0”,Y0(我),“Z0”Z0(我),“半”V0 (i));结束

现在重新构造模拟的返回数组,使每个页面表示一个多变量返回序列的单个试验,而不是一个单变量返回序列的多个试验。

simulatedReturns = permute(simulatedReturns, [1 3 2]);

最后,考虑各指标的模拟回报,形成单独的指数构成的权重相等的全球指数系列(国家指数的全球指数)。因为我们每天对数收益的工作,在风险地平线的累计回报只是回报率在每个间隔期间的总和。还要注意的是,投资组合权重保持固定在整个风险视野,该模拟忽略所需的任何交易成本来重新平衡投资组合(每日再平衡的过程被假定为自筹资金)。

注意,尽管模拟回报对数(连续计算),投资组合回报率系列是由第一次转换单个对数回归算法返回(价格变化除以初始价格),然后恢复权重各个算法获得投资组合的算术返回,最后回到组合对数转换返回。对于日数据和较短的VaR水平,重复的转换作用不大,但是对于较长的时间段,这种差异可能是显著的。

cumulativeReturns =零(nTrials,1);权重= repmat(1 / nIndices,nIndices,1);等权重投资组合I = 1:nTrials cumulativeReturns(ⅰ)=总和(日志(1 +(EXP(simulatedReturns(:,:,i))的 -  1)*权重));结束

总结结果

在模拟了每个指数的收益并形成全球投资组合后,报告一个月的风险范围内不同信心水平下的最大收益和损失,以及VaR。此外,绘制全球投资组合的实证CDF。

VaR = 100 *分位数(积量,[0.10 0.05 0.01]');disp (' ')流('最大模拟失重:%8.4f%S \ n',-100 *分钟(cumulativeReturns),“%”)流('最大模拟增益:%8.4f%s\n\n',100 * MAX(cumulativeReturns),“%”)流('模拟90 %% VAR:%8.4f%S \ N',VAR(1),“%”)流('模拟95 %% VAR:%8.4f%S \ N',VAR(2),“%”)流('模拟99 %% VAR:%8.4f%S \ n \ n',VAR(3),“%”)图h = cdfplot(累计次数);h。颜色='红色';xlabel(“对数回归”)ylabel(“概率”)标题(“模拟一个月全球投资组合回报CDF”
最大模拟损失:22.2023%最大模拟收益:14.1521%模拟90% VaR: -4.7899%模拟95% VaR: -6.5569%模拟99% VaR: -10.6321%

参考

[1]Bouye,E,V Durrleman,A Nikeghbali,G Riboulet和青春舞曲,T.“Copula函数财务:读取引导和一些应用程序。”Rech Groupe de。歌剧院,里昂信贷银行,巴黎,2000年。

[2]Embrechts,P,A麦克尼尔和D施特劳曼。“相关的风险管理:性能与陷阱”。风险管理:风险价值及风险以外的价值.剑桥:剑桥大学出版社,1999年,第176-223页。

[3]Glosten, L. R., R. Jagannathan和D. E. Runkle。“预期价值与股票名义超额收益波动性之间的关系。”金融杂志.第48卷,第5期,1993年,第1779-1801页。

[4]麦克尼尔,A和R.弗雷。“尾相关风险度量的估计异方差金融时间序列:一个极端的价值取向。”经验金融学杂志.2000年第7卷,第271-300页。

[5]Nystrom, K.和J. Skoglund。“单变量极值理论,GARCH和风险的措施。”预印本,2002年提交的。http://gloria-mundi.com/UploadFile/2010-2/knjsug.pdf.

[6]Nystrom, K.和J. Skoglund。“基于场景的风险管理框架。”预印本,2002年提交的。http://gloria-mundi.com/UploadFile/2010-2/knjs.pdf.

[7]Roncalli, T., A. Durrleman和A. Nikeghbali。“哪个交点是正确的?”混合小组言语报。歌剧院,里昂信贷银行,巴黎,2000年。

[8]Mashal, R.和A. Zeevi。“超越相关性:金融资产之间的极端协同运动。”Columbia University, New York, 2002.