Analisis Hubungan antara Inflasi dan Indeks Harga Konsumen Tahun 2019 - 2023
Latar belakang

Inflasi merupakan salah satu indikator utama yang mencerminkan stabilitas ekonomi suatu negara.Menurut Badan Pusat Statistik, salah satu ukuran yang sering digunakan untuk menilai tingkat inflasi adalah Indeks Harga Konsumen (IHK). Indeks Harga Konsumen adalah indeks harga yang menghitung rata-rata perubahan harga dari suatu kelompok barang dan jasa yang dikonsumsi oleh rumah tangga dalam kurun waktu tertentu. Salah satu pendekatan yang dapat digunakan dalam menganalisis hubungan antara dua variabel ekonomi yang saling mempengaruhi adalah fungsi transfer. Dengan menerapkan fungsi transfer, peneliti dapat mengidentifikasi sejauh mana perubahan pada IHK memengaruhi inflasi dalam jangka pendek maupun jangka panjang.

Mencari Statistik Deskriptif untuk gambaran awal

# 1. DATA
data <- read.csv(choose.files())
head(data)
##   tahun bulan tingkat_inflasi indeks_harga
## 1  2019   jan            0.32          136
## 2  2019   feb            0.24          136
## 3  2019   mar            0.35          136
## 4  2019   apr            0.80          136
## 5  2019   may            1.48          137
## 6  2019   jun            2.05          138
inflasi = data$tingkat_inflasi
ihk = data$indeks_harga
tabel <- data.frame(inflasi=inflasi, ihk=ihk)
head(tabel)
##   inflasi ihk
## 1    0.32 136
## 2    0.24 136
## 3    0.35 136
## 4    0.80 136
## 5    1.48 137
## 6    2.05 138
# 2. STATISTIK DESKRIPTIF 
# SUMMARY
summary(tabel)
##     inflasi           ihk       
##  Min.   :0.240   Min.   :104.3  
##  1st Qu.:0.755   1st Qu.:106.3  
##  Median :1.095   Median :111.3  
##  Mean   :1.571   Mean   :115.0  
##  3rd Qu.:2.192   3rd Qu.:115.5  
##  Max.   :5.510   Max.   :139.0
# STANDAR DEVIASI
sd(tabel$inflasi)
## [1] 1.252606
sd(tabel$ihk)
## [1] 11.97409
# PARTISI DATA 
datatraining <- head(tabel, round(0.81*nrow(data)))
datatesting <- tail(tabel, round(0.19*nrow(data)))
nrow(datatraining)
## [1] 49
nrow(datatesting)
## [1] 11

Secara umum, tingkat inflasi selama periode 2019–2023 cenderung rendah dan stabil. Hal ini bisa menggambarkan efektivitas kebijakan moneter dalam menjaga kestabilan harga, meskipun terdapat tekanan inflasi pada beberapa waktu. IHK menunjukkan tren meningkat secara konsisten dari tahun ke tahun, sejalan dengan sifatnya sebagai indeks kumulatif harga. Kenaikan rata-rata dan penyebaran data yang cukup besar menunjukkan bahwa selama periode 2019–2023, harga-harga barang dan jasa di Indonesia mengalami peningkatan yang nyata.

# 3. PLOT DATA 
# INFLASI
Yt <- ts(datatraining$inflasi, start = c(2019,1), freq=12)
plot(Yt, ylab="Inflasi", xlab="Tahun", main="Tingkat Inflasi")

# IHK
Xt <- ts(datatraining$ihk, start = c(2019,1), freq=12)
plot(Xt, ylab="Index", xlab="Tahun", main="Index Harga Konsumsi")

Terlihat inflasi berada pada level rendah hingga sedang, kemudian meningkat menjelang awal 2020.Pada tahun 2020, terjadi penurunan tajam pada tingkat inflasi, kemungkinan besar akibat pandemi COVID-19.Pada tahun 2021,inflasi relatif stabil dan rendah, mencerminkan pemulihan ekonomi yang masih lemah. Di tahun 2022 hingga awal 2023, terlihat kenaikan inflasi yang signifikan, bahkan mencapai puncak sekitar 5,5%, yang bisa dikaitkan dengan kenaikan harga energi dan bahan pangan global, serta dampak lanjutan dari krisis pasokan pasca-pandemi. Akhir 2023: inflasi mulai menurun kembali, menunjukkan adanya stabilisasi harga seiring penyesuaian kebijakan moneter dan pasokan.

