事件研究(在SAS中提取日期)

时间:2013-09-03 08:08:03

标签: events date sas

我需要分析关于兼并和收购的事件研究的异常回报。

**我想通过使用事件窗口分析收单机构的异常退货。基本上我想使用-1(公告日期前一天),公告日期和+1(公告日期后的第二天)提取收购方的价格。**

我有两个不同的数据集来从中提取信息。 第一个是包含所有合并和获取信息的数据集,其中包含以下格式的信息:

DealNO AcquirerNO TargetNO AnnouncementDate
123    abcd       Cfgg     22/12/2010
222    qwert      cddfgf   26/12/1998

另外,我有第二个数据集,其中包含所有价格。

ISINnumber Date                      Price
abcd       21/12/2010                10
abcd       22/12/2010                11
abcd       23/12/2010                11
abcd       24/12/2010                12
qwert      20/12/1998                20
qwert      21/12/1998                20
qwert      22/12/1998                21
qwert      23/12/1998                21
qwert      24/12/1998                21
qwert      25/12/1998                22
qwert      26/12/1998                21
qwert      27/12/1998                23

ISIN号码与收单方号码相同,即匹配码。

最后,我希望有一个类似这样的数据库:

DealNO AcquirerNO TargetNO AnnouncementDate Acquirerprice(-1day)  Acquireeprice(0day)     Acquirerprice(+1day)
123    abcd       Cfgg     22/12/2010       10                    11                               12
222    qwert      cddfgf   26/12/1998       22                    21                               23

你知道我怎么能得到这个吗? 我更喜欢使用sas来运行代码,但是如果你熟悉任何其他可以获取这些数据的程序,请告诉我。

提前谢谢^ _ ^。

1 个答案:

答案 0 :(得分:0)

使用PROC SQL可以很容易地完成这项工作,并且可以三次加入PRICE数据集。试试这个(假设ANNOUCE和PRICE的数据集名称):

警告:未经测试的代码

%let day='21DEC2010'd;

proc sql;
   create table RESULT as 
      select a.dealno,
             a.acquirerno,
             a.targetno,
             a.annoucementdate,
             p.price as acquirerprice_prev,
             c.price as acquirerprice_cur,
             n.price as acquirerprice_next
      from ANNOUCE a 
           left join (select * from PRICE where date = &day-1) p on a.acquirerno = p.isinumber
           left join (select * from PRICE where date = &day) c on a.acquirerno = c.isinumber
           left join (select * from PRICE where date = &day+1) n on a.acquirerno = n.isinumber
   ;
quit;