AR & CAR Test Statistics

AR and CAR test statistics evaluate whether a single firm's abnormal return is statistically significant. The AR t-test assesses daily impact, the CAR t-test measures cumulative event-window impact, the BHAR t-test handles long horizons, and the permutation test provides exact p-values.

Part of the methodology guide

Single-event test statistics assess whether the abnormal return for one specific firm is significantly different from zero. These tests use the firm's own estimation-window residuals to form the standard error.

What Are the Single-Event Test Statistics?

Single-event test statistics are hypothesis tests designed to assess whether the abnormal return observed for one individual firm around a specific event is statistically distinguishable from zero. These tests use the standard deviation of residuals from the estimation window, typically 120 to 250 trading days, to form the benchmark for normal return variation. According to Campbell, Lo, and MacKinlay (1997), single-event tests have approximately 50% power to detect a 1% abnormal return with a standard estimation window of 100 days.

AR t-test
A parametric test that divides the daily abnormal return by the estimation-window standard deviation. Under the null hypothesis of no event effect, the test statistic follows a t-distribution with M - K degrees of freedom.
CAR t-test
A parametric test for the cumulative abnormal return over the event window, scaled by the square root of the window length times the estimation-window standard deviation. Captures the total event impact rather than a single day.
Permutation Test
A non-parametric, distribution-free test that generates exact p-values by randomly reassigning abnormal returns between the estimation and event windows across 10,000 or more iterations.
TestR ClassNull HypothesisDistributionBest For
AR t-testARTTestH₀: ARᵢ,ₜ = 0tₘ₋ₖDaily impact at each event time
CAR t-testCARTTestH₀: CARᵢ = 0tₘ₋ₖTotal impact over event window
BHAR t-testBHARTTestH₀: BHARᵢ = 0tₘ₋ₖLong-horizon compounded returns

All tests share the same estimation-window standard deviation:

S^i=1MKt=t0t1ARi,t2\hat{S}_i = \sqrt{\frac{1}{M - K}\sum_{t=t_0}^{t_1} AR_{i,t}^2}

where M=t1t0M = t_1 - t_0 is the estimation window length and KK is the model degrees of freedom (e.g., K=2K=2 for the Market Model).

AR t-test

Tests whether the abnormal return on a single day is significantly different from zero.

tARi,t=ARi,tS^itMKt_{AR_{i,t}} = \frac{AR_{i,t}}{\hat{S}_i} \sim t_{M-K}

A significant t-statistic at event time t=0t=0 indicates the event had an immediate price impact on firm ii. With a typical estimation window of 120 trading days and 2 model parameters (Market Model), the test has 118 degrees of freedom, yielding critical values of approximately 1.98 for a two-sided test at the 5% significance level.

AR with t-statistics for each event
# AR with t-statistics for each event
task$get_ar(event_id = 1)
ProsCons
Tests each day individuallyIgnores cumulative effects
Identifies exact timing of impactMultiple testing problem across days
Simple interpretationSensitive to model choice

CAR t-test

Tests whether the cumulative abnormal return over the entire event window is significantly different from zero.

CARi(t2,t3)=t=t2t3ARi,tCAR_i(t_2, t_3) = \sum_{t=t_2}^{t_3} AR_{i,t}
tCARi=CARi(t2,t3)t3t2+1S^itMKt_{CAR_i} = \frac{CAR_i(t_2, t_3)}{\sqrt{t_3 - t_2 + 1} \cdot \hat{S}_i} \sim t_{M-K}

The denominator scales by L\sqrt{L} (event window length) because the variance of the sum grows linearly with the number of independent observations.

CAR with t-statistics
# CAR with t-statistics
task$get_car(event_id = 1)
ProsCons
Captures total event impactSensitive to window length choice
More powerful than single-day AR testAssumes AR independence over time
Standard in the literatureMay include confounding events in wide windows

BHAR t-test