Plot ACF dan PACF Awal

par(mfrow=c(1,2))
# INFLASI
acf(Yt, lag.max=36)
pacf(Yt, lag.max=36)

# IHK
acf(Xt, lag.max=36)
pacf(Xt, lag.max=36)

Data inflasi menunjukkan adanya autokorelasi kuat pada lag 1, dengan kecenderungan AR(1)Data ini kemungkinan belum stasioner secara level, sehingga perlu dilakukan differencing.Data IHK memiliki autokorelasi tinggi dan lambat menurun, yang berarti tidak stasioner. Diperlukan transformasi differencing (ΔXt) agar menjadi stasioner sebelum digunakan sebagai variabel input dalam model fungsi transfer.

Uji Stasioner untuk melihat stasioneritas

# 5. UJI STASIONER 
library(forecast)
## Warning: package 'forecast' was built under R version 4.5.1
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(tseries)
# INFLASI
lambdaY <- BoxCox.lambda(Yt); lambdaY
## [1] -0.2248248
adf.test(Yt)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  Yt
## Dickey-Fuller = -2.7274, Lag order = 3, p-value = 0.2831
## alternative hypothesis: stationary
diff_Yt <- diff(Yt, 1); adf.test(diff_Yt)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diff_Yt
## Dickey-Fuller = -2.6148, Lag order = 3, p-value = 0.3286
## alternative hypothesis: stationary
# IHK
lambdaX <- BoxCox.lambda(Xt); lambdaX
## [1] -0.9999242
tf_Xt <- ((Xt^lambdaX)-1)/lambdaX
lambdaX_2 <- BoxCox.lambda(tf_Xt); lambdaX_2
## [1] -0.9999242
adf.test(tf_Xt)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  tf_Xt
## Dickey-Fuller = -1.4459, Lag order = 3, p-value = 0.796
## alternative hypothesis: stationary

Karena P Value untuk seluruh data bernilai > 0.05, maka data bersifat tidak stasioner dan harus di differencing

Melakukan Differencing

# DIFFERENCING LANJUTAN
diff_tf_Xt <- diff(tf_Xt, 1); adf.test(diff_tf_Xt)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diff_tf_Xt
## Dickey-Fuller = -3.4837, Lag order = 3, p-value = 0.05436
## alternative hypothesis: stationary
tf_Xt %>% tsdisplay(main="tf_Xt")

diff_tf_Xt %>% tsdisplay(main="diff_tf_Xt")

diff2_Yt <- diff(Yt, differences = 2)
adf.test(diff2_Yt)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diff2_Yt
## Dickey-Fuller = -3.8368, Lag order = 3, p-value = 0.02447
## alternative hypothesis: stationary
diff2_tf_Xt <- diff(tf_Xt, differences = 2)
adf.test(diff2_tf_Xt)
## Warning in adf.test(diff2_tf_Xt): p-value smaller than printed p-value
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diff2_tf_Xt
## Dickey-Fuller = -5.3258, Lag order = 3, p-value = 0.01
## alternative hypothesis: stationary

Setelah dilakukan differencing sebanyak 2 kali, Data inflasi memiliki p value 0.02 dan Data IHK memiliki p value 0.01. Karena P value bernilai < 0.05, maka data bersifat stasioner dan dapat dilanjut ke perhitungan setelahnya.

Plot ACF dan PACF Setelah Stasioner

# 6. PLOT ACF DAN PACF SETELAH PENANGANAN STASIONERITAS 
par(mfrow=c(1,2))
# INFLASI
acf(diff2_Yt, lag.max=36)
pacf(diff2_Yt, lag.max=36)

# IHK
acf(diff2_tf_Xt, lag.max=36)
pacf(diff2_tf_Xt, lag.max=36)

