I am working on an event study where I am studying the cash dividend payouts on the danish stock market. I am looking at the time period 2013-2019, which means that firms have a very different amount of cash dividends.
My data set currently looks like this: Array
or if you'd rather have it as a code:
Code:
* Example generated by -dataex-. To install: ssc install dataex clear input int Date str36 Company double(returns dividend) byte eventdate float(datezero1 tau1 event_window1 estimation_window1) 18995 "A P MOLLER MAERSK A" .0076588021778583 . . 74 -73 . 1 18996 "A P MOLLER MAERSK A" -.0032576197762579 . . 74 -72 . 1 18997 "A P MOLLER MAERSK A" .018519129572627 . . 74 -71 . 1 18998 "A P MOLLER MAERSK A" -.0160442079637895 . . 74 -70 . 1 19001 "A P MOLLER MAERSK A" -.0027155465037338 . . 74 -69 . 1 19002 "A P MOLLER MAERSK A" .0054490258254896 . . 74 -68 . 1 19003 "A P MOLLER MAERSK A" -.0065046447228725 . . 74 -67 . 1 19004 "A P MOLLER MAERSK A" .0190939952752907 . . 74 -66 . 1 19005 "A P MOLLER MAERSK A" -.0042825262735225 . . 74 -65 . 1 19008 "A P MOLLER MAERSK A" -.0032245456322063 . . 74 -64 . 1 19009 "A P MOLLER MAERSK A" .0021566513086952 . . 74 -63 . 1 19010 "A P MOLLER MAERSK A" .0129167190695119 . . 74 -62 . 1 19011 "A P MOLLER MAERSK A" .0010638167414709 . . 74 -61 . 1 19012 "A P MOLLER MAERSK A" -.0079624905445425 . . 74 -60 . 1 19015 "A P MOLLER MAERSK A" 0 . . 74 -59 . 1 19016 "A P MOLLER MAERSK A" .0101657451741266 . . 74 -58 . 1 19017 "A P MOLLER MAERSK A" .0190679778989318 . . 74 -57 . 1 19018 "A P MOLLER MAERSK A" .0218299753946083 . . 74 -56 . 1 19019 "A P MOLLER MAERSK A" -.0223805037814423 . . 74 -55 . 1 19022 "A P MOLLER MAERSK A" -.0072842274636239 . . 74 -54 . 1 19023 "A P MOLLER MAERSK A" .0476941430128774 . . 74 -53 . 1 19024 "A P MOLLER MAERSK A" .0465230724825918 . . 74 -52 . 1 19025 "A P MOLLER MAERSK A" -.012428946911173 . . 74 -51 . 1 19026 "A P MOLLER MAERSK A" .0232339918089672 . . 74 -50 . 1 19029 "A P MOLLER MAERSK A" 0 . . 74 -49 . 1 19030 "A P MOLLER MAERSK A" .0037841776884993 . . 74 -48 . 1 19031 "A P MOLLER MAERSK A" .0037699116728593 . . 74 -47 . 1 19032 "A P MOLLER MAERSK A" .0093900592414815 . . 74 -46 . 1 19033 "A P MOLLER MAERSK A" -.0074429701033322 . . 74 -45 . 1 19036 "A P MOLLER MAERSK A" .0253055210079489 . . 74 -44 . 1 19037 "A P MOLLER MAERSK A" .0009137188356612 . . 74 -43 . 1 19038 "A P MOLLER MAERSK A" .0191784827935062 . . 74 -42 . 1 19039 "A P MOLLER MAERSK A" -.0161291781861234 . . 74 -41 . 1 19040 "A P MOLLER MAERSK A" .0355196712610941 . . 74 -40 . 1 19043 "A P MOLLER MAERSK A" .0123120837297812 . . 74 -39 . 1 19044 "A P MOLLER MAERSK A" -.0147690032645952 . . 74 -38 . 1 19045 "A P MOLLER MAERSK A" -.0599654018850884 . . 74 -37 . 1 19046 "A P MOLLER MAERSK A" 0 . . 74 -36 . 1 19047 "A P MOLLER MAERSK A" .0215756663829603 . . 74 -35 . 1 19050 "A P MOLLER MAERSK A" -.0358119241508295 . . 74 -34 . 1 19051 "A P MOLLER MAERSK A" -.0019053899043185 . . 74 -33 . 1 19052 "A P MOLLER MAERSK A" .0238552717783271 . . 74 -32 . 1 19053 "A P MOLLER MAERSK A" .0354156584395333 . . 74 -31 . 1 19054 "A P MOLLER MAERSK A" -.0126015125450356 . . 74 -30 . 1 19057 "A P MOLLER MAERSK A" -.0164085315422757 . . 74 -29 . 1 19058 "A P MOLLER MAERSK A" -.0379979680231003 . . 74 -28 . 1 19059 "A P MOLLER MAERSK A" -.0038534440590536 . . 74 -27 . 1 19060 "A P MOLLER MAERSK A" 0 . . 74 -26 . 1 19061 "A P MOLLER MAERSK A" .0367500275513606 . . 74 -25 . 1 19064 "A P MOLLER MAERSK A" -.0018662866815485 . . 74 -24 . 1 19065 "A P MOLLER MAERSK A" .0158883796171474 . . 74 -23 . 1 19066 "A P MOLLER MAERSK A" -.0128797509507872 . . 74 -22 . 1 19067 "A P MOLLER MAERSK A" .0018645480453836 . . 74 -21 . 1 19068 "A P MOLLER MAERSK A" -.0065117602147955 . . 74 -20 . 1 19071 "A P MOLLER MAERSK A" -.0140448451812095 . . 74 -19 . 1 19072 "A P MOLLER MAERSK A" -.0151955781730512 . . 74 -18 . 1 19073 "A P MOLLER MAERSK A" -.0125354349985116 . . 74 -17 . 1 19074 "A P MOLLER MAERSK A" .0039061289459226 . . 74 -16 . 1 19075 "A P MOLLER MAERSK A" .0165361037095035 . . 74 -15 1 . 19078 "A P MOLLER MAERSK A" -.0019131279780474 . . 74 -14 1 . 19079 "A P MOLLER MAERSK A" -.0191762483369797 . . 74 -13 1 . 19080 "A P MOLLER MAERSK A" -.0039099512701348 . . 74 -12 1 . 19081 "A P MOLLER MAERSK A" -.0323833628473919 . . 74 -11 1 . 19082 "A P MOLLER MAERSK A" .040566675346638 . . 74 -10 1 . 19085 "A P MOLLER MAERSK A" .0204682719992801 . . 74 -9 1 . 19086 "A P MOLLER MAERSK A" .0066859083425752 . . 74 -8 1 . 19087 "A P MOLLER MAERSK A" -.030360964981908 . . 74 -7 1 . 19088 "A P MOLLER MAERSK A" 0 . . 74 -6 1 . 19089 "A P MOLLER MAERSK A" 0 . . 74 -5 1 . 19092 "A P MOLLER MAERSK A" 0 . . 74 -4 1 . 19093 "A P MOLLER MAERSK A" -.0362034824557564 . . 74 -3 1 . 19094 "A P MOLLER MAERSK A" .0015229794163474 . . 74 -2 1 . 19095 "A P MOLLER MAERSK A" .0238217782404755 . . 74 -1 1 . 19096 "A P MOLLER MAERSK A" -.0257424979006118 1000 1 74 0 1 . 19099 "A P MOLLER MAERSK A" .0121947465401309 . . 74 1 1 . 19100 "A P MOLLER MAERSK A" -.0075293483833407 . . 74 2 1 . 19101 "A P MOLLER MAERSK A" .0136568125737817 . . 74 3 1 . 19102 "A P MOLLER MAERSK A" .0039918924132452 . . 74 4 1 . 19103 "A P MOLLER MAERSK A" -.0109344150173996 . . 74 5 1 . 19106 "A P MOLLER MAERSK A" -.0165829473546872 . . 74 6 1 . 19107 "A P MOLLER MAERSK A" .0025546681290041 . . 74 7 1 . 19108 "A P MOLLER MAERSK A" 0 . . 74 8 1 . 19109 "A P MOLLER MAERSK A" .013252482359186 . . 74 9 1 . 19110 "A P MOLLER MAERSK A" .045271305680354 . . 74 10 1 . 19113 "A P MOLLER MAERSK A" .0076994734204348 . . 74 11 1 . 19114 "A P MOLLER MAERSK A" .0171921389258185 . . 74 12 1 . 19115 "A P MOLLER MAERSK A" -.0028171532125028 . . 74 13 1 . 19116 "A P MOLLER MAERSK A" -.0009412512529644 . . 74 14 1 . 19117 "A P MOLLER MAERSK A" 0 . . 74 15 1 . 19120 "A P MOLLER MAERSK A" -.0235629675852852 . . 74 16 . . 19121 "A P MOLLER MAERSK A" -.0193044279749216 . . 74 17 . . 19122 "A P MOLLER MAERSK A" -.0275596140631832 . . 74 18 . . 19123 "A P MOLLER MAERSK A" .0070851680117729 . . 74 19 . . 19124 "A P MOLLER MAERSK A" -.0201013329854089 . . 74 20 . . 19127 "A P MOLLER MAERSK A" -.0292304483096847 . . 74 21 . . 19128 "A P MOLLER MAERSK A" .011094499840745 . . 74 22 . . 19129 "A P MOLLER MAERSK A" -.062696978420736 . . 74 23 . . 19130 "A P MOLLER MAERSK A" 0 . . 74 24 . . 19131 "A P MOLLER MAERSK A" 0 . . 74 25 . . 19134 "A P MOLLER MAERSK A" .0061315657442784 . . 74 26 . . end format %tdnn/dd/CCYY Date
My problem was that because some firms had multiple dividends per year, some of the estimation windows were overlapping. As such, I thought I was smart and created a variable for each event.
the code I have written is as follows:
Code:
clear use "C:\Users\path\Downloads\event study data.dta" rename eventday eventdate replace dividend = . if dividend == 0 replace eventdate = . if eventdate == 0 sort Company Date by Company: egen count_div=count(dividend) by Company: gen fakedate = _n forval i=1/14 { //maximum dividends payouts for a specific firm is 14 by Company: generate datezero_`i'=fakedate if eventdate==`i' by Company: egen datezero`i'=min(datezero_`i') by Company: gen tau`i'=fakedate-datezero`i' by Company: generate event_window`i'=1 if tau`i'>=-15 & tau`i'<=15 by Company: generate estimation_window`i'=1 if tau`i'>=-250 & tau`i'<-15 } drop datezero_* forval i=1/14 { generate R_hat`i'=. generate sigmahat`i'=. } egen fakeID=group(Company) forvalues i=1/63 { //we have 63 firms in total forval j=1/14 { quietly reg returns index if fakeID==`i' & estimation_window`j'==1 quietly predict R_hat_`i' if fakeID==`i' & event_window`j'==1, xb quietly replace R_hat`j' = R_hat_`i' if fakeID==`i' quietly drop R_hat_`i' quietly replace sigmahat`j'=e(rmse) if fakeID==`i' } }
I've tried explaining the problem as good as I can but reading it again some things still might be unclear but I'm not sure how to expand on it. If you think things are still unclear, please ask.
0 Response to Event study regression with multiple events for a certain firm
Post a Comment