zoukankan      html  css  js  c++  java
  • 协方差代表的意义(转)

    在概率论中,两个随机变量 X 与 Y 之间相互关系,大致有下列3种情况:

     

     

    情况一,如上, 当 X, Y 的联合分布像上图那样时,我们可以看出,大致上有: X 越大  Y 也越大, X 越小  Y 也越小,这种情况,我们称为“正相关”。

    情况二, 如上图, 当X, Y 的联合分布像上图那样时,我们可以看出,大致上有:X 越大Y 反而越小,X 越小 Y 反而越大,这种情况,我们称为“负相关”。

    情况三,如上图, 当X, Y  的联合分布像上图那样时,我们可以看出:既不是X  越大Y 也越大,也不是 X 越大 Y 反而越小,这种情况我们称为“不相关”。

    怎样将这3种相关情况,用一个简单的数字表达出来呢?

    在图中的区域(1)中,有 X>EX ,Y-EY>0 ,所以(X-EX)(Y-EY)>0;

    在图中的区域(2)中,有 X<EX ,Y-EY>0 ,所以(X-EX)(Y-EY)<0;

    在图中的区域(3)中,有 X<EX ,Y-EY<0 ,所以(X-EX)(Y-EY)>0;

    在图中的区域(4)中,有 X>EX ,Y-EY<0 ,所以(X-EX)(Y-EY)<0。

    当X 正相关时,它们的分布大部分在区域(1)和(3)中,小部分在区域(2)和(4)中,所以平均来说,有E(X-EX)(Y-EY)>0 

    当 X与 Y负相关时,它们的分布大部分在区域(2)和(4)中,小部分在区域(1)和(3)中,所以平均来说,有(X-EX)(Y-EY)<0 

    当 X与 Y不相关时,它们在区域(1)和(3)中的分布,与在区域(2)和(4)中的分布几乎一样多,所以平均来说,有(X-EX)(Y-EY)=0 

    所以,我们可以定义一个表示X, Y 相互关系的数字特征,也就是协方差
     
    cov(X, Y) = E(X-EX)(Y-EY)
     

    当 cov(X, Y)>0时,表明 X正相关

    当 cov(X, Y)<0时,表明XY负相关;

    当 cov(X, Y)=0时,表明XY不相关。

    这就是协方差的意义。


    关于协方差矩阵的解读


    协方差矩阵实在是太重要了,无论是在计量,金融工程还是随机分析中,我们都会到用到协方差矩阵。
     
    其实,这三者都利用了协方差矩阵本身的含义,即随机变量之间的线性相关关系(当然,相关系数矩阵在此处更为贴切),也利用了协方差矩阵为半正定矩阵的性质。下面具体道来,

    首先,我们先要分析一下协方差矩阵Sigma的性质。作为实对称矩阵,其主要性质之一就是可以正交对角化,即存在正交矩阵U,使得

    U^TSigma U=Lambda

    作为半正定矩阵,我们可以对协方差矩阵进行Cholesky分解:半正定矩阵Sigma,可以分解为Sigma=U^T Lambda U,其中U是上三角阵,Lambda是对角线元素都非负的对角矩阵。所以

    Sigma=U^T Lambda U=[U^T Lambda^{1/2} ][Lambda ^{1/2} U]=[Lambda ^{1/2} U] T [Lambda ^{1/2} U]

    这样一来,矩阵Sigma=C^TC ,其中C=Lambda^{1/2}U

    上面的铺垫工作完成,下面具体分析其应用,

    1.在金融随机分析和金融工程中的应用
    在金融随机分析中我们可以采用Monte Carlo方法对期权进行定价,如果对于普通的欧式期权,那么我们只要产生N个正态分布的随机数即可。但是,对于那些依赖于多个相关随机过程(Correlated Brownian Motion)的资产的定价,我们就要产生满足特定相关关系的随机变量,而这正是依靠协方差矩阵和上面所述的Cholesky分解完成的。比如,Quanto(Quantity Adjusting Option)双币种期权就是满足上述特征的期权。这里我复制我的BLOG中的一段,
    Quanto Nikkei Option. Consider a Nikkei quanto into dollar call option. Assuming both the USD/JPY and Nikkei are both lognormal process, i.e.

    dfrac{dS_t}{S_ t}=mu dt+sigma dW_ t

    dfrac{dX_t}{X_ t}=(r_d-r_f )dt+sigma_XdB_ t

    dW_t dB_t =