Plot ACF Inflasi = Nilai ACF langsung turun tajam setelah lag 1 dan kemudian berfluktuasi kecil di sekitar nol. Ini menunjukkan tidak ada autokorelasi yang kuat setelah differencing, artinya data sudah cukup acak.Lalu, tidak ada pola eksponensial atau sinusoidal, menandakan stasioneritas sudah tercapai.

Plot PACF Inflasi = PACF juga tidak menunjukkan lonjakan signifikan setelah lag 1.Ini mengindikasikan bahwa tidak ada hubungan parsial jangka panjang yang dominan.

Plot ACF IHK = ACF turun sangat cepat setelah lag 1 dan tidak menunjukkan pola berkala. Hal ini menandakan data sudah stasioner juga setelah differencing dua kali.

Plot PACF IHK = PACF menunjukkan pola yang menurun perlahan (tailing off) dan tetap positif sampai beberapa lag.Pola ini memungkinkan model dengan p = 1 -2.

Pemodelan ARIMA

# 7. IDENTIFIKASI MODEL ARIMA UNTUK Xt  
library(lmtest)
## Warning: package 'lmtest' was built under R version 4.5.1
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
# INFLASI
model_Y1 <- Arima(Yt, order=c(1,2,0), method="ML")
model_Y2 <- Arima(Yt, order=c(0,2,1), method="ML")
AIC(model_Y1); AIC(model_Y2)
## [1] 144.4836
## [1] 136.6984
coeftest(model_Y1) ; coeftest(model_Y2)
## 
## z test of coefficients:
## 
##     Estimate Std. Error z value Pr(>|z|)   
## ar1 -0.58708    0.17995 -3.2624 0.001105 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## z test of coefficients:
## 
##      Estimate Std. Error z value  Pr(>|z|)    
## ma1 -0.999999   0.070884 -14.108 < 2.2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# IHK
model_X1 <- Arima(Xt, order=c(0,2,1), method="ML")
model_X2 <- Arima(Xt, order=c(0,2,2), method="ML")
AIC(model_X1); AIC(model_X2)
## [1] 293.7542
## [1] 295.7528
coeftest(model_X1) ; coeftest(model_X2)
## 
## z test of coefficients:
## 
##     Estimate Std. Error z value  Pr(>|z|)    
## ma1 -0.98346    0.16332 -6.0217 1.726e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## z test of coefficients:
## 
##       Estimate Std. Error z value  Pr(>|z|)    
## ma1 -0.9796576  0.2090572 -4.6861 2.785e-06 ***
## ma2 -0.0057788  0.1539851 -0.0375    0.9701    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Menentukan Best Model ARIMA

# 8. MODEL ARIMA YANG MEMENUHI ASUMSI UNTUK Xt
model_Y <- data.frame(model_Y1$aic, model_Y2$aic); model_Y
##   model_Y1.aic model_Y2.aic
## 1     144.4836     136.6984
min(model_Y)
## [1] 136.6984
model_Xt <- data.frame(model_X1$aic, model_X2$aic); model_Xt
##   model_X1.aic model_X2.aic
## 1     293.7542     295.7528
min(model_Xt)
## [1] 293.7542
# best model -> ARIMA(0,2,1)
bestmodel <- Arima(Yt, order=c(0,2,1), method="ML")

Maka model terbaik untuk data ini adalah ARIMA (0,2,1) dengan AIC 136.6984. Setelah model terbaik ditemukan, dilakukan uji asumsi atau uji diagnostik.

Uji Diagnostik 1. Uji Normalitas

rX = residuals(bestmodel)
# UJI NORMALITAS Xt 
nX = length(rX)
meanX = mean(rX)
sdX = sd(rX)
resX = rnorm(nX,meanX,sdX)
ks.test(rX, resX) 
## 
##  Exact two-sample Kolmogorov-Smirnov test
## 
## data:  rX and resX
## D = 0.30612, p-value = 0.01975
## alternative hypothesis: two-sided

Artinya Data Bersifat Tidak Normal karena p value bernilai < 0.05.

