MODEL VECTOR AUTOREGRESSIVE (VAR) UNTUK PEMODELAN HARGA KOMODITAS BAHAN POKOK CABAI RAWIT MERAH DAN BAWANG MERAH DI JAWA TIMUR

Bagus Dwi Kurniawan

2024-11-02


Abstrak. Model Vector Autoregressive (VAR) adalah bentuk model regresi yang beroperasi dengan menggunakan data deret waktu yang pertama kali diperkenalkan oleh Sims (1980), sebagai perluasan dari gagasan yang diperkenalkan oleh Granger (1969). Bahan pokok adalah kebutuhan mendasar bagi seluruh masyarakat, sehingga stabilitas harga bahan pokok menjadi harapan masyarakat, termasuk harga cabai rawit merah dan bawang merah. Kedua bahan pokok tersebut memiliki hubungan yang erat dan penting bagi masyarakat Indonesia, terutama di Jawa Timur. Penelitian ini bertujuan untuk menerapkan model VAR pada data deret waktu harga cabai rawit merah dan harga bawang merah di Jawa Timur dari tanggal 1 April 2020 hingga 10 Agustus 2023, serta melakukan peramalan dari model VAR. Penentuan identifikasi orde p dilakukan menggunakan Akaike Information Criterion (AIC). Metode estimasi parameter yang digunakan dalam penelitian ini adalah metode Ordinary Least Square (OLS). Selanjutnya, untuk melihat efek kejutan (shocks) dari variabel inovasi terhadap variabel endogen dalam model, digunakan Impulse Response Function (IRF). Berdasarkan hasil analisis, didapatkan model VAR (8), di mana model tersebut menunjukkan karakteristik white noise namun sisaan tidak berdistribusi normal multivariat. Sehingga hasil model VAR (8) menunjukkan nilai MAPE sebesar 54,012% dan 62,068%, sehingga disimpulkan bahwa model VAR (8) memiliki kemampuan kurang baik dalan memprediksi harga cabai rawit merah dan harga bawang merah.

Kata Kunci: VAR, Harga Cabai Rawit Merah, Harga Bawang Merah, Deret Waktu.

1 PENDAHULUAN

       Bahan pokok adalah bahan pangan yang diperlukan oleh seluruh masyarakat, sehingga stabilitas harga bahan pokok menjadi harapan masyarakat. Fluktuasi harga bahan pokok menjadi kekhawatiran karena dapat berdampak pada daya beli masyarakat, memengaruhi aspek sosial dan politik. Jawa Timur dikenal sebagai salah satu provinsi di Indonesia yang terkenal dengan komoditas bahan pokoknya. Iklim tropis dan lahan subur di Jawa Timur sangat mendukung produksi komoditas bahan pokok seperti cabai rawit merah dan bawang merah.
       Cabai merupakan bahan yang populer dalam masakan Indonesia, termasuk di Jawa Timur. Menurut penelitian (Surya & Tedjakusuma, 2022), sebagian besar masyarakat Indonesia menyukai makanan pedas, dan cabai sering ditambahkan selama proses memasak atau sebagai bumbu hidangan akhir. Jawa Timur menjadi produsen terbesar cabai rawit merah di tingkat nasional, melampaui Jawa Barat dan Jawa Tengah yang menjadi produsen terbesar kedua dan ketiga di Pulau Jawa. Berdasarkan data BPS tahun 2022, produksi cabai rawit merah di Jawa Timur pada tahun 2020 mencapai 684.942,9 ton. Meskipun mengalami penurunan sebesar 106.059,9 ton pada tahun 2021, produksinya kembali naik sebesar 33.525,9 ton pada 2022, sehingga total produksi cabai rawit merah di Jawa Timur pada tahun 2022 mencapai 612.408,9 ton.
       Secara umum, harga cabai rawit merah dipengaruhi oleh ketersediaan pasokan dan tingkat permintaan. Jumlah pasokan memiliki dampak besar terhadap fluktuasi harga cabai rawit merah, baik di tingkat produsen, petani, maupun konsumen. Sementara itu, permintaan cenderung memiliki pengaruh yang lebih stabil, kecuali pada saat-saat khusus seperti hari raya atau perayaan agama tertentu (BPS, 2019). Pasokan cabai rawit merah sangat dipengaruhi oleh musim dan cuaca. Untuk mengendalikan fluktuasi harga di tingkat nasional, diperlukan kebijakan perencanaan dan manajemen produksi cabai yang lebih efektif. Konsumsi cabai rawit merah di Indonesia tinggi, terutama selama perayaan seperti Lebaran dan hari-hari besar keagamaan lainnya.
       Bawang merah juga merupakan salah satu komoditas yang penting di rumah tangga masyarakat Jawa Timur. Bawang merah termasuk kelompok rempah yang tidak dapat digantikan oleh komoditas lain. Oleh karena itu, permintaan akan bawang merah cenderung konstan, meskipun fluktuasi permintaan dapat terjadi selama hari raya dan perayaan keagamaan. Jawa Timur menyumbang banyak pasokan bawang merah setelah Jawa Tengah. Produksi bawang merah di Jawa Timur selalu meningkat setiap tahunnya hingga tahun 2021, mencapai 500.992,1 ton. Namun, terjadi penurunan sebesar 27.003,1 ton pada tahun 2022. Bawang merah juga menjadi fokus pengawasan pemerintah melalui program SP2KP (Sistem Pemantauan Pasar dan Kebutuhan Pokok) yang bertujuan untuk menjamin ketersediaan dan keterjangkauan bahan pokok bagi masyarakat.
       Penelitian sebelumnya mengenai faktor-faktor yang mempengaruhi harga cabai rawit di Kota Manado menggunakan metode analisis regresi linier berganda, dilakukan oleh Paulus dan Ellen (2016). Hasil penelitian tersebut menunjukkan bahwa permintaan terhadap cabai, harga barang pengganti seperti cabai keriting, dan harga barang pelengkap seperti bawang merah berpengaruh secara signifikan terhadap harga cabai rawit. Namun, variabel selera masyarakat tidak berpengaruh secara signifikan terhadap harga cabai rawit.
       Penelitian lain mengenai faktor-faktor yang mempengaruhi harga bawang merah di Indonesia, dengan menggunakan metode regresi linier berganda, dilakukan oleh Anggorojati (2022). Kesimpulan dari penelitian ini menunjukkan bahwa variabel produksi dan harga cabai memiliki pengaruh positif yang signifikan terhadap harga bawang merah di Indonesia pada periode tahun 1999-2019. Namun, variabel konsumsi bawang merah dan kurs tidak berpengaruh secara signifikan terhadap harga bawang merah di Indonesia selama periode tersebut.
       Pertama kali model VAR (Vector Autoregressive) diperkenalkan oleh Sims (1972) sebagai pengembangan dari pemikiran Granger (1969). Granger berpendapat bahwa jika dua variabel, seperti \(Z_1\) dan \(Z_2\), memiliki hubungan kausal di mana \(Z_1\) mempengaruhi \(Z_2\), maka informasi mengenai masa lalu variabel \(Z_1\) dapat membantu dalam memperamalan nilai variabel \(Z_2\). Model VAR juga termasuk dalam kategori Model Linier Dinamis (MLD) yang saat ini banyak digunakan untuk meramalkan variabel-variabel, terutama dalam konteks ekonomi, baik dalam jangka waktu yang panjang maupun menengah hingga panjang. Sebagai bagian dari ilmu ekonometrika, model VAR merupakan salah satu topik yang dibahas dalam analisis deret waktu multivariat.
       Menurut Gujarati (1995), terdapat beberapa keunggulan dalam menggunakan analisis VAR. Salah satu keunggulannya adalah kesederhanaan model VAR ini, di mana peneliti tidak perlu mengidentifikasi variabel mana yang bersifat endogen dan mana yang bersifat eksogen karena semua variabel dalam model VAR dianggap bersifat endogen. Selain itu, metode estimasinya juga sederhana menggunakan Ordinary Least Square (OLS), dan model dapat dibuat secara terpisah untuk setiap variabel endogen. Hasil peramalan yang dihasilkan oleh model ini dalam banyak kasus lebih baik dibandingkan dengan hasil peramalan yang diperoleh melalui penggunaan model persamaan simultan yang kompleks. Model persamaan simultan yang kompleks adalah model yang terdiri dari dua atau lebih persamaan yang diestimasi, dan dalam model tersebut terdapat variabel yang dapat bersifat endogen, eksogen, atau keduanya secara bersamaan (Gujarati, 2004: 306-307). Selain itu, VAR juga merupakan alat analisis yang sangat berguna untuk memahami adanya hubungan timbal balik (interrelationship) antara berbagai variabel ekonomi, serta dalam pembentukan struktur ekonomi.
       Berdasarkan uraian sebelumnya, penelitian ini ingin mengetahui hubungan, pemodelan Vector Autoregressive (VAR) dan keakuratan model VAR dari data harga komoditas bahan pokok di Jawa Timur. Variabel yang digunakan pada penelitian ini, yaitu rata-rata harga komoditas cabai rawit merah dan bawang merah di Jawa Timur pada periode 01 April 2020 sampai 30 Maret 2024.

2 TINJAUAN PUSTAKA

2.1 Statistik Deskriptif

       Statistik deskriptif melibatkan pengumpulan dan penyajian data secara terperinci untuk memberikan informasi yang bermanfaat (Walpole, 1992). Tujuan statistik deskriptif adalah memberikan gambaran tentang data yang ada tanpa membuat kesimpulan tentang populasi data yang lebih besar. Biasanya, statistik deskriptif disajikan dalam bentuk tabel, diagram, dan grafik. Statistik deskriptif juga memberikan informasi tentang ukuran pusat dan sebaran data. Ukuran pusat meliputi rata-rata, median, dan modus. Sedangkan ukuran sebaran melibatkan varian, simpangan baku, jangkauan, dan sebagainya.

2.2 Data Time Series

       Time series atau deret waktu adalah rangkaian data observasi yang diurutkan berdasarkan urutan waktu, di mana pengamatan dilakukan pada interval waktu yang tetap (Cryer, 2008). Menurut Box dan Jenkins (1976), deret waktu merupakan kumpulan nilai observasi yang diperoleh pada waktu-waktu yang berbeda dengan interval yang sama, dan data-data ini diasumsikan memiliki hubungan satu sama lain. Dengan kata lain, model deret waktu adalah model urutan data di mana observasi-observasi saling berkorelasi. Model deret waktu dapat dikategorikan berdasarkan variabel yang diamati menjadi dua jenis yaitu:
  1. Deret waktu univariat adalah analisis time series yang hanya mengamati satu variabel atau individu runtun waktu (time series). Identifikasi untuk data univariate time series dapat dilihat dengan pola Autocorrelation Function (AFC) dan Partial Autocorrelation Function (PACF).
  2. Deret Waktu Multivariat adalah deret waktu yang terdiri dari pengamatan dari beberapa variabel (Wutsqa dkk, 2010). Pada prinsipnya identifikasi model deret waktu multivariat hampir sama dengan identifikasi pada model deret waktu univariat. Identifikasi model deret waktu multivariat dilakukan berdasarkan pola atau struktur Matrix Cross Coreelation Function (MCCF) dan Matrix Partial Cross Correlation Function (MPCCF) (Wei, 2006).

