Mini Project : Time Series Forecasting Menggunakan Model ARIMA Untuk Memprediksi Harga Saham, Apakah Akurat?

Muhamad Saladin
5 min readAug 11, 2023

--

Pada kesempatan ini saya ingin berbagi insight mengenai project Time Series Forecasting yang telah saya kerjakan, pada project ini saya mencoba melakukan prediksi harga saham menggunakan bantuan Time Series Forecasting model ARIMA, tujuan dilakukan nya project ini adalah untuk membuktikan apakah hasil pemodelan Time Series Forecasting menggunakan ARIMA mampu untuk melakukan prediksi pergerakan harga saham dengan akurat ataukah model malah cenderung gagal memprediksi pergerakan harga saham, kemudian pada project ini saya juga mencoba membandingkan hasil pemodelan saat menggunakan sedikit data historis harga saham dengan saat menggunakan banyak data historis harga saham untuk mencari tahu apakah Banyaknya data berpengaruh signifikan terhadap performa model atau tidak.

Pada mini project ini akan digunakan data historis harga saham Bank Tabungan Pensiunan Syariah (BTPS) yang bisa didapatkan dari yahoo finance di link berikut :

Kemudian file project dapat diakses pada link github berikut :

msfasaladin/Project-ARIMA (github.com)

  1. Menggunakan sedikit data (Historis Harga Saham Bank Tabungan Pensiunan Syariah (BTPS) 11 Agustus 2022–11 Agustus 2023)

Pertama — tama saya mencoba menggunakan dataset dengan sedikit data pada pemodelan, dataset yang terlihat adalah sebagaimana berikut :

Dataset dengan Sedikit Data

Kemudian saya coba lakukan splitting pada dataset tersebut dengan menghapus 40 data terakhir dari dataset awal, sehingga didapatkan dataset baru sebagaimana berikut :

Dataset dengan Sedikit Data Setelah Splitting

Kedua dataset tersebut(dataset sebelum splitting dan sesudah splitting) saya coba plot ke dalam bentuk lineplot, dengan nilai yang digunakan adalah kolom Close yang berisikan data dari harga penutupan. Hasil dari plotting adalah sebagaimana berikut :

Plot Dataset Sebelum Splitting
Plot Dataset Setelah Splitting

Dari hasil plot diatas dapat terlihat bahwa plot dataset setelah splitting merupakan potongan bagian dari plot dataset sebelum splitting, kemudian plot dataset yang terpotong tersebut nantinya akan digabung dengan plot data-data hasil prediksi sehingga nantinya dapat dibandingkan dengan plot data aktual yang terlihat pada plot dataset sebelum dilakukan splitting.

Setelah itu kita akan mencoba melakukan plot ACF-PACF dengan tujuan untuk mengetahui apakah data tersebut stationer atapun tidak (Apabila grafik ACF slowly decaying, artinya data tidak stationer), selain itu plot ACF-PACF juga dapat digunakan untuk membantu menentukan parameter ARIMA (p,d,q) yang terbaik. Hasil dari plot ACF-PACF adalah sebagaimana berikut :

Plot ACF Menggunakan Sedikit Data
Plot PACF Menggunakan Sedikit Data

Dari hasil plot ACF menunjukkan kecenderungan slowly decaying, sehingga perlu dilakukan differencing. berikut adalah dataset setelah ditambahkan kolom nilai dari differencing.

Dataset Setelah Ditambahkan Kolom Nilai Differencing

Kemudian kita coba lihat hasil plot ACF-PACF setelah dilakukan differencing sebagaimana berikut :

Plot ACF-PACF Tanpa dan Dengan Menggunakan Differencing

Pada differencing order 2, terlihat bahwa plot ACF cut-off, sedangkan plot PACF tail-off. Sehingga model yang digunakan adalah IMA(0,d,q). dikarenakan differencing yang digunakan adalah differencing order 2, maka model nya menjadi (0,2,q), dimana nilai MA(q) didapatkan dengan menggunakan looping, dan didapatkan hasil sebagaimana berikut :

MA terbaik

Dari hasil looping, dapat terlihat bahwa nilai MA terbaik adalah 1 sehingga didapatkan model terbaik yang digunakan yaitu IMA(0,2,1). Setelah mendapatkan model terbaik, kita dapat menggunakan model tersebut untuk melihat performa model dengan cara membandingkan hasil forecasting selama 40 hari ke depan pada dataset split(dataset yang sudah dipotong 40 baris data terakhir) dengan dataset asli nya(dataset yang memiliki nilai aktual untuk 40 baris data terakhir hasil forecasting). didapatkan hasil plot performa model sebagaimana berikut :

Plot Dataset Aktual
Plot Dataset Hasil Prediksi

Terlihat bahwa dari hasil prediksi dengan data yang sedikit menghasilkan model yang tidak akurat. Selanjutnya, kita akan mencoba menggunakan jumlah data yang lebih banyak apakah berpengaruh terhadap model.

2. Menggunakan banyak data (Historis Harga Saham Bank Tabungan Pensiunan Syariah (BTPS) 08 Mei 2018 – 11 Agustus 2023)

Step-step yang telah dilakukan saat menggunakan sedikit data dilakukan juga saat menggunakan banyak data, dan didapatkan model yang terbaik adalah sama, yaitu IMA(0,2,1). Kemudian hasil plot performa model didapatkan sebagaimana berikut :

Plot Dataset Aktual
Plot Dataset Hasil Prediksi

Dari hasil plot, terlihat bahwa tidak adanya perbedaan siginifikan terhadap performa model apabila saat menggunakan sedikit data maupun dengan saat menggunakan banyak data, keduanya sama-sama menghasilkan model yang buruk, dimana tidak dapat memprediksi pergerakan harga saham dengan benar.

3. Kesimpulan

Setelah kita melakukan pengujian performa model melalui hasil plot, dapat diambil kesimpulan sebagaimana berikut :

- Time Series Forecasting menggunakan model ARIMA tidak cukup baik apabila digunakan untuk membantu memprediksi harga saham dikarenakan dari hasil plot sangat terlihat jelas bahwa garis hasil prediksi melenceng sangat jauh dari pergerakan harga saham yang sebenarnya.

- Pada Time Series Forecasting menggunakan model ARIMA, menggunakan sedikit maupun banyak data tidak berpengaruh signifikan terhadap performa model, karena terlihat bahwa saat menggunakan banyak data model tetap masih tidak mampu untuk memprediksi pergerakan harga saham dengan benar.

4. Rekomendasi

Dari hasil kesimpulan, didapatkan rekomendasi sebagaimana berikut :

- Hindari untuk menggunakan model ARIMA saat ingin mencoba memprediksi pergerakan harga saham menggunakan bantuan Time-Series Forecasting.

- Kedepannya bisa dilakukan pengujian menggunakan model lain seperti EWMA(Exponential Smoothing), Dynamic Regression, ataupun LSTM(Long Short Term Memory) apakah tetap menghasilkan model yang buruk ketika digunakan untuk memprediksi pergerakan harga saham atau tidak.

--

--