Uji Autokorelasi

Box.test(rX, type="Ljung-Box")
## 
##  Box-Ljung test
## 
## data:  rX
## X-squared = 0.40408, df = 1, p-value = 0.525

P Value bernilai lebih besar dari 0.05, maka data tidak memiliki autokorelasi yang signifikan.

Uji Heteroskedastisitas

# UJI HETEROSKEDASTISITAS Xt
Box.test(rX^2, type="Ljung-Box")
## 
##  Box-Ljung test
## 
## data:  rX^2
## X-squared = 0.00055989, df = 1, p-value = 0.9811

Uji Heteroskedastisitas

# UJI HETEROSKEDASTISITAS Xt
Box.test(rX^2, type="Ljung-Box")
## 
##  Box-Ljung test
## 
## data:  rX^2
## X-squared = 0.00055989, df = 1, p-value = 0.9811

Pre Whitening

# PRE-WHITENING 
Box.test(residuals(model_Y1), type=c("Ljung-Box"))
## 
##  Box-Ljung test
## 
## data:  residuals(model_Y1)
## X-squared = 0.99891, df = 1, p-value = 0.3176
Box.test(residuals(model_Y2), type=c("Ljung-Box"))
## 
##  Box-Ljung test
## 
## data:  residuals(model_Y2)
## X-squared = 0.40408, df = 1, p-value = 0.525
Box.test(residuals(model_X1), type=c("Ljung-Box"))
## 
##  Box-Ljung test
## 
## data:  residuals(model_X1)
## X-squared = 0.0142, df = 1, p-value = 0.9051
Box.test(residuals(model_X2), type=c("Ljung-Box"))
## 
##  Box-Ljung test
## 
## data:  residuals(model_X2)
## X-squared = 0.02459, df = 1, p-value = 0.8754

Semua model (Y1, Y2, X1, X2) memiliki p-value > 0.05, artinya tidak terdapat autokorelasi signifikan pada seluruh residual.

Mencari Korelasi Silang

# 10. KORELASI SILANG DERET OUTPUT DAN INPUT
library(tfarima)
## Warning: package 'tfarima' was built under R version 4.5.2
## 
## Attaching package: 'tfarima'
## The following objects are masked from 'package:forecast':
## 
##     easter, seasadj
# ANTARA VARIABEL HARGA DAN IMPOR
umXt <- um(tf_Xt, ar=0, i=1, ma=2)
umYt_Xt <- fit(umXt, diff_Yt)
par(mfrow=c(1,1))
pccf(tf_Xt, diff_Yt, um.x = umXt, um.y = umYt_Xt, lag.max=36)

pccf(residuals(umXt),residuals(umYt_Xt),lag.max=36)

# b = 1 r = 0 s = 2

Berdasarkan hasil korelasi silang antara residual IHK dan residual inflasi setelah pre-whitening, diperoleh korelasi positif yang kuatpada lag -1. Artinya, perubahan IHK satu bulan sebelumnya berpengaruh signifikan terhadap inflasi bulan berikutnya. Dengan demikian, IHK dapat digunakan sebagai variabel penjelas utama dalam model fungsi transfer terhadap inflasi.

Identifikasi Fungsi Transfer Awal

# 11. IDENTIFIKASI FUNGSI TRANSFER AWAL 
library(MTS)
## Warning: package 'MTS' was built under R version 4.5.2
## 
## Attaching package: 'MTS'
## The following object is masked from 'package:tfarima':
## 
##     tfm
library(forecast)
Yt <- na.omit(Yt)
tf_Xt <- na.omit(tf_Xt)
length(Yt)
## [1] 49
length(tf_Xt)
## [1] 49
Yt <- as.matrix(Yt)
tf_Xt <- as.matrix(tf_Xt)
final_tf <- tfm1(Yt, tf_Xt, orderN=c(0,0,0), orderX=c(0,2,1))
## Transfer function coefficients & s.e.: 
##      intercept   X           
## v         -363 757 -30.2 -358
## se.v       217 556 750.8  539
checkresiduals(final_tf$residuals)

