crseEvent implements a robust statistical test developed by Dutta et al. (JempFin, 2018).
The test is based on abnormal standardized returns and offers three implementations. Standardized returns are defined as \(sr_{it} = \frac{r_{it}}{s_{it}}\) where \(s_{it}\) is a standard deviation estimator of log returns \(r_{it}\):
Use of Abnormal standardized returns (ASR)
Abnormal standardized returns are defined as \(ASR_{it} = sr_{it} - sr_{ci,t}\), where \(sr_{ci,t}\) is the standardized return of the matching control firm or the average of standardized returns of the matching control portfolio.
Use of Standardized abnormal returns (SAR)
Standardized abnormal returns are defined as \(SAR_{it} = \frac{r_{event} - r_{control}}{sd_{event-control}}\). The matching control return should be derived from a single firm observation and not be the return-series of a portfolio.
Use of Continuously compounded abnormal returns (CCAR)
Continuously compounded abnormal returns are defined as \(CCAR_{it} = r_{it} - r_{ci,t}\), where \(r_{it} = log(1 + R_{it})\) is the event month \(t\) continuously compounded return (i.e., log-return) of event stock \(i\), and \(r_{ci,t}\) is the continuously compounded return of the control firm.
crseEvent(data, abnr = "ars", cluster1 = "yyyymm",
cluster2 = NULL, na.rm = TRUE, na.replace = 0)an object of class "data.frame" (or one that
can be coerced to that class)
Name of a column from data which contains abnormal standardized returns (ASR), standardized abnormal returns (SAR) or continuously compounded abnormal returns (CCAR).
Name of a column from data which contains the primarely cluster-variables for the observations.
Name of a column from data which contains additional cluster-variables for the observations.
An object of class "logical": If na.rm is TRUE, missing observations for the item abnr will be removed from the dataset. Otherwise missing oberservations will be replaced with a value defined in na.replace
A numeric scalar: If data contains missing observations for the abnormal return series and na.rm is FALSE, these missing return values will be overritten with the value of na.replace
crseEvent returns an object of class crse and list.
The returning value of "crseEvent" is a "list" containing the
following components:
Total number of observations.
Mean abnormal return.
Non-clustered (common) t-value.
Non-clustered (common) p-value.
One-way clustered t-value.
One-way clustered p-value.
One-way clustering t-value with respect to second clustering variable (NA if cluster2 is NULL).
One-way clustering p-value with respect to second clustering variable (NA if cluster2 is NULL).
Name of the first cluster variable.
Name of the second cluster variable.
Regression results on which t-value compuations are based.
Robust variance of abnormal return series with regard to one-way clustering on variable cluster1.
Robust variance of abnormal return series with regard to one-way clustering on variable cluster2.
Robust variance of abnormal return series with regard to two-way clustering on both variable cluster1 and cluster2.
Total number of unique observations by clustering on variable cluster1.
Total number of unique observations by clustering on variable cluster2.
Dutta, A., Knif, J., Kolari, J.W., Pynnonen, S. (2018): A robust and powerful test of abnormal stock returns in long-horizon event studies. Journal of Empirical Finance, 47, p. 1-24. 10.1016/j.jempfin.2018.02.004.
# NOT RUN {
## load demo_share_repurchases
## one-way clustering on column "date" and print summary statistics
data(demo_share_repurchases)
crse <- crseEvent(demo_share_repurchases, abnr="ars", cluster1 = "date")
summary(crse)
## print mean of abnormal return series
crse$mean.abnormal.ret
# }
Run the code above in your browser using DataLab