Augmented Dickey–Fuller test

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In statistics and econometrics, an augmented Dickey–Fuller test (ADF) is a test for a unit root in a time series sample. It is an augmented version of the Dickey–Fuller test for a larger and more complicated set of time series models. The augmented Dickey–Fuller (ADF) statistic, used in the test, is a negative number. The more negative it is, the stronger the rejection of the hypothesis that there is a unit root at some level of confidence.[1]

Testing procedure[edit]

The testing procedure for the ADF test is the same as for the Dickey–Fuller test but it is applied to the model

\Delta y_t = \alpha + \beta t + \gamma y_{t-1} + \delta_1 \Delta y_{t-1} + \cdots + \delta_{p-1} \Delta y_{t-p+1} + \varepsilon_t,

where \alpha is a constant, \beta the coefficient on a time trend and p the lag order of the autoregressive process. Imposing the constraints \alpha = 0 and \beta = 0 corresponds to modelling a random walk and using the constraint \beta = 0 corresponds to modeling a random walk with a drift. Consequently, there are three main versions of the test, analogous to the ones discussed on Dickey–Fuller test (see that page for a discussion on dealing with uncertainty about including the intercept and deterministic time trend terms in the test equation.)

By including lags of the order p the ADF formulation allows for higher-order autoregressive processes. This means that the lag length p has to be determined when applying the test. One possible approach is to test down from high orders and examine the t-values on coefficients. An alternative approach is to examine information criteria such as the Akaike information criterion, Bayesian information criterion or the Hannan–Quinn information criterion.

The unit root test is then carried out under the null hypothesis \gamma = 0 against the alternative hypothesis of \gamma < 0. Once a value for the test statistic

DF_\tau = \frac{\hat{\gamma}}{SE(\hat{\gamma})}

is computed it can be compared to the relevant critical value for the Dickey–Fuller Test. If the test statistic is less (this test is non symmetrical so we do not consider an absolute value) than the (larger negative) critical value, then the null hypothesis of \gamma = 0 is rejected and no unit root is present.


The intuition behind the test is that if the series is integrated then the lagged level of the series ( y_{t-1}) will provide no relevant information in predicting the change in   y_{t} besides the one obtained in the lagged changes (  \Delta y_{t-k} ). In this case the \gamma = 0 and null hypothesis is not rejected.


A model that includes a constant and a time trend is estimated using sample of 50 observations and yields the DF_\tau statistic of −4.57. This is more negative than the tabulated critical value of −3.50, so at the 95 per cent level the null hypothesis of a unit root will be rejected.

Critical values for Dickey–Fuller t-distribution.
Without trend With trend
Sample size 1% 5% 1% 5%
T = 25 −3.75 −3.00 −4.38 −3.60
T = 50 −3.58 −2.93 −4.15 −3.50
T = 100 −3.51 −2.89 −4.04 −3.45
T = 250 −3.46 −2.88 −3.99 −3.43
T = 500 −3.44 −2.87 −3.98 −3.42
T = ∞ −3.43 −2.86 −3.96 −3.41


There are alternative unit root tests such as the Phillips–Perron test or the ADF-GLS procedure developed by Elliott, Rothenberg and Stock (1996).[3]

Implementations in statistics packages[edit]

  • In R, the tseries package includes an adf.test function.[4]
  • Gretl includes the Augmented Dickey–Fuller test.[5]
  • In Matlab, the adftest function [6] is part of the Econometrics Toolbox,[7] and a free version is available as part of the 'Spatial Econometrics' toolbox[8]
  • In SAS, PROC ARIMA can perform ADF tests.[9]
  • In Stata, the dfuller command is used for ADF tests.[10]
  • In Eviews, the Augmented Dickey-Fuller is available under "Unit Root Test."[11]
  • In Python, the adfuller function is available in the Statsmodels package.[12]
  • In Java, the AugmentedDickeyFuller class is included in SuanShu[13][14] available under the com.numericalmethod.suanshu.stats.test.timeseries.adf package.

See also[edit]


Further reading[edit]