Pengembangan Analisis Teknikal Untuk Trading Bursa Saham dengan Long Short Term Memory
Faris Abdi El Hakim, Arna Fariza*, Setiawardhana
Teknik Informatika dan Komputer, Politeknik Elektronika Negeri Surabaya, Surabaya, Indonesia Email: 1[email protected], 2,*[email protected], 3[email protected]
Email Penulis Korespondensi: [email protected]
Abstrak−Pergerakan harga saham sulit diprediksi dan dapat berubah seiring waktu. Analisis teknikal diperlukan untuk menentukan waktu dan perusahaan tepat dalam investasi saham akan tetapi sebagai trader pemula akan mengalami kesulitan dalam menganalisa saham maka penulis melakukan penelitian terkait pengembangan analisis teknikal untuk trading bursa saham menggunakan Long Short Term Memory dengan data yang digunakan yaitu data saham PT Bank Central Asia Tbk (BBCA.JK), PT Bank Rakyat Indonesia Tbk (BBRI.JK), PT Aneka Tambang Tbk (ANTM.JK) yang diprediksi harga saham dengan metode LSTM dan analisis teknikal memperoleh nilai RMSE sebesar 136.7 untuk harga Open, 126.5 untuk harga Close, 317.9 untuk harga High, 178.0 untuk harga Low, dan 189.6 untuk harga Adj.Close lebih baik dibanding dengan metode LSTM tanpa analisis teknikal. Sedangkan dengan metode LSTM mendapatkan hasil akurasi lebih baik dibandingkan dengan SVR dan KNN dari 3 dataset yang berbeda dengan nilai RMSE 65.21 untuk LSTM, 313.56 untuk SVR, 72.44 dan nilai R2 0.9919 untuk LSTM, 0.81 untuk SVR, 0.990 untuk KNN. Hasil dari model tersebut diimplementasikan kedalam sistem berbasis web yang menggunakan framework laravel dan database mysql.
Kata Kunci: Prediksi; Bursa Saham; Analisis Teknikal; Deep learning; Long Short Term Memory
Abstract−Stock price movements are difficult to predict and can change over time. Technical analysis is necessary to determine the right timing and company for stock investments. However, novice traders may face difficulties in analyzing stocks.
Therefore, the author conducted research on the development of technical analysis for stock trading using Long Short-Term Memory (LSTM). The study utilized data from PT Bank Central Asia Tbk (BBCA.JK) stock prices, covering the period from July 1, 2004, to April 28, 2023. The LSTM method combined with technical analysis resulted in RMSE values of 136.759 for Open price, 126.52 for Close price, 317.968 for High price, 178.001 for Low price, and 189.669 for Adj. Close price, which outperformed the LSTM method without technical analysis. Furthermore, the LSTM method achieved better accuracy compared to Support Vector Regression (SVR) and K-Nearest Neighbors (KNN) using three different datasets. The RMSE values were 65.21 for LSTM, 313.56 for SVR, and 72.44 for KNN. The R2 values were 0.9919 for LSTM, 0.81 for SVR, and 0.990 for KNN. The results of the model were implemented in a web-based system using the Laravel framework and MySQL database.
Keywords: Prediction; Stock Exchange; Technical Analysis; Deep Learning; Long Short Term Memory
1. PENDAHULUAN
Bursa saham adalah sistem atau tempat untuk melakukan trading dan investasi saham dari suatu perusahaan. Trading dan investasi saham merupakan suatu aktivitas membeli saham dari perusahaan dan menjual saham tersebut ketika harga saham naik. Perbedaannya trading dan investasi adalah waktu penjualan saham dimana trading menjual saham dalam jangka waktu yang pendek sedangkan investasi menjual saham dalam jangka waktu yang lama.
Pergerakan harga saham sulit untuk ditebak arah pergerakannya dan berubah dalam kurun waktu tertentu [1], [2].
Untuk melakukan investasi saham diperlukan analisis untuk menentukan perusahaan dan waktu yang tepat dalam pembelian maupun penjualan saham [2].
Salah satu analisis yang digunakan dalam pergerakan harga saham adalah menggunakan analisis teknikal dengan menggunakan indikator analisis teknikal [1]–[3]. Jenis indikator dalam analisis teknikal yaitu Moving Average Divergent Convergent (MACD), Bollinger Band, and Relative Strength Index (RSI) telah digunakan dalam salah satu penelitian dengan data time series dan input indikator teknikal analisis yang digunakan untuk melakukan prediksi atau peramalan berupa output harga saham [3]. Akan tetapi untuk analisis pasar saham dengan ukuran data yang sangat besar dan juga non linear menggunakan teknikal analisis kurang efisien untuk mengidentifikasi pola-pola tersembunyi dan hubungan yang kompleks dalam kumpulan data yang besar, teknik machine learning dalam prediksi harga saham terbukti meningkatkan efisiensi sebesar 60-86 persen dibandingkan metode sebelumnya [4].
Pada penelitian sebelumnya yaitu prediksi harga saham yang dilakukan oleh Wen et al. menggunakan Principal Component Analysis (PCA) dan Long Short-Term Memory (LSTM) pada dataset Pingan Bank dalam rentang tanggal 4 Januari 2016 - 28 Desember terbagi menjadi 60% data training, 20 % data verifikasi, dan 20%
data testing dengan komparasi PCA-LSTM mendapatkan RMSE 0.221 dan MAPE 1.667%, CNN mendapatkan RMSE 0.230 dan MAPE 1.686%, MLP mendapatkan RMSE 0.239 dan MAPE 1.838%, Moving average mendapatkan RMSE 0.248 dan MAPE 1.943%. Sehingga metode PCA-LSTM mendapatkan nilai RMSE dan MAPE lebih kecil dibandingkan dengan 3 metode lainnya dan akurasi lebih tinggi dibandingkan dengan metode lain [5]. Budiprasetyo et al. menggunakan multiple layer LSTM dengan empat dan delapan layer yang memiliki 96 neurons menghasilkan prediksi harga saham yang akurat dengan nilai MAPE sebesar 2.24 pada Erajaya Swasembada Tbk, nilai MAPE 1.83 pada Semen Indonesia, nilai MAPE 2.66 pada Wijaya Karya [6]. Qin et al.
menghasilkan prediksi yang baik dengan nilai MSE 0.117, nilai MAE 0.243, nilai RMSE 0.342, dan nilai R2 0.8783 [7].
Shen et al. menggunakan LSTM dan PCA mendapatkan hasil prediksi yang baik dengan nilai F1 score 0.91, nilai MSE 0.077, dan MAE 0.084 [8]. Sang et al. menggunakan Long Short-Term Memory (LSTM) dan analisis teknikal menghasilkan LSTM dengan metode SMA unggul dalam 6 dari 9 sektor, dengan metode RSI unggul dalam 6 dari 9 sektor, dengan metode MACD unggul dalam 5 dari 9 sektor [9].
Maka dengan penelitian sebelumnya menggunakan metode Long Short-Term Memory (LSTM) maupun menggunakan analisis teknikal yang menghasilkan prediksi dalam data sekuensial yang cukup baik maka penulis melakukan penelitian dengan judul “Pengembangan Analisis Teknikal Untuk Trading Bursa Saham Dengan Long Short-Term Memory”, dengan mengkombinasikan analisis teknikal dan metode Long Short Term Memory (LSTM) akan meningkatkan performa dalam memprediksi dan dapat membantu trader saham dalam mengambil keputusan pada penjualan (buy), pembelian (sell), atau tidak memperjualbelikan (hold) saham.
2. METODOLOGI PENELITIAN
Desain sistem yang digunakan dalam penelitian ini secara keseluruhan ditunjukkan pada Gambar 1. Proses terbagi menjadi data collection, data preprocessing, dan prediction process.
Gambar 1. Desain sistem
Pada Gambar 1 tahapan pertama yang dilakukan merupakan data collection atau pengumpulan data yang dilakukan melalui website yahoo finance yang kemudian diunduh berupa file ekstensi .csv. Kemudian proses selanjutnya melakukan data processing dengan membuat fitur baru terkait indikator analisis teknikal seperti H-L, O-C, Simple Moving Average, Relative Strength Index (RSI), Stochastic Oscilator, BollingerBrand, Aroon Oscilator, setelah proses pembuatan fitur selesai maka dilakukan normalisasi data menggunakan min-max, dan dilanjutkan seleksi fitur yang relevan untuk meningkatkan performa model yang akan dibuat. Kemudian dilanjutkan prediction process dimana dataset dibagi menjadi 80% data training dan 20% data testing setelah itu dilanjutkan dievaluasi performa model yang dibuat dengan RMSE.
2.1 Pengumpulan Data
Pada tahap ini dilakukan pengambilan data yang berasal dari website yahoo finance. Untuk data yang digunakan dalam penelitian ini adalah data saham PT Bank Central Asia Tbk (BBCA.JK), PT Bank Rakyat Indonesia Tbk (BBRI.JK), PT Aneka Tambang Tbk (ANTM.JK). Hasil download data saham berupa file ekstensi csv. Data saham BBCA.JK berjumlah 4669 data dengan 7 fitur yaitu date, open, high, low, close, adj. close, volume. Berikut ini merupakan fitur dan tipe datanya pada Tabel 1 dan data saham PT Bank Central Asia Tbk (BBCA.JK) pada Tabel 2.
. Tabel 1. Fitur Data Saham No Fitur Tipe Datas
1 Date Object
2 Open Float
3 High Float
4 Low Float
5 Close Float
6 Adj.Close Float
7 Volume Int
Tabel 2. Data Saham PT Bank Central Asia Tbk (BBCA.JK)
2.2 Data Preprocessing
Data preprocessing adalah tahapan atau langkah-langkah sebelum data diolah menggunakan algoritma atau model dalam machine learning yang bertujuan untuk mengubah kualitas data menjadi baik, terstruktur, dan sesuai dengan kebutuhan. Beberapa tahapan data preprocessing dalam penelitian ini:
a. Pembuatan fitur baru
Membuat fitur baru terkait indikator analisis teknikal seperti H-L (nilai high dikurangi low), O-C (nilai open dikurangi close), Simple Moving Average (SMA), Relative Strength Index (RSI), Stochastic Oscilator, BollingerBrand, Aroon Oscilator pada Tabel 3.
Tabel 3. Pembuatan fitur baru indikator analisis teknikal
b. Normalisasi data
Normalisasi data merupakan proses dalam merubah suatu data ke dalam rentang yang seragam atau standar dengan tujuan untuk menghilangkan perbedaan jarak atau skala antara fitur-fitur yang ada dalam dataset yang digunakan agar tidak ada satu fitur yang mendominasi dengan fitur lain yang memungkinkan model memperoleh informasi yang seimbang dari semua fitur. Normalisasi data penelitian ini menggunakan min-max yang ditunjukkan pada persamaan 1 dan contoh hasil dari normalisasi data pada Gambar 2.
xnew = 𝑥 − 𝑚𝑖𝑛(𝑥) / 𝑚𝑎𝑥(𝑥) – 𝑚𝑖𝑛(𝑥) (1)
Dimana :
xnew = hasil dari normalisasi data x = data asli
min(x) = nilai minimal pada data max(x) = nilai maksimal pada data
Gambar 2. Normalisasi data menggunakan MinMax
No Date Open High Low Close Adj.Close Volume
4658 05-04-2023 8775 8800 8725 8725 8725 36922100
4659 06-04-2023 8700 8775 8700 8750 8750 45489400
4660 4661 4662 4663 4664 4665 4666 4667 4668 4669
10-04-2023 11-04-2023 12-04-2023 13-04-2023 14-04-2023 17-04-2023 18-04-2023 26-04-2023 27-04-2023 28-04-2023
8725 8825 8900 8950 9000 9025 9050 9125 9100 9100
8800 8825 8900 8950 9000 9050 9175 9200 9175 9125
8700 8750 8825 8875 8950 8900 9025 9000 9075 9050
8800 8825 8900 8925 9000 9025 9120 9200 9150 9050
8800 8825 8900 8925 9000 9025 9120 9200 9150 9050
32996000 44554300 91903600 51726500 110354200
83946900 91178700 186928200
54842400 145775300
O-C H-L SMA
BB UP
BB MID
BB
LOW RSI
AARON UP
AARON
DOWN STOCHK STOCHD 50
-50 -75 0 0 25
0 0 -75 -75 -50 50
75 75 100
75 75 75 50 150 150 200 100 75
8602.5 8604.1 8608.3 8611.6 8619.1 8624.1 8632.5 8646.6 8663.3 8687.5 8712.5 8733.3
8876.2 8850.2 8854.1 8869.8 8937.7 8970.1 9022.0 9065.0 9133.2 9228.9 9241.8 9248.5
8805.5 8799.2 8795.8 8799.1 8815.3 8841.3 8878.5 8921.5 8973.8 9035.5 9090.1 9119.7
8734.8 8748.2 8737.5 8728.4 8692.8 8712.5 8735.0 8778.0 8814.5 8842.1 8938.5 8990.8
54.2 55.3 57.5 58.5 61.7 62.7 65.7 66.6 70.2 72.5 68.6 61.5
71.4 64.3 57.1 50.0 100.0 100.0 100.0 100.0 100.0 100.0 92.9 85.7
14.3 7.1 0.0 0.0 7.1 0.0 21.4 14.3 7.1 0.0 21.4 14.3
49.4 44.8 55.2 78.6 95.2 96.7 96.7 93.9 92.5 92.5 89.7 77.8
54.8 49.6 49.8 59.6 76.3 90.2 96.2 95.7 94.3 92.9 91.5 86.6
c. Seleksi Fitur
Seleksi fitur merupakan tahapan dimana memilih fitur yang paling relevan dari sekumpulan fitur yang ada dalam daya yang digunakan. Tujuan dari feature selection yaitu meningkatkan kinerja model prediksi dan mengurangi dimensi dimensi data sehingga menghindari masalah overfitting, mengurangi kompleksitas model, dan meningkatkan kecepatan pemrosesan data. Untuk seleksi fitur pada penelitian ini menggunakan pearson correlation diseleksi dengan kondisi nilai korelasi lebih dari 0.3 yang terlihat pada Gambar 3.[9]–[18][9]–
[18][9]–[18][9]–[18][9]–[18][9]–[18]
Gambar 3. Seleksi fitur dengan pearson correlation 2.3 Prediksi dengan LSTM
Selanjutnya data tersebut diprediksi menggunakan metode Long Short-Term Memory (LSTM) dengan input parameter (Xt) yang berasal dari seleksi fitur pada Gambar 5 dengan perbandingan data training 80% dan data testing 20%. Input parameter tersebut akan melalui forget gate, input gate, dan output gate.
a. Forget Gate
Forget gate digunakan untuk menentukan informasi yang dibuang. Persamaan 2 merupakan rumus dalam perhitungan forget gate. Dimana 𝜎 adalah fungsi aktivasi sigmoid, w adalah bobot, ℎ𝑡−1 adalah vektor hidden state pada timestep sebelumnya, 𝑥𝑡 adalah input pada timestep t, b adalah offset. Output dari fungsi aktivasi sigmoid adalah 0 dan 1, dan ƒ𝑡 menentukan seberapa banyak informasi pada state cell yang dapat masuk pada saat sebelumnya. Dimana 0 artinya tidak ada informasi yang dapat masuk dan 1 artinya semua informasi yang dapat masuk.
ƒ𝑡 = 𝜎(wƒ . [ℎ𝑡−1, 𝑥𝑡] + 𝑏f) (2)
b. Input Gate
Input gate digunakan untuk menentukan informasi yang perlu diupdate dengan menggunakan rumus dalam persamaan 3. i𝑡 menentukan seberapa banyak informasi yang diupdate menggunakan fungsi aktivasi sigmoid, dimana 0 adalah tidak diupdate dan 1 adalah diupdate. 𝐶𝑡 adalah output alternatif yang akan diperbarui dengan menggunakan fungsi 𝑡𝑎𝑛ℎ yang perhitungannya dijabarkan pada persamaan 4. Informasi yang akan ditransmisikan ditentukan oleh forget gate dan input gate.
i𝑡 = 𝜎(Wƒ. [ℎ𝑡−1, 𝑥𝑡] + 𝑏i) (3)
c𝑡 = 𝑡𝑎𝑛ℎ(W𝑐. [ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑐) (4)
c. Output Gate
Output gate digunakan untuk menentukan output dari informasi. Dimana state cell c𝑡 pada waktu t adalah jumlah informasi pada timestep sebelumnya (t-1) dan informasi yang telah diupdate dengan menggunakan persamaan 5. 𝑜 mengacu pada banyaknya informasi output, dimana 0 menyatakan bahwa tidak ada informasi sebagai output dan 1 menyatakan bahwa semua informasi sebagai output. ℎ𝑡 adalah hasil perkalian fungsi tanh cell state pada waktu (c𝑡) dengan 𝑜. Perhitungan output dinyatakan pada persamaan 6 dan 7.
c𝑡 = ƒ𝑡 * 𝑐𝑡−1+ i𝑡 * 𝑐𝑡 (5)
𝑜𝑡 = 𝜎(W𝑜 . [ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑜) (6)
ℎ𝑡 = 𝑜t * 𝑡𝑎𝑛ℎ(𝑐𝑡) (7)
3. HASIL DAN PEMBAHASAN
Pada bagian ini menjelaskan hasil pada ujicoba dan analisa pada sistem. Pada bagian ini menunjukkan hasil analisa dari performa model dari masing-masing percobaan yang dilakukan. Percobaan dilakukan dengan membagi dataset menjadi 80% data training dan 20% data testing yang akan diprediksi menggunakan LSTM model batch size 100 dan epoch 150. Pengujian pertama dilakukan dengan membandingkan metode Long Short Term Memory tanpa menggunakan indikator analisis teknikal dibandingkan dengan pengujian kedua menggunakan metode Long Short Term Memory menggunakan indikator analisis teknikal, pengujian dilakukan pada setiap fitur atau atribut yang ada pada dataset kemudian dibandingkan menggunakan Root Mean Squared Error (RMSE) dan Mean Absolute
Error (MAE). Lalu pengujian selanjutnya membandingkan metode Long Short Term Memory, Support Vector Regression, dan Linear Regression pada dataset yang berbeda kemudian dievaluasi menggunakan akurasi Root Mean Squared Error (RMSE) dan Squarred Correlation (R2).
3.1 Perhitungan Manual
Berikut ini merupakan proses perhitungan manual menggunakan dataset PT Bank Central Asia Tbk (BBCA.JK) yang ditunjukkan pada Tabel 4. Data pada Tabel 4 tersebut merupakan harga close PT Bank Central Asia Tbk (BBCA.JK).
Tabel 4. Data Harga Close Saham PT Bank Central Asia Tbk (BBCA.JK) Date Close
01/07/2004 8725 02/07/2004 8750 05/07/2004 8800 06/07/2004 8825 07/07/2004 8900 08/07/2004 8925
. .
. .
18/04/2023 9120 26/04/2023 9200 27/04/2023 9150 28/04/2023 9050
Kemudian dilakukan normalisasi data menggunakan min-max sesuai dengan Tabel 4 dengan nilai minimal 8725 dan nilai maksimal 9200 pada dataset tersebut.
X4666 new = X4666 − 𝑚𝑖𝑛(𝑥) / 𝑚𝑎𝑥(𝑥) – 𝑚𝑖𝑛(𝑥) = 9120 – 8725 / 9200 – 8725 = 0.831 X4667 new = X4666 − 𝑚𝑖𝑛(𝑥) / 𝑚𝑎𝑥(𝑥) – 𝑚𝑖𝑛(𝑥) = 9200 – 8725 / 9200 – 8725 = 1 X4668 new = X4666 − 𝑚𝑖𝑛(𝑥) / 𝑚𝑎𝑥(𝑥) – 𝑚𝑖𝑛(𝑥) = 9150 – 8725 / 9200 – 8725 = 0.894 X4669 new = X4666 − 𝑚𝑖𝑛(𝑥) / 𝑚𝑎𝑥(𝑥) – 𝑚𝑖𝑛(𝑥) = 9050 – 8725 / 9200 – 8725 = 0.684
Dengan data normalisasi tersebut selanjutnya dilakukan proses prediksi dengan menggunakan LSTM.
Perhitungan dilakukan pada hari ke-4666 pada tanggal 18 Juni 2023 harga close saham PT Bank Central Asia Tbk (BBCA.JK) dengan bobot : 0.5, bias forget gate:1, bias input gate: 0.5, bias output gate: 0.5, 𝑐𝑡−1: 0.
1. Perhitungan forget gate:
ƒ𝑡 = 𝜎(wƒ . [ℎ𝑡−1, 𝑥𝑡]+ 𝑏f) = 𝜎(0.5 *0+ 0.5 * 0.831+ 1) = 𝜎(1.4155)
= 0.805
2. Perhitungan input gate:
i𝑡 = 𝜎(Wƒ. [ℎ𝑡−1, 𝑥𝑡] + 𝑏i) = 𝜎(0.5 * 0 + 0.5 * 0.831 + 0.5) = 𝜎(0.9155)
= 0.714
3. Perhitungan tanh
c𝑡 = 𝑡𝑎𝑛ℎ(W𝑐. [ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑐) = 𝑡𝑎𝑛ℎ(0.5 *0 + 0 .5* 0.831 + 0) = 𝑡𝑎𝑛ℎ(0.4155)
= 0.659
4. Perhitungan cell state c𝑡 = ƒ𝑡 * 𝑐𝑡−1+ i𝑡 * 𝑐𝑡 = 0.805 * 0 + 0.714 * 0.659 = 0.470
5. Perhitungan output gate 𝑜𝑡 = 𝜎(W𝑜 . [ℎ𝑡−1, 𝑥𝑡] + 𝑏𝑜) = 𝜎(0.5 *0 + 0.5*0.831 + 0.5) = 𝜎(0.9155)
= 0.714
ℎ𝑡 = 𝑜t * 𝑡𝑎𝑛ℎ(𝑐𝑡) = 0.714 * 𝑡𝑎𝑛ℎ(0.470) = 0.714 * 0.437 = 0.312
3.2 Evaluasi Hasil Testing
Untuk hasil testing menghasilkan nilai prediksi data harga saham dengan membandingkan model LSTM tanpa indikator analisis teknikal dan model LSTM yang menggunakan indikator analisis teknikal. Kemudian dievaluasi performa model yang sudah dibuat menggunakan Root Mean Squared Error (RMSE) dan Mean Squared Error (MAE). Dengan nilai RMSE dan MAE semakin kecil atau mendekati 0 maka hasil prediksi yang dihasilkan semakin akurat. Lalu pengujian selanjutnya membandingkan metode Long Short Term Memory, Support Vector Regression, dan Linear Regression pada dataset kemudian dievaluasi menggunakan Root Mean Squared Error (RMSE) dan Squared Correlation (R2). Dalam konteks prediksi saham nilai Root Mean Squared Error (RMSE) semakin kecil atau mendekati 0 maka mengindikasi bahwa tingkat akurasi semakin baik. Berikut merupakan hasil dari percobaan yang dilakukan oleh peneliti:
a. Prediksi dengan LSTM tanpa indikator analisis teknikal
Hasil prediksi diperoleh menggunakan fitur harga saham dari proses training pada model LSTM sejumlah 80%
dari dataset yang kemudian diprediksi nilai harga saham tersebut dan dibandingkan dengan nilai asli dari data testing. Berikut ini merupakan hasil dari nilai prediksi harga saham yang ditampilkan pada Tabel 5 dan plot prediksi harga saham dengan nilai asli dari dataset pada Gambar 4.
Tabel 5. Hasil prediksi harga saham menggunakan LSTM tanpa indikator analisis teknikal Data ke- Nilai Asli Nilai Prediksi
3741 6150 6016
3742 6145 6082
3743 3744 3745
6200 6290 6235
6073 6129 6129
Gambar 4. Grafik hasil prediksi menggunakan LSTM tanpa indikator analisis teknikal b. Prediksi dengan LSTM dan indikator analisis teknikal
Hasil prediksi diperoleh menggunakan fitur harga saham dengan indikator analisis teknikal dari proses training pada model LSTM sejumlah 80% dari dataset yang kemudian diprediksi nilai harga saham tersebut dan dibandingkan dengan nilai asli dari data testing. Berikut ini merupakan hasil prediksi pada Tabel 5 dan Gambar 5.
Tabel 5. Hasil prediksi harga saham menggunakan LSTM dengan indikator analisis teknikal Data ke- Nilai Asli Nilai Prediksi
3741 6150 6084 3742 6145 6123 3743
3744 3745
6200 6290 6235
6136 6173 6247
Gambar 5. Grafik hasil prediksi menggunakan LSTM dengan indikator analisis teknikal
c. Selanjutnya membandingkan metode LSTM tanpa indikator analisis teknikal dengan menggunakan kombinasi
metode LSTM dengan indikator analisis teknikal menggunakan evaluasi peforma menggunakan Root Mean Squared Error (RMSE) yang hasilnya ditampilkan pada Tabel 6 sedangkan menggunakan Mean Absolute Error (MAE) ditampilkan pada Tabel 7. Didapatkan bahwa LSTM menggunakan indikator analisis teknikal lebih unggul dibandingkan dengan LSTM tanpa indikator analisis teknikal karena nilai MAE dan RMSE lebih kecil.
Tabel 6. Perbandingan metode dengan RMSE
Fitur LSTM tanpa indikator analisis teknikal LSTM dengan indikator analisis teknikal
Open 136.7 125.4
Close 126.5 111.1
High Low Adj.Close
317.9 178.0 189.6
141.5 150.2 146.1 Tabel 7. Perbandingan metode dengan MAE
Fitur LSTM tanpa indikator analisis teknikal LSTM dengan indikator analisis teknikal
Open 124.9 84.4
Close 123.3 103.3
High Low Adj.Close
156.4 166.5 99.6
144.1 112.8 80.6
d. Melakukan ujicoba prediksi menggunakan metode Long Short Term Memory (LSTM), Support Vector Regression (SVR), K-nearest neighbors (KNN) pada fitur atau atribut close data saham PT Bank Central Asia Tbk (BBCA.JK) dengan menggunakan evaluasi RMSE dan R2. Dalam konteks prediksi saham nilai Root Mean Squared Error (RMSE) semakin kecil atau mendekati 0 maka mengindikasi bahwa tingkat akurasi semakin baik. Sedangkan untuk Squared Correlation (R2) jika nilai mendekati 1 maka tingkat akurasi semakin baik.
Hasil pengujian mendapatkan nilai akurasi tertinggi dengan menggunakan LSTM dengan nilai RMSE 154.57 dan nilai R2 0.97 sedangkan akurasi terendah menggunakan SVR dengan nilai RMSE 1994.71 dan nilai R2 - 8.737 yang ditampilkan pada Tabel 8.
Tabel 8. Hasil Pengujian RMSE dan R2 pada PT. Bank Central Asia Tbk (BBCA.JK)
Jenis Evaluasi LSTM SVR KNN
RMSE 154.57 1994.71 367.3
R2 0.97 -8.7 0.90
e. Melakukan ujicoba prediksi menggunakan metode Long Short Term Memory (LSTM), Support Vector Regression (SVR), K-nearest neighbors (KNN) pada fitur atau atribut close data saham PT Bank Rakyat Indonesia Tbk (BBRI.JK) dengan menggunakan evaluasi RMSE dan R2. Dalam konteks prediksi saham nilai Root Mean Squared Error (RMSE) semakin kecil atau mendekati 0 maka mengindikasi bahwa tingkat akurasi semakin baik. Sedangkan untuk Squared Correlation (R2) jika nilai mendekati 1 maka tingkat akurasi semakin baik. Hasil pengujian mendapatkan nilai akurasi tertinggi dengan menggunakan LSTM dengan nilai RMSE 88.78 dan nilai R2 0.976 sedangkan akurasi terendah menggunakan SVR dengan nilai RMSE 2702.97 dan nilai R2 -0.68 yang ditampilkan pada Tabel 9.
Tabel 9. Hasil Pengujian RMSE dan R2 pada PT Bank Rakyat Indonesia Tbk (BBRI.JK)
Jenis Evaluasi LSTM SVR KNN
RMSE 88.78 2702.97 193.8
R2 0.97 -0.68 0.85
f. Melakukan ujicoba prediksi menggunakan metode Long Short Term Memory (LSTM), Support Vector Regression (SVR), K-nearest neighbors (KNN) pada fitur atau atribut close data saham PT Aneka Tambang Tbk (ANTM.JK) dengan menggunakan evaluasi RMSE dan R2. Dalam konteks prediksi saham nilai Root Mean Squared Error (RMSE) semakin kecil atau mendekati 0 maka mengindikasi bahwa tingkat akurasi semakin baik. Sedangkan untuk Squared Correlation (R2) jika nilai mendekati 1 maka tingkat akurasi semakin baik. Hasil pengujian mendapatkan nilai akurasi tertinggi dengan menggunakan LSTM dengan nilai RMSE 65.21 dan nilai R2 0.9919 sedangkan akurasi terendah menggunakan SVR dengan nilai RMSE 313.56 dan nilai R2 0.81 yang ditampilkan pada Tabel 10.
Tabel 10. Hasil Pengujian RMSE dan R2 pada PT Aneka Tambang Tbk (ANTM.JK) Jenis Evaluasi LSTM SVR KNN
RMSE 65.21 313.56 72.44 R2 0.9919 0.81 0.990
g. Perbandingan menggunakan grafik hasil prediksi menggunakan metode Long Short Term Memory (LSTM), Support Vector Regression (SVR), K-nearest neighbors (KNN) pada fitur atau atribut close data saham dapat dilihat perbedaannya pada gambar 6.
Gambar 6. Perbandingan grafik hasil prediksi menggunakan 3 metode 3.3 Implementasi Aplikasi
Implementasi aplikasi menggunakan framework laravel dengan database mysql dan bootstrap sebagai tampilan antar muka (user interface). Input berupa tanggal untuk prediksi harga saham di tanggal tersebut yang kemudian akan dampilkan berupa prediksi harga saham. Hasil tampilan antar muka implementasi aplikasi pada Gambar 7.
Gambar 7. Implementasi aplikasi
4. KESIMPULAN
Dari hasil yang telah dijabarkan sebelumnya hasil prediksi menggunakan metode LSTM tanpa indikator analisis teknikal memperoleh nilai RMSE sebesar 136.7 dan MAE sebesar 124.9 untuk harga Open, nilai RMSE sebesar 126.5 dan MAE sebesar 123.3 untuk harga Close, nilai RMSE sebesar 317.9 dan MAE sebesar 156.4 untuk harga High, nilai RMSE sebesar 178.001 dan nilai MAE sebesar 166.5 untuk harga Low, dan nilai RMSE sebesar 189.669 dan nilai MAE sebesar 99.6 untuk harga Adj.Close sedangkan menggunakan kombinasi metode LSTM dengan indikator analisis teknikal memperoleh nilai RMSE sebesar 125.4 dan nilai MAE sebesar 84.4 untuk harga Open, nilai RMSE sebesar 111.161 dan nilai MAE sebesar 103.3 untuk harga Close, nilai RMSE sebesar 141.5 dan nilai MAE sebesar 144.1 untuk harga High, nilai RMSE sebesar 150.2 dan nilai MAE sebesar 112.8 untuk harga Low, dan nilai RMSE sebesar 146.1 dan nilai MAE sebesar 80.6 untuk harga Adj.Close. Dimana dapat disimpulkan bahwa menggunakan kombinasi metode LSTM dengan indikator analisis teknikal mendapatkan hasil prediksi lebih bagus dibandingkan dengan metode LSTM tanpa indikator analisis teknikal karena semakin kecil nilai atau mendekati 0 nilai RMSE dan MAE maka semakin bagus model tersebut dalam hal prediksi. Selanjutnya untuk perbandingan menggunakan metode LSTM, SVR, dan KNN dari 3 dataset yang berbeda dapat disimpulkan bahwa menggunakan LSTM mendapatkan hasil yang lebih baik dibandingkan dengan SVR dan KNN dengan nilai RMSE 65.21 untuk LSTM, 313.56 untuk SVR, 72.44 dan nilai R2 0.9919 untuk LSTM, 0.81 untuk SVR, 0.990 untuk KNN.
REFERENCES
[1] M. Abdul Dwiyanto Suyudi, E. C. Djamal, A. Maspupah Jurusan Informatika, and F. Sains dan Informatika Universitas Jenderal Achmad Yani Cimahi, “Prediksi Harga Saham menggunakan Metode Recurrent Neural Network,” Semin. Nas.
Apl. Teknol. Inf., pp. 1907–5022, 2019.
[2] L. S. Hutasoit and F. Hutabarat, “Pengaruh Analisa Teknikal Terhadap Harga Sahambank Bumn Di Bursa Efek Indonesia Tahun 2020,” J. Ilm. Akunt. Dan Keuang., vol. 04, no. 01, pp. 27–39, 2021.
[3] R. Pramudya and S. Ichsani, “Finance & Banking Studies Efficiency of Technical Analysis for the Stock Trading,”
Pramudya Ichsani / Int. J. Financ. Bank. Stud., vol. 9, no. 1, p. 2020, 2020, [Online]. Available:
www.ssbfnet.com/ojshttps://doi.org/10.20525/ijfbs.v9i1.666
[4] M. Vijh, D. Chandola, V. A. Tikkiwal, and A. Kumar, “Stock Closing Price Prediction using Machine Learning Techniques,” Procedia Comput. Sci., vol. 167, no. 2019, pp. 599–606, 2020, doi: 10.1016/j.procs.2020.03.326.
[5] Y. Wen, P. Lin, and X. Nie, “Research of stock price prediction based on PCA-LSTM model,” IOP Conf. Ser. Mater.
Sci. Eng., vol. 790, no. 1, 2020, doi: 10.1088/1757-899X/790/1/012109.
[6] G. Budiprasetyo, M. Hani’ah, and D. Z. Aflah, “Prediksi Harga Saham Syariah Menggunakan Algoritma Long Short- Term Memory (LSTM),” J. Nas. Teknol. dan Sist. Inf., vol. 8, no. 3, pp. 164–172, 2023, doi:
10.25077/teknosi.v8i3.2022.164-172.
[7] J. Qiu, B. Wang, and C. Zhou, “Forecasting stock prices with long-short term memory neural network based on attention mechanism,” PLoS One, vol. 15, no. 1, pp. 1–15, 2020, doi: 10.1371/journal.pone.0227222.
[8] J. Shen and M. O. Shafiq, “Short-term stock market price trend prediction using a comprehensive deep learning system,”
J. Big Data, vol. 7, no. 1, 2020, doi: 10.1186/s40537-020-00333-6.
[9] C. Sang and M. Di Pierro, “Improving trading technical analysis with TensorFlow Long Short-Term Memory (LSTM) Neural Network,” J. Financ. Data Sci., vol. 5, no. 1, pp. 1–11, 2019, doi: 10.1016/j.jfds.2018.10.003.
[10] X. Wang and C. Wang, “Time Series Data Cleaning: A Survey,” IEEE Access, vol. 8, pp. 1866–1881, 2020, doi:
10.1109/ACCESS.2019.2962152.
[11] A. Moghar and M. Hamiche, “Stock Market Prediction Using LSTM Recurrent Neural Network,” Procedia Comput. Sci., vol. 170, pp. 1168–1173, 2020, doi: 10.1016/j.procs.2020.03.049.
[12] A. Ntakaris, J. Kanniainen, M. Gabbouj, and A. Iosifidis, Mid-price prediction based on machine learning methods with technical and quantitative indicators, vol. 15, no. 6 June. 2020. doi: 10.1371/journal.pone.0234107.
[13] A. S. B. Karno, “Prediksi Data Time Series Saham Bank BRI Dengan Mesin Belajar LSTM (Long ShortTerm Memory),”
J. Inform. Inf. Secur., vol. 1, no. 1, pp. 1–8, 2020, doi: 10.31599/jiforty.v1i1.133.
[14] D. Lien Minh, A. Sadeghi-Niaraki, H. D. Huy, K. Min, and H. Moon, “Deep learning approach for short-term stock trends prediction based on two-stream gated recurrent unit network,” IEEE Access, vol. 6, pp. 55392–55404, 2018, doi:
10.1109/ACCESS.2018.2868970.
[15] J. W. G. Putra, “Pengenalan Konsep Pembelajaran Mesin dan Deep Learning Edisi 1.4 (17 Agustus 2020),” vol. 4, pp.
45–46, 2020.
[16] J. Badriyah, A. Fariza, and T. Harsono, “Prediksi Curah Hujan Menggunakan Long Short Term Memory,” J. Media Inform. Budidarma, vol. 6, no. 3, p. 1297, 2022, doi: 10.30865/mib.v6i3.4008.
[17] J. S. Shim, “Copyright Warning & Restrictions,” Public Health, p. 125, 2007, [Online]. Available:
http://scholar.google.com/scholar?hl=en&btnG=Search&q=intitle:Some+Contributions+on+MIMO+Radar#0
[18] A. S. Bayangkari Karno, “Analisis Data Time Series Menggunakan LSTM (Long Short Term Memory) Dan ARIMA (Autocorrelation Integrated Moving Average) Dalam Bahasa Python.,” Ultim. InfoSys J. Ilmu Sist. Inf., vol. 11, no. 1, pp. 1–7, 2020, doi: 10.31937/si.v9i1.1223.
[19] I. M. A. I. Agusta, A. Barakbah, and A. Fariza, “Technical Analysis Based Automatic Trading Prediction System for Stock Exchange using Support Vector Machine,” Emit. Int. J. Eng. Technol., vol. 10, no. 2, pp. 279–293, 2022, doi:
10.24003/emitter.v10i2.740.
[20] I. H. Sarker, “Deep Learning: A Comprehensive Overview on Techniques, Taxonomy, Applications and Research Directions,” SN Comput. Sci., vol. 2, no. 6, pp. 1–20, 2021, doi: 10.1007/s42979-021-00815-1.