(最新整理)如何用stata做事件研究

上传人:桔**** 文档编号:522020137 上传时间:2023-09-02 格式:DOC 页数:6 大小:45KB
返回 下载 相关 举报
(最新整理)如何用stata做事件研究_第1页
第1页 / 共6页
(最新整理)如何用stata做事件研究_第2页
第2页 / 共6页
(最新整理)如何用stata做事件研究_第3页
第3页 / 共6页
(最新整理)如何用stata做事件研究_第4页
第4页 / 共6页
(最新整理)如何用stata做事件研究_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《(最新整理)如何用stata做事件研究》由会员分享,可在线阅读,更多相关《(最新整理)如何用stata做事件研究(6页珍藏版)》请在金锄头文库上搜索。

1、(完整)如何用stata做事件研究(完整)如何用stata做事件研究 编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望((完整)如何用stata做事件研究)的内容能够给您的工作和学习带来便利。同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快 业绩进步,以下为(完整)如何用stata做事件研究的全部内容。用stata做事件研究时间研究通常被用来检验市场对附带相应利益事件的反应。事件

2、研究通常包括以下几步:(1)净化数据(提出无关和无法研究以及其他原因)和计算事件窗口(2)估计正常表现(3)计算异常表现和累积超额回报(4)显著性检验(5)全部事件交叉检验(相当于稳健性检验)这个文章旨在帮助你用stata来开展事件研究.假设你已经拥有一个时间变量(date)和公司标识(company_id),如果你需要准备你的数据或者想要利用我们的数据尝试一下相应的命令,去data preparation页面。我们同时也假设你对stata 有一个基本的了解.如果你需要和stata命令相关的帮助,你可以从here找到更多。如果你从一个可执行文件中进入命令,你的任务就会简单的多,因为可执行文件中

3、包含了一系列的stata命令。净化数据并计算事件窗口和估计窗口你很可能获取了超出你需要的每个公司的观察值,也有可能有一些公司的观察值不充分。在你开展下一步前,你必须确保你的分析是建立在正确的观察值之上。为了实现这一点,你需要设立一个变量 dif ,它将会计算从观察(相当于估计期)到事件期的天数,这即有可能是节假日,也有可能是交易日。就交易日天数:sort company_id dateby company_id: gen datenum=_nby company_id: gen target=datenum if date=event_dateegen td=min(target), by(c

4、ompany_id)drop targetgen dif=datenum-td就节假日:gen dif=dateevent_date由上可以看出,计算交易日天数比计算节假日天数稍微复杂一点。对于交易日,我们首先需要设立一个变量,这个变量是用来计算每一个公司标识范围内的天数,然后我们再确定哪些观测值发生在事件期内。我们设立一个和事件天数有关的变量.这个事件天数建立在company_id范围内的所有观察值的基础上。最后,我们选取二者之间的差异来设立一个变量dif,以计算每一个个体观测值和事件期之间的天数.下一步,我们需要确定我们事件期前后的最小观察期天数以及事件窗口之前的估计窗口的最小观察期天数.

5、比如我们想要一个事件期前后两天的窗口(总共5天的事件期)以及一个30天的估计窗口(你可以改变这些数字以适应你的分析)。by company_id: gen event_window=1 if dif=2 dif=2egen count_event_obs=count(event_window), by(company_id)by company_id: gen estimation_window=1 if dif-30 dif=60egen count_est_obs=count(estimation_window), by(company_id)replace event_window=0

6、if event_window=.replace estimation_window=0 if estimation_window=.确定事件窗口和估计窗口的程序是相同的。首先,我们设立一个变量,当观测值在特定的日期内等于1;其次,我们设立另一个变量来计算,在每一个公司标识范围内,有多少观测值的变量值等于1;最后,我们用0代替所有的缺省值,设立一个哑变量。此时,你就可以确定哪个公司没有充分的观测值。tab company_id if count_event_obs5tab company_id if count_est_obs30Tab命令将会产生一个公司标识符的列表,这个列表中包含的就是没有

7、足够的事件窗口及估计窗口观察值窗口的公司,同时还会报告这些公司的总的观测值的数量,为了排除这些公司使用如下命令:drop if count_event_obs 5 drop if count_est_obs 30你必须确保在删除任何观察值之前,样本已经用另一个名字保存.此时,你也可以剔除一些你不需要的变量.估计正常表现现在我们到了真正分析的地方。首先,我们需要一种途径和方法来估计正常表现。为了实现这一点,我们将会利用估计窗口中的数据来对每个公司进行单变量回归,并保存(常数项)和(解释变量的系数),随后我们会使用这个保存的回归系数来预测事件窗口的正常表现。就回报这个回归中的被解释变量来讲,它仅仅

8、是针对既定股票回报的CRSR变量,而我们用来预测ret的解释变量,使一个对于任何股票的指数加权回报。对你的样本集使用等价变量。set more off /* this command just keeps stata from pausing after each screen of output */gen predicted_return=。egen id=group(company_id) / for multiple event dates, use: egen id = group(group_id) */forvalues i=1(1)N /note: replace N with

9、 the highest value of id / l id company_id if id=i & dif=0reg ret market_return if id=i estimation_window=1 predict p if id=ireplace predicted_return = p if id=i event_window=1 drop p 这儿,我们设立了一个变量id,以计算公司数量(从1到实际数)。N代表的是包含完整数据的公司事件联合体数目(即事件有关的有完整数据的公司的数目)。这个过程通过在公司间重复,并对每一个公司在估计窗口开展回归,然后用回归结果来预测事件窗口

10、的正常回报。异常表现和累积超额回报现在我们可以用我们的数据计算异常表现和累积超额回报。日异常回报等于事件窗口中的每天的实际回报减预期回报。整个事件窗口的超额回报的总额就是累积超额回报。sort id dategen abnormal_return=ret-predicted_return if event_window=1by id: egen cumulative_abnormal_return = sum(abnormal_return) 此处我们仅仅计算了事件窗口中每个样本观测值的超额回报,随后我们将CAR等于所有公司的超额回报之和。显著性检验我们将计算一个检验统计量(t值)来确定每支股

11、票平均的超额回报是否显著不等于0。AR即超额回报,AR_SD是超额回报的标准差。如果t统计量的绝对值大于1.96,那么平均的超额回报在5的水平显著不等于0。1。96这个值来自于均值为0,标准差为1的标准正态分布,其中正态分布95的部分分布在1.96之间.sort id dateby id: egen ar_sd = sd(abnormal_return) gen test =(1/sqrt(number of days in event window) * ( cumulative_abnormal_return /ar_sd) list company_id cumulative_abnor

12、mal_return test if dif=0Note: this test uses the sample standard deviation. A less conservative alternative is to use the population standard deviation. To derive this from the sample standard deviation produced by Stata, multiply ar_sd by the square root of n-1/n; in our example, by the square root

13、 of 4/5. 这会将你的事件研究的结果生成一项Excel文件。outsheet company_id event_date cumulative_abnormal_return test using stats。csv if dif=0, comma name全部事件交叉检验除了观察每个公司的平均超额回报,你可能还想计算将所有公司视为一个整体的累积超额回报,代码如下:reg cumulative_abnormal_return if dif=0, robust从回归中得到的系数的P值可以告诉你,所有公司的累积超额回报的显著性。此时,P检验比T检验更可靠,因为它更允许你使用一个强的标准误差.进一步的阅读发展中国家资本市场对环境表现的反应,大部分事件研究方法论来自于世界银行的working paper

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 外语文库 > 德语学习

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号