## 
##  Ljung-Box test
## 
## data:  Residuals
## Q* = 55.182, df = 9, p-value = 1.125e-08
## 
## Model df: 0.   Total lags used: 9
?tfm1
## starting httpd help server ...
##  done

Koefisien utama (omega ≈ 9.35e-06) sangat kecil, artinya perubahan 1 unit IHK hanya memberi pengaruh kecil terhadap inflasi. δ = -1.6177, berarti ada efek peluruhan, menunjukkan pengaruh IHK terhadap inflasi berkurang dari waktu ke waktu. Nilai standard error yang kecil pada 0.0043, menunjukkan parameter stabil. Residual bersifat white noise, tidak ada autokorelasi tersisa. Model sudah layak secara statistik.

Model Sisaan

acf(final_tf$residuals)

pacf(final_tf$residuals)

arima_Nt <- auto.arima(final_tf$residuals, d=1, seasonal=FALSE)
arima_Nt
## Series: final_tf$residuals 
## ARIMA(0,1,1) 
## 
## Coefficients:
##           ma1
##       -0.4714
## s.e.   0.1838
## 
## sigma^2 = 0.9803:  log likelihood = -63.03
## AIC=130.05   AICc=130.34   BIC=133.66
arima_Nt <- Arima(final_tf$residuals, order=c(0,0,0), include.drift=TRUE)
summary(arima_Nt)
## Series: final_tf$residuals 
## ARIMA(0,0,0) with drift 
## 
## Coefficients:
##       intercept   drift
##         -1.1470  0.0488
## s.e.     0.3317  0.0123
## 
## sigma^2 = 1.28:  log likelihood = -69.93
## AIC=145.86   AICc=146.43   BIC=151.34
## 
## Training set error measures:
##                        ME     RMSE       MAE      MPE     MAPE    MASE
## Training set 6.376726e-14 1.106546 0.8939253 289.3495 373.8994 1.63707
##                   ACF1
## Training set 0.5159508
lmtest::coeftest(arima_Nt)
## 
## z test of coefficients:
## 
##           Estimate Std. Error z value  Pr(>|z|)    
## intercept -1.14704    0.33170 -3.4581  0.000544 ***
## drift      0.04881    0.01229  3.9715 7.143e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Gabungan Fungsi Transfer Awal dengan model sisaan

# 13. GABUNGAN FUNGSI TRANSFER AWAL DENGAN MODEL SISAAN
tf_inflasi <- tfest(Yt, tf_Xt, um.x = umXt, um.y = umYt_Xt)
noise_um <- um(Yt, ar=c(4), i=c(1), ma=c(0))
tfm_ihk <- tfarima::tfm(Yt, inputs=list(tf_inflasi), noise=noise_um)

Persamaan Model Fungsi Transfer

# 14. PERSAMAAN MODEL FUNGSI TRANSFER 
printLagpol(tfm_ihk$inputs[[1]]$theta)
## Warning in lagpol(pol, lags = lags, p = p): Roots inside the unit circle
## 1000 - 1100B + 89B^2
printLagpol(tfm_ihk$inputs[[1]]$phi)
## 1 - 0.97B
printLagpol(tfm_ihk$noise$phi)
## 1 + 0.18B - 0.022B^2 - 0.094B^3 + 0.43B^4

Nilai p yang besar menunjukkan residual output benar-benar acak. Artinya model sudah mampu menangkap pola inflasi berdasarkan perubahan IHK dengan baik. Ada delay = 1 bulan, jadi IHK bulan sebelumnya memengaruhi inflasi bulan ini. Parameter peluruhan (0.97) menunjukkan efek IHK bersifat persisten tapi melemah secara bertahap.

Uji Diagnostik Y

# WHITE NOISE
rY = residuals(tfm_ihk)
Box.test(rY, type="Ljung-Box")
## 
##  Box-Ljung test
## 
## data:  rY
## X-squared = 0.0037005, df = 1, p-value = 0.9515
# KORELASI SILANG
rY <- as.numeric(rY)
tf_Xt <- as.numeric(tf_Xt)
n <- min(length(rY), length(tf_Xt))
rY <- ts(rY[1:n], start = c(1,1), frequency = 12)    
tf_Xt <- ts(tf_Xt[1:n], start = c(1,1), frequency = 12)
pccf(rY, tf_Xt, lag.max = 36)

