1 Бодолт 1

1.1 А.1

Хэрэв \(z\in \mathbb{Z}\) нь \(1-\phi_1 z-\phi_2 z^2=0\) тэгшитгэлийн шийд бол \(z^{-1}=\lambda\)-ийн хувьд \[\begin{eqnarray*} 1-\phi_1 z-\phi_2 z^2&=&0\\ \Rightarrow z^{-2}-\phi_1 z^{-1}-\phi_2 &=&0\\ \Rightarrow \lambda^2-\phi_1\lambda -\phi_2 &=&0 \end{eqnarray*}\] биелнэ.

Иймд, AR(2) цуваа стационарь байхын тулд дээрх тэгшитгэлийн шийдүүд нэгж тойргийн дотор оршино, ө.х \(|z|>1 \Leftrightarrow |\lambda|=|z^{-1}|<1\).

AR(2) стационарь байхын тулд доорх нөхцөл биелэх ёстойг үзүүлье.

  1. \(\phi_2<1+\phi_1\)
  2. \(\phi_2<1-\phi_1\)
  3. \(\phi_2>-1\)

Тэгшитгэлийн шийдүүд \(\lambda_{1,2}=\frac{\phi_1\pm\sqrt{\phi_1^2+4\phi_2}}{2}\) бодит байвал

\[\begin{eqnarray*} -1<\frac{\phi_1\pm\sqrt{\phi_1^2+4\phi_2}}{2}&<&1\\ \Rightarrow -2<\phi_1\pm\sqrt{\phi_1^2+4\phi_2}&<&2 \end{eqnarray*}\]

\(\lambda_i\)-уудын их нь \(\phi_1+\sqrt{\phi_1^2+4\phi_2}<2\): \[\begin{eqnarray*} \phi_1+\sqrt{\phi_1^2+4\phi_2}&<&2\\ \Rightarrow \sqrt{\phi_1^2+4\phi_2}&<&2 - \phi_1\\ \Rightarrow \phi_1^2+4\phi_2&<&(2 - \phi_1)^2\\ \Rightarrow \phi_1^2+4\phi_2&<&4 - 4\phi_1+\phi_1^2\\ \Rightarrow \phi_2&<&1 - \phi_1 \end{eqnarray*}\] Үүнтэй адилаар \(\phi_2<1 + \phi_1\).

Хэрэв \(\lambda_i\)-ууд комплекс тоонууд бол \[\lambda_{1,2} = \phi_1/2\pm i\sqrt{\phi_1^2+4\phi_2}/2.\]

Комплекс тооны абсолют утга нь бодит хэсэг, хуурмаг хэсгийн квадратуудын нийлбэрийн язгуур байдаг. Hence, \[|\lambda|^2 = (\phi_1/2)^2 - \left(\sqrt{\phi_1^2+4\phi_2}/2\right)^2 = \phi_1^2/4+(\phi_1^2+4\phi_2)/4 = -\phi_2.\] Иймд стационарь байхын тулд \(|\phi_2|<1\) буюу \(-\phi_2<1\) or \(\phi_2>1\). Дээрх тодорхойлогдох мужуудыг графикт дүрсэлбэл доорх гурвалжингийн дотоод хэсэг болно.

1.2 A.2

