欢迎来到天天文库
浏览记录
ID:52137970
大小:893.06 KB
页数:41页
时间:2020-04-01
《计算方差-协方差矩阵.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、lecture10FINANCIALMODELING金融建模第10章计算方差-协方差矩阵要计算有效投资组合,我们就必须计算股票收益数据的方差-协方差矩阵。本章中,我们将讨论在Excel中怎样实现这个计算。其中最显而易见的计算为样本方差-协方差矩阵:这是直接由历史收益计算而得的矩阵。我们介绍几种计算方差-协方差的方法,包括在电子表中用超额收益矩阵直接计算、VBA实现该方法计算。即使样本方差-协方差矩阵看起来像一个很明显的选择,但我们将用大量的文字说明它也许不是方差与协方差最好的估计。样本方差-协方差矩阵有两个不尽
2、人意的缺陷:一是它常使用不现实的参数,二是它难以用于预测。这些将主要在10.5和10.6节中讨论。作为样本矩阵的替换,10.9和10.10节将讨论用于优化方差-协方差矩阵估计的“压缩”方法。在开始本章之前,你应先阅读第34章数组函数的内容。里面有一些Excel函数,其参数是向量和矩阵;它们的实施与标准Excel函数略有不同。本章重点讨论这些数组函数Transpose()和MMult(),还有“自制”的数组函数的使用。10.1引言我们用我们的数字例子来说明计算方差-协方差矩阵的矩阵方法。我们通过减去资产各自的平均
3、收益,得到超额收益矩阵(接下来的电子表中的42-52行)。在55-61行中我们计算样本方差-协方差矩阵。10.2.1一个稍微更有效率的替代方法正如你所期望那样,的确存在其他计算方差-协方差矩阵可选方法。这里所介绍的方法跳过了超额收益的计算,并且直接使用单元格B71:G76中的公式进行计算。它通过使用数组函数=MMULT(TRANSPOSE(B23:G33-B35:G35),B23:G33-B35:G35)/10。通过写入B23:G33-B35我们直接将每项收益减去均值得到超额收益向量:10.3我们应该除以M还是
4、M-1?Excel与统计量?在前面的计算中我们除以M-1而非M,以此得到无偏的方差和协方差的估计。不过这个选择看起来几乎没有多大影响。我们引用主流的教科书:“对于为什么要用M-1取代M这儿有一段很长的历史。如果你从来没有听说过,你可以参考任何一本好的统计教材。这里我们主要想提醒你,如果你在计算一个分布的方差时,这个分布存在已知的先验的均值,而不需要从历史数据估计的时候,那么M-1应该变回M。(我们同样想说关于在分母上用M-1替代M上,我们认为对你是已知的,但这却是对你不负责任的——例如,试图用图例说明去证明一个
5、充满疑问的假设)”Excel本身某程度上在除以M还是M-1这个问题上也有些混乱。在下面的电子表中我们给出几种计算均值,方差,标准差和协方差的方法。Excel区分总体方差(Varp,除以M)、样本方差(Var,除以M-1),以及总体和样本标准差(分别为Stdevp和Stdev)。但是Excel并没有在协方差函数Covar中作此区分。你可以看到B30中Covar除以M,和Varp一样。如果你想得到一个相应的除以M-1的协方差函数,那么你得像单元格B33那样用Covar乘以,或者你需要使用像单元格B32那样的数组函数
6、=MMULT(TRANSPOSE(B3:B13-B16),C3:C13-C16)/10。如果Excel是完全合理的,它应该有两个函数:Covarp,它除以M(对应Varp或Stdevp),以及Covar,它除以M-1(对应Var或Stdev)。困惑了吗?没关系!正如该部分开始的教科书引用指出的那样,它不是一个至关重要的问题。10.4计算方差-协方差矩阵的其他方法在这一节中,我们介绍两种替代计算方差-协方差矩阵的方法。第一种是使用一个VBA数组函数,它可以直接计算出样本方差-协方差矩阵。第二种是使用Excel的O
7、ffset函数。10.4.1一个计算方差-协方差矩阵的VBA函数我们的第一种替代方法是用一个VBA函数:我们的第一种替代方法是用一个VBA函数:FunctionVarCovar(rng.Range)AsVariantDimiAsIntegerDimjAsIntegerDimnumColsAsIntegernumCols=rng.Columns.CountDimmatrix()AsDoubleReDimmatrix(numCols-1,numCols-1)Fori=jTonumColsForj=1TonumCol
8、smatrix(i-1,j-1)=Application.WorksheetFunction.Covar(rng.Columns(i),rng.Columns(j))NextjVarCovar=matrixEndFunction这个函数是一个数组函数。(意味着它必须使用[Ctrl]-[Shift]-[Enter])。下面有一个例子:应注意以上6只股票的GMVP包含两个空头(BA和MSF
此文档下载收益归作者所有