currently I am struggling with the outputs of my pooled portfolio regression. I have tried multiple commands, however, none of those have produced proper results. I am trying to replicate a paper and since I am using the same dataset and since the firm-level and cross-section analysis generate the correct results I am confused about the results of the portfolio regression.
The background is as follows: Daily stock return data are used and merged with 116 events (defined as eventnumber to uniquely identify the events by company). Then firms (ID: PERMNO) are sorted into quartiles on each event date (if events ==0) based on the variable quant which takes the value 1,2 (2+3) or 4. Afterwards I compute value weighted portfolio returns on each day for the market (all firms) and for the quartiles. Next, cumulative portfolio returns are calculated one, two and three days after the events. Finally, a pooled regression of the portfolio returns over the 116 events with robust standard errors has to be implemented.
Value weighted returns are generated as follows:
for the market:
bys bdate: egen VW_ret = wtmean(R), weight(lagcap) //where R = daily company returns and lagcap= lagged market cap
for quantiles:
bys quant bdate: egen WWwtmean = wtmean(R), weight(lagcap)
Cumulative portfolio returns are calculated as follows:
for the market:
gen logVW=ln(VW_ret/100+1)
by PERMNO eventnumber, sort: egen sumlogVW=total(logVW) if PFwind1==1 // where PFwind1 takes the value 1 on the day of the event and the day after
gen cumretVW= exp(sumlogVW)-1
replace cumretVW= cumretVW*100
for quantiles: (example for day +3)
gen logWW=ln(WWwtmean/100+1)
by PERMNO eventnumber, sort: egen sumlogwtmean3q4=total(logWW) if quant ==4 & PFwind3==1. // where PFwind3 takes the value 1 on the day of the event, day +1, +2 and +3 after the event
gen cumretwtmean3q4= exp(sumlogwtmean3q4)-1
replace cumretwtmean3q4= cumretwtmean3q4*100
the data looks like this :
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input double(date PERMNO) float(Surprise Expected eventnumber R lagcap events PFwind1 PFwind3) double quant float(cumretVW VW_ret WWwtmean cumretwtmean3q4) 12771 10010 -.17 .17 9 7.5 50.93 -1 0 0 4 . -.3414079 -.2962202 . 12772 10010 -.17 .17 9 0 54.74975 0 1 1 4 .7670625 -.006085026 .19407575 2.276187 12773 10010 -.17 .17 9 4.6511626 54.74975 1 1 1 4 .7670625 .7731946 .7458118 2.276187 12774 10010 -.17 .17 9 4.4444447 57.29625 2 0 1 4 . .03326809 .3828943 2.276187 12775 10010 -.17 .17 9 -4.255319 59.84275 3 0 1 4 . .3060611 .9359257 2.276187 12779 10010 -.17 .17 9 0 57.29625 4 0 0 4 . .55334634 .9796897 . 12969 10010 -.01 -.24 13 1.612903 80.28225 -1 0 0 4 . .2371832 .9550785 . 12970 10010 -.01 -.24 13 -2.3809524 81.57713 0 1 1 4 1.976449 1.29796 .919243 2.712516 12971 10010 -.01 -.24 13 -2.439024 79.63481 1 1 1 4 1.976449 .6697953 1.1921308 2.712516 12974 10010 -.01 -.24 13 -.8333334 77.6925 2 0 1 4 . .11222823 .461251 2.712516 12975 10010 -.01 -.24 13 -1.6806724 77.04506 3 0 1 4 . -.3884451 .1161317 2.712516 12976 10010 -.01 -.24 13 .8547009 75.75019 4 0 0 4 . 1.248462 1.6477095 . 13016 10010 0 0 14 0 76.39763 -1 0 0 4 . -.4188256 -.023558734 . 13017 10010 0 0 14 -1.6949153 76.39763 0 1 1 4 -.03781391 .24843067 -.07743979 .22094886 13018 10010 0 0 14 .862069 75.10275 1 1 1 4 -.03781391 -.28553522 .4904737 .22094886 13019 10010 0 0 14 -2.564103 75.75019 2 0 1 4 . -.0727951 -.56725055 .22094886 13020 10010 0 0 14 -1.754386 73.80788 3 0 1 4 . .25530404 .3784801 .22094886 13023 10010 0 0 14 3.749997 72.513 4 0 0 4 . -.55950946 -.7853403 . 12452 10011 .12 .13 1 3.7037036 35.79525 -1 0 0 4 . -.1499871 -.15201998 . 12453 10011 .12 .13 1 -1.7857144 37.121 0 1 1 4 -1.712219 -2.2323267 -3.080331 -1.7046466 12456 10011 .12 .13 1 0 36.458126 1 1 1 4 -1.712219 .5319836 .21640114 -1.7046466 12457 10011 .12 .13 1 -1.8181818 36.458126 2 0 1 4 . .11081 .8276314 -1.7046466 12458 10011 .12 .13 1 3.7037036 35.79525 3 0 1 4 . .56751394 .3697171 -1.7046466 12459 10011 .12 .13 1 -3.571429 37.121 4 0 0 4 . -.6179573 .1871157 . 12498 10011 -.03 .28 2 0 41.76112 -1 0 0 4 . -.5262008 -.7944527 . 12499 10011 -.03 .28 2 0 41.76112 0 1 1 4 .0542323 .05859204 .1815041 -.23109536 12500 10011 -.03 .28 2 0 41.76112 1 1 1 4 .0542323 -.0043571857 .3031973 -.23109536 12501 10011 -.03 .28 2 0 41.76112 2 0 1 4 . -.9253551 -1.1787937 -.23109536 12502 10011 -.03 .28 2 -1.5873017 41.76112 3 0 1 4 . -.6426816 .4714634 -.23109536 12505 10011 -.03 .28 2 1.612903 41.09825 4 0 0 4 . -.4964504 -2.108958 . 12523 10011 .1 .15 3 -1.1363636 58.333 -1 0 0 4 . -.016102899 -.11803642 . 12526 10011 .1 .15 3 -3.448276 57.67012 0 1 1 4 -1.1300212 -.8893583 -1.2171623 -3.534365 12527 10011 .1 .15 3 -2.3809524 55.6815 1 1 1 4 -1.1300212 -.24282257 -1.6501745 -3.534365 12528 10011 .1 .15 3 -8.536586 54.35575 2 0 1 4 . -.4788745 -1.3623123 -3.534365 12529 10011 .1 .15 3 8 49.71563 3 0 1 4 . 1.717393 .664109 -3.534365 12530 10011 .1 .15 3 -1.234568 53.69287 4 0 0 4 . .04370558 .75678 . 12554 10011 .13 .37 4 3.488372 57.00725 -1 0 0 4 . -.24729076 -.8609055 . 12555 10011 .13 .37 4 -1.1235955 58.99588 0 1 1 4 1.920738 .88229 -.3571359 1.2136898 12556 10011 .13 .37 4 0 58.333 1 1 1 4 1.920738 1.0293659 .6694232 1.2136898 12557 10011 .13 .37 4 -1.1363636 58.333 2 0 1 4 . .6864278 .4042949 1.2136898 12558 10011 .13 .37 4 1.1494253 57.67012 3 0 1 4 . -.23319443 .4947061 1.2136898 12561 10011 .13 .37 4 1.1363636 58.333 4 0 0 4 . -.3567504 -.18510152 . 12604 10011 -.05 .05 5 1.1494253 57.67012 -1 0 0 4 . .013143126 -.331488 . 12605 10011 -.05 .05 5 0 58.333 0 1 1 4 .55523014 -.00564168 .13538904 .4628382 12606 10011 -.05 .05 5 -2.2727273 58.333 1 1 1 4 .55523014 .5609035 .3049591 .4628382 12607 10011 -.05 .05 5 -1.1627907 57.00725 2 0 1 4 . .3117923 .177262 .4628382 12610 10011 -.05 .05 5 -.5882353 56.34438 3 0 1 4 . -.14346622 -.15500695 .4628382 12611 10011 -.05 .05 5 -.591716 56.01294 4 0 0 4 . .2175465 .1047544 . 12645 10011 .14 .36 6 1.234568 53.69287 -1 0 0 4 . -.01540278 .58433354 . 12646 10011 .14 .36 6 0 54.35575 0 1 1 4 .9098445 .6806052 .25937244 1.5981777 12647 10011 .14 .36 6 -2.439024 54.35575 1 1 1 4 .9098445 .22768973 .8943865 1.5981777 12648 10011 .14 .36 6 -1.25 53.03 2 0 1 4 . -.29631752 .3427862 1.5981777 12649 10011 .14 .36 6 1.2658228 52.36713 3 0 1 4 . .10737886 .09393815 1.5981777 12652 10011 .14 .36 6 0 53.03 4 0 0 4 . -.16195433 .24134608 . 12687 10011 -.2 .2 7 -1.3157895 53.2 -1 0 0 4 . .2510907 -.288022 . 12688 10011 -.2 .2 7 -1.3333334 52.5 0 1 1 4 .8540923 .1863896 -.2154016 1.2641627 12689 10011 -.2 .2 7 0 51.8 1 1 1 4 .8540923 .6664604 .7740508 1.2641627 12690 10011 -.2 .2 7 2.702703 51.8 2 0 1 4 . -.3703903 -.079102 1.2641627 end format %td date
The pooled regression for the cumulative return on day 3 for quantile 4 which generates a proper t-stat is following:
Code:
. regress cumretwtmean3q4 Expected Surprise if events==3 & quant==4, vce (cluster eventnumber) ***where events==3 defined day 3 after the event Linear regression Number of obs = 63,508 F(2, 115) = 1.01 Prob > F = 0.3684 R-squared = 0.0383 Root MSE = 3.0293 (Std. Err. adjusted for 116 clusters in eventnumber) ------------------------------------------------------------------------------ | Robust cumretwt~3q4 | Coef. Std. Err. t P>|t| [95% Conf. Interval] -------------+---------------------------------------------------------------- Expected | 1.192924 1.719855 0.69 0.489 -2.213779 4.599626 Surprise | -7.751858 5.716188 -1.36 0.178 -19.07453 3.57081 _cons | .4040321 .2843154 1.42 0.158 -.1591419 .9672061 ------------------------------------------------------------------------------
Expected: 0.379 (0.35)
Surprise: -5.334** (-2.16)
R2: 0.026
Since my portfolio results on day 3 are insignificant, they are contradictory to my cross section results where the independent variables (Expected Surprise) get significant on day 2 and 3 after the event for the same firms in quartile 4.
If I do not cluster for eventnumber my t-stat gets enormous (100+). If I use xtreg I get the same results. If I use xtscc, pooled my t-stat gets only smaller. Newey is not helpful as well. I also tried to calculate the cumulative returns without considering the value weighted returns on the event date. However, then my coefficients turn positive.
Therefore, I am running out of ideas how to "fix" the portfolio regression.
I would be very very grateful about any idea or suggestion on how to proceed further. Many thanks in advance!
Kind regards!
0 Response to Pooled panled portfolio regression
Post a Comment