ar=c(5/6,-1/6)
ma=c(-1.7,0.72)

# Wald decomposition
ARMAtoMA(ar=ar,ma=ma,lag.max=8)

# theoretical ACF
(rho =ARMAacf(ar=ar, ma=ma, lag.max=20))

# simulate data
y=arima.sim(list(ar=ar,ma=ma),n=1000)

# sample ACF
acf(y)
points(0:20,rho)

# Now, PACF
(rho =ARMAacf(ar=ar, ma=ma, lag.max=20, pacf=TRUE))
pacf(y)
points(1:20,rho)

# Exercise 3.5

library(astsa)
plot(gnp)
plot(log(gnp))
y=diff(log(gnp))
plot(y)
acf(y)
pacf(y)
(fit01=arima(y, order=c(0,0,1)))
(fit10=arima(y, order=c(1,0,0))) 
(fit11=arima(y, order=c(1,0,1))) 

AIC(fit01,fit10,fit11)
BIC(fit01,fit10,fit11)

# Both AIC and BIC prefer AR(1).

# Residual diagnostics

plot(resid(fit10))
acf(resid(fit10))
pacf(resid(fit10))

# Looks pretty much like white noise.

# Test for normality of residuals
qqnorm(resid(fit10))
qqline(resid(fit10))