Дурын урвуутай матриц \(А(p\times p)\)-ийн хувьд \[\phi_1 y_{t-1}+\cdots+\phi_py_{t-p}= \overbrace{ \begin{bmatrix} \phi_1&\dots \phi_{p} \end{bmatrix} }^{\boldsymbol \phi'} \underbrace{ \begin{bmatrix} y_{t-1} \\ \dots \\ y_{t-p} \end{bmatrix}}_{\boldsymbol y_{t-1}} =\boldsymbol \phi' A^{-1}A \boldsymbol y_{t-1} \] \((p\times p)\) матриц \(A\)\[A= \begin{bmatrix} 1 & 0 & \dots & 0 & 0 \\ 1 & -1 & \dots & 0 & 0 \\ 0 & 1 & \dots & 0 & 0 \\ \dots & \dots & \dots & \dots &\dots \\ 0 & 0 & \dots & 1 & -1 \end{bmatrix} \] гэж тодорхойлбол

\[A^{-1}= \begin{bmatrix} 1 & 0 & \dots & 0 & 0 \\ 1 & -1 & \dots & 0 & 0 \\ 1& -1 & \dots & 0 & 0 \\ \dots & \dots & \dots & \dots &\dots \\ 1 & -1 & \dots & -1 & 0 \\ 1 & -1 & \dots & -1 & -1 \end{bmatrix} \]

1.3 S.1

library(dplyr)
## 
## Attaching package: 'dplyr'
## 
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## 
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
ic <- function(y, X){
  k <- if(is.vector(X)){1}else{ncol(X)}
  b <- solve(crossprod(X), crossprod(X, y))
  rss <- mean((y - X%*%b)^2)
  aic = log(rss) + (k*2/length(y)); 
  bic = log(rss) + (k*log(length(y))/length(y))
  return(c(aic, bic))
}
sim <- function(nrep, n){
  out <- matrix(NA, nrow=nrep, ncol=2)
  for(i in 1:nrep){
    y <- arima.sim(model=list(ar = c(0.1, 0.1, 0.1, 0.1)), n)
    z <- embed(y, 9)
    y <- z[, 1]
    X <- z[, -1]
    s <- sapply(1:8, function(i)ic(y, X[,1:i]))
    out[i, ] <- apply(s, 1, which.min)
  }
  df <- setNames(data.frame(n=n, t(colMeans(out==4))), c("n", "AIC", "BIC"))
  df
}
bigTs <- c(50, 100, 5000) 
lapply(bigTs, function(i) sim(1000, i)) %>% bind_rows
## Source: local data frame [3 x 3]
## 
##       n   AIC   BIC
##   (dbl) (dbl) (dbl)
## 1    50 0.065 0.006
## 2   100 0.122 0.019
## 3  5000 0.755 0.997

\(T\) өсөх тусам сонгох магадлал нэмэгдэж байна. \(BIC\) эрс нийцтэй нь харагдах боловч түүврийн тоо их байхыг шаардана. Дундаж хэмжээний (moderate size) түүвэрт AIC арай илүү.

1.4 S2

ar1sim <- function(n, phi){
  e <- rnorm(n)
  if(phi<1){
    arima.sim(list(ar=phi), n=1000, innov=e)
  }else{
    cumsum(rnorm(n))
  }
}

sim <- function(n, nsim, phi){
  tval <- rep(NA, nsim)
  for(i in 1:nsim){
    y <- ar1sim(n, phi)
    x <- y[-n]
    y <- y[-1]
    phi_hat <- sum(x*y)/sum(x^2) 
    s2 <- mean((y - x*phi_hat)^2)
    Omega <- s2/sum(x^2)
    tval[i] <- (phi_hat-phi)/sqrt(Omega)
  }
  tval
}
tvals06 <- sim(n=1000, nsim=10000, phi=0.6)
hist(tvals06, freq = FALSE)

a <- c(0.025, 0.05, 0.1, 0.9, 0.975)
quantile(tvals06, a)
##      2.5%        5%       10%       90%     97.5% 
## -1.967717 -1.661327 -1.301416  1.275872  1.917010
qnorm(a)
## [1] -1.959964 -1.644854 -1.281552  1.281552  1.959964
tvals1 <- sim(n=1000, nsim=10000, phi=1.0)
hist(tvals1, freq = FALSE)

quantile(tvals1, a)
##       2.5%         5%        10%        90%      97.5% 
## -2.2243562 -1.9474836 -1.6302291  0.8500878  1.5850808

Dickey-Fuller-ийн критик утгуудыг ийм байдлаар симуляци хийж болно.