2.3 Plot Data Time Series

       Langkah penting dalam memilih model dan metode peramalan yang tepat adalah dengan mempertimbangkan jenis-jenis pola data. Empat jenis pola data time series terdiri dari (Makridakis dkk., 1999):
  1. Pola horizontal adalah pola data deret waktu yang menggambarkan nilai data berfluktuasi horizontal di sekitar mean konstan.
  2. Pola musiman adalah pola data deret waktu yang menggambarkan nilai data dipengaruhi oleh faktor musiman. Pergerakan nilai data menunjukkan perubahan pola berulang secara periodik waktu tertentu.
  3. Pola siklus adalah pola data deret waktu yang menggambarkan kenaikan dan penurunan nilai pada periode yang tidak tetap. Panjang rata-rata siklus biasanya lebih panjang daripada musiman. Besarnya siklus biasanya lebih bervariasi daripada pola musiman.
  4. Pola trend adalah pola data deret waktu yang menggambarkan peningkatan dan penurunan nilai data dalam jangka waktu yang panjang.

2.4 Uji Stasioneritas

       Menurut Makridakis, dkk (1997), data deret waktu dianggap stasioner jika tidak mengalami penambahan atau penurunan dari waktu ke waktu, serta memiliki distribusi yang tetap di sekitar nilai rata-rata dan ragam yang konstan. Dengan kata lain, karakteristik statistiknya tidak bergantung pada waktu spesifik (periode) saat pengamatan dilakukan.

Menurut Cryer (2008), sebuah deret waktu dianggap stasioner jika probabilitas perilaku prosesnya tetap tidak berubah seiring berjalannya waktu, yang berarti proses tersebut berada dalam keadaan keseimbangan. Uji stasioneritas deret waktu terbagi menjadi dua jenis, yaitu stasioneritas terhadap ragam dan rata-rata.

2.4.1 Stasioneritas Terhadap Ragam

       Stasioneritas terhadap ragam bisa diperiksa melalui plot Box-Cox. Deret waktu dikatakan stasioner terhadap ragam jika fluktuasi datanya tetap konstan seiring waktu. Menurut Wei (2006), ketika nilai parameter transformasi lambda (\(𝜆\)) sama dengan satu atau mendekati satu, hal itu menandakan bahwa data tersebut sudah stasioner dari segi ragam. Apabila deret waktu tidak stasioner terhadap ragam, ia dapat diubah menjadi stasioner melalui transformasi Box-Cox.

\[ T(Z_t) = Z_t(\lambda) = \begin{cases} \frac{Z_t^\lambda - 1}{\lambda}, & \lambda \neq 0 \\ \ln Z_t, & \lambda = 0 \end{cases} \] di mana \(\lambda\) merupakan parameter transformasi Box-Cox. Jika nilai \(\lambda\) pada persamaan tersbut sama dengan satu atau mendekati satu, maka tidak perlu dilakukan transformasi.

2.4.2 Stasioneritas Terhadap Rata-rata

       Menurut Makridakis, dkk. (1997), jika suatu data deret waktu tidak terdapat perubahan rata-rata dari waktu ke waktu, maka dapat dikatakan data tersebut stasioner terhadap rata-rata. Untuk mempermudah, kestasioneran dapat juga dilihat plot ACF dan PACF dari data deret waktu. Jika pada plot ACF menurun secara perlahan ketika jumlah lag meningkat, maka data dikatakan tidak stasioner terhadap rata-rata. Salah satu cara untuk menghilangkan ketidak stasoneran adalah dengan differencing dengan memberi notasi d untuk banyaknya proses differencing yang dilakukan. Bentuk differencing pertama adalah sebagai berikut:

\[ \nabla Z_t = (1 - B)Z_t = Z_t - BZ_t = Z_t - Z_{t-1} \]

       Apabila telah dilakukan differencing pertama namun autokorelasi data tidak mendekati nol sesudah lag kedua atau ketiga, hal ini menunjukkan bahwa stasioneritas belum terpenuhi sehingga diperlukan differencing kedua dengan bentuk seperti berikut:

\[ \nabla^2 Z_t = (Z_t - Z_{t-1})- (Z_{t-1} - Z_{t-2}) = \nabla Z_t - \nabla Z_{t-1} \] proses differencing orde ke-d dapat ditulis sebagai berikut: \[ \nabla^d Z_t = (1-B)^d Z_t \]

di mana:
\(Z_t\) : pengamatan pada periode waktu ke-\(t\)
\(Z_{t-1}\) : pengamatan pada periode waktu ke-\(t-1\)
\(Z_{t-d}\) : pengamatan pada periode waktu ke-\(t-d\)
\(\nabla Z_t\) : data hasil pembeda pertama pada periode waktu ke-\(t\)
\(\nabla^2 Z_t\) : data hasil pembeda kedua pada periode waktu ke-\(t\)
\(\nabla^d Z_t\) : data hasil pembeda ke-\(d\) pada periode waktu ke-\(t\)
\(B\) : operator backshift
\(B^d\) : operator backshift pada waktu ke-\(d\)
\(d\) : orde differencing

Hipotesis uji Dickey-Fuller seperti berikut:

       \(H_0:\delta=0\) (data tidak stasioner terhadap rata-rata)
       \(H_1:\delta<0\) (data stasioner terhadap rata-rata)

\[ t_{hit} = \frac{\hat\delta-1}{Se(\hat\delta)} \]

       Jika statistik uji \(𝑡\) lebih kecil dari \(t_{α,T}\) Dickey-Fuller maka \(H_0\) ditolak yang berarti data sudah stasioner terhadap rata-rata. Jika statistik uji \(𝑡\) lebih besar dari \(t_{α,T}\) Dickey-Fuller maka \(H_0\) diterima yang berarti data tidak stasioner terhadap rata-rata sehingga perlu dilakukan differencing. Proses differencing dilakukan hingga data hasil differencing menunjukkan kondisi stasioner

2.5 Uji Kausalitas

       Uji kausalitas granger adalah metode analisis yang digunakan untuk mengetahui hubungan, di mana hubungan antar variabel dependen dapat dipengaruhi oleh variabel lain dan variabel independen juga dapat menjadi variabel dependen juga (Gujarati, 2003). Uji kausalitas Granger dilakukan untuk melihat hubungan sebab akibat antar variabel model. Uji ini dapat mengindikasikan apakah suatu variabel mempunyai hubungan dua arah atau hanya satu arah saja (Nachrowi dan Hardius, 2006). Uji ini melihat pengaruh masa lalu terhadap kondisi sekarang, sehingga uji ini memang tepat dipergunakan untuk data deret waktu.

Hipotesis:

       \(H_0:\alpha_i=0\), (tidak terdapat hubungan kausalitas)
       \(H_1:\alpha_i\neq0\), dengan \(i=1,2,3,...,k\), (terdapat hubungan kausalitas)

Hitungan Statistik Uji F: \[ F = \frac{\frac{RSS_R - RSS_U}{m}}{\frac{RSS_R}{n-k}} \sim F_{(m, n-k)} \]

Keterangan:
\(RSS_R\) : jumlah kuadrat sisaan untuk restricted regression
\(RSS_U\) : jumlah kuadrat sisaan untuk unrestricted regression
\(m\) : banyaknya suku time lagged yang diabaikan
\(k\) : banyaknya parameter yang digunakan pada regresi unrestricted
\(n\) : ukuran sampel

Hitungan p-value adalah sebagai berikut: \[ p = P\left(F_{(df_1, df_2)} > F\right) \]

       Kriteria pengujian uji kausalitas Granger adalah jika nilai statistik uji F lebih besar dari nilai F tabel atau nilai probabilitas kurang dari 5% maka antara nilai \(Z_1\) dan \(Z_2\) terdapat hubungan dan saling mempengaruhi.

2.6 Penentuan Panjang Lag Optimum

       Pendekatan VAR sangat sensitif terhadap panjang nilai lag data yang digunakan, oleh karenanya perlu ditetapkan panjang nilai lag yang optimal. Menurut Reskiyani, dkk (2021), Pemeriksaan nilai lag digunakan untuk menentukan panjang nilai lag optimal yang akan digunakan dalam analisis selanjutnya dan akan menemukan estimasi parameter untuk model Vector Autoregressive (VAR). Dalam model VAR, panjang nilai lag menunjukkan derajat bebas. Model terbaik adalah model yang memiliki nilai Akaike Information Criterion (AIC) terkecil. Kriteria tersebut dirumuskan sebagai berikut:

\[ AIC(k) = T \ln\left(\frac{SSR(k)}{T}\right) + 2n \]

2.7 Vector Autoregressive (VAR)

       Model Vector Autoregressive (VAR) pertama kali diperkenalkan oleh Sims (1980), sebagai perluasan dari gagasan yang diperkenalkan oleh Granger (1969), konsep ini menyatakan bahwa jika dua variabel, misalnya \(Z_1\) dan \(Z_2\), memiliki hubungan kausal di mana \(Z_1\) mempengaruhi \(Z_2\), maka informasi masa lalu dari \(Z_1\) dapat berperan dalam meramalkan perilaku \(Z_2\). Model Vector Autoregressive (VAR) juga merupakan contoh dari Model Linier Dinamis (MLD) yang tengah populer untuk diterapkan dalam peramalan variabel-variabel ekonomi. Sebagai komponen dari bidang ekonometrika, VAR merupakan salah satu topik yang dibahas dalam konteks deret waktu multivariat.
       Menurut Gujarati (2004), terdapat beberapa kelebihan dalam penerapan analisis VAR. Salah satu keunggulannya adalah kesederhanaan model VAR ini, yang menghilangkan kebutuhan bagi peneliti untuk membedakan antara variabel endogen dan eksogen, karena semua variabel dalam VAR dianggap endogen. Selain itu, metode estimasinya pun sederhana, yaitu menggunakan Ordinary Least Square (OLS), serta memungkinkan pembuatan model terpisah untuk tiap variabel endogen. Dalam banyak situasi, hasil peramalan (forecast) dari model ini cenderung lebih baik daripada hasil peramalan yang dihasilkan dari model persamaan simultan yang kompleks. Model persamaan simultan yang kompleks merujuk pada model yang melibatkan dua atau lebih persamaan yang diestimasi, yang dalamnya terdapat variabel yang bersifat endogen, eksogen, atau kombinasi keduanya (Gujarati, 2004). Selain itu, VAR juga merupakan alat analisis yang bermanfaat untuk memahami interaksi timbal balik (interrelationship) antara variabel-variabel ekonomi, serta perannya dalam membentuk struktur ekonomi.
       Menurut Wei (2006), secara umum proses VAR(\(p\)) dituliskan:

\[(I - \phi_1 B - \cdots - \phi_p B^p) Z_t = \varepsilon_t\] atau \[Z_t = \phi Z_{t-1} + \cdots + \phi_p Z_{t-p} + \varepsilon_t\] untuk \(\rho=1\) atau model VAR (1) dapat dituliskan: \[(I - \Phi_1 B)Z_t = \varepsilon_t\] atau \[Z_t=\phi Z_{t-1}+\cdots+\phi_p Z_{t-p} + \varepsilon_t\] untuk banyaknya variabel endogen \(M = 2\) maka model VAR (1) adalah \[ \begin{bmatrix} Z_{1,t} \\ Z_{2,t} \end{bmatrix} - \begin{bmatrix} \phi_{11} & \phi_{12} \\ \phi_{21} & \phi_{22} \end{bmatrix} \begin{bmatrix} Z_{1,t-1} \\ Z_{2,t-1} \end{bmatrix} = \begin{bmatrix} \epsilon_{1,t} \\ \epsilon_{2,t} \end{bmatrix} \] \[Z_{1,t}=\phi_{11} Z_{1,t-1} + \phi_{12} Z_{2,t-1} + \varepsilon_{1t}\] \[Z_{2,t}=\phi_{21} Z_{1,t-1} + \phi_{22} Z_{2,t-1} + \varepsilon_{2t}\] dari persamaan tersebut dapat diketahui bahwa masing-masing \(Z_{i,t}\) tidak hanya melibatkan nilai lag-nya sendiri tetapi juga nilai lag dari variabel \(Z_{j,t}\) dan \(Z_{k,t}\).