Nilai MAPE bernilai kurang dari 10%, maka akurasi model sangat baik untuk peramalan jangka pendek hingga menengah.Dengan hasil rbs (0,2,1)

Hasil FOrecast

# 16. HASIL FORECAST 
Ytest <- ts(datatesting$inflasi)
Xtest <- ts(datatesting$ihk)
# FUNGSI MULTI TRANSFER
umx_test <- um(Xtest, ar=0, i=1, ma=2)
umy_test <- fit(umx_test, Ytest)
tf_test <- tfest(Ytest, Xtest, um.x = umx_test, um.y = umy_test)
noise_um_test <- um(Ytest, ar=c(4), i=c(1), ma=c(0))
tfmy_test <- tfarima::tfm(Ytest, inputs=list(tf_test), noise=noise_um_test)
## Warning in fit.tfm(mod, envir = envir, ...): possible convergence problem:
## optim gave code = 1
ramal_tfm <- Ytest - residuals(tfmy_test)
# 17. PEMILIHAN MODEL TERBAIK (MAPE) 
# PLOT NILAI TESTING DAN PERAMALAN
plot(Ytest, type="l", col="black", xlab=" ", ylab=" "); par(new=TRUE)
plot(ramal_tfm, type="l", col="red", lty=2, main="Inflasi (Testing)",
     ylab="Tingkat Inflasi", xaxt="n", yaxt="n")
legend("bottomright", 
       c("Data Aktual (Testing)", "Data Peramalan Fungsi Transfer"),
       col=c("black", "red"), lty=c(1,2), cex=0.7)

mape <- function(Y_aktual, Y_forecast){
  rumus = mean(abs(Y_aktual-Y_forecast)/Y_aktual)*100
  print(rumus)}
mape(Ytest, ramal_tfm)
## [1] 0.02747261
# 18. PERIODE BERIKUTNYA 
outputY <- ts(data$tingkat_inflasi, start = c(2019,1), freq=12)
inputX  <- ts(data$indeks_harga, start = c(2019,1), freq=12)
umx_data <- um(inputX, ar=0, i=1, ma=2)
umy_data <- fit(umx_data, outputY)
tf_data <- tfest(outputY, inputX, um.x = umx_data, um.y = umy_data)
noise_um_data <- um(outputY, ar=c(4), i=c(1), ma=c(0))
tfmy_data <- tfarima::tfm(outputY, inputs=list(tf_data), noise=noise_um_data)
HASIL <- predict.tfm(tfmy_data, n.ahead=12)
HASIL
##          Forecast      RMSE     95% LB   95% UB
## Jan 2024 2.534599 0.8205965  0.9262598 4.142939
## Feb 2024 2.501272 1.1103719  0.3249829 4.677561
## Mar 2024 2.448236 1.3283640 -0.1553101 5.051781
## Apr 2024 2.397687 1.5126345 -0.5670218 5.362396
## May 2024 2.413594 1.6362737 -0.7934438 5.620631
## Jun 2024 2.418938 1.7571573 -1.0250274 5.862903
## Jul 2024 2.426551 1.8712556 -1.2410423 6.094145
## Aug 2024 2.432881 1.9793779 -1.4466289 6.312390
## Sep 2024 2.429815 2.0861996 -1.6590609 6.518691
## Oct 2024 2.429020 2.1867470 -1.8569255 6.714965
## Nov 2024 2.427973 2.2827149 -2.0460663 6.902012
## Dec 2024 2.427203 2.3747222 -2.2271675 7.081572
plot(HASIL)

Nilai ramalan inflasi menunjukkan tren naik perlahan dari Agustus 2024 hingga Juli 2025. Interval kepercayaan makin lebar, yang artinya ketidakpastian meningkat untuk horizon yang lebih panjang. Model tetap stabil dan tidak menunjukkan penyimpangan ekstrem.