#Model SARIMA Model SARIMA(0,1,0)(2,1,0)^12 ditulis sebagai:

\[ (1 - B)(1 - B^{12})(1 - \Phi_1 B^{12} - \Phi_2 B^{24}) y_t = a_t \]

Parameter dan Inisialisasi

n <- 500
s <- 12  # Seasonal period

# Koefisien Seasonal AR(2)
Phi <- c(0.6, -0.4)

# White noise
set.seed(123)
at <- rnorm(n + 100, mean = 0, sd = 1)

# Inisialisasi vektor
y <- rep(0, n + 100)

# Simulasi SARIMA(0,1,0)(2,1,0)[12]
for(t in (2*s + 1):(n + 100)) {
  y[t] <- Phi[1]*y[t-s] + Phi[2]*y[t-2*s] + at[t]
}

# Buang nilai awal (burn-in)
y <- y[101:(n + 100)]

# Buat sebagai time series
y_ts <- ts(y, frequency = s)
autoplot(y_ts) + 
  ggtitle("Simulasi Manual SARIMA(0,1,0)(2,1,0)[12]") +
  xlab("Waktu") + ylab("Nilai")

Hasil simulasi menunjukkan bahwa deret waktu yang dihasilkan memiliki pola yang fluktuatif dan tidak menunjukkan adanya tren atau pola musiman yang jelas, yang sesuai dengan karakteristik dari proses setelah dilakukan differencing. Nilai-nilai deret berkisar di sekitar nol dan terlihat cukup acak, yang menandakan bahwa model ini menghasilkan deret waktu yang stasioner secara musiman dan non-musiman setelah transformasi differencing dilakukan. Hal ini mencerminkan bahwa komponen acak (white noise) mendominasi perilaku deret setelah kedua jenis differencing diterapkan.

## ACF dan PACF Tanpa Differencing

acf(y_ts, main="ACF - Tanpa Differencing")

pacf(y_ts, main="PACF - Tanpa Differencing")

ACF : Plot ACFtanpa differencing menunjukkan autokorelasi yang sangat tinggi pada lag ke-1 (mendekati 1) dan langsung turun drastis pada lag berikutnya. Pola ini menandakan bahwa data asli bersifat non-stasioner, karena adanya autokorelasi kuat pada lag awal. Ini mengindikasikan perlunya differencing untuk mencapai stasioneritas. PACF : Plot PACF menunjukkan puncak signifikan pada lag ke-1, lalu segera turun ke nilai mendekati nol pada lag-lag berikutnya. Ini mengonfirmasi bahwa terdapat autokorelasi langsung pada lag ke-1 saja, yang juga merupakan ciri dari data non-stasioner. Pola ini dapat terjadi pada proses yang memerlukan differencing orde 1.

Differencing Data

diff_y <- diff(diff(y_ts, lag = s), differences = 1)

autoplot(diff_y) +
  ggtitle("Setelah Differencing (d=1, D=1)") +
  xlab("Waktu") + ylab("Nilai")

Setelah dilakukan transformasi ini, pola data tampak berfluktuasi secara acak di sekitar garis nol dan tidak menunjukkan adanya pola tren jangka panjang maupun pola musiman yang jelas. Hal ini merupakan indikasi bahwa proses differencing berhasil menghilangkan komponen tren dan musiman, sehingga data menjadi stasioner dalam ragam dan rata-rata.

ACF dan PACF Setelah Differencing

acf(diff_y, main = "ACF - Setelah Differencing")

pacf(diff_y, main = "PACF - Setelah Differencing")

Grafik ACF dan PACF sebelum dilakukan differencing menunjukkan nilai autokorelasi yang signifikan pada lag awal, terutama lag 1, yang menunjukkan adanya non-stasioneritas pada data. Setelah dilakukan differencing non-musiman dan musiman (d=1, D=1), grafik deret waktu tampak lebih stabil di sekitar nol, yang mengindikasikan bahwa data telah mencapai kestasioneran.