您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 资本资产定价模型:Fama-Macbeth回归(北大光华金融建模SAS部分课件)
资本资产定价模型:Fama-Macbeth回归第五讲内容•SAS的宏变量与宏模块•CAPM检验:Fama-Macbeth方法•SAS实施Macro-宏•“宏”功能是SAS对于程序设计的拓展功能,主要目的是用于减少通用任务的代码量•“宏”功能可以将字符串或一段SAS程序代码赋予一个变量(宏变量)或一个模块(宏模块),之后程序只需对这个变量(或模块)操作即可•SAS将自动将宏变量或宏模块解释成SAS语句而后运行•应用“宏”功能将大大增加SAS程序的通用性宏变量•MacrovariablesareanefficientwayofreplacingtextstringsinSAScode.•用%let来定义宏变量•例如:%leta=ia.stockreturn;a是宏变量名,而ia.stockreturn是宏变量a的值引用宏变量•在宏变量前加&来引用宏变量的值•例:%leta=et.etdaily;Dataa;Set&a;Run;等价于Dataa;Setet.etdaily;Run;引用宏变量•如果宏引用在字符串中,那么该字符串必须是双引号•例:%leta=January;datamonth;Setia.na1;Month=“Itis&a”;Run;等价于•datamonth;Setia.na1;Month=“ItisJanuary”;Run;引用宏变量•如果后面有紧跟的字符串,那么在引用宏变量之后加.•例:%letlib=et;datadt;Setia.na1;dtset=Itis&lib..etdaily;Run;宏函数•%eval将计算结果赋予宏变量•例:•%leta=100;•%letb=200;•%letc=100+200;•%letc=%eval(100+200);宏函数•%str:形成一个可以包含空格的字符串赋予宏变量•例:%letsorts=%str(procsortdata=etdaily1;byfirmdate;run;);显示宏变量•使用%put语句,将其输出到SAS日志窗口%leta=PekingUniversity;Data_null_;%put&a;Run;宏模块•宏模块是包括宏模块定义语句,宏程序语句、宏函数以及SAS数据步和过程步的指令•实现SAS标准语句为的循环、条件判断等功能宏模块的定义•基本格式%macroMAC;……%mendMAC;调用宏模块%MAC;宏模块%macroMAC;dataret;setfm.stockreturn;iffirm=‘000002’;run;procsortdata=ret;byfirmdate;run;Procmeansdata=ret;varr;run;%mendMAC;%MAC;宏模块中引用宏变量%letcode=000002;%macroMAC;dataret;setfm.stockreturn;iffirm=&code;run;procsortdata=ret;byfirmdate;run;Procmeansdata=ret;varr;run;%mendMAC;%MAC;条件表达式%if逻辑表达式(宏变量)%then%do;…%end;%else%do;…%end;条件表达式%letcode=000002;%macroMAC;%if&code=000002%then%do;dataret;setfm.stockreturn;iffirm=&codeanddate199701;run;procsortdata=ret;byfirmdate;run;Procmeansdata=ret;varr;run;%end;%else%do;dataret;setfm.stockreturn;iffirm=&code;run;procsortdata=ret;byfirmdate;run;Procmeansdata=ret;varr;run;%end;%mendMAC;%MAC;循环•%Do=%to;…end;•%Do…%While;•%Do…%Until;循环%letcode=000002;%macroMAC;%don=1%to3;dataret&n;setfm.stockreturn;iffirm=&code;if_N_=&n;run;%end;%mendMAC;%MAC;CAPM检验的SAS实例资本资产定价模型•市场组合是均值方差有效的前沿组合;•期望收益与风险的均衡关系:()[()]ifimfErrErrβ−=−cov(,)var()imimRRRβ=检验对象•C1:期望收益与β之间的线性关系;•C2:β可以完全解释股票收益之间的横截面差异;•C3:如果市场上投资者是风险厌恶的,那么高风险意味着高期望收益,E(rm)-rf0估计β值•假设单指数模型成立•OLS回归来估计β•股价指数来作为市场组合的代理变量;•用短期国债的利率来作为无风险利率iiimiZZαβε=++iifZRR=−Lintner1965•数据:100个公司的月度收益率,标准普尔500指数和无风险利率•第一步–对每只股票的时间序列数据分别作回归,估计β值以及残差的标准差估计值•第二步–用股票平均收益来作横截面回归,回归方程如下:012()iiiiZsγγβγεη=+++()isεLintner1965•其中:•备检假设:11()TiitftZRRT==−∑01200mfRRγγγ==−=Fama-Macbeth,1973•第一步:估计β•第二步:逐月进行横截面回归•第三步:统计检验时期图示β值的初始估计区间检验期具体步骤•数据:NYSE股票月度数据1926-1968•第一步–用股票的时间序列数据滚动估计β值以及残差的标准差估计值•第二步–对于检验期的个月进行一次横截面回归,回归方程如下:•第三步–将回归系数求平均,并统计检验201,12,13,1,ˆˆˆ()ptptptptpptRsγγβγβγεη−−−=++++模型设定•对每个时期t而言,•C1:线性•C2:非β风险没有系统性影响•C3:正的风险收益关系20123itttititiitRsγγβγβγη=++++1()0tEγ2()0tEγ=3()0tEγ=统计量•每个月回归系数的平均•T统计量Fama-Macbeth回归的实施例子•中国股市2000年1月-2003年12月的月度数据检验期-24个月β值的初始估计区间-24个月2000-012002-012003-12原始数据•数据集名称:stockreturnfirmdaterRm0000011998010.030.04000001199802-0.010.01……0000021998010.020.04000002199802-0.060.01数据准备datastockreturn;setfm.stockreturn;ifdate=200001;run;用2000年1月以后的数据取出起始和中止时间信息•形成两个新数据集:begin包括公司股票收益率的起始时间,end包括公司股票收益率的中止时间;Procsortdata=stockreturn;Byfirmdate;Databegin(keep=firmbgndate)end(keep=firmenddate);Setstockreturn;Byfirm;Iffirst.Firm=1thendo;Bgndate=date;Outputbegin;End;Iflast.Firm=1thendo;enddate=date;Outputend;End;Run;将满足数据长度的股票取出Datasample(keep=firm);Mergebeginend;Byfirm;Ifbgndate=200201thendelete;Ifenddate=200112thendelete;Run;•如果某样本股票的交易数据起始时间在200201之后,那么该样本股票将没有充足的数据估计β,因此删去该股票•如果某样本股票的交易数据终止时间在200112之前,那么该样本股票将没有充足的数据来实施检验,因此删去该股票将满足数据长度的股票取出Datagooddata;mergestockreturnsample(in=a);byfirm;ifa=1;Run;Datagooddata1;setgooddata;Byfirm;iffirst.firmthenn=1;elsen+1;Run;用宏程序实现滚动估计beta%macroestim;%dox=24%to47;Datatemp;Setgooddata1;If&x-23=n=&x;Per=&x;run;Procregdata=tempnoprintoutest=results;Modelr=rm;Byfirmper;Quit;%if&x=24%then%do;databetas1;setresults;run;%end;Procappendbase=betas1data=results;%end;quit;%mendestim;%estim;将beta与收益率数据合并Databetas2(keep=firmnalphabetabeta2sigma);Setbetas1;N=per+1;Alpha=intercept;Beta=rm;Beta2=Beta*Beta;sigma=_RMSE_;Run;Procsortdata=betas2;Byfirmn;Datafmb;Mergegooddata1(in=a)betas2(in=b);Byfirmn;Ifa=1andb=1;run;Fama-Macbeth回归procsortdata=fmb;bynfirm;run;procregdata=fmboutest=fmout1noprint;modelr=betabeta2sigma;byn;run;procmeansdata=fmout1meantprt;varbetabeta2sigma;run;
本文标题:资本资产定价模型:Fama-Macbeth回归(北大光华金融建模SAS部分课件)
链接地址:https://www.777doc.com/doc-1812112 .html