I want to create a dynamic regression model with ARIMA-errors. What I am trying to figure out is if the exogenous variable, x_t and the variable I want to predict, y_t need to have the exact same number of differencing, or if them both being stationary is enough.

For example, if one exogenous variable, x_t, needs to be differenced one time to be made stationary while the y_t needs to be differenced two times to be made stationary. Is one then forced to difference the x_t a second time even though it is already stationary?


You need the dependent variable and the independent variable to have the same order of integration, otherwise they would diverge from each other asymptotically, invalidating both the intuitive or subject-matter explanation and statistical properties of the estimators.

  • If $\Delta y_t$ and $x_t$ are not cointegrated, use $\Delta^2 y_t$ and $\Delta x_t$.
  • If $\Delta y_t$ and $x_t$ are cointegrated, use $\Delta^2 y_t$ and $\Delta x_t$ and include the error correction term as a regressor (unless $\Delta y_t$ does not correct towards equilibrium so that the loading of the error correction term is zero; this could be tested by including the error correction term and checking whether it is significantly different from zero).
| cite | improve this answer | |
  • $\begingroup$ I'm confused. You say they need the same oder of integration, but then you say in the first point that I should use second difference for $y_t$ and first difference for $x_t$ if they are not cointegrated (which they aren't).Forecasting: principles and practice: "Check that the forecast variable and all predictors are stationary. If not, apply differencing until all variables are stationary. Where appropriate, use the same differencing for all variables to preserve interpretability." So I can use different difference levels but then I can't interpret the $x_t$?, but still use for forecasting. $\endgroup$ – Dididi Mar 31 '17 at 11:54
  • 1
    $\begingroup$ My formulation was poor; now edited the first sentence, hopefully it is clearer. Regarding interpretation, $\Delta z_t$ is the change in $z$ from $t-1$ to $t$ (something like a growth rate), which is straightforward to interpret; $\Delta^2 z_t$ is the change in $\Delta z$ from $t-1$ to $t$ (something like a rate of acceleration), which is still interpretable. $\endgroup$ – Richard Hardy Mar 31 '17 at 12:04
  • $\begingroup$ I think I know my problem. I made the $x_t$ stationary before using it in the arima() function as the xreg. But the arima() function automatically differs the $x_t$ so that they have the same order of integration. Like: arima(y, order = c(1,2,0), xreg=x[differenced]) This means my $x_t$ was differenced 3 times instead of 1 which I thought. Giving poor forecast performance. When I put in the $x_t$ variable directly without differencing first the forecast is excellent! $\endgroup$ – Dididi Mar 31 '17 at 12:24
  • $\begingroup$ @Dididi, I do not think arima transforms the xreg variable in any way. To the contrary, it takes it exactly as you supply it. But I am glad you got it to work. $\endgroup$ – Richard Hardy Mar 31 '17 at 13:01
  • $\begingroup$ Hello, in forecasting: principles and differencing it says "The R function Arima() will fit a regression model with ARIMA errors if the argument xreg is used. The order argument specifies the order of the ARIMA error model. If differencing is specified, then the differencing is applied to all variables in the regression model before the model is estimated." Am I understanding this wrong? $\endgroup$ – Dididi Mar 31 '17 at 15:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.