对中国国内上市公司的资本资产定价模型的分析报告 一、理论介绍 资本资产定价模型 , 即 Sharpe(1964),Lintner (1965)和 Black (1972) 建立的简捷、完美的线性资产定价模型 CAP(又称SLB模型),是金融学和财务 学的最重要的理论基石之一。CAPM模型假定投资者能够以无风险收益率借贷, 其形式为: E[ R[,i] R[,f] +B [,im] (E [ R[,m] ]— R[,f] ), (1) Cov[R[,i] ,R[,m] ] B [,im] = ------------------------- (2) Var[R[,m] ] R[,i] ,R[,m] ,R[,f] 分别为资产 i 的收益率,市场组合的收益率和无风险 资产的收益率。 由于CAPM从理论上说明在有效率资产组合中,B描述了任一项资产的系统 风险(非系统风险已经在分散化中相互冲消掉了) ,任何其它因素所描述的风险 都为B所包容。因此对CAPM勺检验实际是验证B是否具有对收益的完全解释 能力。 资本资产定价模型(CAPM在理论上是严格的,但是在实际中长期存在着实证 研究对它的偏离和质疑, 其原因主要是资本资产定价模型的一组假设条件过于苛 刻而远离市场实际。 本次分析报告旨在通过对随机抽样的中国上市公司的收益率 的分析,考察在中国的股市环境下,CAPM1否仍然适用。
二、数据来源 本文在 CSMAR 大型股票市场数据库中随机选取了 1995年 1 月到 2001 年 12月的100支股票(存为名叫rtndata的EXCEL文件),作为对中国股票市场的 模拟。同时还收集了同时期中国银行的年利率(取名为 rf )作为无风险利率,并 通过各股票的流通股本对上海、深圳两个市场 A股的综合指数进行加权(取名 为m⑵。
在SAS中建立数据集,其中各列指标分别为各股票的月收益率(为处理方 便,股票名称已改为y1-y100)、中国银行的年利率rf (本次报告没有将rf转换 成月无风险收益率,因为这一差异将反映在系数上,且为倍数关系,对结果没有 实质性影响)和以流通股进行加权(因为本次报告计算的是市场收益率) 的上海、 深圳两个市场A股的综合指数mr2。 本次报告采用的CAPM模型为:m二° •用-ejt, j =1,2,…,100。
三、方法及步骤 1,在SAS中以lib name命令设定新库,名为finance。程序为: lib name finance 'G:\fi nan ce\rt ndata'; run;
2,采用mea ns过程(也可以用uni variate 过程)对这100支股票做初步的 均值分析,初步得出各股票的样本均值等数据。程序为: proc means data =finance.rtndata; var y1-y100; run ;
3, 采用corr过程对随机抽取的若干支股票进行相关分析, 以判断中国股票 市场的相关性。程序如下:
proc corr data =finan ce.rt ndata var y23 y67; where stkcd>= 199512 and stkcd<= 199712 ; run ;
cov ; 4, 用1995年1月至1997年12月期间的超额月收益率对每一股票进行时间 序列回归,来分别估计各股票在这一期间的贝塔值。程序如下: proc reg data =finan ce.rt ndata outest =finan ce.betas97; model y1-y100=mr2/ noint ; where stkcd>= 199512 and stkcd<= 199712 ; run ; 求出的B值为: Y1 0.70435 y21 0.91586 Y41 0.896054 y61 0.851652 y81 1.212801 Y2 0.637881 y22 0.905357 Y42 0.518481 y62 1.004974 y82 0.729579 Y3 0.949051 y23 0.932471 Y43 1.204833 y63 0.866777 y83 1.894588 Y4 1.878588 y24 0.977102 Y44 0.722664 y64 0.562924 y84 1.480132 Y5 1.317656 y25 0.634488 Y45 1.884002 y65 0.661701 y85 1.393397 Y6 0.67436 y26 0.595003 Y46 0.741601 y66 0.734313 y86 0.695886 Y7 0.732708 y27 0.867965 Y47 0.615389 y67 0.856492 y87 1.228562 Y8 0.586665 y28 0.35689 Y48 1.171069 y68 0.667569 y88 0.529807 Y9 0.965397 y29 0.769648 Y49 0.846387 y69 1.098579 y89 0.52415 Y10 0.718133 y30 1.196381 Y50 1.175787 y70 1.456532 y90 0.42185 Y11 0.917436 y31 0.781798 Y51 0.839937 y71 1.152561 y91 0.724734 Y12 0.884156 y32 1.693313 Y52 0.758086 y72 1.03661 y92 1.037979 Y13 0.943795 y33 0.90575 Y53 1.802377 y73 1.083311 y93 1.40598 Y14 0.994425 y34 0.765292 Y54 0.944545 y74 0.610862 y94 1.365702 Y15 0.704337 y35 1.191723 Y55 1.096838 y75 1.379289 y95 0.833917 Y16 0.821038 y36 1.525602 Y56 1.146742 y76 0.843295 y96 1.050583 Y17 1.593844 y37 1.529935 Y57 0.632544 y77 1.266977 y97 1.278623 Y18 1.058723 y38 1.073508 Y58 0.720895 y78 1.060654 y98 1.330587 Y19 0.443705 y39 1.286248 Y59 0.87356 y79 0.905822 y99 1.418177 Y20 0.643277 y40 1.77932 Y60 0.541877 y80 0.798854 y100 1.745139 采用类似的程序,算出1996年1月至1998年12月、1997年至1999年,1998
年至2000年中各股票分别在这一期间的贝塔值,存为数据集 finance.betas98 、 finance.betas99 和 finance.betasOO 。
5, 用 CAPM 模型 rjt =YO + Z,I? +ejt, j =1,2,...,100对 1998 年的超额月收益 率数据逐月进行横截面回归。程序为: data finance.beta97; set finance.betas97; keep _DEPVAR_ mr2; run ; data finance.data98; set finance.rtndata; where stkcd>= 199801 and stkcd<= 199812 ; run ; /*tran spose finan ce.data98 into finan ce.trdata98 with SAS-A nalyst*/ data finance.forgama98; merge finance.beta97 finance.trdata98; run ; proc reg data =finan ce.forgama98 outest =finan ce.gama98; model month1-month12=mr2; run ; quit ; 得到1998年12个丫 1的值: Month gamal month Gamal month gamal month gamal mon th1 -0.00688 mon th4 0.010825 Mon th7 -0.0211 mon th10 -0.03461 mon th2 -0.00043 mon th5 -0.05118 Mon th8 -0.05573 mo nth11 0.001571 mon th3 -0.04984 mon th6 -0.00631 Mon th9 0.029071 mon th12 0.006987
4,重复上面的步骤,分别得到1998年至2001年间的48个丫 1值,如下: Month gama1 mon th Gama1 mon th gama1 mon th gama1 199801 -0.00688 199901 0.015608 200001 0.094483 200101 -0.01626
199802 -0.00043 199902 -0.02949 200002 -0.06926 200102 -0.0068 199803 -0.04984 199903 0.023094 200003 -0.06399 200103 -0.02741
199804 0.010825 199904 0.010991 200004 -0.06508 200104 0.008069 199805 -0.05118 199905 -0.04009 200005 -0.00462 200105 -0.09684
199806 -0.00631 199906 0.015307 200006 -0.02104 200106 0.012047 199807 -0.0211 199907 -0.01184 200007 0.013977 200107 -0.0405
199808 -0.05573 199908 0.007718 200008 -0.00401 200108 -0.03077 199809 0.029071 199909 -0.00042 200009 0.008433 200109 0.037281 199810 -0.03461 199910 -0.00275 200010 -0.00679 200110 -0.0348 199811 0.001571 199911 0.026066 200011 -0.04951 200111 0.000509 199812 0.006987 199912 -0.03851 200012 -0.02398 200112 0.023493