Skip to contents

A self-contained function that estimates the market model, computes abnormal returns (AR), cumulative abnormal returns (CAR), and performs standard statistical tests (t-test, Patell, BMP) on the results. Designed as a one-stop function for finance event studies.

Usage

event_study_finance(
  returns,
  firm_var = "firm_id",
  time_var = "event_time",
  ret_var = "ret",
  mkt_var = "market_ret",
  est_window = c(-200, -11),
  event_window = c(-5, 5),
  car_window = c(-1, 1),
  model = c("market", "mean", "market_adj"),
  test = c("ttest", "patell", "bmp"),
  plot = TRUE
)

Arguments

returns

Data frame in long format with columns for firm ID, event time (relative to event), firm return, and market return.

firm_var

Character. Column name for firm identifier. Default "firm_id".

time_var

Character. Column name for event time (integer, 0 = event day). Default "event_time".

ret_var

Character. Column name for firm return. Default "ret".

mkt_var

Character. Column name for market return. Default "market_ret".

est_window

Integer vector of length 2. Estimation window in event time. Default c(-200, -11).

event_window

Integer vector of length 2. Event window in event time. Default c(-5, 5).

car_window

Integer vector of length 2. Window for CAR aggregation in statistical tests. Default c(-1, 1).

model

Character. Benchmark model: "market" (default), "mean" (constant mean), or "market_adj" (market- adjusted, alpha=0 and beta=1).

test

Character. Statistical test: "ttest" (default), "patell", or "bmp".

plot

Logical. Produce AAR and CAAR plots. Default TRUE.

Value

A list with:

parameters

Data frame of firm-level model parameters.

ar_data

Data frame with firm-level abnormal returns.

aar_series

Data frame: event-time AAR and CAAR.

car_results

Data frame: firm-level CARs for the CAR window.

test_results

Named list with test statistic, p-value, n.

plot_aar

ggplot2: AAR/CAAR time series.

plot_car_dist

ggplot2: CAR histogram.

References

MacKinlay, A. C. (1997). Event studies in economics and finance. Journal of Economic Literature, 35(1), 13-39.

Brown, S. J., & Warner, J. B. (1985). Using daily stock returns: The case of event studies. Journal of Financial Economics, 14(1), 3-31.

Examples

if (FALSE) { # \dontrun{
# Using simulated data (see h_event_study vignette for full example)
result <- event_study_finance(
  returns      = sim_data,
  car_window   = c(-1, 1),
  model        = "market",
  test         = "bmp"
)
result$test_results
result$plot_aar
} # }