当前位置:首页 > 第2章:SAS与股票市场分析汇总
一个交易日的VaR的完整SAS程序。
* t=date——建立变量date的SAS日期数,并且将其命名为t。本例中,由于交易日期date在sjk2_3中的表达形式为mm/dd/yy,为能进行比较算符的运算,所以将其转换为SAS日期数。
*t>15991——SAS将1960年1月1号作为SAS日期数的第1天。本例计算2005年1月第一个交易日(1月4号)的VaR需要用此前300个交易日的观测为样本,即取10/14/2003—12/31/2004期间的观测为样本,而15991恰好为10/13/2004对应的SAS日期数。
*%MEND lsmn——表明宏lsmn已经结束。
* %lsmn——调用宏lsmn,本例中共调用了3次宏lsmn,每调用一次宏SAS都会计算出一个交易日的VaR,同时将样本窗口往后移动一个交易日。
2.1.2.2.2 用参数方法计算VaR
参数法的计算方法为:假设风险证券的损益度量x服从某种形式的统计分布,但其中的某些参数需要确定,利用损益度量x的某个时间段的历史数据对这些参数进行估计,进而计算出给定置信水平下的VaR。
例如:假设损益度量x服从正态分布,即x~N(u,?2),但u,?均未知。从x的历史数据中估计得到待定参数u,?,如果给定的置信水平为99%,那么,由于??(x?u)/?服从标准正态分布,并且 即有
22P((x?u)/???2.33)?P(???2.33)?1%,
P(x??(2.33??u))?1%,
因此VaR?2.33??u。
【例2-6】假设深圳成分指数的对数收益率服从正态分布,给定置信水平为99%,试利用例2-4中建立的SAS数据集sjk2-3a,采用参数方法计算深圳成分指数的损益度量r_log在2005年1月份前三个交易日的VaR。
对应的SAS程序如下(cx2-6) proc means data=sjk2_3a;
output out=b mean(r_log)=x std(r_log)=y; run; data c; set b; var=2.33*y-x; run; data jieguo; set c; if _n_<1; run;
%macro canshufa data a; set sjk2_3a; if _n_<301; run;
13
proc means data=a;
output out=b mean(r_log)=x std(r_log)=y; run; data c; set b; var=2.33*y-x; run; data d; set jieguo c ; run; data jieguo; set d; run; data sjk2_3a; modify sjk2_3a; if _n_=1 then remove; run;
%mend canshufa; ênshufa ênshufa ênshufa
上面介绍了双侧风险度量、尾部风险度量、以及SAS实现。关于系统性风险和非系统性风险的度量方法,以及如何在SAS中实现这些风险度量,将在下节中介绍。
2.2 股票市场的CAPM
资本资产定价模型(CAPM)是关于均衡状态下风险资产价格决定的重要金融学理论。这个理论的建立具有许多前提性的假设条件,主要包括对投资者的决策方式、以及对市场的完善性和环境的无摩擦性的假设。读者可以通过阅读相关文献或其它教材,如金融经济学教材,来对这些假设的具体内容进行了解。CAPM表明在均衡的状态下,单个风险资产的收益率或风险资产组合的收益率是如何与市场组合的收益率相联系的。因此,CAPM可用于预测风险资产的期望收益率,可以解决在均衡状态下风险资产的定价问题。
2.2.1 CAPM的两种基本形式
CAPM的表达方式有两种基本形式:Sharpe-Lintner形式的CAPM和Black,Jensen和Scholes形式的CAPM。
①Sharpe-Lintner(1965)形式的CAPM
Eri?rf??iM(ErM?rf),?iM??iM 2?M2其中:Eri为第i个风险资产的期望收益率,rf为无风险证券的收益率,ErM为市场组合的期望收益率,?iM为第i个风险资产与市场组合的协方差,?M为市场组合的方差,?iM称为第i个风险资产所承担的系统性风险。
14
②Black,Jensen和Scholes(1972)形式的基本时间序列CAPM
ri,t?rf,t??i??i?(rM,t?rf,t)??i,t。
其中:?i为待估的截距参数,平均来说,?i的期望为0;ri,t,rf,t,rM,t分别为第i个风险资产、无风险资产、市场组合在t期的收益率,ri,t?rf,t,rM,t?rf,t分别为第i个风险资产和市场组
合在t期的超额收益率;?i为待估的斜率参数,是第i个风险资产的系统性风险的度量;?i,t为第i个风险资产在第t期的随机误差项,可以解释为第i个风险资产的非系统性风险对这个风险资产的超额收益率的影响。
2.2.2 股票的CAPM拟合与检验
拟合与检验一只股票的CAPM,就是利用股票市场的真实数据,通过实证方法来估计CAPM的待估参数,以拟合该股票的CAPM,并检验所得到的CAPM能否很好地解释该股票的超额收益率。
在利用SAS对一只股票进行CAPM的拟合与检验时,通常采用Black,Jensen和Scholes形式的基本时间序列CAPM。在对某只股票进行CAPM拟合与检验前,需要完成的前期工作有:
①计算这只股票在样本期间各个单期的收益率。在对一只股票进行CAPM拟合和检验时,由于股票的日收益率数据经常会受到一些随机因素的干扰,为了消除这些随机波动的影响,通常采用月收益率、或更长期间的收益率来作为各个单期的收益率。
②计算无风险资产在样本期间各个单期的收益率。在美国市场上,无风险资产的收益率通常采用30天的美国国库债券收益率来表示。由于目前中国的债券市场还不完善,没有像美国的30天国库券这样的现金等价物,比较可行的方法是选择银行一年期定期存款利率,或用银行间同业拆借市场利率或银行间回购利率来表示同期的无风险收益率。例如,如果采用月收益率作为某只股票的单期收益率,那么用银行一年期定期存款利率除以12,就可以视作无风险证券的单期收益率。
③计算市场组合在样本期间各个单期收益率。从理论上讲,市场组合中应该包括所有的风险资产,既要包括股票市场、债券市场上的所有风险证券,也要包括外汇市场、金融衍生品市场和其他市场上的所有风险资产。然而实际上,这种市场组合的数据根本无法获得,因此在股票市场的CAPM拟合与检验中,通常采用某个股价指数,如上证指数、或上证指数与深圳成分指数的某个加权平均值来代表市场组合。
下面介绍如何对一只股票的CAPM进行拟合与检验。
【例2-7】 Excel数据集sjk2-4a中包含有2000-2006年度上证指数以及上海股票市场上3只股票的每日收盘价数据,其中变量date、close、close612、close648、close839分别表示交易日期、上证指数的收盘价、老风祥(股票代码600612)的收盘价、外高桥(股票代码600648)的收盘价、以及四川长虹(股票代码600839)的收盘价。此外,Excel数据集sjk2-4b中包含了同时期各个月的无风险收益率,这是按同期的一年期定期存款利率经折算后得到,其中变量year表示所在年份、month表示所在月份、rf表示无风险收益率。试对这三只股票的CAPM进行拟合与检验。
这样的拟合与检验可以按照以下顺序来进行。 ①创建数据集
将Excel数据集sjk2-4a和sjk2-4b转化为SAS数据集,并命名为sjk2_4a和sjk2_4b后,计算2000-2006年度上证指数和3只股票在各个月份的收益率,并将其与sjk2_4b横向合并后创建可用于对每只股票进行CAPM拟合和检验的数据集sjk2_4c。sjk2_4c的创建可通过
15
下列SAS程序来实现。(cx2-7a)
data a; set sjk2_4a; year=year(date);
month=month(date); /*提取交易日的月份数据*/ proc sort data=a; by year month; run; data b; set a; by year month;
if last.month=1; /*标出每月的最后一个交易日*/ r_log=log(close)-log(lag(close));
r_log612=log(close612)-log(lag(close612)); r_log639=log(close639)-log(lag(close639)); r_log648=log(close648)-log(lag(close648)); run; data c;
merge sjk2_4b b; by year month; run;
proc sort data=sjk2_4b; by year month; run; data sjk2_4c; set c; rs=r_log-rf; r612=r_log612-rf; r639=r_log639-rf; r648=r_log648-rf; run;
②股票的CAPM拟合与检验
使用SAS的PROC REG过程(回归分析过程),可以对sjk2_4c中每只股票拟合与检验CAPM回归。一般而言,这种拟合与检验需要包括以下内容:
*拟合一只股票的CAPM,即对截距与斜率进行估计; *对参数进行显著性检验,即进行t检验;
*利用Durbin-Watson统计量进行残差的自相关检验; *进行异方差检验; *检验斜率参数是否为1。
2.2.2.1 对股票的CAPM拟合与检验
对数据集sjk2_4c中的三只股票拟合CAPM回归,可以通过SAS程序来实现,其中对
16
共分享92篇相关文档