3430 3

盈余公告对股价的影响。现在通过以下程序计算出了估计窗和事件窗的car,请问如何才能 [推广有奖]

  • 0关注
  • 0粉丝

本科生

86%

还不是VIP/贵宾

-

威望
0
论坛币
192 个
通用积分
1.5000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
89 点
帖子
6
精华
0
在线时间
232 小时
注册时间
2014-8-24
最后登录
2024-4-10

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
盈余公告对股价的影响。现在通过以下程序计算出了估计窗和事件窗的car,请问如何才能算出事后窗的car,求能算出事后窗car的程序!!!!!多谢!!!!很急!!!!!!

/*data replicate:firm, date, evntdate年报公布日,evntdum(如果当年net income大于前一年的,那么取值为1,否者为-1), ret, mkt*/

data replicate;            
set et.replicate;
format date evntdate yymmdd6.;
before=date<evntdate;   /*before:虚拟变量,为了后面定义relday*/
run;


proc sort data=replicate;
by firm evntdate date;
proc means data=replicate noprint;
by firm evntdate;
output out=nreturns(drop=_type_ _freq_) sum(before)=bef_sum;
run;

data estper evntper;
merge replicate(drop=before) nreturns;
by firm evntdate;
if first.evntdate then relday=-bef_sum-1;
relday+1;
if relday>=-11 and relday<=-1 then output estper;
if relday=0  then output evntper;
run;

/*回归*/
proc reg data=estper outest=mmparam(rename=(intercept=alpha mktret=beta) keep=firm evntdate intercept mktret) noprint;
by firm evntdate;
model ret=mktret;
quit;

/*计算事件窗异常收益*/
data evntar;
merge evntper mmparam;
by firm evntdate;
ar=ret-alpha-beta*mktret;
run;


/*从事件窗异常收益evntar中将good news数据集和bad news数据集分出来*/
data evntarr;
set evntar;
if relday=. then delete;
data goodevntar;
set evntarr;
if evntdum>0;
run;
data badevntar;
set evntarr;
if evntdum<0;
run;


/*计算事件窗平均异常收益*/
proc means data=evntarr noprint;
by relday ;
output out=evntaar mean(ar)=aar;
run;
proc means data=goodevntar noprint;
by relday ;
output out=goodevntaar mean(ar)=goodaar;
run;
proc means data=badevntar noprint;
by relday ;
output out=badevntaar mean(ar)=badaar;
run;


/*计算估计窗异常收益*/
data estar;
merge estper mmparam;
by firm evntdate;
ar=ret-alpha-beta*mktret;
run;


/*从估计窗异常收益estar中将good news数据集和bad news数据集分出来*/
proc sort data=estar; /*排序;*/
by relday;
data estarr;
set estar;
if relday=. then delete;
data goodestar;
set estarr;
if evntdum>0;
run;
data badestar;
set estarr;
if evntdum<0;
run;


/*计算估计窗平均异常收益*/
proc means data=estarr noprint;
by relday ;
output out=estaar mean(ar)=aar;
run;
proc means data=goodestar noprint;
by relday ;
output out=goodestaar mean(ar)=goodaar;
run;
proc means data=badestar noprint;
by relday ;
output out=badestaar mean(ar)=badaar;
run;

/*将估计窗和事件窗按照relday从-11到0合并*/
data aar;
set estaar evntaar;
run ;
data goodaar;
set goodestaar goodevntaar;
run ;
data badaar;
set badestaar badevntaar;
run ;
data aar3;
merge aar goodaar badaar;


/*计算car*/
data caar3;
set aar3;
caar=caar+aar;
retain caar 0;
goodcaar=goodcaar+goodaar;
retain goodcaar 0;
badcaar=badcaar+badaar;
retain badcaar 0;
run;


/*画图*/
goptions reset=all;
proc gplot data=caar3;
plot caar*relday    goodcaar*relday  badcaar*relday/overlay legend;
symbol1 color=black i=join v=star;
symbol2 c=blue i=join v=dot;
symbol3 c=red i=join v=diamond;
run;

caar(-11month-0month).bmp
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:CAR replicate replica replic Before 程序 公告 如何 影响

沙发
金玉天天向上 学生认证  发表于 2015-11-23 18:21:33 |只看作者 |坛友微信交流群
估计窗-11~-1month,事件窗0month,事后窗1~6month,现在的问题是事后窗的CAR我不会算

使用道具

藤椅
抽抽鳗鱼 发表于 2016-11-21 23:27:34 |只看作者 |坛友微信交流群
金玉天天向上 发表于 2015-11-23 18:21
估计窗-11~-1month,事件窗0month,事后窗1~6month,现在的问题是事后窗的CAR我不会算
请问这个事件窗为[-10,10]的car的程序应该怎么写?还有计算前的数据应该怎么合并,是将每只股票每个盈余公告日去匹配所有日期的日回报率吗?正在处理这方面的数据,真的很困惑,希望赐教!

使用道具

板凳
抽抽鳗鱼 发表于 2016-11-21 23:36:10 |只看作者 |坛友微信交流群
抽抽鳗鱼 发表于 2016-11-21 23:27
请问这个事件窗为[-10,10]的car的程序应该怎么写?还有计算前的数据应该怎么合并,是将每只股票每个盈余公 ...
就是盈余公告日前后各10天,共21天作为事件窗,如果能解释一下就更好了

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-6 09:22