您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 金融风险度量的VaR在MATLAB中的操作.
金融风险度量的VaR法郝芸芸在金融市场上,投资者或金融机构所面临的一个重要的风险是市场风险,即金融工具的市场价值在未来发生变化的可能性。一般而言,投资者所关心的主要是资产价格向下变动的风险。风险一般用资产回报的波动性或标准差衡量,波动性越大,资产未来回报偏离预期的回报的可能性越大。一、在险价值的概念但是,波动性并未告诉我们,投资者在今后一段时间内,可能遭受的最大化损失是多少。现代金融机构已经不满足于知道投资组合的波动性或风险,还想进一步知道一旦风险实现,自己可能遭受何等程度的最大损失。由此产生了风险度量工具。VaRVaR指的是在正常的市场条件下以及给定的置信度下,某一证券组合或金融资产在将来特定时间内所可能出现的最大损失,被称为“在险价值”或“风险价值”。数学定义式是:Prob1pVaRcVaR的定义这个公式的含义是:对于某一资产组合来说,在给定的置信水平下,VaR提供了最大可能的预期损失,即可以以1-c的概率来保证这一资产组合的预期损失不会大于VaR。由VaR的定义可知,置信水平越高,资产组合的损失小于其VaR值的概率越大,VaR模型对于极端事件的发生进行预测时失败的可能性越小。例:假设一个基金经理希望接下来的10天时间内,以95%概率保证其所管理的基金价值损失不超过100万,那么:VaR询问的问题是:我们有95%的信心在接下来的10个交易日中损失程度将不会超过100万。或者说,在未来的10天之内,基金价值损失超过100万的概率仅为5%。Prob1005%pVaR的参数持有期T,即确定计算在哪一段时间内的持有资产的最大损失值,也就是明确风险管理者关心资产在一天内一周内还是一个月内的风险价值。持有期的选择应依据所持有资产的特点来确定。比如对于一些流动性很强的交易头寸往往需以每日为周期计算风险收益和VaR值,对一些期限较长的头寸如养老基金和其他投资基金则可以以每月为周期。置信水平。一般来说对置信区间的选择在一定程度上反映了金融机构对风险的不同偏好。选择较大的置信水平意味着其对风险比较厌恶,希望能得到把握性较大的预测结果,希望模型对于极端事件的预测准确性较高。根据各自的风险偏好不同,选择的置信区间也各不相同。作为金融监管部门的巴塞尔委员会则要求采用99%的置信区间。二、VaR在风险管理中的应用1.用于风险控制。目前己有超过1000家的银行、保险公司、投资基金、养老金基金及非金融公司采用VaR方法作为金融衍生工具风险管理的手段。利用VaR方法进行风险控制,可以使每个交易员或交易单位都能确切地明了他们在进行有多大风险的金融交易,并可以为每个交易员或交易单位设置VaR限额,以防止过度投机行为的出现。如果执行严格的VaR管理,一些金融交易的重大亏损也许就可以完全避免。2.用于业绩评估。VaR提供了对风险的总体测度:用一个数值就可以反映出某个窗口在给定的置信水平下可能遭受的最大损失。在金融投资中,高收益总是伴随着高风险,交易员可能不惜冒巨大的风险去追逐巨额利润。公司出于稳健经营的需要,必须对交易员可能的过度投机行为进行限制。所以,有必要引入考虑风险因素的业绩评价指标,VaR的使用能限制那些不能增加股东价值的风险业务。三、VaR的计算方法1.Delta-正态法(方差—协方差法)这种方法假定:•资产价格的变化是风险因子的线性函数。•资产价格变化遵循正态分布。在这些假定下,资产组合的潜在最大化损失可表示为:其中,是置信水平对应分布的分位数,是常数,表示资产组合回报的日波动性,是资产组合的持有期。0V0VaRVZTZT参数模型在MATLAB中的代码如下:%%Parametric%计算99%与95%水平的风险价值,假设收益率服从正态分布。%mean(returnsPortfolio)组合收益率(期望收益率)%std(returnsPortfolio)组合风险标准差(波动率)%[.01.05]置信度阈值%marketValuePortfolio组合资产价值pVar=portvrisk(mean(returnsPortfolio),std(returnsPortfolio),[.01.05],...marketValuePortfolio);%画图confidence=-pVar/marketValuePortfolio;hist2color(returnsPortfolio,confidence(2),'r','b');displayVar(pVar(1),pVar(2),'p')计算结果如下:ValueatRiskmethod:ParametricValueatRisk@99%=$90,981,251.06ValueatRisk@95%=$64,856,171.58参数模型结果参数法的优缺点:假设投资组合的未来收益率服从正态分布,这种方法极大的简化了VAR的计算。该方法的基本思路是用历史数据求出资产组合收益的方差、标准差、协方差。然后求出在一定置信区间下反映分布偏离程度的临界值,最后建立与风险损失的联系,推导VAR值。“方差—协方差法”法的优点是运算比较简单,不必大量繁琐的计算。但是它不能反映极端的价格变动,也不能反映收益率分布的“厚尾”现象。2.历史模拟法历史模拟法是直接利用资产组合在过去一段时期内收益分布的历史数据,并假定历史变化在未来会重现,以确定持有期内给定置信水平下资产组合的最低收益水平,推算资产组合的值。历史模拟法是一种非参数方法,不需要假定市场因子的统计分布,因此,可以较好地处理非正态分布,可以有效地处理非线性的资产或资产组合。VaR1.选取过去N+1天第I项资产的价格作为模拟资料;例如首先找出过去一段时间(假设是101天)的股票收盘价:Si(−1)、Si(−2)…Si(−100)、Si(−101)。2.将过去彼此相邻的N+1笔价格相减,就可以求得N笔该资产每日的价格损益变化量;例如:Δ1=Si(−1)−Si(−2)、Δ2=Si(−2)−Si(−3)、Δ100=Si(−100)−Si(−101)。3.步骤2代表的是第I项资产在未来一天损益的可能情况(共有N种可能情形),将变化量转换成报酬率,就可以算出N种的可能报酬率。4.将步骤3的报酬率由小到大依序排列,并依照不同的置信度找出相对应分位数的临界报酬率。5.将目前的资产价格Si(0)乘以步骤4的临界报酬率,得到的金额就是使用历史模拟法所估计得到的风险值。历史模拟法的步骤如下:例:今日以60元买入鸿海的股票10张共60万元,我们只可以找到过去101个交易日的历史资料,求在95%置信度下的日风险值为多少?1.根据过去101日鸿海之每日收盘价资料,可以产生100个报酬率资料。2.将100个报酬率由小排到大找出倒数第五个报酬率(因为置信水平为95%),在此假设为-4.25%。3.-4.25%*600,000=-$25,5004.所以VaR=$25,500,因此明日在95%的机率下,损失不会超过$25,500元。历史模拟法在MATLAB中的代码如下:%%HistoricalSimulationprogramatically%历史模拟法程序%收益率在1%与5%的置信水平confidence=prctile(returnsPortfolio,[15]);%历史模拟法的可视化figure;hist2color(returnsPortfolio,confidence(2),'r','b');%历史方法99%与95%水平的风险价值hVar=-marketValuePortfolio*confidence;displayVar(hVar(1),hVar(2),'hs');计算结果如下:ValueatRiskmethod:HistoricalSimulationValueatRisk@99%=$82,091,887.30ValueatRisk@95%=$66,214,101.16历史模拟法结果历史模拟法的优缺点“历史模拟法”是借助于计算过去一段时间内的资产组合风险收益的频度分布,通过找到历史上一段时间内的平均收益,以及既定置信区间下的最低收益水平,推算VAR的值。这种方法实质上比较简单,容易理解。在银行已经保存大量的历史数据的情况下,多数时候不必要再估计任何参数。但是,历史模拟法对于历史数据的要求比较高,为了得到比较精确的结果,就要求选取较长的测量区间,以便获得更多的历史数据,可是一旦所选取的区间过长,历史数据对当前VAR值的借鉴意义就减少了。3.蒙特卡罗(MonteCarlo)模拟法蒙特卡罗模拟的资产收益率或市场因素收益率不是取历史观察值,而是用计算机模拟出来的。利用一个模型,输入随机变量集,产生从今天到VaR水平期所有风险因子变化的完整路径。每一模拟路径给出了重估整个资产组合价值所需的所有市场数据。%%MonteCarlousingportsim%蒙特卡罗方法%根据组合中股票价格与股票数量,计算组合资产价值与权重[marketValuePortfolio,weightsPortfolio]=getPortfolioWeights(...CSI300HistPrices,positionsPortfolio);numObs=1;%样本个数numSim=10000;%模拟次数%预期期望与方差expReturn=mean(returnsSecurity);expCov=cov(returnsSecurity);%rngControltherandomnumbergenerator%随机生成数种子设置,数值越大越好rng(12345)%生成资产收益率矩阵蒙特卡罗模拟法在MATLAB中的代码如下:simulatedAssetReturns=portsim(expReturn,expCov,numObs,1,numSim,'Exact');%计算每个随机序列的收益率(预期收益率、预期协方差矩阵、样本个数、收益率间隔、模拟次数)simulatedAssetReturns=exp(squeeze(simulatedAssetReturns))-1;%模拟次数numSim=10000个投资组合收益率mVals=weightsPortfolio*simulatedAssetReturns;%计算99%与95%分位数的收益率mVar=-prctile(mVals*marketValuePortfolio,[15]);%可视化模拟组合plotMonteCarlo(mVals)%风险价值displayVar(mVar(1),mVar(2),'mcp')计算结果为:ValueatRiskmethod:MonteCarloSimulation(portsim)%置信度为99%的Var值ValueatRisk@99%=$91,176,882.64%置信度为95%的Var值ValueatRisk@95%=$64,618,603.59蒙特卡罗模拟方法结果蒙特卡罗模拟法的优缺点“蒙特卡罗模拟法”基于历史数据或既定分布假定下的参数特征,借助随机产生的方法模拟出大量的资产组合收益的数值,再从中推出VAR值。“蒙特卡罗模拟法”是一种动态的模型,具有其优势。首先是这种方法具有综合性,计算结果更符合实际情况。而且此方法不仅可用于对市场风险的度量,还可用于衡量信用风险。此外,这种方法计算比较精确,是目前公认的最为有效的计算VAR的方法。其缺点是可能伴随着模型风险。三种方法计算结果比较如下:方法参数模拟法历史模拟法蒙特卡罗模拟法99%置信度90981251.0682091887.3091176882.6495%置信度64856171.5866214101.1664618603.59
本文标题:金融风险度量的VaR在MATLAB中的操作.
链接地址:https://www.777doc.com/doc-1968739 .html