第九章事件研究法本章导读:在了解了stata的基本概念和命令后,从本章开始介绍会计和财务研究中的一些经典研究方法和程序。
在国外,事件研究法首先被广泛应用于金融经济领域 ,近几十年来出现的有关事件研究方面的文献已成为会计与财务文献中的重要组成部分。
本章首先对事件研究法的概念和基本步骤作了简单介绍,以及事件研究法如何在stata中实现。
9.1 事件研究法简介事件研究法 (Event Study) 是一种统计方法,是在研究当市场上某一个事件发生的时后,股价是否会产生波动时,以及是否会产生“异常报酬率”(abnormal returns),借由此种资讯,我可以了解到股价的波动与该事件是否相关。
一般而言 ,事件研究包括以下几大步骤●定义事件以及事件研究窗口●选择研究样本●选择度量正常收益的模型●估计异常收益和累计超额报酬●检验异常收益的显著性●实证结果与解释9.1.1 定义事件与事件窗事件包括合并、收购、收益公告或再融资行为等 ,若研究者关心增发对股东财富的影响 ,此时的事件即为增发公告。
事件研究所涉及的窗口包括估计窗、事件窗与事后窗等 ,如图1 ,t = 0 为事件日; t = T1 + 1 至t = T0 代表事件窗,其长度为L1 = T1 - T0 ; t = T0 + 1 至t = T1 为估计窗,其长度为L2 = T2 - T1 ;t = T2 + 1 至t = T3 为事后窗,其长度为L3 = T3 - T2。
估计窗的作用在于估计正常收益(或估计正常收益模型的参数) ,一般情况下,估计窗的长度应大于等于120天;事件窗是用于检验股价对事件有无异常反映的期间, 有时事件窗仅为一天(即事件发生的当天) ,有时为两天(即事件公告当天与后一天) ,有时为三天(即公告前一天、公告当天与公告后一天) ,也有学者将事件窗定义为公告前后10天、20天或更长,事件窗长短主要取决于研究者的研究目的:事后窗主要用于考察事件发生后股价(或企业价值)有无异常变化,常见于探讨某一事件长期绩效的研究中。
9.1.2 研究样本的选择事件研究中 ,研究样本的选择是很重要的 ,有时是否应将某一发生事件的公司包括在研究样本之内还需要仔细考虑 ,尤其是小样本研究。
为此 ,应当预先确定样本的选择标准 ,如设置数据可获性的限制、 行业限制等。
9.1.3正常收益模型的选择为了评价事件的影响 ,我们需要度量异常收益 ,异常收益是事件窗期间证券的实际收益与正常收益之差。
即:it it it R K ε+= (1)it K 是实际收益 , it R 是正常收益(由市场模型计算得出) , it ε是异常(或非期望)收益部分。
在如此分解下 ,异常收益it ε是实际收益和正常收益之差:it it it R K -=ε (2)换言之 , it ε是事件条件下的收益与无事件条件的期望收益之间的差。
因此 ,异常收益是证券持有者财富的变化。
在定义异常收益之前 ,必须设定(或选择)正常收益模型。
用于估计正常收益it K 的模型包括统计模型与经济模型 ,统计模型以资产收益行为的统计假设为基础 ,不依赖于任何经济理论 ,而经济模型以有关投资者假设为基础 ,不依赖于统计假设我们计算正常收益通常采用的是市场模型。
市场模型是将某一证券收益与市场证券组合收益相联系的统计模型。
即:it mt i i it R R εβα++= (3)E[it ε ] = 0 Var[it ε] = 2it σ (4)其中 , it R 与mt R 分别是证券 i 和市场投资组合在 t 期的收益, it ε扰动项 ,其均值为 0 ,方差为2it σ、 βi 与2it σ为市场模型的参数。
9.1.4 估计异常收益在选择好用于估计正常收益的模型后 ,接下来的步骤就是对异常收益进行估计。
由方程(2)可知 ,异常收益it it it R K -=ε , it K 无需估计 ,需要估计的it R ,一般用估计窗内的相关数据进行估计 ,如在使用日数据与市场模型的事件研究中 ,市场模型参数可通过事件发生前 120天的数据进行估计 ,再运用所估计出的参数与事件窗对应的数据计算it R 的估计值。
计算出异常收益日数据(即it ε)后 ,需要对异常收益进行加总 ,异常收益的加总包括截面上(各种证券间)的加总与时间序列(主要指事件窗)上的加总。
设t AR 为整个样本(设由 N 个证券组成)在 t 时刻的平均异常收益;CAR ( t1 , t2 )为整个样本在( t1 , t2 )期间内的平均异常收益 ,则异常收益的截面和时间序列加总分别可以以式(5) 、 式(6)表示:∑=Nit t N AR 11ε (5) ∑=21),(21t t t AR t t CAR (6)9.1.5 检验异常收益的显著性异常收益计算出来以后 ,需要检验其显著性。
零假设通常是:异常收益(或累积异常收益)均值为 0 ;备测假设是:异常收益(或累积异常收益)均值不为 0。
检验的方法包括参数检验法与非参数检验法。
9.1.6 实证结果与解释通过上述步骤 ,实证结果的取得就顺理成章了。
但需要注意的是 ,有时 ,尤其是利用有限的事件观察数据(小样本)进行研究时 ,实证结果可能会较大程度地受一、两个公司的影响。
因此 ,在下结论或进行解释时应特别谨慎。
9.2 事件研究法的stata 程序及解释本节主要是帮助同学用stata 程序进行时间研究。
我们假设你已经对stata 有一个基本的了解。
接下来,我们对stata 在事件研究法中的应用进行系统的阐述。
9.2.1 样本的选择,估计窗以及事件窗关于样本的选择。
可能你现有每个公司的观测值大于你所需要的,也有可能对于某些公司来说你没有足够的观测值。
在进行事件研究法之前,你必须选择正确的样本来进行分析。
sort company_id date/*按公司和日期进行排序,此处为升序*/by company_id: gen datenum=_n/*对每个公司每个日期生成序号,此处序号是按照日期的升序来排列的,如2009年12月14日为编号为1的话,那么2009年12月15日就编号为2,依此类推*/by company_id: gen target=datenum if date==event_dateegen td=min(target), by(company_id) /*找出事件日所对应的序号*/drop targetgen dif=datenum-td/*定义diff,即用交易日减去事件公布日的序号,得到两者相隔天数by company_id: gen event_window=1 if dif>=-2 & dif<=2/*选择事件期窗口的大小,此处事件期窗口的大小选取(-2,2)共5天。
当然可以根据研究需要调整事件期窗口,如(-5,5),(-10,10)等.定义的变量event_window,若在事件期内则取值为1 */egen count_event_obs=count(event_window), by(company_id)/*计算每个公司事件期的长度*/by company_id: gen estimation_window=1 if dif<-30 & dif>=-60/*选择估计期的长度,此处选择的估计期为事件日前60天至前30天。
定义的变量estimation_window,若在估计期内则取值为1*/egen count_est_obs=count(estimation_window), by(company_id)/*计算每个公司估计期的长度*/replace event_window=0 if event_window==./*如果不在事件期内,event_window取0,则event_window可以看成一个虚拟变量*/ replace estimation_window=0 if estimation_window==./*如果不在估计期内,estimation_window取0,则estimation_window可看成一个虚拟变量*/tab company_id if count_event_obs<5tab company_id if count_est_obs<30/*列出没有足够的观测的公司*/drop if count_event_obs < 5drop if count_est_obs < 30/*删除这些没有足够的观测的公司*/注意:在删掉观测值之前,需要确保数据集用不同的名字保存,当然你也可以删掉一些不用的变量:count_event_obs 和count_est_obs.9.2.2 估计正常收益在选择了正确的研究样本以及确定事件期和估计期后,首先我们需要计算正常收益。
要计算正常收益,就需要对每个公司估计期的数据进行单独回归,每个公司得出α(截距项)和β(解释变量的系数)。
这些系数将用来计算事件期的正常收益。
注意我们回归方程中的解释变量——收益可以从数据库中提取,而被解释变量为市场的平均的收益——set more off/*关闭 more 选项。
如果打开该选项,那么结果分屏输出,即一次只输出一屏结果。
你按空格键后再输出下一屏,直到全部输完。
如果关闭则中间不停,一次全部输出。
*/gen predicted_return=.egen id=group(company_id)/* 生成变量id ,给公司从1到N 编号 ,N 为观测值充分的发生此事件的公司个数*/forvalues i=1(1)N{ /*注,用N 来代替最大的id 值 */l id company_id if id==`i' & dif==0reg ret market_return if id==`i' & estimation_window==1predict p if id==`i'replace predicted_return = p if id==`i' & event_window==1drop p}/*此过程每个公司都要进行,从而对每个公司的估计期的数据进行回归,得到的回归系数来计算事件期的正常收益*/9.2.3 超额收益和累计超额收益上一步我们求出每个公司事件期的正常收益,这样我们就可以计算超额收益和累积超额收益。
事件期的日超额收益等于实际收益-正常收益。
整个事件期超额收益的和即为累积超额收益。
sort id date/*对公司和日期排序*/gen abnormal_return=ret-predicted_return if event_window==1/*计算事件期内的日超额收益*/by id: egen cumulative_abnormal_return = sum(abnormal_return)/*计算每个公司的累积超额收益*/9.2.4 超额收益的显著性检验我们接着需要计算一个统计量来检验对于每个股票来说,其平均超额收益是否在统计上显著异于0. SDAR AR n test _1∑= 其中AR 是超额收益,AR_SD 是超额收益的标准差。