For long-horizon studies (months to years). Uses compounded (buy-and-hold) returns instead of summed abnormal returns.

BHARi=t=1T(1+Ri,t)t=1T(1+Rm,t)BHAR_i = \prod_{t=1}^{T}(1 + R_{i,t}) - \prod_{t=1}^{T}(1 + R_{m,t})
tBHARi=BHARiS^iTtMKt_{BHAR_i} = \frac{BHAR_i}{\hat{S}_i \cdot \sqrt{T}} \sim t_{M-K}

The key difference from CAR: compounding captures the actual investor experience over long horizons, while summing AR underestimates cumulative returns due to the missing cross-product terms. As demonstrated by Barber and Lyon (1997), CAR-based tests produce biased results for horizons exceeding 12 months, with specification errors of 4% to 8% in 3-year studies, while BHAR tests maintain more accurate size.

Use BHAR t-test for long-horizon studies
# Use BHAR t-test for long-horizon studies
ps <- ParameterSet$new(
  single_event_statistics = SingleEventStatisticsSet$new(
    tests = list(BHARTTest$new())
  )
)
ProsCons
Captures compounding over long horizonsNot appropriate for short windows
Reflects actual investor experienceStandard errors grow with horizon
Better for IPO / M&A long-run studiesSensitive to rebalancing assumptions

Permutation Test

When residuals violate normality, permutation tests provide exact p-values without distributional assumptions. The idea: if the event has no effect, then the event-window AR should look no different from estimation-window AR.

Algorithm

  1. Pool all abnormal returns from the estimation window (mm observations) and event window (nn observations): X={X1,,Xm+n}\mathbf{X} = \{X_1, \ldots, X_{m+n}\}
  2. Compute the test statistic TT (e.g., AR t-test or CAR t-test) on the original data
  3. Randomly permute X\mathbf{X} without replacement. Recompute TT^* on the permuted data
  4. Repeat BB times (e.g., B=10,000B = 10{,}000)
  5. The p-value is the fraction of permutations where TT^* exceeds TT:
pperm=1Bb=1B1[Tb>T]p_{\text{perm}} = \frac{1}{B}\sum_{b=1}^{B} \mathbf{1}[T^*_b > T]

When to use permutation tests

Use when the Shapiro-Wilk test rejects normality (see Diagnostics), or when the estimation window is short (< 60 days) and asymptotic approximations are unreliable.

References

  • Bugni, F. et al. (2023). Permutation-based tests for discontinuities in event studies. Quantitative Economics.
  • Nguyen, H. & Wolf, M. A Note on Testing AR and CAR for Event Studies.

How Do I Configure Single-Event Tests?

Configuring single-event test statistics
# Default: AR t-test + CAR t-test
ps <- ParameterSet$new()

# Add BHAR t-test
ps <- ParameterSet$new(
  single_event_statistics = SingleEventStatisticsSet$new(
    tests = list(ARTTest$new(), CARTTest$new(), BHARTTest$new())
  )
)

# One-sided test (positive abnormal returns only)
ps <- ParameterSet$new(
  single_event_statistics = SingleEventStatisticsSet$new(
    tests = list(
      ARTTest$new(confidence_type = "one-sided"),
      CARTTest$new(confidence_type = "one-sided")
    )
  )
)

# Custom confidence level
ps <- ParameterSet$new(
  single_event_statistics = SingleEventStatisticsSet$new(
    tests = list(ARTTest$new(confidence_level = 0.99))
  )
)

Literature

  • Campbell, J.Y., Lo, A.W. & MacKinlay, A.C. (1997). The Econometrics of Financial Markets. Chapter 4.
  • Kolari, J.W. & Pynnonen, S. (2010). Event Studies for Financial Research.

Run this in R

The EventStudy R package lets you run these calculations programmatically with full control over parameters.

What Should I Read Next?

We use cookies for analytics to improve this site. See our Privacy Policy.