ho dt

    where S and X are the equity and FX process. On a spreadsheet, simulate the process, and show that by delta hedging alone, you can replicate the quanto call option. Assume the maturity of the option is one year.
    在使用Monte Carlo方法对于上述期权定价时,核心是要模拟两个具有相关性的布朗运动,这时候,我们就可以利用之前提到的协方差矩阵的Cholesky分解。Matlab code:
    
    
    复制代码
    Sigma = [siga^2 siga*sigb*rho;
    siga*sigb*rho sigb^2];
    B = randn(2,n);
    C=chol(Sigma);
    V = C' * B;
    STa = S0a * exp((mua - (siga^2)/2)*T + sqrt(T)*V(1,:));
    STb = S0b * exp((mub - (sigb^2)/2)*T + sqrt(T)*V(2,:));
    复制代码
    
    
    具体而言,对于随机向量X服从MN(0,Sigma),我们只要先生成服从MN(0,I)的随机向量Z,再利用Cholesky分解Sigma,这时C^TCX的分布就相同。当然你可以不用Monte Carlo而用五叉树是针对相关随机变量进行数值模拟,其原理可以参照Boyle的A Lattice Framework for Option Pricing with Two State Variables一文,以及Ren-Raw Chen, San-Lin Chung and Tyler T. Yang的Option Pricing in a Multi-Asset, Complete Market Economy。

    2.在金融工程中计算组合VaR上的应用
    我们知道,独立正态分布随机变量的线性组合依然服从正态分布。而事实上,我们可以进一步证明,对于服从联合正态分布的随机向量,其随机变量的线性组合也服从正态分布,即随机变量之间并不一定是不相关的。对这一结论的证明,仍然用到了协方差矩阵半正定的性质。令随机向量X∼MN(m,Σ),即证对于任意的向量w ,都有w^T Xsim MN(w^T m,w^T Sigma w)  。这样一来,原本我们对单一资产进行的VaR分析可以很好的应用在资产组合上来,因为当各个资产的收益率服从联合正态假设下,组合的收益率也服从正态分布。


    3. 在计量经济和统计上的应用
    这在之前的回答中也已经提到了,比如主成分分析(PCA)和因子分析。其实主成分分析也是在量化投资中,多因子模型的一种类型,即统计因子模型,而其核心也是利用了协方差矩阵的半正定的性质进行Cholesky分解,其实多因子模型不仅仅应用在统计,计量经济,量化投资,也在机器学习中十分重要,可以看看Andrew Ng的公开课,有专门的PCA,这部分知识太多了,不用展开了。


    一些细节问题
    我们一直提到协方差矩阵是半正定而不一定是正定的,尽管大多数情况下是后者。对于协方差矩阵非满秩的情形又该如何生成满足特定协方差矩阵的随机向量呢,我想很多同学可能自己都想到了,只要找到这些随机变量的一个极大无关组,找到满秩的子协方差矩阵,再利用线性变换还原就成了。具体的步骤,我推荐一本书,金融工程中的蒙特卡罗方法((美)格拉瑟曼(Paul Glasserman) 。这本书会提到上面的问题,会对PCA,Monte Carlo,协方差矩阵给出更翔实的解答。
     
     
    参考链接:https://www.zhihu.com/question/24283387/answer/27294834
  • 相关阅读:
    javaday19_List接口_Set接口
    01玩转数据结构_04_最基础的动态数据结构:链表
    10 拖拽的对话框_滚动条_放大镜_
    01玩转数据结构_03_栈和队列
    java小技巧
    01玩转数据结构_02_不要小瞧数组
    01玩转数据结构_01_课程介绍
    javaday18_ArrayList
    JZOJ.3777【NOI2015模拟8.17】最短路(shortest)
    JZOJ.5230【NOIP2017模拟8.5】队伍统计
  • 原文地址:https://www.cnblogs.com/shixisheng/p/9615752.html
Copyright © 2011-2022 走看看