2.7.1 Uji Signifikansi Parameter

       Parameter yang telah diduga perlu diuji untuk signifikansinya. Pengujian signifikansi ini dilaksanakan untuk menentukan apakah nilai estimasi parameter memiliki signifikansi atau tidak. Parameter-parameter yang tidak signifikan akan dikeluarkan dari model, kemudian dilakukan proses pendugaan parameter ulang hanya untuk model yang melibatkan parameter-parameter yang signifikan. Pengujian signifikansi umumnya dilakukan dengan menggunakan uji t, dan langkah-langkahnya adalah sebagai berikut:
  1. Hipotesis:
       \(H_0:\phi_i=0\) (tidak signifikan)
       \(H_1:\phi_i\neq0\) (signifikan)
  1. Tingkat signifikan dilambangkan dengan \(\alpha\)
  2. Nilai t hitung: \[ t_{hit} = \frac{\phi_i}{Se_{\phi_i}} \] Di mana:
    \(\phi_i\) = koefisien variabel ke-\(i\) \((i=1,2,\dots,s)\)
    \(Se_{\phi_i}\) = standar eror variabel ke-\(i\)
  3. Perhitungan p-value: \[ p = P\left(T_{\left(\frac{\alpha}{2}, df\right)} > |t|\right) \]
  4. Kriteria pengujian
       Kriteria dalam menguji signifikansi parameter adalah dengan memperbandingkan nilai statistik uji \(|t|\) dengan nilai yang terdapat di tabel distribusi t atau membandingkan probabilitas dengan nilai signifikansi sebesar 5%. Apabila nilai statistik uji \(|t|\) melebihi nilai yang terdapat di tabel distribusi \(t\), atau nilai probabilitas kurang dari 5%, maka hipotesis nol (\(H_0\)) dapat ditolak. Dengan demikian, dapat disimpulkan bahwa parameter yang diuji memiliki pengaruh yang signifikan terhadap model VAR.

2.8 Diagnostik Model VAR

2.8.1 Asumsi Autokorelasi Sisaan

       Asumsi yang paling dasar adalah sisaan bersifat white noise, yaitu memiliki rata-rata nol dan ragam yang konstan yaitu (\(σ^2\)). Autokorelasi adalah suatu kejadian ketika kovarian dan korelasi antar sisaan tidak sama dengan nol (Gujarati, 2009). Autokorelasi sering terjadi pada data deret waktu, karena urutan pengamatan memiliki makna, sisaan pada satu periode mempengaruhi sisaan pada periode yang lain, dan terutama pada periode dengan jarak pendek.
       Asumsi dasar adalah {\(ε_t\)} white-noise, yaitu {\(ε_t\)} sisaan acak tidak berkorelasi dengan rata-rata nol dan ragam konstan. hipotesis Uji Portmanteau adalah:
       \(H_0:\rho_i=0\), (tidak ada korelasi sisaan)
       \(H_1:\rho_i\neq0\), dengan \(i=1,2,3,...,k\) (ada korelasi sisaan)
       Statistik uji yang digunakan adalah statistik \(Q_p\) sebagai berikut:

