Events 事件研究(在SAS中提取日期)
我需要为并购事件研究分析异常回报 **我想使用事件窗口分析收单机构的异常回报。基本上,我想使用-1(公告日期前一天)、公告日期和+1(公告日期后一天)提取收单机构的价格** 我有两个不同的数据集来提取信息。 第一个是包含所有合并和收购信息的数据集,其信息格式如下:Events 事件研究(在SAS中提取日期),events,date,sas,Events,Date,Sas,我需要为并购事件研究分析异常回报 **我想使用事件窗口分析收单机构的异常回报。基本上,我想使用-1(公告日期前一天)、公告日期和+1(公告日期后一天)提取收单机构的价格** 我有两个不同的数据集来提取信息。 第一个是包含所有合并和收购信息的数据集,其信息格式如下: DealNO AcquirerNO TargetNO AnnouncementDate 123 abcd Cfgg 22/12/2010 222 qwert cddfgf 26/12/19
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来运行代码,但如果您熟悉任何其他可以获取类似数据的程序,请告诉我
提前感谢^ ^。使用PROC-SQL并加入价格数据集三次,可以非常轻松地完成此操作。尝试以下操作(假设数据集名称为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;