# Stability of VAR(1)

Consider VAR(1) process $$y_t = A_1y_{t-1} + u_t.$$

I am looking for a reference or proof that if all entries in $A_1$ are less than one in modulus then $y_t$ is stable. I am sure that last semester a professor told that, but I can't find a reference.

Edit1: In response to @Jarle Tufto answer, I believe that this is a sufficient condition. To support my argument I did a simulation in R where I simulate 20 different series (100 steps ahead) for the case when entries in $A_1$ are uniformly distributed between $0$ and $1$. All series converge to zero.

The R code

n <- 20 #fix the number of series
I = diag(n)
A <- matrix(runif(n^2), ncol = n, nrow = n) #Create matrix A with 0 < a_ij < 1
y = matrix(0, nrow = n, ncol = 100) #create vector of predictions (100 steps ahead)
y[, 1] = rnorm(n) #set initial values
for (i in 2:ncol(y)) {
y[, i] = A^(i-1)%*%y[, i-1]
}
require(ggplot2)
require(reshape2)
y_m <- melt(y)
ggplot() +
geom_line(data = y_m, aes(x = X2, y = value, color = factor(X1))) +
xlab('Step') + ylab('Value')


Edit 2:

Here is the result for the case when all entries of $A$ are $0.9$. In the previous code I changed

A <- matrix(runif(n^2), ncol = n, nrow = n)

to

A <- matrix(0.9, ncol = n, nrow = n)

Still have convergence, though the shape looks strange.

• VAR is an acronym, so there is no need to format it as a formula. Good question, though. Commented Oct 29, 2017 at 14:09
• That was just good (or maybe bad) luck. It is not a sufficient condition. Try $A$ with all entries equal to .9 and it will not be stationary! Commented Oct 29, 2017 at 14:47
• @JarleTufto please see my second edit. Commented Oct 29, 2017 at 14:56
• I don't understand your simulation code. Inside your for-loop you do 'y[, i] = A^(i-1)%*%y[, i-1]'. Why do you raise all elements of A to the $(i-1)$ power? And you need to add the white noise term $u_t$. Commented Oct 29, 2017 at 14:59
• @JarleTufto oops, agree. Indeed, you are right, this is not a sufficient condition. Forgot that ^ should be replaced by %^% in R (with loading expm package). Commented Oct 29, 2017 at 15:29

## 2 Answers

A VAR(1) process is stationary if the largest eigenvalue of $A$ has modulus smaller than 1, see Wei 2006, ch. 16. The condition you refer to is neither a necessary or sufficient condition for stationarity.

I think your simulations are just luck. Take this example:

$$\begin{bmatrix} 0.8 & 0.2 \\ 0.4 & 0.6 \end{bmatrix}$$

All entries are less than 1 but the matrix has 1 as an eigenvalue. So it is not stationary. Any starting point other than (0,0) that is less than one in the two entries will eventually converge to (2/3 , 1/3). And if they are higher than 1, it will diverge.

Take a look at the definition of markov matrices.