boot_df {bootUR}R Documentation

Bootstrap augmented Dickey-Fuller Unit Root Test


This function performs a standard augmented Dickey-Fuller bootstrap unit root test on a single time series.


boot_df(y, level = 0.05, boot = "AWB", B = 1999, l = NULL,
  ar_AWB = NULL, p_min = 0, p_max = NULL, ic = "MAIC", dc = 1,
  detr = "OLS", ic_scale = TRUE, verbose = FALSE,
  show_progress = FALSE, do_parallel = FALSE, nc = NULL)



A T-dimensional vector to be tested for unit roots. Data may also be in a time series format (e.g. ts, zoo or xts), or a data frame.


Desired significance level of the unit root test. Default is 0.05.


String for bootstrap method to be used. Options are


Moving blocks bootstrap (Paparoditis and Politis, 2003);


Block wild bootstrap (Shao, 2011);


Dependent wild bootstrap (Shao, 2010; Rho and Shao, 2019);


Autoregressive wild bootstrap (Smeekes and Urbain, 2014a; Friedrich, Smeekes and Urbain, 2020), this is the default;


Sieve bootstrap (Chang and Park, 2003; Palm, Smeekes and Urbain, 2008; Smeekes, 2013);


Sieve wild boostrap (Cavaliere and Taylor, 2009; Smeekes and Taylor, 2012).


Number of bootstrap replications. Default is 1999.


Desired 'block length' in the bootstrap. For the MBB, BWB and DWB boostrap, this is a genuine block length. For the AWB boostrap, the block length is transformed into an autoregressive parameter via the formula 0.01^(1/l) as in Smeekes and Urbain (2014a); this can be overwritten by setting ar_AWB directly. Default sets the block length as a function of the time series length T, via the rule l = 1.75 T^(1/3) of Palm, Smeekes and Urbain (2011).


Autoregressive parameter used in the AWB bootstrap method (boot = "AWB"). Can be used to set the parameter directly rather than via the default link to the block length l.


Minimum lag length in the augmented Dickey-Fuller regression. Default is 0.


Maximum lag length in the augmented Dickey-Fuller regression. Default uses the sample size-based rule 12(T/100)^{1/4}.


String for information criterion used to select the lag length in the augmented Dickey-Fuller regression. Options are: "AIC", "BIC", "MAIC", "MBIC". Default is "MAIC" (Ng and Perron, 2001).


Numeric vector indicating the deterministic specification. Only relevant if union = FALSE. Options are (combinations of)

0 no deterministics;

1 intercept only;

2 intercept and trend.

If union = FALSE, the default is adding an intercept (a warning is given).


String vector indicating the type of detrending to be performed. Only relevant if union = FALSE. Options are: "OLS" and/or "QD" (typically also called GLS, see Elliott, Rothenberg and Stock, 1996). The default is "OLS".


Logical indicator whether or not to use the rescaled information criteria of Cavaliere et al. (2015) (TRUE) or not (FALSE). Default is TRUE.


Logical indicator whether or not information on the outcome of the unit root test needs to be printed to the console. Default is FALSE.


Logical indicator whether a bootstrap progress update should be printed to the console. Default is FALSE.


Logical indicator whether bootstrap loop should be executed in parallel. Parallel computing is only available if OpenMP can be used, if not this option is ignored. Default is FALSE.


The number of cores to be used in the parallel loops. Default is to use all but one.


The options encompass many test proposed in the literature. dc = "OLS" gives the standard augmented Dickey-Fuller test, while dc = "QD" provides the DF-GLS test of Elliott, Rothenberg and Stock (1996). The bootstrap algorithm is always based on a residual bootstrap (under the alternative) to obtain residuals rather than a difference-based bootstrap (under the null), see e.g. Palm, Smeekes and Urbain (2008).

Lag length selection is done automatically in the ADF regression with the specified information criterion. If one of the modified criteria of Ng and Perron (2001) is used, the correction of Perron and Qu (2008) is applied. For very short time series (fewer than 50 time points) the maximum lag length is adjusted downward to avoid potential multicollinearity issues in the bootstrap. To overwrite data-driven lag length selection with a pre-specified lag length, simply set both the minimum 'p_min' and maximum lag length 'p_max' for the selection algorithm equal to the desired lag length.


Values of the Dickey-Fuller test statistics and corresponding bootstrap p-values.

Errors and warnings

Error: Multiple time series not allowed. Switch to a multivariate method such as iADFtest, or change argument y to a univariate time series.

The function is a simple wrapper around iADFtest to facilitate use for single time series. It does not support multiple time series, as iADFtest is specifically suited for that.


Chang, Y. and Park, J. (2003). A sieve bootstrap for the test of a unit root. Journal of Time Series Analysis, 24(4), 379-400.

Cavaliere, G. and Taylor, A.M.R (2009). Heteroskedastic time series with a unit root. Econometric Theory, 25, 1228–1276.

Cavaliere, G., Phillips, P.C.B., Smeekes, S., and Taylor, A.M.R. (2015). Lag length selection for unit root tests in the presence of nonstationary volatility. Econometric Reviews, 34(4), 512-536.

Elliott, G., Rothenberg, T.J., and Stock, J.H. (1996). Efficient tests for an autoregressive unit root. Econometrica, 64(4), 813-836.

Friedrich, M., Smeekes, S. and Urbain, J.-P. (2020). Autoregressive wild bootstrap inference for nonparametric trends. Journal of Econometrics, 214(1), 81-109.

Ng, S. and Perron, P. (2001). Lag Length Selection and the Construction of Unit Root Tests with Good Size and Power. Econometrica, 69(6), 1519-1554,

Palm, F.C., Smeekes, S. and Urbain, J.-P. (2008). Bootstrap unit root tests: Comparison and extensions. Journal of Time Series Analysis, 29(1), 371-401.

Paparoditis, E. and Politis, D.N. (2003). Residual-based block bootstrap for unit root testing. Econometrica, 71(3), 813-855.

Perron, P. and Qu, Z. (2008). A simple modification to improve the finite sample properties of Ng and Perron's unit root tests. Economic Letters, 94(1), 12-19.

Rho, Y. and Shao, X. (2019). Bootstrap-assisted unit root testing with piecewise locally stationary errors. Econometric Theory, 35(1), 142-166.

Smeekes, S. (2013). Detrending bootstrap unit root tests. Econometric Reviews, 32(8), 869-891.

Shao, X. (2010). The dependent wild bootstrap. Journal of the American Statistical Association, 105(489), 218-235.

Shao, X. (2011). A bootstrap-assisted spectral test of white noise under unknown dependence. Journal of Econometrics, 162, 213-224.

Smeekes, S. and Taylor, A.M.R. (2012). Bootstrap union tests for unit roots in the presence of nonstationary volatility. Econometric Theory, 28(2), 422-456.

Smeekes, S. and Urbain, J.-P. (2014a). A multivariate invariance principle for modified wild bootstrap methods with an application to unit root testing. GSBE Research Memorandum No. RM/14/008, Maastricht University

See Also



# boot_df on GDP_BE
GDP_BE_df <- boot_df(MacroTS[, 1], B = 399, dc = 2, detr = "OLS", verbose = TRUE)

[Package bootUR version 0.2.0 Index]