Wild bootstrap regression inference uses mean-zero, unit-variance multipliers to retain residual scales. Compare pooled resampling, leverage adjustments and null-imposed tests.
Wild bootstrap
The wild bootstrap is a bootstrap method that generates regression errors by multiplying each observation's residual by a random weight with mean zero and variance one. It keeps the regressors fixed and leaves each residual's scale attached to its own observation. This makes it useful for inference on a factor loading or other regression coefficient when heteroskedasticity makes a pooled residual distribution inappropriate.
The basic version here assumes independent, mean-zero errors conditional on the fixed design matrix. It allows unequal variances across observations. That distinction matters for finance: a cross-sectional return regression with different residual risks is a different resampling problem from a daily-return regression with serially correlated errors.
Multiply in place, rather than shuffle
Write a linear model as yi=xi′β+ui. After fitting it, choose residual scales ai and generate
yi∗=xi′β0∗+ui∗,ui∗=aivi.
Here β0∗ is the coefficient vector used to generate the bootstrap data; its choice depends on whether the task is estimation or testing a restriction. The multipliers vi are independent of the observed data and of one another, with
E[vi]=0,E[vi2]=1.
A simple choice is a Rademacher multiplier: vi=+1 or −1, each with probability 1/2. Let E∗ and Var∗ mean expectation and variance over bootstrap draws, conditional on the observed data. Since each ai is then fixed,
These are exact properties of the multiplier construction. They do not say that an individual squared residual equals the true conditional error variance. The justification concerns the distribution of the statistic being bootstrapped under suitable model and regularity conditions. Davidson and Flachaire, §2 develop this fixed-design construction.
An iid residual bootstrap, by contrast, draws errors with replacement from a common pool of residuals, usually after centering and any chosen scaling. Every row receives the same empirical error distribution. That loses the connection between an observation's regressors and its residual scale when the errors are heteroskedastic. MacKinnon, §3.4 explains why the wild construction is useful in this setting.
Four residuals show the difference
Suppose a fictional fixed-design regression supplies the residuals
u^=(−1,1,−2,2)
in percentage points. Use raw residuals as ai for this illustration only. With independent Rademacher multipliers, rows 1 and 2 can each receive an error of −1 or +1; rows 3 and 4 can each receive −2 or +2. Their conditional variances are therefore
(1,1,4,4)percentage points squared.
There are 24=16 equally likely multiplier vectors. Enumerating all of them gives mean zero at every row and zero covariance between different rows. One possible multiplier vector, (+1,−1,−1,+1), produces (−1,−1,2,2). Its errors need not sum to zero: mean zero is a statement about the distribution of each bootstrap error, not about the average in every realised draw.
Fictional raw residuals are −1, 1, −2 and 2 percentage points. Wild errors take values ±1 at rows 1–2 and ±2 at rows 3–4, giving conditional variances 1, 1, 4 and 4 pp². Pooled iid residual resampling gives variance 2.5 pp² at every row.
Figure: Exact conditional multiplier arithmetic for four fictional residuals. The dashed line is the pooled empirical variance, not a degrees-of-freedom-adjusted regression variance estimate.
The pooled residuals already have mean zero. Drawing uniformly from {−1,1,−2,2} would instead give every row variance
4(−1)2+12+(−2)2+22=2.5.
Both constructions are centered here; only the wild construction retains the row-specific squared scales. This example checks the resampling mechanism, not the accuracy of a four-observation regression test.
Residual scales and leverage still need care
Raw ordinary least squares residuals are fitted errors, not observed disturbances. Fitting shrinks their spread, especially at observations with high statistical leverage. For the design matrix used in the residual fit, let hi be the corresponding hat-matrix diagonal. Common scale adjustments are
These formulas require hi<1. They are choices for generating bootstrap errors; the covariance estimator used to studentize the statistic is a separate choice. Neither adjustment guarantees reliable inference when a small number of observations dominate the fit. MacKinnon's comparison of wild-bootstrap variants distinguishes residual transformations and restricted versus unrestricted fits.
An intercept makes unadjusted OLS residuals sum to zero, but leverage adjustment can change that sum. Mean-zero multipliers still center each bootstrap error conditionally. Subtracting the realised mean of every vector of generated errors is a different construction: it introduces dependence and changes the covariance identities above.
Build a test under the null
For a scalar restriction H0:βj=b0, one coherent null-imposed design is:
Fit the unrestricted model and calculate the observed t=(β^j−b0)/seHC3(β^j).
Fit the model subject to H0, obtaining β~ and restricted residuals u~i. For an HC2-style generator, use ai=u~i/1−h~i, where h~i comes from the restricted residual fit.
Generate yi∗=xi′β~+aivi, refit the unrestricted model to each generated sample, and recompute its HC3 standard error.
Form t∗=(β^j∗−b0)/seHC3∗(β^j∗). Estimate the two-sided bootstrap tail probability by the fraction of draws with ∣t∗∣≥∣t∣.
The null holds in the generating model's conditional mean, not in every refitted coefficient. Studentizing each draw lets its estimated uncertainty enter the comparison. Generating around an unrestricted estimate and comparing uncentered coefficients to zero would answer a different question. The fwildclusterboot methodological documentation separates these design choices and the non-clustered multiplier case. This is an illustrative specification, not a universally optimal combination of adjustments.
Independent observation-level weights do not preserve serial correlation: their conditional cross-covariances are zero. Wild cluster methods use shared multipliers within clusters; dependent wild methods use appropriately dependent multipliers. They require their own assumptions and inference design. A block bootstrap is another approach to dependent data. Calling any of these simply “wild” does not make their dependence assumptions interchangeable.