\[Q_p = T \sum_{i=1}^{p} \text{tr}(C_i' \Omega^{-1} C_i \Omega^{-1})\]

       Dengan keputusan jika p-value dari \(Q\)-statistik lebih besar dari \(α\), maka tidak ada autokorelasi dalam sistem sampai lag ke-k, begitu juga sebaliknya (Lutkephl, dkk, 2006).

2.8.2 Asumsi Normalitas Multivariat Sisaan

       Menurut Tsay (2005), uji normalitas sisaan dilakukan untuk melihat apakah sisaan berdistribusi normal atau tidak. Sisaan dikatakan mengikuti distribusi normal jika plot yang dihasilkan mendekati pola garis lurus, dimana kelengkungan menunjukkan penyimpangan kenormalan. Uji normalitas sisaan bertujuan untuk menjelaskan kecukupan model. Uji normalitas dapat dilakukan dengan uji Jarque-Bera Multivariat dengan statistik uji sebagai berikut:

\[MJB_M^* = Z_{M,1}^* + \left(Z_{M,2}^*\right)^2\] Berdistribusi \(\chi_{f+1}^2\) secara asimtotik.

    Pengujian normalitas multivariat menggunakan uji Jarque-Bera, dilakukan dengan membandingkan hasil Jarque-Bera multivariat (\(MJB_M^*\)) dengan \(\chi_{f+1}^2\). jika \(MJB_M^*\) > \(\chi_{f+1}^2\) maka sisaan tidak berdistribusi normal multivariat.

2.9 Impulse Response Function

       Impulse Response Function merupakan analisis lanjutan dari model VAR untuk melihat efek kejutan (shocks) dari variabel inovasi terhadap variabel-variabel endogen yang terdapat dalam model (Indrawati, 2007). Dengan menggunakan analisis impulse response dapat disimulasikan dampak perubahan salah satu variabel independen terhadap fluktuasi variabel dependennya pada masa yang akan datang. Analisis impulse response mempunyai kemampuan forward looking sehingga berguna untuk melacak atau memperamalan nilai sekarang dan yang akan datang dari variabel endogen akibat adanya efek shock (shocks) dari variabel inovasi. Impulse response merupakan suatu alur (path) dimana variabel akan kembali pada keseimbangan setelah mengalami shock (shocks).
      Dengan batasan spesifik pada parameter dari VAR model variabel kejutan (shocks) dapat dihubungkan dengan suatu pengertian ekonomi. Suatu aplikasi populer yang telah diidentifikasi adalah dampak kebijakan moneter (respon dinamis dari seluruh variabel terhadap shock kebijakan moneter yang kemudian dapat dianalisis melalui fungsi impulse response).
       Dalam model VAR, terdapat perbedaan penting dalam pendugaan parameter model VAR yaitu model VAR untuk peramalan dan VAR untuk analisis ekonomi. Dalam persamaan (2.75), \(e_{1t}\) dan \(e_{2t}\) adalah forecast error. Jika menggunakan VAR hanya untuk peramalan tidak diperlukan komponen forecast error, tetapi dalam model ekonomi seperti dalam persamaan (2.69), \(\varepsilon_{1t}\) dan \(\varepsilon_{2t}\) adalah pure innovation (shocks) dari \(Z_{1t}\) dan \(Z_2\) pada periode t, sehingga untuk mendapatkan impulse response function perlu menggunakan structural shock (\(\varepsilon_{1t}\) dan \(\varepsilon_{2t}\)) bukan forecast error (\(e_{1t}\) dan \(e_{2t}\)). Tujuan struktural VAR adalah menggunakan teori konomi untuk memperoleh struktural inovasi dari \(e_{1t}\) dan \(e_{2t}\).

2.10 Ukuran Akurasi Model

       Terdapat beberapa metode perhitungan yang umum digunakan dalam menghitung ukuran akurasi model. Perhitungan ini dapat digunakan untuk membandingkan berbagai model peramalan, serta untuk memantau prediksi dan memastikan apakah prediksi tersebut berjalan dengan baik atau tidak. Salah satu cara untuk mengevaluasi teknik peramalan adalah dengan menggunakan MAPE.
       Mean Absolute Percentage Error (MAPE) adalah metode yang digunakan untuk mengukur tingkat akurasi. MAPE merupakan ukuran ketepatan relatif berdasarkan nilai absolut yang digunakan untuk mengetahui persentase penyimpangan hasil prediksi terhadap data aktual. MAPE dipilih untuk pengujian akurasi karena dapat memberikan hasil yang relatif akurat. Nilai MAPE dirumuskan sebagai berikut (Render, Barry & Jay, 2006).

\[ MAPE = \frac{1}{n} \sum_{i=1}^{n} \left| \frac{Z_i - \hat{Z}_i}{Z_i} \right| \times 100\% \]

       Menurut Chang dkk (2007), kriteria MAPE apablila < 10% maka model dikatakan memiliki kemampuan peramalan yang sangat baik, antara 10% - 20% model dikatakan dapat meramalkan dengan baik, 20% - 50% kemampuan peramalan cukup dan >50% model memiliki kemampuan peramalan buruk.

2.11 Cabai Rawit Merah

       Cabai rawit merah adalah salah satu jenis cabai yang populer di Indonesia. Cabai rawit (Capsicum frutescens L.) termasuk dalam famili terong-terongan dan tergolong tanaman semusim atau tanaman berumur pendek. Cabai rawit merah adalah salah satu jenis sayuran yang sangat populer dikalangan masyarakat dan dibutuhkan oleh semua orang. Tanaman ini terkenal karena rasa pedasnya yang khas dan sering digunakan sebagai tambahan dalam proses memasak atau sebagai bumbu pada tahap akhir penyajian hidangan.

2.12 Bawang Merah

       Bawang merah adalah salah satu komoditas sayuran yang telah lama menjadi fokus utama usaha petani dengan intensitas tinggi. Sayuran ini termasuk dalam kategori rempah yang tak tergantikan dan memiliki peran penting sebagai penyedap makanan dan bahan baku obat tradisional (Nawangsari, dkk., 2008). Bawang merah (Allium cepa L.) adalah jenis tanaman yang tumbuh dalam siklus hidup satu musim, berumur pendek, dan memiliki bentuk rumpun. Bawang merah sangat diminati karena memiliki rasa dan aroma yang khas.

3 DATA DAN METODE PENELITIAN

       Data yang digunakan dalam penelitian ini merupakan data sekunder yang diperoleh dari SISKAPERBAPO. Data tersebut terdiri dari informasi harga komoditas bahan pokok cabai rawit merah (\(Z_1\)) dan bawang merah (\(Z_2\)) di Jawa Timur dengan satuan (Rp/kg). Data ini kemudian dibagi menjadi dua bagian yaitun data training yang mencakup periode 01 April 2020 hingga 10 Agustus 2023, serta data testing yang mencakup periode 11 Agustus 2023 hingga 30 Maret 2024.
#Import data excel
library(readxl)
harga_bp <- read_excel("D:/BAGUS/PORTOFOLIO/Harga komoditas pokok.xlsx")
head(harga_bp)
## # A tibble: 6 × 3
##   Tanggal             `Cabai Rawit Merah` `Bawang Merah`
##   <dttm>                            <dbl>          <dbl>
## 1 2020-04-01 00:00:00               43171          33489
## 2 2020-04-02 00:00:00               43692          33709
## 3 2020-04-03 00:00:00               46236          33877
## 4 2020-04-04 00:00:00               50236          33940
## 5 2020-04-05 00:00:00               49524          34171
## 6 2020-04-06 00:00:00               47524          34829
#Merubah data menjadi data time series
harga_bp$Tanggal <- as.Date(harga_bp$Tanggal)
Tanggal = harga_bp$Tanggal
komoditas_bp <- data.frame(Tanggal,harga_bp[,-1])

4 HASIL DAN PEMBAHASAN

4.1 Statistik Deskriptif

       Statistik deskriptif digunakan untuk mengetahui informasi umum dari data yang digunakan pada penelitian. Data yang digunakan terlampir pada lampiran 1 mengenai harga komoditas bahan pokok di Jawa Timur pada periode 01 April 2020 sampai 10 Agustus 2023. Bahan pokok yang digunakan yakni cabai rawit merah dan bawang merah.
# Statistik Deskriptif
summary(komoditas_bp)
##     Tanggal           Cabai.Rawit.Merah  Bawang.Merah  
##  Min.   :2020-04-01   Min.   : 14440    Min.   :19323  
##  1st Qu.:2021-02-01   1st Qu.: 23357    1st Qu.:25258  
##  Median :2021-12-05   Median : 36162    Median :29219  
##  Mean   :2021-12-05   Mean   : 40946    Mean   :30243  
##  3rd Qu.:2022-10-07   3rd Qu.: 54014    3rd Qu.:32710  
##  Max.   :2023-08-10   Max.   :114821    Max.   :65961

4.2 Plot Data Time Series

       Langkah awal sebelum dilakukan identifikasi model VAR adalah melihat plot data. Plot data harga cabai rawit merah.
#Plot Cabai Rawit Merah
library(ggplot2)
ggplot(komoditas_bp, aes(x = Tanggal, y = Cabai.Rawit.Merah)) +
  geom_line() +
  labs(title = "Harga Cabai Rawit Merah",
       x = "Tanggal",
       y = "Harga Rp / kg") +
  theme_minimal()+
  scale_x_date(date_breaks = "30 day", date_labels = ("%d-%m-%Y"))+
  theme(axis.text.x = element_text(angle = 45, hjust = 1))+
  theme(plot.title = element_text(size=20,hjust = 0.5))

       Terlihat bahwa pada data harga cabai rawit merah di Jawa Timur dari 01 April 2020 sampai 10 Agustus 2023 menunjukkan bahwa harga cabai rawit merah mengalami perubahan baik kenaikan dan penurunan sepanjang periode. Kenaikan harga cabai rawit merah tertinggi terjadi pada 17 Maret 2021, mencapai Rp 114.821/kg. Sementara itu, penurunan harga terendah terjadi pada 25 Juni 2020, dengan harga mencapai Rp 14.440/kg. Selama periode Maret 2020 hingga Juni 2023. Selama periode Maret 2020 sampai Juni 2023, Indonesia termasuk Provinsi Jawa Timur mengalami pandemi COVID-19 yang membuat harga komoditas bahan pokok menjadi tidak stabil.
#Plot Bawang Merah
ggplot(komoditas_bp, aes(x = Tanggal, y = Bawang.Merah)) +
  geom_line() +
  labs(title = "Harga Bawang Merah",
       x = "Tanggal",
       y = "Harga Rp / kg") +
  theme_minimal()+
  scale_x_date(date_breaks = "30 day", date_labels = ("%d-%m-%Y"))+
  theme(axis.text.x = element_text(angle = 45, hjust = 1))+
  theme(plot.title = element_text(size=20,hjust = 0.5))

       Terlihat bahwa harga bawang merah pada periode 01 April 2020 hingga 10 Agustus 2023 mengalami fluktuasi. Penurunan harga terendah terjadi pada 30 November 2021, dengan harga bawang merah mencapai Rp 19.323/kg, yang merupakan harga terendah selama periode tersebut. Kenaikan harga tertinggi terjadi pada 13 Juli 2022, dengan harga bawang merah mencapai Rp 65.961/kg. Harga bawang merah juga dipengaruhi oleh pandemi COVID-19 yang terjadi di Indonesia, termasuk Jawa Timur, yang menyebabkan harga bawang merah tidak stabil.

4.3 Uji Stasioneritas

4.3.1 Stasioneritas Terhadap ragam

       Pengujian stasioneritas terhadap ragam dapat dilihat sebagai berikut.
#Uji Stasioneritas Terhadap ragam
library(forecast)
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(MASS)
cabai_ts <- as.ts(komoditas_bp$Cabai.Rawit.Merah)
bawang_ts <- as.ts(komoditas_bp$Bawang.Merah)

#Plot Box-Cox untuk Harga cabai Rawit Merah
bc1 <- boxcox(lm(cabai_ts~1), lambda=seq(-2,2,by=0.01))

lambda1 <- bc1$x[which.max(bc1$y)]  
lambda1
## [1] -0.06
bc1$x[bc1$y>max(bc1$y)-1/2*qchisq(.95,1)]
##  [1] -0.17 -0.16 -0.15 -0.14 -0.13 -0.12 -0.11 -0.10 -0.09 -0.08 -0.07 -0.06
## [13] -0.05 -0.04 -0.03 -0.02 -0.01  0.00  0.01  0.02  0.03  0.04
#Plot Box-Cox untuk harga Bawang Merah
bc2 <- boxcox(lm(bawang_ts~1), lambda=seq(-2,2,by=0.01))

lambda2 <- bc2$x[which.max(bc2$y)] 
lambda2
## [1] -1.06
bc2$x[bc2$y>max(bc2$y)-1/2*qchisq(.95,1)]
##  [1] -1.28 -1.27 -1.26 -1.25 -1.24 -1.23 -1.22 -1.21 -1.20 -1.19 -1.18 -1.17
## [13] -1.16 -1.15 -1.14 -1.13 -1.12 -1.11 -1.10 -1.09 -1.08 -1.07 -1.06 -1.05
## [25] -1.04 -1.03 -1.02 -1.01 -1.00 -0.99 -0.98 -0.97 -0.96 -0.95 -0.94 -0.93
## [37] -0.92 -0.91 -0.90 -0.89 -0.88 -0.87 -0.86 -0.85
       Terlihat bahwa kedua variabel memiliki nilai lambda (\(\lambda\)) tidak sama dengan satu, sehingga diputuskan kedua variabel tidak stasioner terhadap ragam, sehingga perlu dilakukan transformasi Box-Cox.
#Transformasi 1 Box-Cox
tb_c <- cabai_ts^lambda1
tb_b <- bawang_ts^lambda2
#Plot Box-Cox data transformasi Harga Cabai Rawit Merah
tbc1 <- boxcox(lm(tb_c~1), lambda=seq(-2,2,by=0.01))

lambda1t <- tbc1$x[which.max(tbc1$y)]  
lambda1t
## [1] 1.04
tbc1$x[tbc1$y>max(tbc1$y)-1/2*qchisq(.95,1)]
##   [1] -0.74 -0.73 -0.72 -0.71 -0.70 -0.69 -0.68 -0.67 -0.66 -0.65 -0.64 -0.63
##  [13] -0.62 -0.61 -0.60 -0.59 -0.58 -0.57 -0.56 -0.55 -0.54 -0.53 -0.52 -0.51
##  [25] -0.50 -0.49 -0.48 -0.47 -0.46 -0.45 -0.44 -0.43 -0.42 -0.41 -0.40 -0.39
##  [37] -0.38 -0.37 -0.36 -0.35 -0.34 -0.33 -0.32 -0.31 -0.30 -0.29 -0.28 -0.27
##  [49] -0.26 -0.25 -0.24 -0.23 -0.22 -0.21 -0.20 -0.19 -0.18 -0.17 -0.16 -0.15
##  [61] -0.14 -0.13 -0.12 -0.11 -0.10 -0.09 -0.08 -0.07 -0.06 -0.05 -0.04 -0.03
##  [73] -0.02 -0.01  0.00  0.01  0.02  0.03  0.04  0.05  0.06  0.07  0.08  0.09
##  [85]  0.10  0.11  0.12  0.13  0.14  0.15  0.16  0.17  0.18  0.19  0.20  0.21
##  [97]  0.22  0.23  0.24  0.25  0.26  0.27  0.28  0.29  0.30  0.31  0.32  0.33
## [109]  0.34  0.35  0.36  0.37  0.38  0.39  0.40  0.41  0.42  0.43  0.44  0.45
## [121]  0.46  0.47  0.48  0.49  0.50  0.51  0.52  0.53  0.54  0.55  0.56  0.57
## [133]  0.58  0.59  0.60  0.61  0.62  0.63  0.64  0.65  0.66  0.67  0.68  0.69
## [145]  0.70  0.71  0.72  0.73  0.74  0.75  0.76  0.77  0.78  0.79  0.80  0.81
## [157]  0.82  0.83  0.84  0.85  0.86  0.87  0.88  0.89  0.90  0.91  0.92  0.93
## [169]  0.94  0.95  0.96  0.97  0.98  0.99  1.00  1.01  1.02  1.03  1.04  1.05
## [181]  1.06  1.07  1.08  1.09  1.10  1.11  1.12  1.13  1.14  1.15  1.16  1.17
## [193]  1.18  1.19  1.20  1.21  1.22  1.23  1.24  1.25  1.26  1.27  1.28  1.29
## [205]  1.30  1.31  1.32  1.33  1.34  1.35  1.36  1.37  1.38  1.39  1.40  1.41
## [217]  1.42  1.43  1.44  1.45  1.46  1.47  1.48  1.49  1.50  1.51  1.52  1.53
## [229]  1.54  1.55  1.56  1.57  1.58  1.59  1.60  1.61  1.62  1.63  1.64  1.65
## [241]  1.66  1.67  1.68  1.69  1.70  1.71  1.72  1.73  1.74  1.75  1.76  1.77
## [253]  1.78  1.79  1.80  1.81  1.82  1.83  1.84  1.85  1.86  1.87  1.88  1.89
## [265]  1.90  1.91  1.92  1.93  1.94  1.95  1.96  1.97  1.98  1.99  2.00
       Terlihat bahwa data hasil transformasi Box-Cox harga cabai rawit merah memiliki nilai lamda (\(\lambda\)) sama dengan satu, sehingga dapat dikatakan harga cabai rawit merah sudah stasioner terhadap ragam.
#Plot Box-Cox data transformasi Harga Bawang Merah
tbc2 <- boxcox(lm(tb_b~1), lambda=seq(-2,2,by=0.01))

lambda2t <- tbc2$x[which.max(tbc2$y)] 
lambda2t
## [1] 1
tbc2$x[tbc2$y>max(tbc2$y)-1/2*qchisq(.95,1)]
##  [1] 0.80 0.81 0.82 0.83 0.84 0.85 0.86 0.87 0.88 0.89 0.90 0.91 0.92 0.93 0.94
## [16] 0.95 0.96 0.97 0.98 0.99 1.00 1.01 1.02 1.03 1.04 1.05 1.06 1.07 1.08 1.09
## [31] 1.10 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.18 1.19 1.20
data_trnsformasi <- data.frame(tb_c,tb_b)
       Terlihat bahwa pada data yang sudah ditransformasi Box-Cox harga bawang merah nilai lambda (\(\lambda\)) sudah sama dengan satu, sehingga dapat diputuskan bahwa variabel hasil transformasi Box-Cox harga bawang merah sudah stasioner terhadap ragam.

4.3.2 Stasioneritas Terhadap Rata-rata

       Setelah variabel stasioner terhadap ragam maka dilanjutkan dengan pemeriksaan apakah data hasil transformasi Box-Cox stasioner terhadap rata-rata atau tidak dengan uji Dickey Fuller (DF).
#Uji Stasioneritas Terhadap Rata-rata
#Data tranfosmasi 1 Box-Cox
#Cabai Rawit Merah
library(tseries)
adf.test(tb_c, k=0)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  tb_c
## Dickey-Fuller = -1.3766, Lag order = 0, p-value = 0.8422
## alternative hypothesis: stationary
acf(tb_c)

pacf(tb_c)

       Dapat dilihat bahwa variabel harga cabai rawit merah memiliki nilai DF lebih besar dari pada nilai kritis (5%) yang artinya terima \(H_0\), sehingga data transformasi Box-Cox harga cabai rawit merah tidak stasioner terhadap rata-rata.
#Bawang merah
adf.test(tb_b, k=0)
## 
##  Augmented Dickey-Fuller Test
## 
## data:  tb_b
## Dickey-Fuller = -0.63192, Lag order = 0, p-value = 0.9758
## alternative hypothesis: stationary
acf(tb_b)

pacf(tb_b)

       Variabel harga bawang merah memiliki nilai DF lebih besar dari nilai kritis (5%) yang artinya terima \(H_0\) sehingga data transformasi Box-Cox bawang merah tidak stasioner terhadap rata-rata. Diperlukan differencing pertama karena data hasil transformasi Box-Cox tidak stasioner.
#Transformasi 1 Differencing
#Cabai rawit Merah
diftb_c <- diff(tb_c)
adf.test(diftb_c)
## Warning in adf.test(diftb_c): p-value smaller than printed p-value
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diftb_c
## Dickey-Fuller = -7.3143, Lag order = 10, p-value = 0.01
## alternative hypothesis: stationary
acf(diftb_c)

pacf(diftb_c)

       Pada hasil differencing pertama terlihat bahwa harga cabai rawit merah sudah statsioner terhadap rata-rata, karena memiliki p-value lebih kecil dari 5%.
#Bawang Merah
diftb_b <- diff(tb_b)
adf.test(diftb_b)
## Warning in adf.test(diftb_b): p-value smaller than printed p-value
## 
##  Augmented Dickey-Fuller Test
## 
## data:  diftb_b
## Dickey-Fuller = -7.119, Lag order = 10, p-value = 0.01
## alternative hypothesis: stationary
acf(diftb_b)

pacf(diftb_b)

#Membuat data frame hasil transformasi differencing pertama
diff.komoditas <- data.frame(diftb_c,diftb_b)
colnames(diff.komoditas)[1] <- "Cabai Rawit Merah"
colnames(diff.komoditas)[2] <- "Bawang Merah"
head(diff.komoditas)
##   Cabai Rawit Merah  Bawang Merah
## 1     -0.0003792465 -1.105353e-07
## 2     -0.0017854926 -8.341322e-08
## 3     -0.0026068114 -3.106069e-08
## 4      0.0004475456 -1.128801e-07
## 5      0.0012945964 -3.130876e-07
## 6      0.0003695029 -2.298803e-07
       Variabel harga bawang merah memiliki p-value kurang dari 5% sehingga dapat dikatakan harga bawang merah stasioner terhadap rata-rata.

4.4 Uji Kausalitas

       Adapun hubungan kausalitas antar variabel sebagai berikut:
#Uji Kausalitas Granger
#Cabai - Bawang Merah

library(lmtest)
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(stats)
p23 <- grangertest(komoditas_bp$Cabai.Rawit.Merah~komoditas_bp$Bawang.Merah, order= 1)
p23
## Granger causality test
## 
## Model 1: komoditas_bp$Cabai.Rawit.Merah ~ Lags(komoditas_bp$Cabai.Rawit.Merah, 1:1) + Lags(komoditas_bp$Bawang.Merah, 1:1)
## Model 2: komoditas_bp$Cabai.Rawit.Merah ~ Lags(komoditas_bp$Cabai.Rawit.Merah, 1:1)
##   Res.Df Df      F  Pr(>F)  
## 1   1223                    
## 2   1224 -1 4.8911 0.02718 *
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
p24 <- grangertest(komoditas_bp$Bawang.Merah~komoditas_bp$Cabai.Rawit.Merah, order= 1)
p24
## Granger causality test
## 
## Model 1: komoditas_bp$Bawang.Merah ~ Lags(komoditas_bp$Bawang.Merah, 1:1) + Lags(komoditas_bp$Cabai.Rawit.Merah, 1:1)
## Model 2: komoditas_bp$Bawang.Merah ~ Lags(komoditas_bp$Bawang.Merah, 1:1)
##   Res.Df Df      F   Pr(>F)   
## 1   1223                      
## 2   1224 -1 8.6928 0.003255 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
       Terlihat bahwa hasil uji kausalitas granger, p value kedua variabel kurang dai 0,05 sehingga dikatakan kedua variabel memiliki hubungan.

4.5 Penentuan Panjang Lag Optimum

       Penentuan panjang nilai lag optimum pada penelitian ini dengan memilih nilai AIC (Akaike information Criterion) terkecil, dengan AIC sebagai berikut:
#Penentuan Panjang Nilai lag Optimum
library(vars)
## Loading required package: strucchange
## Loading required package: sandwich
## Loading required package: urca
lag_orde<- VARselect(diff.komoditas, lag.max = 30, type = "const")
lag_orde
## $selection
## AIC(n)  HQ(n)  SC(n) FPE(n) 
##      8      8      4      8 
## 
## $criteria
##                    1             2             3             4             5
## AIC(n) -4.490775e+01 -4.503541e+01 -4.509907e+01 -4.512313e+01 -4.512556e+01
## HQ(n)  -4.489813e+01 -4.501939e+01 -4.507664e+01 -4.509429e+01 -4.509031e+01
## SC(n)  -4.488223e+01 -4.499288e+01 -4.503953e+01 -4.504658e+01 -4.503199e+01
## FPE(n)  3.139155e-20  2.762934e-20  2.592513e-20  2.530887e-20  2.524749e-20
##                    6             7             8             9            10
## AIC(n) -4.512517e+01 -4.514218e+01 -4.515561e+01 -4.515466e+01 -4.515361e+01
## HQ(n)  -4.508350e+01 -4.509411e+01 -4.510113e+01 -4.509377e+01 -4.508631e+01
## SC(n)  -4.501459e+01 -4.501459e+01 -4.501100e+01 -4.499304e+01 -4.497497e+01
## FPE(n)  2.525747e-20  2.483137e-20  2.450022e-20  2.452354e-20  2.454943e-20
##                   11            12            13            14            15
## AIC(n) -4.515477e+01 -4.515106e+01 -4.514522e+01 -4.514064e+01 -4.513424e+01
## HQ(n)  -4.508106e+01 -4.507094e+01 -4.505869e+01 -4.504771e+01 -4.503489e+01
## SC(n)  -4.495913e+01 -4.493840e+01 -4.491555e+01 -4.489396e+01 -4.487055e+01
## FPE(n)  2.452081e-20  2.461217e-20  2.475633e-20  2.486997e-20  2.502988e-20
##                   16            17            18            19            20
## AIC(n) -4.513037e+01 -4.512740e+01 -4.512122e+01 -4.512099e+01 -4.511594e+01
## HQ(n)  -4.502461e+01 -4.501524e+01 -4.500264e+01 -4.499600e+01 -4.498454e+01
## SC(n)  -4.484966e+01 -4.482968e+01 -4.480649e+01 -4.478924e+01 -4.476718e+01
## FPE(n)  2.512711e-20  2.520186e-20  2.535840e-20  2.536436e-20  2.549294e-20
##                   21            22            23            24            25
## AIC(n) -4.512249e+01 -4.512242e+01 -4.511808e+01 -4.511236e+01 -4.510590e+01
## HQ(n)  -4.498469e+01 -4.497820e+01 -4.496745e+01 -4.495533e+01 -4.494245e+01
## SC(n)  -4.475672e+01 -4.473964e+01 -4.471828e+01 -4.469556e+01 -4.467208e+01
## FPE(n)  2.532661e-20  2.532877e-20  2.543919e-20  2.558524e-20  2.575150e-20
##                   26            27            28            29            30
## AIC(n) -4.510362e+01 -4.510228e+01 -4.510106e+01 -4.509601e+01 -4.509038e+01
## HQ(n)  -4.493377e+01 -4.492602e+01 -4.491839e+01 -4.490693e+01 -4.489489e+01
## SC(n)  -4.465279e+01 -4.463444e+01 -4.461621e+01 -4.459415e+01 -4.457150e+01
## FPE(n)  2.581057e-20  2.584553e-20  2.587737e-20  2.600876e-20  2.615613e-20
       Dapat diketahui bahwa panjang nilai lag optimum berada pada lag 8, yaitu pada nilai AIC terkecil sebesar -45.15538.

4.6 Pendugaan dan Uji Signifikansi Parameter

       Langkah selanjutnya adalah melakukan pendugaan dan uji signifikansi parameter model VAR (8) sebagai berikut:
#VAR
Model_VAR <- VAR(diff.komoditas, p = lag_orde$selection["AIC(n)"])
summary(Model_VAR)
## 
## VAR Estimation Results:
## ========================= 
## Endogenous variables: Cabai.Rawit.Merah, Bawang.Merah 
## Deterministic variables: const 
## Sample size: 1218 
## Log Likelihood: 24081.225 
## Roots of the characteristic polynomial:
## 0.9113 0.8113 0.8113 0.7927 0.7927 0.7802 0.7802 0.7784 0.7784 0.7751 0.7751 0.7651 0.7651 0.6962 0.6962 0.343
## Call:
## VAR(y = diff.komoditas, p = lag_orde$selection["AIC(n)"])
## 
## 
## Estimation results for equation Cabai.Rawit.Merah: 
## ================================================== 
## Cabai.Rawit.Merah = Cabai.Rawit.Merah.l1 + Bawang.Merah.l1 + Cabai.Rawit.Merah.l2 + Bawang.Merah.l2 + Cabai.Rawit.Merah.l3 + Bawang.Merah.l3 + Cabai.Rawit.Merah.l4 + Bawang.Merah.l4 + Cabai.Rawit.Merah.l5 + Bawang.Merah.l5 + Cabai.Rawit.Merah.l6 + Bawang.Merah.l6 + Cabai.Rawit.Merah.l7 + Bawang.Merah.l7 + Cabai.Rawit.Merah.l8 + Bawang.Merah.l8 + const 
## 
##                        Estimate Std. Error t value Pr(>|t|)    
## Cabai.Rawit.Merah.l1  4.754e-01  2.872e-02  16.555  < 2e-16 ***
## Bawang.Merah.l1      -9.219e+01  1.490e+02  -0.619  0.53618    
## Cabai.Rawit.Merah.l2  2.608e-02  3.171e-02   0.822  0.41112    
## Bawang.Merah.l2       3.344e+02  1.496e+02   2.234  0.02565 *  
## Cabai.Rawit.Merah.l3  4.362e-02  3.166e-02   1.377  0.16861    
## Bawang.Merah.l3       5.650e+01  1.536e+02   0.368  0.71307    
## Cabai.Rawit.Merah.l4  8.879e-02  3.169e-02   2.802  0.00517 ** 
## Bawang.Merah.l4      -1.172e+02  1.557e+02  -0.753  0.45166    
## Cabai.Rawit.Merah.l5  6.271e-02  3.170e-02   1.978  0.04812 *  
## Bawang.Merah.l5      -2.176e+01  1.556e+02  -0.140  0.88882    
## Cabai.Rawit.Merah.l6  6.723e-02  3.162e-02   2.126  0.03370 *  
## Bawang.Merah.l6      -1.514e+02  1.530e+02  -0.989  0.32265    
## Cabai.Rawit.Merah.l7  7.338e-02  3.166e-02   2.318  0.02062 *  
## Bawang.Merah.l7      -2.230e+02  1.494e+02  -1.493  0.13579    
## Cabai.Rawit.Merah.l8 -1.316e-01  2.863e-02  -4.598 4.71e-06 ***
## Bawang.Merah.l8       1.254e+02  1.489e+02   0.842  0.39999    
## const                -1.448e-06  2.559e-05  -0.057  0.95487    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## 
## Residual standard error: 0.0008923 on 1201 degrees of freedom
## Multiple R-Squared: 0.3707,  Adjusted R-squared: 0.3623 
## F-statistic: 44.21 on 16 and 1201 DF,  p-value: < 2.2e-16 
## 
## 
## Estimation results for equation Bawang.Merah: 
## ============================================= 
## Bawang.Merah = Cabai.Rawit.Merah.l1 + Bawang.Merah.l1 + Cabai.Rawit.Merah.l2 + Bawang.Merah.l2 + Cabai.Rawit.Merah.l3 + Bawang.Merah.l3 + Cabai.Rawit.Merah.l4 + Bawang.Merah.l4 + Cabai.Rawit.Merah.l5 + Bawang.Merah.l5 + Cabai.Rawit.Merah.l6 + Bawang.Merah.l6 + Cabai.Rawit.Merah.l7 + Bawang.Merah.l7 + Cabai.Rawit.Merah.l8 + Bawang.Merah.l8 + const 
## 
##                        Estimate Std. Error t value Pr(>|t|)    
## Cabai.Rawit.Merah.l1  9.740e-06  5.586e-06   1.744   0.0815 .  
## Bawang.Merah.l1       1.826e-01  2.898e-02   6.300 4.16e-10 ***
## Cabai.Rawit.Merah.l2 -3.350e-06  6.169e-06  -0.543   0.5872    
## Bawang.Merah.l2       2.291e-01  2.911e-02   7.871 7.81e-15 ***
## Cabai.Rawit.Merah.l3  1.270e-05  6.159e-06   2.062   0.0394 *  
## Bawang.Merah.l3       1.774e-01  2.988e-02   5.939 3.76e-09 ***
## Cabai.Rawit.Merah.l4 -5.197e-06  6.165e-06  -0.843   0.3994    
## Bawang.Merah.l4       7.227e-02  3.029e-02   2.386   0.0172 *  
## Cabai.Rawit.Merah.l5  1.264e-06  6.166e-06   0.205   0.8377    
## Bawang.Merah.l5      -5.636e-03  3.027e-02  -0.186   0.8523    
## Cabai.Rawit.Merah.l6 -1.954e-06  6.151e-06  -0.318   0.7508    
## Bawang.Merah.l6       2.969e-02  2.977e-02   0.997   0.3188    
## Cabai.Rawit.Merah.l7  1.054e-05  6.158e-06   1.711   0.0874 .  
## Bawang.Merah.l7       1.453e-01  2.906e-02   5.001 6.56e-07 ***
## Cabai.Rawit.Merah.l8 -8.487e-06  5.568e-06  -1.524   0.1277    
## Bawang.Merah.l8      -5.367e-02  2.897e-02  -1.853   0.0642 .  
## const                 1.895e-09  4.977e-09   0.381   0.7035    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## 
## Residual standard error: 1.736e-07 on 1201 degrees of freedom
## Multiple R-Squared: 0.3715,  Adjusted R-squared: 0.3631 
## F-statistic: 44.36 on 16 and 1201 DF,  p-value: < 2.2e-16 
## 
## 
## 
## Covariance matrix of residuals:
##                   Cabai.Rawit.Merah Bawang.Merah
## Cabai.Rawit.Merah         7.962e-07    1.757e-11
## Bawang.Merah              1.757e-11    3.012e-14
## 
## Correlation matrix of residuals:
##                   Cabai.Rawit.Merah Bawang.Merah
## Cabai.Rawit.Merah            1.0000       0.1134
## Bawang.Merah                 0.1134       1.0000
       Berdasarkan analisis VAR(8), didapatkan model variabel harga cabai rawit merah (\(Z_1\)) yang terbentuk sebagai berikut:

\[ \begin{aligned} \hat{Z}_{1t} &= -1.45 \times 10^{-6} + 0.472Z_{1,t-1} - 9.23 \times 10^{+2}Z_{2,t-1} + 2.61 \times 10^{-10}Z_{1,t-2} \\ &+ 3.34 \times 10^{+2}Z_{2,t-2} + 4.36 \times 10^{-2}Z_{1,t-3} + 4.36 \times 10^{+2}Z_{2,t-3} \\ &+ 5.65 \times 10^{+1}Z_{2,t-3} + 8.88 \times 10^{-2}Z_{1,t-4} - 1.17 \times 10^{-2}Z_{2,t-4} \\ &+ 6.27 \times 10^{-2}Z_{1,t-5} - 2.18 \times 10^{+1}Z_{2,t-5} + 6.72 \times 10^{-2}Z_{1,t-6} \\ &- 1.51 \times 10^{+2}Z_{2,t-6} + 7.34 \times 10^{-7}Z_{1,t-7} - 2.23 \times 10^{+2}Z_{2,t-7} \\ &- 1.32 \times 10^{-17}Z_{1,t-8} + 5.37 \times 10^{-2}Z_{2,t-8} + \varepsilon_{1,t} \end{aligned} \] dan variabel bawang merah (\(Z_2\)) sebagai berikut: \[ \begin{aligned} \hat{Z}_{2t} &= 1.89 \times 10^{-9} + 9.74 \times 10^{-6}Z_{1,t-1} + 1.83 \times 10^{-1}Z_{2,t-1} \\ &- 3.35 \times 10^{-6}Z_{1,t-2} + 2.29 \times 10^{-1}Z_{2,t-2} + 1.27 \times 10^{-5}Z_{1,t-3} \\ &+ 1.77 \times 10^{-1}Z_{2,t-3} - 5.20 \times 10^{-6}Z_{1,t-4} + 7.23 \times 10^{-2}Z_{2,t-4} \\ &+ 1.26 \times 10^{-6}Z_{1,t-5} - 5.64 \times 10^{-3}Z_{2,t-5} - 1.95 \times 10^{-6}Z_{1,t-6} \\ &+ 2.97 \times 10^{-2}Z_{2,t-6} + 1.05 \times 10^{-5}Z_{1,t-7} + 1.45 \times 10^{-1}Z_{2,t-7} \\ &- 8.49 \times 10^{-6}Z_{1,t-8} - 5.37 \times 10^{-2}Z_{2,t-8} + \varepsilon_{2,t} \end{aligned} \] | Koefisien positif menunjukkan bahwa kenaikan harga pada periode ke \(t-n\) berkontribusi terhadap kenaikan harga dimasa sekarang, sebaliknya koefisien negatif menunjukkan bahwa kenaikan harga pada periode ke \(t-n\) berkontribusi pada penurunan harga pada masa sekarang.

4.7 Pemeriksaan Diagnostik

4.7.1 Autokorelasi Sisaan

       Untuk mengetahui autokorelasi pada sisaan model VAR (8) dapat menggunakan uji Portmanteau Autocorrelation dengan hasil sebagai berikut:
#Uji Permanteau
serial.test(Model_VAR)
## 
##  Portmanteau Test (asymptotic)
## 
## data:  Residuals of VAR object Model_VAR
## Chi-squared = 27.978, df = 32, p-value = 0.6705
       Dapat diketahui bahwa p-value lebih besar dari taraf nyata 5%, maka dapat diambil keputusan terima \(H_0\) di mana model VAR (8) bersifat white noise yang artinya tidak terdapat autokorelasi sisaan pada model VAR (8).

4.7.2 Normalitas Multivariat Sisaan

       Uji normalitas sisaan menggunakan uji Jarque-Bera multivariat dengan hasil sebagai berikut:
#Uji Normalitas
normality.test(Model_VAR)
## $JB
## 
##  JB-Test (multivariate)
## 
## data:  Residuals of VAR object Model_VAR
## Chi-squared = 9711.2, df = 4, p-value < 2.2e-16
## 
## 
## $Skewness
## 
##  Skewness only (multivariate)
## 
## data:  Residuals of VAR object Model_VAR
## Chi-squared = 75.037, df = 2, p-value < 2.2e-16
## 
## 
## $Kurtosis
## 
##  Kurtosis only (multivariate)
## 
## data:  Residuals of VAR object Model_VAR
## Chi-squared = 9636.2, df = 2, p-value < 2.2e-16
       Berdasarkn uji Jarque-Bera Mutivariat dapat diketahui bahwa model VAR (8) tidak memiliki sisaan yang berdistribusi normal multivariat. Hal ini akan berpengaruh terhadap hasil peramalan model yang nantinya akan dibuktikan diakhir penelitian.

4.8 Impulse Response Function (IRF)

       Impulse Response Function (IRF) merupakan metode untuk mengukur efek shock terhadap masing-masing variabel pada beberapa periode ke depan. Analisis respon impuls digunakan untuk melihat pengaruh jangka panjang dan jangka pendek dari suatu variabel terhadap variabel lain. Hasil dari IRF didapatkan sebagai berikut:
#Impulse Respose Function
## IRF harga cabai dengan respon harga bawang
C_B <- irf(Model_VAR,
           impulse = "Cabai.Rawit.Merah",
           response = "Bawang.Merah")
plot(C_B, main = "Shock Cabai to Bawang Merah")

C_B
## 
## Impulse response coefficients
## $Cabai.Rawit.Merah
##       Bawang.Merah
##  [1,] 1.968760e-08
##  [2,] 1.228541e-08
##  [3,] 7.878389e-09
##  [4,] 1.989993e-08
##  [5,] 1.059266e-08
##  [6,] 1.172664e-08
##  [7,] 1.018051e-08
##  [8,] 2.275759e-08
##  [9,] 9.938357e-09
## [10,] 1.109527e-08
## [11,] 1.358863e-08
## 
## 
## Lower Band, CI= 0.95 
## $Cabai.Rawit.Merah
##        Bawang.Merah
##  [1,]  6.988740e-09
##  [2,]  4.484343e-09
##  [3,] -4.024397e-09
##  [4,]  9.045389e-09
##  [5,] -4.207079e-10
##  [6,]  1.612691e-09
##  [7,] -5.365990e-10
##  [8,]  1.055670e-08
##  [9,]  1.569825e-09
## [10,]  3.033273e-09
## [11,]  5.954633e-09
## 
## 
## Upper Band, CI= 0.95 
## $Cabai.Rawit.Merah
##       Bawang.Merah
##  [1,] 3.242232e-08
##  [2,] 2.116348e-08
##  [3,] 1.691609e-08
##  [4,] 3.045364e-08
##  [5,] 2.092853e-08
##  [6,] 2.146848e-08
##  [7,] 2.053297e-08
##  [8,] 3.407812e-08
##  [9,] 1.845662e-08
## [10,] 1.803282e-08
## [11,] 2.035005e-08
## IRF harga bawang dengan respon harga cabai
B_C <- irf(Model_VAR,
           impulse = "Bawang.Merah",
           response = "Cabai.Rawit.Merah")
plot(B_C, main = "Shock Bawang Merah to Cabai")

B_C
## 
## Impulse response coefficients
## $Bawang.Merah
##       Cabai.Rawit.Merah
##  [1,]      0.000000e+00
##  [2,]     -1.589739e-05
##  [3,]      4.719622e-05
##  [4,]      3.813555e-05
##  [5,]      1.101712e-05
##  [6,]      1.415052e-05
##  [7,]     -7.770285e-06
##  [8,]     -3.878479e-05
##  [9,]     -2.927841e-06
## [10,]      5.936115e-06
## [11,]     -9.432654e-06
## 
## 
## Lower Band, CI= 0.95 
## $Bawang.Merah
##       Cabai.Rawit.Merah
##  [1,]      0.000000e+00
##  [2,]     -6.242512e-05
##  [3,]     -1.151079e-06
##  [4,]     -1.773141e-05
##  [5,]     -5.875159e-05
##  [6,]     -3.503113e-05
##  [7,]     -5.523412e-05
##  [8,]     -8.881661e-05
##  [9,]     -4.690001e-05
## [10,]     -4.364836e-05
## [11,]     -5.451299e-05
## 
## 
## Upper Band, CI= 0.95 
## $Bawang.Merah
##       Cabai.Rawit.Merah
##  [1,]      0.000000e+00
##  [2,]      3.507779e-05
##  [3,]      1.039315e-04
##  [4,]      9.187108e-05
##  [5,]      5.580149e-05
##  [6,]      7.034400e-05
##  [7,]      4.983433e-05
##  [8,]      1.913546e-05
##  [9,]      4.086905e-05
## [10,]      4.260992e-05
## [11,]      2.725004e-05
## IRF harga cabai dengan respon harga cabai
C_C <- irf(Model_VAR,
           impulse = "Cabai.Rawit.Merah",
           response = "Cabai.Rawit.Merah")
plot(C_C, main = "Shock Cabai to Cabai")

C_C
## 
## Impulse response coefficients
## $Cabai.Rawit.Merah
##       Cabai.Rawit.Merah
##  [1,]      8.922734e-04
##  [2,]      4.223769e-04
##  [3,]      2.295175e-04
##  [4,]      1.635404e-04
##  [5,]      1.805671e-04
##  [6,]      1.978254e-04
##  [7,]      2.121570e-04
##  [8,]      2.315053e-04
##  [9,]      7.831676e-05
## [10,]      5.608525e-05
## [11,]      6.105885e-05
## 
## 
## Lower Band, CI= 0.95 
## $Cabai.Rawit.Merah
##       Cabai.Rawit.Merah
##  [1,]      8.262502e-04
##  [2,]      3.699115e-04
##  [3,]      1.767830e-04
##  [4,]      1.093655e-04
##  [5,]      1.195146e-04
##  [6,]      1.332188e-04
##  [7,]      1.574695e-04
##  [8,]      1.587356e-04
##  [9,]      1.761812e-05
## [10,]      3.947553e-06
## [11,]      1.315836e-05
## 
## 
## Upper Band, CI= 0.95 
## $Cabai.Rawit.Merah
##       Cabai.Rawit.Merah
##  [1,]      0.0009564893
##  [2,]      0.0004740571
##  [3,]      0.0002735854
##  [4,]      0.0002147808
##  [5,]      0.0002343324
##  [6,]      0.0002645072
##  [7,]      0.0002676307
##  [8,]      0.0002917241
##  [9,]      0.0001306149
## [10,]      0.0001057927
## [11,]      0.0001055605
## IRF harga bawang dengan respon harga bawang
B_B <- irf(Model_VAR,
           impulse = "Bawang.Merah",
           response = "Bawang.Merah")
plot(B_B, main = "Shock Bawang to Bawang")

B_B
## 
## Impulse response coefficients
## $Bawang.Merah
##       Bawang.Merah
##  [1,] 1.724421e-07
##  [2,] 3.148592e-08
##  [3,] 4.510422e-08
##  [4,] 4.656190e-08
##  [5,] 3.689771e-08
##  [6,] 2.737441e-08
##  [7,] 3.023701e-08
##  [8,] 4.735849e-08
##  [9,] 1.905665e-08
## [10,] 2.821526e-08
## [11,] 2.500793e-08
## 
## 
## Lower Band, CI= 0.95 
## $Bawang.Merah
##       Bawang.Merah
##  [1,] 1.587608e-07
##  [2,] 2.371356e-08
##  [3,] 3.707518e-08
##  [4,] 3.782264e-08
##  [5,] 2.657310e-08
##  [6,] 1.794353e-08
##  [7,] 1.993861e-08
##  [8,] 3.485026e-08
##  [9,] 7.761403e-09
## [10,] 1.935121e-08
## [11,] 1.620218e-08
## 
## 
## Upper Band, CI= 0.95 
## $Bawang.Merah
##       Bawang.Merah
##  [1,] 1.900174e-07
##  [2,] 3.901034e-08
##  [3,] 5.643562e-08
##  [4,] 6.028615e-08
##  [5,] 4.791102e-08
##  [6,] 3.932810e-08
##  [7,] 4.153833e-08
##  [8,] 5.777844e-08
##  [9,] 2.792320e-08
## [10,] 3.639928e-08
## [11,] 3.355495e-08
       Terlihat bahwa pada gambar Shock Bawang to Bawang respon harga bawang merah terhadap shock dari harga bawang merah dan gambar Shock Cabai to Cabai respon harga cabai rawit merah terhadap shock dari harga cabai rawit merah bernilai selalu positif atau di atas nilai nol. Sedangkan pada gambar Shock Bawang to cabai merupakan respon dari harga bawang merah terhadap shock dari harga cabai rawit merah sangat fluktuatif, namun masih berada diatas nilai nol atau positif. Gambar “Shock Cabai to Bawang” merupakan respon dari harga cabai rawit merah terhadap shock dari harga bawang merah, terlihat terjadi kenaikan dan penurunan disekitar nilai nol, sehingga terdapat respon positif dan negatif.

4.9 Akurasi Hasil Peramalan Model VAR

       Pengukuran akurasi hasil peramalan model VAR dapat dilakukan dengan Mean Absolute Percentage Error (MAPE) dengan hasil sebagai beikut:
#Forecasting
fc <- predict(Model_VAR, n.ahead = 234) #234 menunjukkan peramalan untuk 234 hari kedepan
#Invers Differencing pertama
invDiff_fcC <- tb_c[1:112]-fc$fcst$Cabai.Rawit.Merah[,1]
## Warning in tb_c[1:112] - fc$fcst$Cabai.Rawit.Merah[, 1]: longer object length
## is not a multiple of shorter object length
invDiff_fcB <- tb_b[1:112]-fc$fcst$Bawang.Merah[,1]
## Warning in tb_b[1:112] - fc$fcst$Bawang.Merah[, 1]: longer object length is not
## a multiple of shorter object length
#Invers Box-Cox
hasil_fc_Cabai <- 10^(log10(invDiff_fcC)/-0.06)
hasil_fc_Bawang <- 10^(log10(invDiff_fcB)/-1.06)
hasil_fc_Cabai
##   [1] 43042.35 43403.28 45932.31 49734.39 49330.01 47500.30 46890.46 45474.29
##   [9] 41770.90 40597.83 38854.27 36632.24 33542.68 31814.96 30165.00 28086.50
##  [17] 27450.09 26854.53 26098.68 24553.75 24506.74 24286.66 23352.30 22813.08
##  [25] 23273.73 23056.97 21999.10 20983.42 19057.35 17869.39 18535.27 18271.50
##  [33] 18111.87 16934.71 16988.98 17012.20 16924.36 16619.59 16684.72 16556.94
##  [41] 16795.01 16662.16 16603.27 16330.44 16300.54 16278.63 16391.67 16895.60
##  [49] 17447.50 18516.27 18637.30 18768.32 19380.21 19370.25 19919.15 22051.64
##  [57] 21211.89 19244.43 18248.70 17610.88 17467.94 16791.12 16224.28 15856.38
##  [65] 15703.43 15646.46 15499.50 15374.54 15052.63 14911.67 14814.70 14809.71
##  [73] 14670.75 14687.75 14639.76 14745.74 14686.76 14814.73 14706.76 14598.79
##  [81] 14511.81 14508.82 14497.82 14594.80 14564.81 14436.84 14495.83 14617.80
##  [89] 14815.76 15310.64 15674.56 16480.37 16724.32 17231.20 17270.19 17318.18
##  [97] 17644.11 18106.00 18215.97 18782.84 19080.77 19063.78 19408.70 20883.35
## [105] 21053.31 21293.25 21607.18 21536.20 21557.19 21477.21 21093.30 20842.36
## [113] 43160.97 43681.84 46225.21 50224.22 49512.39 47512.89 46958.03 45599.37
## [121] 41903.28 40693.57 38929.01 36662.56 33566.31 31855.73 30206.13 28116.63
## [129] 27469.79 26870.93 26113.11 24568.48 24522.49 24299.54 23361.77 22820.90
## [137] 23281.79 23064.84 22006.09 20989.33 19061.78 17873.06 18538.90 18274.97
## [145] 18115.00 16937.28 16991.27 17014.26 16926.28 16621.35 16686.34 16558.37
## [153] 16796.31 16663.34 16604.36 16331.42 16301.43 16279.43 16392.41 16896.29
## [161] 17448.16 18516.91 18637.88 18768.85 19380.71 19370.71 19919.58 22052.08
## [169] 21212.28 19244.74 18248.97 17611.12 17468.15 16791.31 16224.44 15856.53
## [177] 15703.57 15646.58 15499.61 15374.64 15052.72 14911.75 14814.77 14809.77
## [185] 14670.80 14687.80 14639.81 14745.79 14686.80 14814.77 14706.80 14598.82
## [193] 14511.84 14508.84 14497.84 14594.82 14564.83 14436.86 14495.84 14617.82
## [201] 14815.77 15310.66 15674.57 16480.39 16724.33 17231.21 17270.20 17318.19
## [209] 17644.11 18106.01 18215.98 18782.85 19080.78 19063.78 19408.70 20883.35
## [217] 21053.31 21293.26 21607.18 21536.20 21557.19 21477.21 21093.30 20842.36
## [225] 43160.97 43681.84 46225.21 50224.22 49512.40 47512.89 46958.03 45599.37
## [233] 41903.28 40693.58
hasil_fc_Bawang
##   [1] 33635.91 33852.38 34011.25 34062.91 34344.36 34927.76 35446.67 35682.37
##   [9] 35786.24 35809.55 35683.61 35969.83 36543.78 36586.02 36705.40 36738.34
##  [17] 36859.72 36805.19 36748.71 36773.47 36810.65 37081.55 37166.47 37254.59
##  [25] 37196.60 37224.11 37748.10 38201.66 38646.09 38903.29 39002.23 39131.35
##  [33] 39308.64 39976.74 40273.39 40448.86 40715.53 41230.62 41748.78 42213.89
##  [41] 43228.88 43910.41 43953.96 44904.95 45380.24 45633.21 45406.49 46738.17
##  [49] 47108.41 47338.45 47413.28 47432.05 47806.38 47429.59 47605.66 47665.57
##  [57] 47410.02 47615.18 47458.81 47534.80 47551.71 47484.51 47140.92 46869.44
##  [65] 46716.15 46440.69 46293.42 46366.47 45775.60 45160.72 44580.90 44176.32
##  [73] 43503.41 43079.84 42672.29 40887.06 40017.00 39522.40 38928.70 38749.48
##  [81] 38633.33 38417.08 37633.19 37159.67 36795.26 36627.08 36677.12 36395.82
##  [89] 36281.69 35668.04 35098.45 34573.91 33851.19 33514.86 33396.74 33182.53
##  [97] 32361.75 32109.51 31750.18 31528.97 31073.56 30962.46 30781.30 30230.81
## [105] 29906.53 29396.09 29000.76 28682.49 28594.42 28435.29 27807.78 27357.43
## [113] 33504.83 33725.04 33893.21 33956.27 34187.50 34846.16 35346.67 35590.92
## [121] 35706.04 35738.07 35619.95 35899.24 36488.86 36530.91 36656.04 36694.08
## [129] 36819.22 36768.16 36713.10 36743.13 36782.18 37055.47 37142.57 37232.66
## [137] 37176.60 37205.63 37731.21 38185.71 38631.21 38889.51 38989.62 39119.77
## [145] 39297.97 39966.75 40264.10 40440.31 40707.63 41223.25 41741.88 42207.46
## [153] 43222.73 43904.61 43948.67 44899.91 45375.55 45628.89 45402.58 46734.40
## [161] 47104.91 47335.24 47410.34 47429.37 47803.90 47427.37 47603.61 47663.70
## [169] 47408.34 47613.63 47457.41 47533.51 47550.54 47483.44 47139.96 46868.59
## [177] 46715.37 46439.99 46292.79 46365.89 45775.09 45160.26 44580.49 44175.96
## [185] 43503.09 43079.55 42672.04 40886.84 40016.81 39522.23 38928.55 38749.35
## [193] 38633.22 38416.97 37633.10 37159.58 36795.19 36627.01 36677.06 36395.76
## [201] 36281.64 35668.00 35098.41 34573.88 33851.16 33514.83 33396.72 33182.51
## [209] 32361.73 32109.50 31750.16 31528.96 31073.55 30962.45 30781.29 30230.80
## [217] 29906.52 29396.09 29000.75 28682.49 28594.42 28435.29 27807.78 27357.42
## [225] 33504.82 33725.04 33893.20 33956.26 34187.49 34846.15 35346.67 35590.92
## [233] 35706.04 35738.07
#Input Data Testing
library(readxl)
datatest <- read_excel("D:/BAGUS/PORTOFOLIO/Data Testing.xlsx")
head(datatest)
## # A tibble: 6 × 3
##   Tanggal             `Cabai Rawit Merah` `Bawang Merah`
##   <dttm>                            <dbl>          <dbl>
## 1 2023-08-11 00:00:00               38928          23459
## 2 2023-08-12 00:00:00               39230          23484
## 3 2023-08-13 00:00:00               39192          23530
## 4 2023-08-14 00:00:00               39938          23218
## 5 2023-08-15 00:00:00               40800          23105
## 6 2023-08-16 00:00:00               41221          22847
datatest$Tanggal <- as.Date(datatest$Tanggal)
Tanggal = datatest$Tanggal
data_test <- data.frame(Tanggal,datatest[,-1])
head(data_test)
##      Tanggal Cabai.Rawit.Merah Bawang.Merah
## 1 2023-08-11             38928        23459
## 2 2023-08-12             39230        23484
## 3 2023-08-13             39192        23530
## 4 2023-08-14             39938        23218
## 5 2023-08-15             40800        23105
## 6 2023-08-16             41221        22847
data_cabai <- data.frame(data_test[1],data_test[2],hasil_fc_Cabai)
colnames(data_cabai)[2]="cabai"
head(data_cabai)
##      Tanggal cabai hasil_fc_Cabai
## 1 2023-08-11 38928       43042.35
## 2 2023-08-12 39230       43403.28
## 3 2023-08-13 39192       45932.31
## 4 2023-08-14 39938       49734.39
## 5 2023-08-15 40800       49330.01
## 6 2023-08-16 41221       47500.30
data_bawangm <- data.frame(data_test[1],data_test[3],hasil_fc_Bawang)
colnames(data_bawangm)[2]="bawangm"
head(data_bawangm)
##      Tanggal bawangm hasil_fc_Bawang
## 1 2023-08-11   23459        33635.91
## 2 2023-08-12   23484        33852.38
## 3 2023-08-13   23530        34011.25
## 4 2023-08-14   23218        34062.91
## 5 2023-08-15   23105        34344.36
## 6 2023-08-16   22847        34927.76
#MAPE Harga Cabai Rawit Merah
mape_c <- function(datatest,hasil_fc_Cabai) {
  mean(abs((datatest$`Cabai Rawit Merah` - hasil_fc_Cabai) / datatest$`Cabai Rawit Merah`)) * 100
}

#MAPE Harga Bawang Merah
mape_b <- function(datatest,hasil_fc_Bawang) {
  mean(abs((datatest$`Bawang Merah` - hasil_fc_Bawang) / datatest$`Bawang Merah`)) * 100
}

# Hitung MAPE
result_c <- mape_c(datatest, hasil_fc_Cabai)
print(paste("MAPE Harga Cabai Rawit Merah:", result_c, "%"))
## [1] "MAPE Harga Cabai Rawit Merah: 54.0128996628269 %"
result_b <- mape_b(datatest, hasil_fc_Bawang)
print(paste("MAPE Harga Bawang Merah:", result_b, "%"))
## [1] "MAPE Harga Bawang Merah: 62.0687921802859 %"
       Dapat diketahui bahwa nilai MAPE Harga cabai rawit merah dan harga bawang merah secara berurutan sebesar 54,012% dan 62,068%, sehingga dapat disimpulkan bahwa kemampuan model VAR (8) untuk meramalkan kurang baik. Akurasi peramaln juga dapat dilihat dengan perbandingan pada plot data deret waktu seperti berikut:
#Plot evaluasi model dengan data testing
ggplot() +
  geom_line(data= data_cabai, mapping = aes(x=Tanggal, y= cabai), color = "blue")+
  geom_line(data= data_cabai, mapping = aes(x=Tanggal, y= hasil_fc_Cabai), color = "orange")+
  labs(title = "Cabai Rawit Merah",
       x = "Tanggal",
       y = "Harga Rp / kg") +
  theme_minimal()+
  scale_x_date(date_breaks = "30 day", date_labels = ("%d-%m-%Y"))+
  theme(axis.text.x = element_text(angle = 0, hjust = 0.5))+
  theme(plot.title = element_text(size=20,hjust = 0.5))

       Pada gambar dapat diketahui bahwa hasil peramalan harga cabai oleh model VAR(8) tidak dapat meramalkan dengan akurat. Hasil Peramalan berada di bawah data aktual atau data testing.
ggplot() +
  geom_line(data= data_bawangm, mapping = aes(x=Tanggal, y= bawangm), color = "blue")+
  geom_line(data= data_bawangm, mapping = aes(x=Tanggal, y= hasil_fc_Bawang), color = "orange")+
  labs(title = "Bawang Merah",
       x = "Tanggal",
       y = "Harga Rp / kg") +
  theme_minimal()+
  scale_x_date(date_breaks = "30 day", date_labels = ("%d-%m-%Y"))+
  theme(axis.text.x = element_text(angle = 0, hjust = 0.5))+
  theme(plot.title = element_text(size=20,hjust = 0.5))

       Gambar menunjukkan hasil peramalan harga bawang merah oleh model VAR(8) tidak akurat. Hal ini terlihat bahwa garis oren sebagai hasil peramalan berada di atas garis biru yaitu data aktual atau data testing.

5 KESIMPULAN DAN SARAN

       Harga cabai rawit merah memiliki hubungan kausalitas atau hubungan yang saling mempengaruhi dengan harga bawang merah, hal ini dikarenakan dua bahan pokok tersebut saling berdampingan seperti dalam bahan masakan. Berdasarkan analisis VAR pada data deret waktu harga cabai rawit merah dan harga bawang merah pada periode 01 April 2020 sampai 10 Agustus 2023 dapat disimpulkan bahwa model yang sesuai adalah VAR (8). Nilai MAPE pada model VAR (8) sebesar 54,012% dan 62,068% menyatakan bahwa model kurang baik dalam meramalkan harga cabai rawit merah dan harga bawang merah. Hal ini dikarenakan model tidak memenuhi asumsi sisaan berdistribusi normal multivariat.
    Saran untuk penelitian selanjtnya untuk menambahkan variabel endogen yang memiliki hubungan kausalitas dengan variabel harga cabai rawit merah dan harga bawang merah. Selain itu, penelitian selanjutnya bisa menggunakan metode pemodelan yang lebih kompleks seperti VARX atau VARMA.

6 DAFTAR PUSTAKA

Aisyah. A, & Swanda. (2022). Penerapan Model Vector Autoregressive (VAR) untuk Peramalan Jumlah Kedatangan dan Keberangkatan Penerbangan Domestik di Kota Batam. Jurnal Statistika, Vol. 2 No. 2 (2022), Hal: 365-372.

Anggorojati, R. R. S. B. (2022). Faktor-Faktor Yang Mempengaruhi Harga Bawang Merah di Indonesia (Doctoral dissertation, Universitas Jenderal Soedirman). Cryer, J, D. (2008). Time Series Analysis. Boston: Duxbury Press.

Paulus A, P., & Ellen G, T. (2016). Faktor-faktor yang mempengaruhi harga cabai rawit di Kota Manado. Agri-sosioekonomi, 12(2), 105-120.

Gujarati, D, N. (2004). Ekonometrika Dasar. Jakarta: Erlangga.

Nawangsari. (2008). Pemanfaatan Bawang Merah ( Allium cepa L .) sebagaiAgen Ko- Kemoterapi. Karya Tulis Mahasiswa, (FAKULTAS FARMASI UNIVERSITAS GADJAH MADA YOGYAKARTA), 1–36.

Makridakis, S., Wheelright C., S. dan Hyndman, Rob, J. (1997). Forecasting: Methods and Applications [3 ed.]. Canada: John Wiley and Sons.Makridakis, S., S. C. Wheelwright. dan V. McGee. (1999). Metode dan Aplikasi Peramalan, Edisi kedua. Alih bahasa Untung Sus Andriyanto dan Abdul Basith. Jakarta: Erlangga.

Render, Barry & Jay Heizer. 2006. Manajemen Operasi. Edisi ketujuh. Jakarta : Salemba Empat.

Reskiyani. F. D, Arif. T. M, dan Sudarmin. (2021). Metode Vector Autoregressive (VAR) dalam Menganalisis Pengaruh Kurs Mata Uang Terhadap Ekspor dan Impor di Indonesia. Jurnal of Statistics and Its Applicatons on Teaching and Research. Vol. 3, no. 1, pp. 23-30.

Tsay, R.S. (2005). Analysis of Financial Time Series [2 Ed.]. United States of America: John Wiley & Sons, Inc.

Walpole, R. E. (1992). Pengantar Statistika. Edisi Ketiga. Jakarta: PT Gramedia Pustaka Utama.

Wei, W.W.S. (2006). Time Series Analysis: Univariate and Multivariate Methods [2nd ed.]. New York: Pearson Education.