ARIMA(2,1,1) Model
\[
y_t = y_{t-1} + \phi_1 (y_{t-1} - y_{t-2}) + \phi_2 (y_{t-2} - y_{t-3})
+ a_t + \theta_1 a_{t-1}
\]
set.seed(123)
at <- rnorm(1000, mean = 0, sd = 2)
phi1 <- 0.7
phi2 <- -0.8
theta1 <- 0.65
n <- length(at)
y <- numeric(n)
# Initialize first three values of y (e.g., zero or any arbitrary values)
y[1] <- 0
y[2] <- 0
y[3] <- 0
for (t in 4:n) {
y[t] <- y[t-1] +
phi1 * (y[t-1] - y[t-2]) +
phi2 * (y[t-2] - y[t-3]) +
at[t] +
theta1 * at[t-1]
}
y <- y[-(1:100)]
ts.plot(y)

par(mfrow=c(1,2))
acf(y)
pacf(y)

par(mfrow=c(1,2))
acf(diff(y,1))
pacf(diff(y,1))

LS0tCnRpdGxlOiAiQVJJTUEgTW9kZWwgU2ltdWxhdGlvbiIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKQVJJTUEoMiwxLDEpIE1vZGVsCgokJAp5X3QgPSB5X3t0LTF9ICsgXHBoaV8xICh5X3t0LTF9IC0geV97dC0yfSkgKyBccGhpXzIgKHlfe3QtMn0gLSB5X3t0LTN9KSArIGFfdCArIFx0aGV0YV8xIGFfe3QtMX0KJCQKCgpgYGB7cn0Kc2V0LnNlZWQoMTIzKQphdCAgICAgPC0gcm5vcm0oMTAwMCwgbWVhbiA9IDAsIHNkID0gMikKcGhpMSAgIDwtIDAuNwpwaGkyICAgPC0gLTAuOAp0aGV0YTEgPC0gMC42NQpgYGAKCgpgYGB7cn0KbiA8LSBsZW5ndGgoYXQpCnkgPC0gbnVtZXJpYyhuKQoKeVsxXSA8LSAwCnlbMl0gPC0gMAp5WzNdIDwtIDAKCmZvciAodCBpbiA0Om4pIHsKICB5W3RdIDwtIHlbdC0xXSArCiAgICBwaGkxICogKHlbdC0xXSAtIHlbdC0yXSkgKwogICAgcGhpMiAqICh5W3QtMl0gLSB5W3QtM10pICsKICAgIGF0W3RdICsKICAgIHRoZXRhMSAqIGF0W3QtMV0KfQoKeSA8LSB5Wy0oMToxMDApXQpgYGAKCgpgYGB7cn0KdHMucGxvdCh5KQpgYGAKCmBgYHtyfQpwYXIobWZyb3c9YygxLDIpKQphY2YoeSkKcGFjZih5KQpgYGAKCmBgYHtyfQpwYXIobWZyb3c9YygxLDIpKQphY2YoZGlmZih5LDEpKQpwYWNmKGRpZmYoeSwxKSkKYGBgCgo=