版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、金融计算与编程 上海财经大学金融学院 曹志广 风险价值(VaR)和条件风险价值(CVaR) VaR和 CVaR的定义 VaR是一定置信水平下(比如:99%),投资组合面临的最大损失,具体地,我们用收益率分布的1?百分位数来定义VaR: VaRF1()=?(1?) r其中:F(i)为组合收益率的累积分布函数 r上面的定义是从收益分布的左尾定义VaR。有时候,我们需要从收益分布的右尾定义VaR: VaR=F?1()() r由于VaR不具有次可加性,即组合的VaR可能超过组合中各资产的加权平均VaR,因此,具有次可加性特点的CVaR常常被用来衡量组合的风险。CVaR衡量了一定置信水平下发生损失超过V
2、aR时的平均损失。具体地,其定义如下: ?VaR?VaRzf(z)dzzf(z)dzrrCVaR()=?E(rr?VaR)=?=? F(?VaR)1?r同样可以从右尾角度来定义CVaR: zf(z)dzrCVaR=VaR() 1?其中:f(i)为组合收益率的概率密度函数 r基于Cornish-Fisher展开式的VaR和CVaR Cornish-Fisher展开式将标准化之后的组合收益*r(*r=(r?p)/p)的百分位数近似表示为 =+1q213132c()?c()?1?sp+?c()?3c()?kp?3?c()?5c()?sp 6?24?36?其中:?p为组合收益的均值,p为组合收益的标准
3、差,c()为标准正态分布百分位数,sp楹鲜找娴钠龋琸p为组合收益的峰度 因此,组合收益r的百分位数近似为:?p+pq,即VaR(1?)=?p+pq 组合的CVaR为: C1VaR(1?)=?p(M1+(M2?1)sp6 +1M?M231k?1(3)(p3)(2M3?5M1)sp)2436 1金融计算与编程 上海财经大学金融学院 曹志广 其中:1c()M=ixf(x)dxi=2,3;f(.)为标准正态分布的概率密度函数 i,1,?基于正态分布的VaR和CVaR VaR(1?)=?p+pc() (1?)=?CVpaR?pf(c() 基于历史模拟的VaR和CVaR 用组合收益率的历史观测值的经验分布
4、来计算VaR和CVaR 下面给出基于历史模拟、正态分布和Cornish-Fisher展开式计算VaR和CVaR的Matlab函数。 function VaR,CVaR=var_cvar(r,alpha,method) n=length(r); mu=mean(r); sigma=std(r); switch method case 'hs' VaR=-prctile(r,alpha*100); CVaR=-(mean(r(r<=-VaR); case 'norm' q_alpha=norminv(alpha,
5、mu,sigma); VaR=-(q_alpha); CVaR=-(mu-sigma*normpdf(q_alpha-mu)/sigma,0,1)/alpha); case 'cf' nr=(r-mu)/sigma; s=skewness(nr); k=kurtosis(nr)-3; q=norminv(alpha); VaR=-(mu+sigma*(q+1/6*(q2-1)*s+1/24*(q3-3*q)*k-1/36*(2*q3-5*q)*s2); syms x m1=double(int(x*1/sqrt(2*pi)*exp(-x2/2),-inf,q
6、)/alpha; m2=double(int(x2*1/sqrt(2*pi)*exp(-x2/2),-inf,q)/alpha; m3=double(int(x3*1/sqrt(2*pi)*exp(-x2/2),-inf,q)/alpha; CVaR=-(mu+sigma*(m1+1/6*(m2-1)*s+1/24*(m3-3*m1)*k-1/36*(2*m3-5*m1)*s2); end 下面以1997-1-2到2008-2-13期间上证综合指数的日收益为例,计算其99%VaR和CVaR。数据如下表所示,第一列为日期,第二列为上证综合指数的收盘价。文件名为'shindex.
7、xls'。 2金融计算与编程 上海财经大学金融学院 曹志广 clear x=xlsread('shindex'); x(:,1)=x2mdate(x(:,1); x(1:1526,:)=; p=x(:,2); date=x(:,1); r=price2ret(p); M=1000; alpha=0.01; ndate=date(2+M:end); method='hs' for i=1:length(r)-M a=r(i:i+M); VaR1(i),CVaR1(i)=var_cvar(a,alpha,me
8、thod); end method='norm' for i=1:length(r)-M a=r(i:i+M); VaR2(i),CVaR2(i)=var_cvar(a,alpha,method); end method='cf' for i=1:length(r)-M a=r(i:i+M); VaR3(i),CVaR3(i)=var_cvar(a,alpha,method); end h=figure(1); 3金融计算与编程 上海财经大学金融学院 曹志广 set(h,'color',
9、'w') plot(ndate,VaR1','r-*') hold on plot(ndate,VaR2','b-*') plot(ndate,VaR3','m-*') datetick('x',23) legend('99%VaR-HS','99%VaR-NORM','99
10、%VaR-CF',2) h=figure(2); set(h,'color','w') plot(ndate,CVaR1','r-*') hold on plot(ndate,CVaR2','b-*') plot(ndate,CVaR3','m-*') datetick('x',23) legend(&
11、#039;99%CVaR-HS','99%CVaR-NORM','99%CVaR-CF',2) 4金融计算与编程 上海财经大学金融学院 曹志广 极值理论与风险价值(VaR)和条件风险价值(CVaR) 极值理论 考虑随机变量X,其概率密度函数和累积分布函数分别为f(x)和F(x),X1,X2,.,Xn为其独立同分布的随机变量序列 定义 Xmaxn=max(X,X,.,12Xn) Xm=XXX in,nmin(1,2,.,n)则称Xm和Xax,nm为序列inXX,.,Xn的极值,显然我们有 ,n1,2Xmin
12、n=?max(?X,?X,.,?Xn) ,12因此,以下讨论中极值单指Xmax,n 则: Xm的分布函数为ax,n:Fxn?(),概率密度函数为nFxn1()f(x) Xmin,n的分布函数为:1?1?Fn(x),概率密度函数为n?Fxn?11()f(x) 如果随机变量X的分布未知,则可以用Xm的渐进分布,广义极值(GEV)分布来近似ax,n表示Xmax,n的分布(Jenkinson,1955) 。具体地, Xmax?d,n?Hmax(Xmax,n) 其中:Hmax(i)为广义极值分布函数, max,max,1/max,max=?+Xn?H(X?n?maxn;n, ,max,max,n,max
13、,n)exp1nmax,n()max,n其中:1+max,n(Xmax,n?max,n)/max ,n)0相应地其概率密度函数 1+Xm?hXax,nmax,n(1maxn)/?=?+,max,nmax(max,n;max,n,max,n,max,n)1max,n()max,nmax,n×?+Xmax,n? ?max,n?1/expmax,n1mn()ax,max,n Xmax,n的渐进分布还可以用广义帕累托分布(GPD)Gmax(x)来表示(Pickands,1975) Gmx=1+ln(H(x) ax()max 5金融计算与编程 上海财经大学金融学院 曹志广 即 max,max,
14、1/max,maxmax,max=?+X?GXn?(n;n,?n,n)11nnn() ,max,max,max,max,n相应地,其概率密度函数为: =1+Xmax?gX,max,?(1+max)/,max,max(max;,max,max,max)1nnnnnn?nnn() ,max,max,nmax,n渐进分布的参数估计方法 (1)非线性回归方法 Gumbel (1958)提出了使用非线性回归方法估计广义极值分布和广义帕累托分布中的参数(max,n,?max,n,maxn)。 ,已知Xm的N个观测值XXN.,X,其顺序统计量序列为12ax,n:12m,.axmaxmX X X N.,,ax
15、max,m,axmax且满足X 1X 2mX N,显然X rm为随机变量,其概率密度函数为: ax,r=1,2,.,Naxm.axmaxr?1(1?N?rN=xx)f(x;,r),0x1 B(r,N?r+1)其中:B(i)为贝塔函数。 r相应地,?N?rxx)rX rmax的均值为1(1dx= 0B(r,N?r+1)N+1同样,HmX r)也为ax(max0,1区间上的随机变量,其均值为: X rEH(X r)=E?+m?axmax,n?1/max,nmaxmaxexp1max,n() max,n令 X r?+m?axmax,n?1/mrEax,nexp1max()=,r=1,2,.,N ,n
16、m+ax,nN1则我们可以建立以下回归方程估计广义极值分布的参数(max,n,?max,n,max,n) 1X r=?+m?axmax,nyln(1max,n()+ max,nmax,n其中:=ln(?ryln()。给定观测值(ln(?rlnX r(),),r=1,2,.,N,广义极N+N+max11值分布中的参数估计可以通过最小化回归方程中残差平方和得到。 6金融计算与编程 上海财经大学金融学院 曹志广 类似地,令 X r =?+m?Xraxmax,n1/max,n(max(max)(11max()=rEGE?n,r=1,2,.,N ,mnN+1ax,则我们可以建立以下回归方程估计广义帕累托
17、分布中的参数(mn,?n,ax,max,max,n) 1X r=?+m?axmax,y1nln(max+ ,n()max,nmax,n其中:=ln(1?ry)。给定观测值(ln(1?r) ,Xr),r=1,2,.,N,广义帕累托分N+N+max11布中的参数估计可以通过最小化回归方程中残差平方和得到。 (2)极大似然估计方法 给定Xmax,n的N个观测值:X1X2mXN,.,axmaxm,如果Xaxmax,n服从广义极值分布,则相应其对数似然函数为: 1Ni=?+max,n+Xm?LnLNNaxmax,nHlnmax,n()ln1max,n()max,ni=1max,n N?+Xim?axma
18、x,n?1/n1max,mn()ax,i=1max,n最大化上面似然函数得到广义极值分布的参数估计。 类似地,如果服从广义帕累托分布,则相应其对数似然函数为: =?1+Nmax,+Xim?LnLNnnnGnN()ln1axmax,lmax,max,n() max,ni=1max,n最大化上面似然函数得到广义帕累托分布的参数估计。 极值理论在风险价值(VaR)和条件风险价值(CVaR)的计算中的应用 给定组合收益率的N个观测序列:r1,r2,.,rN,我们定义超过临界值K的收益率为极值Xmax,比如可以定义超过均值2个标准差的收益率为Xmax的观测值。我们记超过临界值K的收益率序列为y1,y2,
19、.,yn,即N总观测值中有n个超过临界值K。进一步,我们定义新的序列z1,z2,.,zn为极值序列,这里z1=y1?K,z2=y2?K,.,zn=yn?K,应用该序列我们可以估计出广义极值分布的参数或者广义帕累托分布的参数。在估计出这些参数后,可以计算出组合的VaR和CVaR。其原理如下: 定义 P(rK)=F(K) t 7金融计算与编程 上海财经大学金融学院 曹志广 P(rK+z)=F(K+z) tttm=F(K+z)?F(K)F(zt)ax t1?F(K)则当临界值K较高时,Fmz)应当接近广义极值分布或广义帕累托分布。 ax(t先考虑Fm(z)足够接近广义极值分布的情形。 axt用n/N
20、作为1?F(K)的估计,我们得到 =?+z?1=F(K+z)?(1?n/N)F(z)exp1t/tm() axtn/N因此,?+=n?+z?1FKt?1/(z)exp1() tN令n?+z?t?1/exp1()=,得到 NVaRGEV=+()?ln(1?(1?)N/n)?1 zVaR()=K+VaRGEV() rz其中:VaR()表示组合收益分布置信水平下的VaR,VaRGEV()表示极值分布置信rz水平下的VaR。 相应地,我们得到CVaR()为: r1?C1VaR=K+VaRGEV()xdxr? z10考虑Fmz)足够接近广义帕累托分布的情形。类似地可以得到 ax(tVaRGPD()=+?
21、(1?)N/n)?1) zVaR=K+VaRGPD()() rz1?C1VaR=K+VaRGPD()xdxr? z10注意:以上我们得到的VaR()和CVaR()是基于右尾的VaR()和CVaR()。如果rrrr要得到左尾的VaR()和CVaR(),则只需将收益率的N个观测序列:r1,r2,.,rN改成rr?r1,?r2,.,?rN,其余步骤不变即得到基于左尾的VaR()和CVaR()。 rr 8金融计算与编程 上海财经大学金融学院 曹志广 下面我们给出基于GPD的非线性回归方法估计组合收益VaR和CVaR的Matlab函数。 function var,cvar=var_cvar_extrem
22、e_GPD(r,alpha) %calculate VaR and CVaR based on extreme theory in which generalized Parato %distribution is employed. %In detail, see Bali, T. G., 2003, An extreme value approach to estimating volatility and value at risk, Journal of Business 76, 83-108. r=-r; N=length(r); K=mean(r)+2*std(r); rr=r(f
23、ind(r>K); rr=rr-K; n=length(rr); x=sort(rr); y=log(1-(1:n)/(n+1)' para=-(std(x)/(max(x)-mean(x)+std(x)/(min(x)-mean(x)/2;mean(x);std(x); para,standard_error,covariance,t_statistics,R_square=nonlinearregression(y,x,'extreme_GPD',para); var=para(2)+para(3)/para(1)*(al
24、pha*N/n)(-para(1)-1)+K; cvar=quad(int_fun_GPD,0,alpha,para;N;n)/alpha+K; 上面的程序需要调用以前我们使用过的函数nonlinearregression之外,还需要调用以下函数: function f=extreme_GPD(para,x) eta=para(1); mu=para(2); sigma=para(3); f=-1/eta*log(1+eta/sigma*(x-mu); function f=int_fun_GPD(x,para) eta=para(1); mu=para(2); sigma=para(3);
25、N=para(4); n=para(5); f=mu-sigma/eta+sigma/eta*(x*N/n).(-eta); 均值-方差有效前沿与均值-VaR及均值-CVaR有效前沿 均值-方差前沿组合(不允许卖空) m1inWTVW2Ts.t. We=E(rp) WT1=1 W0均值-VaR前沿组合(不允许卖空) 9金融计算与编程 上海财经大学金融学院 曹志广 minVaRTs.t. We=E(rp) WT 1=1 W0均值-CVaR前沿组合(不允许卖空) minCVaRTs.t. We=E(rp) WT 1=1 W0 !"#$%&'()*
26、+,-. /01234012 56789:; !< =>?"ABCDEFGHIJKL1G1KMGENOPQIM9 前沿组合 clear x=xlsread('monthly_data_stock'); r=price2ret(x(:,2:end); n=size(r,2); IW=ones(n,1)/n;%set initial value for weight method='norm' % %expected returns, std, VaR and CVaR for i
27、ndividual stocks e=mean(r); 10 金融计算与编程 上海财经大学金融学院 曹志广 stdev=std(r); for i=1:n var(i),cvar(i)=var_cvar(r(:,i),0.01,method); end % Aeq=ones(1,n);e; options=optimset('largescale','off'); ER=linspace(min(e),max(e),20); V=cov(r); %minimize VaR or CVaR for i=1:length(ER
28、) Beq=1;ER(i); W(:,i)=fmincon(var_cvar_min_fun,IW,Aeq,Beq,zeros(n,1),ones(n,1),options,r,0.01,method,1);%min VaR nW(:,i)=fmincon(var_cvar_min_fun,IW,Aeq,Beq,zeros(n,1),ones(n,1),options,r,0.01,method,2);%min CVaR sigma(i)=sqrt(W(:,i)'*V*W(:,i); nsigma(i)=sqrt(nW(:,i)'*V*nW(:,i); Va
29、R(i),CVaR(i)=var_cvar(weight_portfolio(W(:,i),r),0.01,method);%VaR and CVaR based on minimizing VaR nVaR(i),nCVaR(i)=var_cvar(weight_portfolio(nW(:,i),r),0.01,method);%VaR and CVaR based on minimizing CVaR end %minimize Variance for i=1:length(ER) Beq=1;ER(i); W1(:,i),fv(i)=quadprog(V,Aeq,Beq,zeros(
30、n,1),ones(n,1),IW,options); fv(i)=sqrt(fv(i)*2);%standard deviation VaR1(i),CVaR1(i)=var_cvar(weight_portfolio(W1(:,i),r),0.01,method); end % h=figure(1); set(h,'color','w') plot(sigma,ER,'-o')%ER-VaR frontier hold on plot(fv,ER,'r-*&
31、;#039;)%ER-sigma frontier plot(nsigma,ER,'k-square')%ER-CVaR frontier xlabel('Sigma') ylabel('ER') plot(stdev,e,'kpentagram') legend('ER-VaR Frontier', 'ER-sigma Frontier','ER-CVaR Fr
32、ontier','individual stocks',2) h=figure(2); 11 金融计算与编程 上海财经大学金融学院 曹志广 set(h,'color','w') plot(VaR,ER,'-o')%ER-VaR frontier hold on plot(VaR1,ER,'r-*')%ER-sigma frontier plot(nVaR,ER,'k-square&
33、amp;#039;)%ER-CVaR frontier xlabel('VaR') ylabel('ER') plot(var,e,'kpentagram') legend('ER-VaR Frontier','ER-sigma Frontier','ER-CVaR Frontier','individual stocks',2) h=figur
34、e(3); set(h,'color','w') plot(CVaR,ER,'-o')%ER-VaR frontier hold on plot(CVaR1,ER,'r-*')%ER-sigma frontier plot(nCVaR,ER,'k-square')%ER-CVaR frontier xlabel('CVaR') ylabel('ER
35、9;) plot(cvar,e,'kpentagram') legend('ER-VaR Frontier','ER-sigma Frontier','ER-CVaR Frontier','individual stocks',2) RS TU" V 基于正态分布计算01234012的前沿组合。 上面的程序用到了以下辅助函数weight_portfolio 和var_cvar_min_fun: function f=weight_portfolio(W,r) W=W(:); if length(W)=size(r,2) error('W does not match r'); end N=size(r,1); A=repmat(W&a
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 国内担保贷款合同示范
- 企业承包经营合同的环保要求
- 2024公众号搭建合同
- 2024融资服务合同范文
- 集体土地上房屋拆迁补偿标准
- 2024终止合同协议书
- 2024水马购买协议合同
- 建筑项目施工管理协议书
- 2024年企业知识产权归属协议书
- 资金管理与账户监督合同
- 2021年大唐集团招聘笔试试题及答案
- DBJ53/T-39-2020 云南省民用建筑节能设计标准
- 2022版义务教育数学课程标准解读课件PPT模板
- 实验五 PCR扩增课件
- 马拉松运动医疗支援培训课件
- 中医药宣传手册
- 不良资产处置尽职指引
- 人教部编版七年级历史上册第19课 北魏政治和北方民族大交融课件(23张PPT)
- 机械设备定期检查维修保养使用台账
- 丽声北极星分级绘本第四级上 Stop!Everyone Stop!教学设计
- 小学科学教育科学三年级上册天气《认识气温计》教学设计
评论
0/150
提交评论