Runs Monte Carlo simulations to estimate the statistical power (rejection rate) of an event study design. Each simulation generates synthetic data from a user-specified DGP, runs the full event study pipeline, and records whether the null hypothesis is rejected.
Usage
simulate_event_study(
n_events = 20,
event_window = c(-5, 5),
estimation_window_length = 120,
abnormal_return = 0,
return_model = MarketModel$new(),
test_statistic = "CSectT",
alpha = 0.05,
n_simulations = 1000,
dgp_params = list(),
seed = NULL
)Arguments
- n_events
Number of events (firms) per simulation. Default 20.
- event_window
Event window as
c(start, end). Defaultc(-5, 5).- estimation_window_length
Length of the estimation window. Default 120.
- abnormal_return
Injected abnormal return on the event day (day 0). Set to 0 for size analysis, positive for power analysis. Default 0.
- return_model
An initialized return model object. Default
MarketModel$new().- test_statistic
Name of the multi-event test statistic to evaluate. Default
"CSectT".- alpha
Significance level. Default 0.05.
- n_simulations
Number of Monte Carlo replications. Default 1000.
- dgp_params
List of DGP parameters:
alpha(drift),beta(market exposure),sigma_firm(idiosyncratic volatility),sigma_market(market volatility).- seed
Optional seed for reproducibility.