set.seed(1006)
wn <- rnorm(300)
ts.plot(wn)
par(mfrow = c(1, 2))
acf(wn)
acf(wn, xlim = c(1, 20))
Terlihat dari plot ACF bahwa sebagian besar nilai autokorelasi white
noise berada dalam batas signifikansi. Tidak terdapat pola
autokorelasi yang jelas dan sistematis pada lag-lag pengamatan.
Dibangkitkan sebanyak 300 data dengan model MA(2) yang memiliki nilai
parameter \(\theta_1 = 0.4\) dan \(\theta_2 = 0.6\).
Dengan persamaan :
\[
y_t = e_t-0.4e_{t-1}-0.6e_{t-2}
\]
set.seed(1006)
ma <- c(1:300)
ma[1:2] <- wn[1:2]
for(i in 3:300){
ma[i] <- wn[i] + 0.4 * wn[i - 1] + 0.6 * wn[i - 2]
}
ma
## [1] -1.4739963259 0.1630438984 -1.8233335455 0.5869687062 -2.8775479323
## [6] -2.3349491893 -1.9879446163 0.4053085867 1.4613022467 1.7986725208
## [11] 0.9484027052 -1.5341725196 -2.6331987721 -2.1161172195 0.4323232680
## [16] 1.8177119270 3.1642350299 0.4182326308 0.1355938129 -2.2547044228
## [21] -1.6886162635 -1.2113845551 -1.4722777196 -0.5636253658 0.1185662645
## [26] -0.1212423404 0.0875119038 0.1553722215 0.7164963591 -0.0719553545
## [31] 0.7431608711 2.2384795311 2.5434534314 3.1116816020 2.0150642673
## [36] 0.6886639432 0.6959375597 0.2670887182 1.4542090655 -0.4510777513
## [41] 1.0938201445 -1.9853864916 0.3053912679 -1.9145440323 0.5011358653
## [46] -1.8013051647 -0.6559428905 -1.5703379489 0.2156544908 0.4731440573
## [51] 1.5149247749 -1.0276340124 -2.0930042560 -1.6542801823 -0.3008739627
## [56] 0.1209968419 0.5708618066 -0.9964167398 1.3423568467 -0.8975736738
## [61] 1.0134117229 -2.1274563835 -2.2296230958 -3.5986663306 -1.8566484706
## [66] 1.1946735638 -0.7453737481 2.5413895450 -1.0833644269 -1.0994021612
## [71] -2.1767148329 -1.4780129277 1.8523479376 -0.2148281820 1.7815209050
## [76] -0.0311005186 2.0909608975 0.5013194999 0.8994722638 -1.1529970764
## [81] -1.8325081264 -0.1963260418 -1.6327174171 0.6706392075 -0.2484042831
## [86] -0.5413951531 -0.8442114317 -0.2954641395 -0.4304010826 -0.6594845674
## [91] -0.7808547211 -0.3409387511 -1.3747464945 -0.2660592640 -1.1315208987
## [96] -0.1632847725 1.2627326167 -1.0363172996 0.4986645306 -0.0106428139
## [101] -0.0007249589 0.3330516950 0.2398782361 0.1149384128 -0.0789822649
## [106] 0.1962068138 0.7615295059 -0.3248740552 0.8626674904 -0.1696954154
## [111] -0.9401971881 -0.1497367331 1.5297498141 0.3823678763 2.0122469241
## [116] -0.8240881413 0.2455766878 -1.0985708285 -1.8558388671 -2.7722868783
## [121] -3.4268205512 -2.1473855417 -2.6747228776 -0.3733083658 -1.4235037821
## [126] 2.0389796264 0.8932764920 0.4548618729 -0.7387923855 0.3908711655
## [131] -1.1820243682 -0.3765702922 -0.5188690708 -0.4944268773 0.4671263914
## [136] 0.0840130936 -0.2060265306 0.6211878468 0.1398906497 -0.2038670839
## [141] 1.5665590300 2.3198760030 1.3529132749 1.6061564005 -1.5571533908
## [146] -1.3253443162 0.5080177056 0.3901050464 1.6419700003 1.2731097727
## [151] 1.5449978479 1.4380414824 -0.2406464124 -1.0138376451 -0.6997379690
## [156] 0.1473829054 -0.1453197027 0.1073556239 -0.0729203418 -0.9447402241
## [161] -1.4001213581 -1.4116130528 -1.6558084847 0.0465240066 0.4218638228
## [166] 0.3348743728 0.9595429839 1.3779041758 1.5067503463 1.8570524574
## [171] 0.8787372499 1.7349534969 2.5263353600 1.1701693498 0.6558404985
## [176] 1.0543822607 1.1922572834 0.5132115187 -0.0416217934 -0.3266817346
## [181] -1.6735707173 0.5710472929 0.6018568705 2.4638712718 1.5780604760
## [186] -0.1310742081 -0.8419174576 -1.9326039593 -2.4052924763 -0.1891307733
## [191] -1.3220896288 -0.5223671367 0.5626187111 0.9338803384 1.1176300684
## [196] 0.4099522772 0.5975692996 -0.6173520256 -1.6147162533 -0.8302265518
## [201] -0.8776240631 0.9066218588 0.4435324061 -0.6240007456 0.1590695256
## [206] -0.3451133268 -0.3890569289 1.8756359412 1.0890359005 1.4563353163
## [211] 1.4640179689 -0.6386314490 0.0604385879 -0.4113112095 0.4163217252
## [216] 0.4284601553 -0.5962946523 -0.9730854132 -1.5249098912 -0.8603542899
## [221] 0.8306819496 0.8078928376 1.9236815419 1.5189878497 -0.1842706562
## [226] 0.4744019242 -0.2953049278 0.6444642202 0.7992565992 2.0121842655
## [231] 1.8967802147 1.1516373543 0.1529110645 -1.2684386529 0.4691484821
## [236] 0.5265666471 2.6162235336 1.7395218386 2.8835153660 0.8228105125
## [241] -0.0158337183 -0.4038757491 0.0454939028 1.4220816031 0.2471787473
## [246] 1.6843069886 0.6183226518 1.1358949089 0.2085473872 1.7734152421
## [251] 0.9229315038 -0.1556898130 0.7816775883 -1.3453447917 -0.0748491138
## [256] -0.8088898217 1.2252383099 3.1321074844 2.4515997892 1.5415055657
## [261] -0.1181577457 -1.0389435171 0.0861647283 -0.2073457674 -0.4569955317
## [266] 1.6828759592 -0.1328357575 0.5608117792 0.3316448911 -0.0435822006
## [271] 0.9464406149 1.3890624634 1.2791136918 0.4100758866 0.8393627024
## [276] 1.0443293270 0.8764036981 -0.6570696055 -0.5244058166 -1.9386537868
## [281] -0.6623331320 -0.4716658033 2.7274354546 1.5760667404 0.6837193900
## [286] -1.1017280716 -0.1709430490 -1.2845304096 -0.9143829787 -0.6125012508
## [291] -1.3864382353 -0.5742734855 -1.4820138021 -1.5756037272 -0.6370123293
## [296] -0.7034826438 0.4172360774 0.0513905013 -0.0414934552 -0.5418481208
arima.sim()ma2 <- arima.sim(list(order=c(0,0,2), ma=c(0.4, 0.6)), n=300)
ma2
## Time Series:
## Start = 1
## End = 300
## Frequency = 1
## [1] -1.8233335455 0.5869687062 -2.8775479323 -2.3349491893 -1.9879446163
## [6] 0.4053085867 1.4613022467 1.7986725208 0.9484027052 -1.5341725196
## [11] -2.6331987721 -2.1161172195 0.4323232680 1.8177119270 3.1642350299
## [16] 0.4182326308 0.1355938129 -2.2547044228 -1.6886162635 -1.2113845551
## [21] -1.4722777196 -0.5636253658 0.1185662645 -0.1212423404 0.0875119038
## [26] 0.1553722215 0.7164963591 -0.0719553545 0.7431608711 2.2384795311
## [31] 2.5434534314 3.1116816020 2.0150642673 0.6886639432 0.6959375597
## [36] 0.2670887182 1.4542090655 -0.4510777513 1.0938201445 -1.9853864916
## [41] 0.3053912679 -1.9145440323 0.5011358653 -1.8013051647 -0.6559428905
## [46] -1.5703379489 0.2156544908 0.4731440573 1.5149247749 -1.0276340124
## [51] -2.0930042560 -1.6542801823 -0.3008739627 0.1209968419 0.5708618066
## [56] -0.9964167398 1.3423568467 -0.8975736738 1.0134117229 -2.1274563835
## [61] -2.2296230958 -3.5986663306 -1.8566484706 1.1946735638 -0.7453737481
## [66] 2.5413895450 -1.0833644269 -1.0994021612 -2.1767148329 -1.4780129277
## [71] 1.8523479376 -0.2148281820 1.7815209050 -0.0311005186 2.0909608975
## [76] 0.5013194999 0.8994722638 -1.1529970764 -1.8325081264 -0.1963260418
## [81] -1.6327174171 0.6706392075 -0.2484042831 -0.5413951531 -0.8442114317
## [86] -0.2954641395 -0.4304010826 -0.6594845674 -0.7808547211 -0.3409387511
## [91] -1.3747464945 -0.2660592640 -1.1315208987 -0.1632847725 1.2627326167
## [96] -1.0363172996 0.4986645306 -0.0106428139 -0.0007249589 0.3330516950
## [101] 0.2398782361 0.1149384128 -0.0789822649 0.1962068138 0.7615295059
## [106] -0.3248740552 0.8626674904 -0.1696954154 -0.9401971881 -0.1497367331
## [111] 1.5297498141 0.3823678763 2.0122469241 -0.8240881413 0.2455766878
## [116] -1.0985708285 -1.8558388671 -2.7722868783 -3.4268205512 -2.1473855417
## [121] -2.6747228776 -0.3733083658 -1.4235037821 2.0389796264 0.8932764920
## [126] 0.4548618729 -0.7387923855 0.3908711655 -1.1820243682 -0.3765702922
## [131] -0.5188690708 -0.4944268773 0.4671263914 0.0840130936 -0.2060265306
## [136] 0.6211878468 0.1398906497 -0.2038670839 1.5665590300 2.3198760030
## [141] 1.3529132749 1.6061564005 -1.5571533908 -1.3253443162 0.5080177056
## [146] 0.3901050464 1.6419700003 1.2731097727 1.5449978479 1.4380414824
## [151] -0.2406464124 -1.0138376451 -0.6997379690 0.1473829054 -0.1453197027
## [156] 0.1073556239 -0.0729203418 -0.9447402241 -1.4001213581 -1.4116130528
## [161] -1.6558084847 0.0465240066 0.4218638228 0.3348743728 0.9595429839
## [166] 1.3779041758 1.5067503463 1.8570524574 0.8787372499 1.7349534969
## [171] 2.5263353600 1.1701693498 0.6558404985 1.0543822607 1.1922572834
## [176] 0.5132115187 -0.0416217934 -0.3266817346 -1.6735707173 0.5710472929
## [181] 0.6018568705 2.4638712718 1.5780604760 -0.1310742081 -0.8419174576
## [186] -1.9326039593 -2.4052924763 -0.1891307733 -1.3220896288 -0.5223671367
## [191] 0.5626187111 0.9338803384 1.1176300684 0.4099522772 0.5975692996
## [196] -0.6173520256 -1.6147162533 -0.8302265518 -0.8776240631 0.9066218588
## [201] 0.4435324061 -0.6240007456 0.1590695256 -0.3451133268 -0.3890569289
## [206] 1.8756359412 1.0890359005 1.4563353163 1.4640179689 -0.6386314490
## [211] 0.0604385879 -0.4113112095 0.4163217252 0.4284601553 -0.5962946523
## [216] -0.9730854132 -1.5249098912 -0.8603542899 0.8306819496 0.8078928376
## [221] 1.9236815419 1.5189878497 -0.1842706562 0.4744019242 -0.2953049278
## [226] 0.6444642202 0.7992565992 2.0121842655 1.8967802147 1.1516373543
## [231] 0.1529110645 -1.2684386529 0.4691484821 0.5265666471 2.6162235336
## [236] 1.7395218386 2.8835153660 0.8228105125 -0.0158337183 -0.4038757491
## [241] 0.0454939028 1.4220816031 0.2471787473 1.6843069886 0.6183226518
## [246] 1.1358949089 0.2085473872 1.7734152421 0.9229315038 -0.1556898130
## [251] 0.7816775883 -1.3453447917 -0.0748491138 -0.8088898217 1.2252383099
## [256] 3.1321074844 2.4515997892 1.5415055657 -0.1181577457 -1.0389435171
## [261] 0.0861647283 -0.2073457674 -0.4569955317 1.6828759592 -0.1328357575
## [266] 0.5608117792 0.3316448911 -0.0435822006 0.9464406149 1.3890624634
## [271] 1.2791136918 0.4100758866 0.8393627024 1.0443293270 0.8764036981
## [276] -0.6570696055 -0.5244058166 -1.9386537868 -0.6623331320 -0.4716658033
## [281] 2.7274354546 1.5760667404 0.6837193900 -1.1017280716 -0.1709430490
## [286] -1.2845304096 -0.9143829787 -0.6125012508 -1.3864382353 -0.5742734855
## [291] -1.4820138021 -1.5756037272 -0.6370123293 -0.7034826438 0.4172360774
## [296] 0.0513905013 -0.0414934552 -0.5418481208 -0.6791767537 -0.7992381284
ts.plot(ma, col = "red", main = "MA(2) Manual",
ylab = "Nilai", xlab = "Waktu")
ts.plot(ma2, col = "blue", main = "MA(2) arima.sim()",
ylab = "Nilai", xlab = "Waktu")
Berdasarkan plot yang diperoleh, kedua data menunjukkan pola yang
relatif sama dan tampak stasioner dalam rataan serta ragam.
par(mfrow = c(1, 2))
acf(ma, main = "ACF MA(2) Manual")
acf(ma2, main = "ACF MA(2) arima.sim()")
Berdasarkan plot ACF, hasil pembangkitan MA(2) secara manual dan
menggunakan
arima.sim() menunjukkan pola yang hampir sama.
Autokorelasi terlihat cukup kuat pada lag 1 dan lag 2, kemudian pada lag
berikutnya nilainya cenderung mendekati nol. Hal ini sesuai dengan
karakteristik proses MA(2), yaitu ACF secara teoritis terputus setelah
lag ke-2. Beberapa spike yang masih muncul pada lag yang lebih tinggi
dapat terjadi karena variasi acak pada data sampel dengan ukuran 300
pengamatan. Secara keseluruhan, hasil ACF dari kedua metode menunjukkan
pola yang sesuai dengan proses MA(2).
par(mfrow = c(1, 2))
pacf(ma, main = "PACF MA(2) Manual")
pacf(ma2, main = "PACF MA(2) arima.sim()")
Berdasarkan plot PACF, proses MA(2) yang dibangkitkan secara manual dan
menggunakan
arima.sim() menunjukkan pola yang relatif sama.
Tidak terlihat adanya cut-off yang jelas pada lag tertentu, melainkan
nilai PACF cenderung menurun secara bertahap seiring bertambahnya lag.
Pola ini sesuai dengan karakteristik proses MA, yaitu ACF mengalami
cut-off setelah lag q, sedangkan PACF menunjukkan pola tailing off.
Perbedaan nilai PACF pada beberapa lag antara kedua metode dapat terjadi
karena adanya variasi acak pada data simulasi dengan ukuran sampel 300.
Secara keseluruhan, hasil PACF menunjukkan pola yang sesuai dengan
karakteristik proses MA(2).
library(TSA)
## Warning: package 'TSA' was built under R version 4.5.3
##
## Attaching package: 'TSA'
## The following objects are masked from 'package:stats':
##
## acf, arima
## The following object is masked from 'package:utils':
##
## tar
eacf(ma)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x o x o o x x o o o o o o
## 1 x x x x o o x o o o o o o o
## 2 x x x x o o x o x o o o o o
## 3 o x x o x o o o o x o o o o
## 4 x x x x x o o o o o o o o o
## 5 x o o x x o o o o o o o o o
## 6 o o o o x o o o o o o o o o
## 7 x o o o o o o x o o o o o o
eacf(ma2)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x o x o o x x o o o o o o
## 1 x x x x o o x o o o o o o o
## 2 x x x x o o x o x o o o o o
## 3 o x x o x o o o o o o o o o
## 4 x x x x x x o o o o o o o o
## 5 x o o x x o x o o o o o o o
## 6 o o o o x o o o o o o o o o
## 7 o o o o x o o o o o o o o o
Hasil EACF menunjukkan adanya cut-off pada MA orde 2 (q = 2),
sehingga data dapat diidentifikasi mengikuti model MA(2). Hasil ini
sesuai dengan model yang digunakan saat membangkitkan data. Baik data
manual maupun data dari arima.sim() menunjukkan pola yang
sama, sehingga hasil identifikasi EACF dapat dikatakan konsisten dengan
model sebenarnya.
# Scatterplot Yt vs Yt-1
plot(ma[-1], ma[-length(ma)],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-1]),
xlab = expression(Y[t-1]),
ylab = expression(Y[t]),
pch = 19, col = "blue")
# Scatterplot Yt vs Yt-2
plot(ma[-c(1,2)], ma[-((length(ma)-1):length(ma))],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-2]),
xlab = expression(Y[t-2]),
ylab = expression(Y[t]),
pch = 19, col = "red")
# Scatterplot Yt vs Yt-3
plot(ma[-c(1,2,3)], ma[-((length(ma)-2):length(ma))],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-3]),
xlab = expression(Y[t-3]),
ylab = expression(Y[t]),
pch = 19, col = "darkgreen")
Scatter plot antara \(Y_t\) dengan
\(Y_{t-1}\) dan \(Y_{t-2}\) masih menunjukkan adanya pola
hubungan, yang menunjukkan bahwa \(Y_t\) masih memiliki ketergantungan
terhadap dua nilai sebelumnya. Sementara itu, pada scatter plot antara
\(Y_t\) dengan \(Y_{t-3}\), titik-titik sudah tersebar
secara acak dan tidak menunjukkan pola tertentu. Hal ini menunjukkan
bahwa hubungan antara \(Y_t\) dan nilai
pada lag ke-3 sudah tidak terlihat. Hasil tersebut sesuai dengan
karakteristik proses MA(2), di mana ketergantungan hanya terjadi hingga
dua lag sebelumnya.
# Panjang data
n <- length(ma)
# Autokorelasi manual
acf1_hat <- cor(ma[2:n], ma[1:(n-1)]) # Lag 1
acf2_hat <- cor(ma[3:n], ma[1:(n-2)]) # Lag 2
acf3_hat <- cor(ma[4:n], ma[1:(n-3)]) # Lag 3
# Teoretis MA(2)
theta1 <- 0.4
theta2 <- 0.6
denom <- 1 + theta1^2 + theta2^2
rho1_theory <- (theta1 + theta1*theta2) / denom
rho2_theory <- (theta2) / denom
rho3_theory <- 0
# Rangkuman hasil
hasil <- data.frame(
Lag = 1:3,
Sample_Manual = c(acf1_hat, acf2_hat, acf3_hat),
Teoretis = c(rho1_theory, rho2_theory, rho3_theory)
)
print(round(hasil, 6))
## Lag Sample_Manual Teoretis
## 1 1 0.477882 0.421053
## 2 2 0.355358 0.394737
## 3 3 -0.070365 0.000000
Berdasarkan hasil yang diperoleh, autokorelasi pada lag 1 dan lag 2 masih menunjukkan nilai yang cukup besar dan mendekati nilai teoretis. Pada lag 3, nilai autokorelasi sudah mendekati nol. Hasil ini sesuai dengan karakteristik MA(2), di mana ketergantungan data hanya berlangsung sampai lag 2.
Akan dibangkitkan data dengan model AR(2) sebanyak 300 data yang memiliki nilai \(\phi_1 = 0.5\) dan \(\phi_2 = 0.2\). Rumusan model tersebut adalah sebagai berikut:
\[ Y_t = e_t+0.5Y_{t-1}+0.2Y_{t-2} \]
set.seed(1006)
n <- 300
phi1 <- 0.5
phi2 <- 0.2
# Inisialisasi white noise sebelumnya
ar2 <- numeric(n)
ar2[1:2] <- wn[1:2]
for(i in 3:n){
ar2[i] <- phi1 * ar2[i-1] + phi2 * ar2[i-2] + wn[i]
}
ar2
## [1] -1.473996326 0.163043898 -1.217430625 0.314697158 -2.717514969
## [6] -3.112698488 -1.782218226 -0.145265568 0.294292114 0.806388101
## [11] 0.701115990 -1.530939406 -2.584773379 -1.705216028 0.281133285
## [16] 1.020941849 2.251947662 0.341443752 0.141042553 -1.330635785
## [21] -1.449906007 -0.995678579 -1.770580868 -1.252188314 -0.204882974
## [26] -0.683595134 -0.628172278 0.001155893 0.557894296 -0.337133985
## [31] 0.522927179 2.570337586 2.634738155 3.019344150 2.829530595
## [36] 1.677389182 1.761289715 1.545282778 2.233430961 0.333785583
## [41] 1.479074732 -0.870098436 0.317416715 -1.106680005 0.173836084
## [46] -1.546379016 -1.227796405 -1.450585675 -0.250608492 0.086072227
## [51] 0.875095571 -1.226640409 -2.388052984 -1.304892415 -0.314864494
## [56] -0.704168107 -0.219007581 -1.153719474 0.965418795 -0.738010953
## [61] 0.281832559 -1.723258132 -2.622909327 -3.497770579 -2.302861846
## [66] 0.460444975 -1.882658821 0.966214697 -0.711585524 -2.023960608
## [71] -2.095551262 -1.437232668 1.273239629 -0.839242438 0.645334170
## [76] 0.512644525 1.847035145 0.728012001 0.875111455 -0.447697633
## [81] -1.554011403 0.157716138 -1.371255249 -0.142277594 -0.114930229
## [86] -1.026583715 -1.142499873 -0.265144182 -0.632308965 -1.227026625
## [91] -1.014950364 -0.469123171 -1.760815932 -0.881240556 -1.167542617
## [96] -0.829195758 0.867152241 -1.333177985 -0.263283218 0.459678822
## [101] -0.304649798 -0.049378030 0.438954359 0.108103990 -0.211284365
## [106] 0.314334872 0.928973905 -0.362159219 0.734749915 0.366941689
## [111] -1.076596637 -0.095038873 1.963173086 0.232619240 1.477567863
## [116] 0.011745905 0.275213787 -0.484008534 -1.777510891 -2.747245513
## [121] -3.496940513 -2.681165653 -3.500705942 -1.845652686 -2.346403672
## [126] 0.521461660 0.293270659 -0.733215111 -0.954181038 0.616114333
## [131] -1.173005990 -1.067668366 -0.271412987 -0.679843059 -0.093050015
## [136] -0.020580435 -0.480384492 0.460325312 0.263013512 -0.454646554
## [141] 1.585769152 2.724566401 1.167012016 1.725979013 -0.392330362
## [146] -0.939360621 1.288461183 0.764855233 1.056726608 1.602703362
## [151] 1.939183193 1.804757868 0.287827206 -0.416792481 0.119527315
## [156] 0.568639416 -0.236203102 -0.034587288 0.201287806 -0.939214435
## [161] -1.575787904 -1.309010065 -1.804298859 -0.583609002 0.037844321
## [166] -0.387334169 0.474953419 1.447214113 1.413835408 1.842995374
## [171] 1.387205479 2.215998119 3.340492567 1.809316510 1.177217579
## [176] 2.345547666 2.279767916 0.936539438 0.628652790 0.696653185
## [181] -1.100178820 0.672971567 1.229356336 2.117743023 1.667671248
## [186] 0.160056308 -0.207180967 -1.097489081 -2.212663244 -0.250421292
## [191] -1.346506676 -1.579444268 0.313295939 0.739375694 0.367138827
## [196] 0.228310166 0.865530827 -0.348223139 -1.691830210 -0.573466011
## [201] -0.625065716 0.274126233 0.175021463 -0.967664739 0.056458842
## [206] -0.046531191 -0.751711842 1.715105586 1.399982036 0.962078160
## [211] 1.841764080 0.090935171 0.234766834 0.409298169 0.665865230
## [216] 0.513310662 -0.494431308 -0.823046109 -1.233366361 -0.945368322
## [221] 0.610729111 0.490594663 1.343351260 1.673836907 -0.025843752
## [226] 0.706395006 0.577763499 0.752001372 1.024232889 2.268524810
## [231] 2.273878259 1.404768880 0.823559675 -0.330739746 1.078040138
## [236] 1.182043552 2.491965919 2.122276203 3.175891169 1.804736664
## [241] 0.634962582 0.760184965 1.061426756 1.834041467 0.583363339
## [246] 1.870399392 1.512996891 1.354877764 0.822191155 2.384045550
## [251] 1.693311005 0.011850148 1.448800650 -0.273291108 -0.184237978
## [256] -0.220689133 1.310022449 3.204442191 2.404069091 1.612349871
## [261] 0.937154150 0.030381241 0.802953264 0.416473872 -0.451935428
## [266] 1.863155631 0.398481354 0.106270190 0.916342528 0.401799605
## [271] 0.891552505 1.758820376 1.539330182 0.599250734 1.366759783
## [276] 1.857159073 1.201202549 -0.317102359 0.073375059 -1.188579751
## [281] -0.772220710 -0.321341685 2.406890130 1.444950650 0.132060104
## [286] -0.501454944 0.590407499 -0.901621753 -1.297332320 -0.397729876
## [291] -1.438512125 -1.239759615 -1.625104570 -2.084524454 -1.164173969
## [296] -1.169306040 -0.453991574 -0.452676491 -0.579999961 -0.822146342
arima.sim()ar2_sim <- arima.sim(list(order=c(2,0,0), ar=c(0.5, 0.2)), n=300, innov=wn)
ar2_sim
## Time Series:
## Start = 1
## End = 300
## Frequency = 1
## [1] -1.8276896114 -0.7919910886 -1.7656867759 -0.1504379147 -3.0597337356
## [6] -3.3768348854 -1.9827301785 -0.2983488234 0.1776480953 0.7174494410
## [11] 0.6333178559 -1.5826262048 -2.6241764048 -1.7352549009 0.2582332438
## [16] 1.0034840532 2.2386387556 0.3312977402 0.1333077653 -1.3365323808
## [21] -1.4544012626 -0.9991055256 -1.7731933925 -1.2541799655 -0.2064013048
## [26] -0.6847526300 -0.6290546922 0.0004831867 0.5573814602 -0.3375249444
## [31] 0.5226291325 2.5701103705 2.6345649383 3.0192120988 2.8294299262
## [36] 1.6773124371 1.7612312082 1.5452381754 2.2333969586 0.3337596611
## [41] 1.4790549706 -0.8701135014 0.3174052298 -1.1066887608 0.1738294092
## [46] -1.5463841045 -1.2278002843 -1.4505886322 -0.2506107462 0.0860705086
## [51] 0.8750942606 -1.2266414075 -2.3880537451 -1.3048929953 -0.3148649367
## [56] -0.7041684447 -0.2190078382 -1.1537196700 0.9654186460 -0.7380110671
## [61] 0.2818324718 -1.7232581978 -2.6229093779 -3.4977706176 -2.3028618753
## [66] 0.4604449525 -1.8826588378 0.9662146840 -0.7115855341 -2.0239606155
## [71] -2.0955512682 -1.4372326723 1.2732396261 -0.8392424407 0.6453341680
## [76] 0.5126445236 1.8470351439 0.7280120005 0.8751114542 -0.4476976336
## [81] -1.5540114032 0.1577161373 -1.3712552490 -0.1422775941 -0.1149302289
## [86] -1.0265837154 -1.1424998731 -0.2651441820 -0.6323089655 -1.2270266251
## [91] -1.0149503644 -0.4691231713 -1.7608159322 -0.8812405565 -1.1675426167
## [96] -0.8291957576 0.8671522410 -1.3331779851 -0.2632832180 0.4596788220
## [101] -0.3046497985 -0.0493780303 0.4389543590 0.1081039900 -0.2112843650
## [106] 0.3143348721 0.9289739054 -0.3621592190 0.7347499150 0.3669416886
## [111] -1.0765966368 -0.0950388731 1.9631730855 0.2326192401 1.4775678629
## [116] 0.0117459047 0.2752137873 -0.4840085340 -1.7775108906 -2.7472455128
## [121] -3.4969405128 -2.6811656529 -3.5007059421 -1.8456526859 -2.3464036719
## [126] 0.5214616601 0.2932706587 -0.7332151109 -0.9541810382 0.6161143334
## [131] -1.1730059903 -1.0676683657 -0.2714129872 -0.6798430592 -0.0930500148
## [136] -0.0205804350 -0.4803844921 0.4603253118 0.2630135122 -0.4546465542
## [141] 1.5857691515 2.7245664011 1.1670120156 1.7259790129 -0.3923303620
## [146] -0.9393606209 1.2884611827 0.7648552328 1.0567266077 1.6027033618
## [151] 1.9391831929 1.8047578682 0.2878272062 -0.4167924814 0.1195273147
## [156] 0.5686394157 -0.2362031023 -0.0345872877 0.2012878056 -0.9392144350
## [161] -1.5757879044 -1.3090100647 -1.8042988590 -0.5836090023 0.0378443213
## [166] -0.3873341688 0.4749534189 1.4472141132 1.4138354083 1.8429953745
## [171] 1.3872054789 2.2159981187 3.3404925674 1.8093165097 1.1772175786
## [176] 2.3455476665 2.2797679161 0.9365394380 0.6286527899 0.6966531849
## [181] -1.1001788204 0.6729715666 1.2293563363 2.1177430225 1.6676712479
## [186] 0.1600563080 -0.2071809675 -1.0974890808 -2.2126632441 -0.2504212922
## [191] -1.3465066760 -1.5794442683 0.3132959391 0.7393756940 0.3671388269
## [196] 0.2283101657 0.8655308273 -0.3482231385 -1.6918302104 -0.5734660109
## [201] -0.6250657155 0.2741262329 0.1750214631 -0.9676647391 0.0564588417
## [206] -0.0465311909 -0.7517118416 1.7151055864 1.3999820359 0.9620781599
## [211] 1.8417640795 0.0909351710 0.2347668342 0.4092981691 0.6658652298
## [216] 0.5133106620 -0.4944313077 -0.8230461088 -1.2333663614 -0.9453683217
## [221] 0.6107291114 0.4905946627 1.3433512603 1.6738369069 -0.0258437524
## [226] 0.7063950060 0.5777634992 0.7520013718 1.0242328886 2.2685248104
## [231] 2.2738782592 1.4047688804 0.8235596753 -0.3307397457 1.0780401382
## [236] 1.1820435523 2.4919659189 2.1222762030 3.1758911690 1.8047366642
## [241] 0.6349625817 0.7601849648 1.0614267557 1.8340414665 0.5833633393
## [246] 1.8703993921 1.5129968911 1.3548777645 0.8221911552 2.3840455504
## [251] 1.6933110052 0.0118501482 1.4488006498 -0.2732911084 -0.1842379776
## [256] -0.2206891331 1.3100224490 3.2044421914 2.4040690906 1.6123498711
## [261] 0.9371541498 0.0303812411 0.8029532643 0.4164738723 -0.4519354278
## [266] 1.8631556313 0.3984813544 0.1062701905 0.9163425278 0.4017996045
## [271] 0.8915525047 1.7588203764 1.5393301816 0.5992507338 1.3667597831
## [276] 1.8571590727 1.2012025494 -0.3171023594 0.0733750591 -1.1885797515
## [281] -0.7722207096 -0.3213416846 2.4068901296 1.4449506505 0.1320601038
## [286] -0.5014549442 0.5904074986 -0.9016217534 -1.2973323201 -0.3977298760
## [291] -1.4385121253 -1.2397596149 -1.6251045698 -2.0845244539 -1.1641739694
## [296] -1.1693060402 -0.4539915736 -0.4526764909 -0.5799999612 -0.8221463415
ts.plot(ar2, col = "red", main = "AR(2) Manual",
ylab = "Nilai", xlab = "Waktu")
ts.plot(ar2_sim, col = "blue", main = "AR(2) arima.sim()",
ylab = "Nilai", xlab = "Waktu")
Terlihat pada plot deret waktu, bahwa kedua data memiliki pola yang
mirip. Keduanya terlihat stasioner dalam rataan dan dalam ragam.
par(mfrow = c(1, 2))
acf(ar2, main = "ACF AR(2) Manual")
acf(ar2_sim, main = "ACF AR(2) arima.sim()")
Plot ACF dari proses AR(2), baik hasil bangkitan manual maupun
menggunakan fungsi
arima.sim(), menunjukkan pola yang
sesuai dengan karakteristik AR(2). Pada kedua grafik, autokorelasi tidak
langsung terputus pada lag tertentu, tetapi menurun secara bertahap
seiring bertambahnya lag. Nilai ACF terlihat cukup besar pada lag awal,
terutama lag 1 dan lag 2, kemudian semakin mengecil dan mendekati nol
pada lag yang lebih tinggi. Pola ini menunjukkan adanya ketergantungan
antar data pada beberapa lag awal yang kemudian semakin berkurang,
sesuai dengan karakteristik proses AR(2).
par(mfrow = c(1, 2))
pacf(ar2, main = "PACF AR(2) Manual")
pacf(ar2_sim, main = "PACF AR(2) arima.sim()")
Plot PACF dari proses AR(2), baik hasil bangkitan manual maupun
menggunakan fungsi
arima.sim(), secara umum menunjukkan
pola yang sesuai dengan teori. Pada kedua grafik, nilai PACF pada lag
awal, terutama lag 1 dan lag 2, terlihat relatif besar, sedangkan pada
lag berikutnya sebagian besar nilai PACF berfluktuasi di sekitar nol.
Hal ini secara umum mencerminkan karakteristik proses AR(2), yaitu PACF
secara teoritis mengalami cut-off setelah lag ke-2. Munculnya beberapa
spike yang melewati batas signifikansi pada lag yang lebih tinggi dapat
terjadi akibat variasi sampel dan tidak selalu menunjukkan adanya
komponen AR pada lag tersebut.
library(TSA)
eacf(ar2)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x x x x x x x x o o o o o
## 1 x o o o o o x o o o o o o o
## 2 x o o o x o o o o o o o o o
## 3 x x o o o o x o o o o o o o
## 4 x x o o o o o o o o o o o o
## 5 x x o o o o o o o o o o o o
## 6 x x o o o x o o o o o o o o
## 7 x x x x o x o o o x o o o o
eacf(ar2_sim)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x x x x x x x x o o o o o
## 1 x o o o o o x o o o o o o o
## 2 x o o o x o o o o o o o o o
## 3 x x o o o o x o o o o o o o
## 4 x x o o o o o o o o o o o o
## 5 x x o o o o o o o o o o o o
## 6 x x o o o x o o o o o o o o
## 7 x x x x o x o o o x o o o o
EACF memperlihatkan pola yang mengarah pada model AR(2), dengan pola
nol mulai terlihat pada AR = 2 dan MA = 0. Hasil EACF dari bangkitan
manual maupun menggunakan fungsi arima.sim() juga
menunjukkan pola yang serupa. Hal ini mengindikasikan bahwa model AR(2)
merupakan kandidat yang sesuai untuk data tersebut.
# Scatterplot Yt vs Yt-1
plot(ar2[-1], ar2[-length(ar2)],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-1]),
xlab = expression(Y[t-1]), ylab = expression(Y[t]),
pch = 19, col = "blue")
# Scatterplot Yt vs Yt-2
plot(ar2[-c(1,2)], ar2[-((length(ar2)-1):length(ar2))],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-2]),
xlab = expression(Y[t-2]), ylab = expression(Y[t]),
pch = 19, col = "red")
# Scatterplot Yt vs Yt-3
plot(ar2[-c(1,2,3)], ar2[-((length(ar2)-2):length(ar2))],
main = expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-3]),
xlab = expression(Y[t-3]), ylab = expression(Y[t]),
pch = 19, col = "darkgreen")
Scatter plot proses AR(2) menunjukkan bahwa hubungan antara \(Y_t\) dengan \(Y_{t-1}\) dan \(Y_{t-2}\) masih membentuk pola yang cukup
jelas. Hal ini menunjukkan adanya ketergantungan nilai saat ini terhadap
dua periode sebelumnya, sesuai dengan karakteristik model AR(2).
Sementara itu, pada hubungan \(Y_t\)
dengan \(Y_{t-3}\), titik-titik
terlihat lebih menyebar secara acak sehingga pola hubungan menjadi lebih
lemah. Dengan demikian, pengaruh lag terlihat lebih kuat hingga lag
ke-2, sedangkan pada lag ke-3 dan seterusnya pengaruhnya cenderung
semakin berkurang. Pola tersebut sesuai dengan karakteristik proses
AR(2), di mana nilai saat ini dipengaruhi oleh dua periode sebelumnya
dan pengaruh pada lag yang lebih jauh secara bertahap memudar.
# Panjang data
n <- length(ar2)
# Autokorelasi manual
acf1_hat <- cor(ar2[2:n], ar2[1:(n-1)]) # Lag 1
acf2_hat <- cor(ar2[3:n], ar2[1:(n-2)]) # Lag 2
acf3_hat <- cor(ar2[4:n], ar2[1:(n-3)]) # Lag 3
# Teoretis AR(2)
phi1 <- 0.5
phi2 <- 0.2
rho1_theory <- phi1 / (1 - phi2)
rho2_theory <- phi1 * rho1_theory + phi2
rho3_theory <- phi1 * rho2_theory + phi2 * rho1_theory
# Rangkuman hasil
hasil <- data.frame(
Lag = 1:3,
Sample_Manual = c(acf1_hat, acf2_hat, acf3_hat),
Teoretis = c(rho1_theory, rho2_theory, rho3_theory)
)
print(round(hasil, 6))
## Lag Sample_Manual Teoretis
## 1 1 0.647134 0.62500
## 2 2 0.499468 0.51250
## 3 3 0.346356 0.38125
Hasil empiris menunjukkan pola yang sejalan dengan nilai teoritis pada proses AR(2). Nilai autokorelasi pada lag 1, 2, dan 3 secara bertahap mengalami penurunan, baik pada data hasil simulasi maupun nilai teoritis. Hal ini menunjukkan bahwa proses AR(2) memiliki pola tailing off, yaitu autokorelasi tidak langsung terputus pada lag tertentu, tetapi berkurang secara perlahan seiring bertambahnya lag. Adanya perbedaan antara nilai empiris dan teoritis merupakan hal yang wajar karena data diperoleh melalui simulasi yang mengandung variasi acak. Secara keseluruhan, pola hasil simulasi tetap sesuai dengan karakteristik teoritis proses AR(2).
Akan dibangkitkan suatu data dengan model ARMA(2,2) sebanyak 300 data yang memiliki nilai parameter \(\phi_1 = 0.5\) dan \(\phi_2 = 0.2\) serta \(\theta_1 = 0.4\) dan \(\theta_2 = 0.6\). Model tersebut adalah sebagai berikut:
\[ Y_t = 0.5Y_{t-1}+0.2Y_{t-2}+e_t-0.4_{t-1}-0.6_{t-2} \]
set.seed(1006)
n <- 300
phi1 <- 0.5; phi2 <- 0.2
theta1 <- 0.4; theta2 <- 0.6
# Inisialisasi White Noise
arma22 <- numeric(n)
arma22[1:2] <- wn[1:2]
for(i in 3:n){
arma22[i] <- phi1*arma22[i-1] + phi2*arma22[i-2] +
wn[i] + theta1*wn[i-1] + theta2*wn[i-2]
}
arma22
## [1] -1.47399633 0.16304390 -2.03661086 -0.39872794 -3.48423408 -4.15681182
## [7] -4.76319734 -2.80765245 -0.89516344 0.78956031 1.16415017 -0.79418537
## [13] -2.79746142 -3.67368501 -1.96401152 0.10096917 2.82191731 1.84938512
## [19] 1.62466983 -1.07249248 -1.89992854 -2.37584732 -3.04018709 -2.55888837
## [25] -1.76891534 -1.51747768 -1.02501001 -0.66062832 0.18118020 -0.11349092
## [31] 0.72265145 2.57710707 3.97653726 5.61537165 5.61805754 4.62076704
## [37] 4.12993259 3.25620842 3.90829979 2.15431383 2.95263702 -0.07820522
## [43] 0.85681606 -1.50177704 -0.07838944 -2.14085530 -1.74204843 -2.86953322
## [49] -1.56752181 -0.88452349 0.75915867 -0.82495938 -2.35365221 -2.99609816
## [55] -2.26965349 -1.61304953 -0.68959366 -1.66382348 0.37252638 -1.04407518
## [61] 0.56587941 -2.05333172 -3.14311307 -5.58088921 -5.27571569 -2.55936212
## [67] -3.08019795 0.48941815 -1.45469494 -1.72886600 -3.33208682 -3.48982954
## [73] -0.55898420 -1.19228619 1.07358097 0.26723273 2.43929346 1.77441277
## [79] 2.27453734 0.33915415 -1.20802358 -0.73250700 -2.24057564 -0.59615001
## [85] -0.99459442 -1.15792236 -1.62209150 -1.33809436 -1.42386656 -1.63903672
## [91] -1.88514639 -1.61131929 -2.55743542 -1.86704083 -2.57652840 -1.82495714
## [97] -0.16505163 -1.48383454 -0.27626307 -0.44554126 -0.27874820 0.10456934
## [103] 0.23641327 0.25405892 0.09532985 0.29468352 0.92793724 0.19803127
## [109] 1.14727057 0.44354612 -0.48897001 -0.30551251 1.27919955 0.96086515
## [115] 2.74851941 0.74234459 1.16645287 -0.36687548 -1.80598603 -3.74865499
## [121] -5.66234525 -5.72828917 -6.67133651 -4.85463445 -5.18508831 -1.52449142
## [127] -0.90598688 -0.30302985 -1.07150469 -0.20548715 -1.49906888 -1.16720216
## [133] -1.40228393 -1.42900927 -0.52783503 -0.46570628 -0.54444668 0.25582325
## [139] 0.15891294 -0.07324596 1.56171864 3.08608613 3.20830007 3.82752366
## [145] 0.99826845 -0.06070536 0.67731872 0.71662333 2.13574541 2.48430714
## [151] 3.21430050 3.54205316 2.17324027 0.78119312 0.12550665 0.36637485
## [157] 0.06296905 0.21211512 0.04573103 -0.87945169 -1.83070100 -2.50285389
## [163] -3.27337563 -2.09073458 -1.27817859 -0.72236184 0.34272634 1.40479498
## [169] 2.27769310 3.27685801 2.97270487 3.87667753 5.05921510 4.47511241
## [175] 3.90523972 3.90202460 3.92431753 3.25577520 2.37112931 1.51003796
## [181] -0.44432587 0.65089195 0.83843767 3.01326850 3.25238226 2.09777062
## [187] 0.85744430 -1.08432768 -2.77596746 -1.79398004 -2.77427314 -2.26829971
## [193] -1.12638577 -0.08297249 0.85086667 0.81879111 1.17713819 0.13497529
## [199] -1.31180097 -1.45913198 -1.86955025 -0.31997966 -0.09036747 -0.73318041
## [205] -0.22559418 -0.60454650 -0.73644901 1.38650214 1.63499717 2.55113433
## [211] 3.06658457 1.40488770 1.37619935 0.55776601 0.97044460 1.02523566
## [217] 0.11041209 -0.71283223 -1.85924359 -1.93254253 -0.50743803 0.16766531
## [223] 1.90602659 2.50553421 1.44970177 1.70035965 0.84481525 1.40694378
## [229] 1.67169154 3.12941879 3.79582792 3.67543507 2.74979418 0.84154545
## [235] 1.43988005 1.41481576 3.61160742 3.82828870 5.51998120 4.34845885
## [241] 3.26239195 2.09701200 1.74647829 2.71472315 1.95383598 3.20416961
## [247] 2.61117465 3.08231616 2.27194040 3.52584867 3.14024392 2.11960188
## [253] 2.46952731 0.31333924 0.57572597 -0.45835899 1.11120401 3.59603769
## [259] 4.47185944 4.49664282 3.02453555 1.37265282 1.37739825 0.75588392
## [265] 0.19642608 1.93226578 0.87258235 1.38355611 1.19793942 0.83209873
## [271] 1.60207786 2.35652114 2.77778983 2.27027503 2.53005819 2.76341343
## [277] 2.76412205 1.27767410 0.66725564 -1.34949114 -1.20362757 -1.34337782
## [283] 1.81502103 2.21490169 2.15417444 0.41833949 0.46906158 -0.96633172
## [289] -1.30373652 -1.45763586 -2.37600347 -2.05380239 -2.98411569 -3.47842205
## [295] -2.97304649 -2.88569030 -1.62021837 -1.33585674 -1.03346550 -1.32575222
arima.sim()arma22_sim <- arima.sim(list(order=c(2,0,2),
ar=c(0.5,0.2),
ma=c(0.4,0.6)),
n=300)
ts.plot(arma22, col="red", main="ARMA(2,2) Manual",
ylab="Nilai", xlab="Waktu")
ts.plot(arma22_sim, col="blue", main="ARMA(2,2) arima.sim()",
ylab="Nilai", xlab="Waktu")
Plot time series ARMA(2,2), baik dari hasil bangkitan manual maupun
menggunakan fungsi
arima.sim(), menunjukkan data yang
berfluktuasi di sekitar rata-rata nol. Pergerakan data terlihat tidak
beraturan, tetapi masih menunjukkan adanya hubungan antarperiode.
Beberapa nilai mengalami kenaikan atau penurunan yang cukup besar
sebelum kembali mendekati nilai rata-rata. Besarnya fluktuasi juga
bervariasi, tetapi secara umum masih berada dalam rentang yang relatif
sama, yaitu sekitar -6 hingga +6.
Kedua grafik menunjukkan pola yang relatif serupa, dengan munculnya
puncak (peaks) dan lembah (troughs) secara bergantian. Pola tersebut
menunjukkan bahwa komponen AR dan MA secara bersama-sama memengaruhi
nilai \(Y_t\). Komponen AR menghasilkan
ketergantungan antarwaktu yang pengaruhnya semakin melemah, sedangkan
komponen MA memberikan pengaruh jangka pendek melalui nilai error pada
periode sebelumnya. Dengan demikian, hasil bangkitan manual dan
arima.sim() sama-sama menunjukkan karakteristik yang sesuai
dengan proses ARMA(2,2), yaitu data yang stasioner dengan fluktuasi acak
yang tetap memiliki ketergantungan antarwaktu.
par(mfrow=c(1,2))
acf(arma22, main="ACF ARMA(2,2) Manual")
acf(arma22_sim, main="ACF ARMA(2,2) arima.sim()")
Plot ACF dari proses ARMA(2,2), baik hasil bangkitan manual maupun
menggunakan fungsi
arima.sim(), menunjukkan pola yang
sesuai dengan karakteristik teori. Pada kedua grafik, nilai autokorelasi
pada lag awal terlihat cukup besar, kemudian menurun secara bertahap dan
semakin mendekati nol seiring bertambahnya lag. Tidak terlihat adanya
cut-off yang jelas setelah lag tertentu, melainkan autokorelasi terus
melemah pada lag yang lebih panjang.
Pola tersebut merupakan karakteristik proses ARMA, di mana ACF
cenderung mengalami tailing off atau penurunan secara bertahap, berbeda
dengan proses MA yang memiliki cut-off pada orde tertentu. Grafik hasil
bangkitan manual dan arima.sim() juga memperlihatkan pola
yang relatif serupa, sehingga hasil simulasi telah menunjukkan
karakteristik yang sesuai dengan proses ARMA(2,2). Pola ACF yang semakin
mendekati nol juga mendukung bahwa proses memiliki sifat stasioner.
par(mfrow=c(1,2))
pacf(arma22, main="PACF ARMA(2,2) Manual")
pacf(arma22_sim, main="PACF ARMA(2,2) arima.sim()")
Plot PACF dari proses ARMA(2,2), baik yang dibangkitkan secara manual
maupun menggunakan fungsi
arima.sim(), menunjukkan pola
yang sesuai dengan karakteristik model ARMA. Pada kedua grafik, nilai
PACF pada lag 1 terlihat signifikan, sementara pada lag berikutnya
terdapat beberapa nilai yang masih melewati batas signifikansi. Setelah
lag awal, nilai PACF cenderung berfluktuasi di sekitar nol dan tidak
menunjukkan pola cut-off yang jelas.
Hal ini sesuai dengan karakteristik proses ARMA, di mana PACF umumnya
tidak mengalami cut-off pada orde tertentu seperti pada model AR murni,
tetapi cenderung menurun atau memudar secara bertahap. Pola yang relatif
serupa antara hasil bangkitan manual dan arima.sim()
menunjukkan bahwa kedua proses menghasilkan karakteristik PACF yang
sejalan. Dengan demikian, pola PACF tersebut mendukung adanya
karakteristik model ARMA(2,2), di mana pengaruh parsial antarperiode
tidak berhenti secara tiba-tiba pada lag tertentu.
eacf(arma22)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x x x x x x x x x o o o o
## 1 o x x x x o x o x o o o o o
## 2 x x x o o o x o x o o o o o
## 3 x x x o o o x o x o o o o o
## 4 x x x o o o o o o o o o o o
## 5 x x x o x x o o o x o o o o
## 6 x o x x x o o o o x o o o o
## 7 x x o x x o o x o o o o o o
eacf(arma22_sim)
## AR/MA
## 0 1 2 3 4 5 6 7 8 9 10 11 12 13
## 0 x x x x x x x x x x x o o o
## 1 o x o x o o o o x o o o o o
## 2 o x x o o o o o x o o o o o
## 3 x x x o o o o o x o o o o o
## 4 x x x o o o o o x o o o o o
## 5 x x o o o x o o o o o o o o
## 6 x x x o o o o o o x o o o o
## 7 o x o o x x o o o o o o o o
EACF menunjukkan pola yang mengarah pada model ARMA(2,2), dengan pola
nol (o) yang membentuk pola segitiga di sekitar titik (2,2). Hasil EACF
dari bangkitan manual dan menggunakan fungsi arima.sim()
juga menunjukkan pola yang relatif serupa. Hal ini mengindikasikan bahwa
model ARMA(2,2) merupakan kandidat model yang sesuai untuk kedua proses
yang dibangkitkan.
# Yt vs Yt-1
plot(arma22[-1], arma22[-length(arma22)],
main=expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-1]),
xlab=expression(Y[t-1]), ylab=expression(Y[t]),
pch=19, col="blue")
# Yt vs Yt-2
plot(arma22[-c(1,2)], arma22[-((length(arma22)-1):length(arma22))],
main=expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-2]),
xlab=expression(Y[t-2]), ylab=expression(Y[t]),
pch=19, col="red")
# Yt vs Yt-3
plot(arma22[-c(1,2,3)], arma22[-((length(arma22)-2):length(arma22))],
main=expression("Scatterplot " ~ Y[t] ~ "vs" ~ Y[t-3]),
xlab=expression(Y[t-3]), ylab=expression(Y[t]),
pch=19, col="darkgreen")
Scatter plot hasil simulasi menunjukkan bahwa hubungan antara \(Y_t\) dan \(Y_{t-1}\) memiliki pola yang cukup jelas
dengan korelasi positif yang kuat, sehingga menunjukkan adanya
ketergantungan yang cukup besar pada lag pertama. Pada hubungan \(Y_t\) dengan \(Y_{t-2}\), pola masih terlihat meskipun
titik-titiknya lebih menyebar, yang menunjukkan bahwa pengaruh lag kedua
relatif lebih lemah dibandingkan lag pertama. Sementara itu, hubungan
\(Y_t\) dengan \(Y_{t-3}\) menunjukkan pola yang semakin
lemah dengan titik-titik yang lebih tersebar, sehingga ketergantungan
pada lag ketiga mulai berkurang.
Secara keseluruhan, pola scatter plot tersebut menunjukkan bahwa ketergantungan antarperiode lebih kuat pada lag-lag awal dan cenderung melemah pada lag yang lebih panjang. Hal ini sejalan dengan karakteristik proses AR(2) maupun ARMA(2,2), di mana pengaruh antarwaktu dapat semakin berkurang seiring bertambahnya lag.
n <- length(arma22)
# Sample ACF (manual)
acf1_hat <- cor(arma22[2:n], arma22[1:(n-1)])
acf2_hat <- cor(arma22[3:n], arma22[1:(n-2)])
acf3_hat <- cor(arma22[4:n], arma22[1:(n-3)])
# Teoretis ARMA(2,2) dengan fungsi buatan
arma22_acf <- function(phi, theta, sigma2 = 1, N = 200, maxlag = 10) {
phi1 <- phi[1]; phi2 <- phi[2]
theta1 <- theta[1]; theta2 <- theta[2]
psi <- numeric(N + 1)
psi[1] <- 1
if (N >= 1) psi[2] <- phi1 * psi[1] + theta1
if (N >= 2) psi[3] <- phi1 * psi[2] + phi2 * psi[1] + theta2
if (N >= 3) {
for(j in 4:(N+1)) {
psi[j] <- phi1 * psi[j-1] + phi2 * psi[j-2]
}
}
gamma_k <- function(k) {
Jmax <- N - k
s <- sum(psi[1:(Jmax+1)] * psi[(1+k):(Jmax+1+k)])
return(sigma2 * s)
}
gamma_vals <- sapply(0:maxlag, gamma_k)
rho_vals <- gamma_vals / gamma_vals[1]
return(rho_vals)
}
phi <- c(0.5,0.2)
theta <- c(0.4,0.6)
rho_theory <- arma22_acf(phi=phi, theta=theta, sigma2=1, N=300, maxlag=3)
# Rangkuman
hasil <- data.frame(
Lag = 1:3,
Sample_Manual = c(acf1_hat, acf2_hat, acf3_hat),
Teoretis = round(rho_theory[2:4], 6)
)
print(hasil)
## Lag Sample_Manual Teoretis
## 1 1 0.8612948 0.859199
## 2 2 0.7251034 0.749191
## 3 3 0.5089308 0.546435
Secara keseluruhan, hasil empiris menunjukkan pola yang konsisten dengan nilai teoritis. Nilai autokorelasi mengalami penurunan secara bertahap dari lag 1 hingga lag 3, yang menunjukkan bahwa hubungan antarperiode semakin melemah seiring bertambahnya lag. Perbedaan antara nilai empiris dan teoritis merupakan hal yang wajar karena adanya variasi acak dalam proses simulasi. Meskipun terdapat sedikit perbedaan nilai, pola keseluruhan hasil empiris tetap sejalan dengan karakteristik proses ARMA(2,2) yang dibangkitkan.
Berdasarkan seluruh hasil analisis, ketiga proses yang dibangkitkan menunjukkan pola yang secara umum sesuai dengan karakteristik teoretis masing-masing model. Pada MA(2), ACF menunjukkan cut-off setelah lag ke-2, sedangkan PACF mengalami tailing off. Scatter plot juga menunjukkan adanya hubungan pada lag 1 dan lag 2, sementara pada lag 3 hubungan sudah semakin lemah. Hal ini sesuai dengan karakteristik MA(2) yang memiliki ketergantungan hingga dua periode sebelumnya.
Pada AR(2), ACF menunjukkan pola tailing off, sedangkan PACF menunjukkan cut-off pada lag ke-2. Hasil scatter plot juga memperlihatkan hubungan yang lebih kuat pada lag awal dan semakin melemah pada lag berikutnya. Pola tersebut sesuai dengan karakteristik proses AR(2).
Sementara itu, pada ARMA(2,2), baik ACF maupun PACF tidak menunjukkan cut-off yang jelas, tetapi cenderung mengalami penurunan dan berfluktuasi di sekitar nol pada lag yang lebih panjang. Hasil EACF juga mengarah pada kandidat model dengan AR = 2 dan MA = 2, sehingga mendukung identifikasi proses ARMA(2,2). Scatter plot menunjukkan bahwa hubungan antarperiode lebih kuat pada lag awal dan semakin melemah pada lag yang lebih panjang.
Secara keseluruhan, hasil pembangkitan secara manual maupun
menggunakan fungsi arima.sim() menunjukkan pola yang
relatif serupa. Hasil ACF, PACF, EACF, scatter plot, serta perhitungan
autokorelasi secara umum konsisten dengan karakteristik teoretis MA(2),
AR(2), dan ARMA(2,2). Dengan demikian, simulasi yang dilakukan berhasil
menghasilkan proses yang mencerminkan karakteristik masing-masing model
dengan baik.