Fakultas Ilmu Komputer
Universitas Brawijaya
2302
Pelatihan Multi-Layer Neural Network Menggunakan Algoritma Genetika
untuk Memprediksi Harga Saham Esok Hari (T+1)
Grady Davinsyah1, Wayan Firdaus Mahmudy2, Rizal Setya Perdana3
Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya Email: 1[email protected], 2[email protected], 3[email protected]
Abstrak
Saham adalah salah satu instrumen investasi yang dikenal dengan potensi keuntungan dan resikonya yang cukup tinggi. Tingginya potensi dan resiko investasi saham disebabkan karena harganya yang fluktuatif dan dapat berubah dalam hitungan detik. Untuk meminimalisir resiko, diperlukan sebuah sistem yang dapat memprediksi harga penutupan saham esok hari. Arsitektur yang digunakan dalam penelitian ini adalah multi-layer neural network. Arsitektur ini kemudian dilatih dengan menggunakan 2 metode, yaitu backpropagation dan algoritma genetika. Kedua metode tersebut bertujuan untuk mendapatkan bobot-bobot pada arsitektur multi-layer neural network. Parameter backpropagation yang didapatkan dari pengujian penelitian ini adalah banyak iterasi sebesar 4500 iterasi dengan learning rate 0.7. Sedangkan parameter untuk metode pelatihan algoritma genetika adalah banyak generasi 2000, ukuran populasi 200, crossover rate 0.1 dan mutation rate 0.9. Dengan menggunakan parameter tersebut diatas, rata-rata nilai RMSE yang dihasilkan dengan menggunakan metode pelatihan backpropagation adalah 0.048006. Sementara ketika menggunakan metode pelatihan algoritma genetika, rata-rata nilai RMSE yang dihasilkan oleh jaringan adalah 0.065205. Sehingga pada penelitian ini, nilai error yang dihasilkan oleh metode pelatihan backpropagation lebih kecil dibandingkan dengan metode pelatihan algoritma genetika.
Kata kunci: saham, multi-layer neural network, algoritma genetika, backpropagation
Abstract
Stock is one of investment instrument which is popular because of the high profit potential and risk. These profit potential and risk are caused by fluctuations of the stock price in the stock market. To minimalize the risk, a system which is able to predict closing price of the next day is required. The architecture which is used in this research is multi-layer neural network. This architecture is trained with 2 different training methods, which is backpropagation and genetic algorithm. Both of the methods
aim to gain weights of all network’s architecture. Backpropagation’s parameters which obtained during
the research are 4500 iteration and 0.7 learning rate. For genetic algorithm’s parameters which
obtained during the research are 2000 generations, population size of 200, crossover rate 0.1 and mutation rate 0.9. By using those parameters, average RMSE value which produced using backpropagation algorithm is 0.048006. Meanwhile when using genetic algorithm as a training method, average RMSE value which produced by the network is 0.065205. So in this research, average error value which is produced by using backpropagation training is smaller than using genetic algorithm training method.
Keywords: stock, multi-layer neural network, genetic algorithm, backpropagation
1. PENDAHULUAN
Menjadi kaya adalah impian dari setiap orang. Banyak yang beranggapan bahwa agar menjadi kaya harus berhemat dan rajin menabung. Pemikiran ini sejalan dengan slogan yang ada di masyarakat, hemat pangkal kaya.
Padahal statistik jelas menunjukkan bahwa bunga yang diperoleh ketika menabung di bank (tabungan dan deposito) sangatlah tidak sebanding dengan tingkat pertumbuhan konsumsi (Wijaya, 2015).
perkembangan diatas laju inflasi dan tingkat pertumbuhan konsumsi, salah satu upaya yang dapat dilakukan adalah berinvestasi. Satu dari sekian banyak instrumen investasi yang paling terkenal adalah saham. Saham adalah surat berharga yang menunjukkan kepemilikan atas suatu perusahaan. Ketika Anda membeli saham, berarti Anda membeli sebagian kepemilikan atas perusahaan tersebut (Jefferson & Sudjatmoko, 2013). Saham menjadi begitu terkenal di kalangan investor karena tingginya potensi imbal hasil atau return yang ditawarkan.
Pada bulan Februari 2016, jumlah investor yang tercatat pada Bursa Efek Indonesia (BEI) sebesar 468 ribu orang (Pasopati, 2016). Hampir setengah juta orang telah menjadi investor di bursa saham. Namun perlu diingat bahwa keseluruhan jumlah penduduk Indonesia ada sekitar 250 juta jiwa. Jika dibuat prosentasenya, investor di BEI hanya sebesar 0,1872 persen. Sedikitnya jumlah penduduk Indonesia yang menjadi investor di pasar modal salah satunya disebabkan oleh tingginya resiko dalam berinvestasi di pasar modal (high risk high return). Minimnya pengetahuan calon investor tentang bagaimana strategi menaklukkan pasar modal juga berkontribusi terhadap sedikitnya jumlah investor lokal di Indonesia.
Dari fakta-fakta ini, upaya untuk mengurangi jumlah penduduk miskin yang ada di Indonesia salah satunya dapat dilakukan dengan mendorong lebih banyak penduduk untuk menjadi investor. Tantangan selanjutnya adalah bagaimana investor dapat secara konsisten mendapatkan profit dari transaksinya di pasar saham. Hal ini sangat sulit, karena investor seniorpun masih mengalami kerugian ketika bertransaksi di pasar modal.
Penelitian sebelumnya telah menunjukkan kalau arsitektur jaringan syaraf tiruan banyak digunakan untuk melakukan peramalan (forecasting) (Sari, Mahmudy, & Wibawa, 2016). Penelitian lain adalah implementasi jaringan syaraf tiruan metode backpropagation untuk memprediksi harga saham. Penelitian ini dilakukan oleh Trimulya, dkk (2015). Penelitian ini memprediksi harga penutupan saham PT. Adaro Energy, Tbk (ADRO) dengan 6 variabel data, antara lain harga pembukaan, harga penutupan, harga tertinggi, harga terendah, harga jual, dan harga beli. Akurasi tertinggi dari penelitian ini didapat dari kombinasi 25 neuron pada lapisan tersembunyi pertama, 23 neuron pada lapisan tersembunyi kedua, dan 250000 iterasi. Kombinasi tersebut menghasilkan nilai
Mean Square Error (MSE) sebesar 1546.747. Tujuan dari penelitian ini adalah menerapkan, mengimplementasi, dan menguji error yang dihasilkan oleh metode pelatihan backpropagation dan algoritma genetika pada arsitektur multi-layer neural network.
2. KAJIAN PUSTAKA
2.1. Saham
Saham adalah surat berharga yang menunjukkan kepemilikan atas suatu perusahaan. Ketika Anda membeli saham, berarti Anda membeli sebagian kepemilikan atas perusahaan tersebut. Porsi kepemilikan ditentukan oleh seberapa besar modal penyertaan yang ditanamkan di perusahaan tersebut (Jefferson & Sudjatmoko, 2013).
Terdapat beberapa potensi keuntungan apabila memiliki saham suatu perusahaan, yaitu :
1. Dividen
Dividen merupakan pembagian keuntungan yang diberikan oleh perusahaan kepada para pemegang sahamnya (Jefferson & Sudjatmoko, 2013).
2. Capital Gain
Capital gain merupakan kondisi dimana harga jual yang lebih tinggi daripada harga beli.
Selain potensi keuntungan, memiliki saham suatu perusahaan juga memiliki beberapa potensi kerugian, yaitu :
1. Capital Loss
Capital loss adalah kebalikan dari capital gain, yaitu kondisi dimana harga jual lebih rendah daripada harga beli.
2. Resiko Likuidasi
Resiko ini adalah resiko yang terjadi apabila sebuah perusahaan yang sahamnya dimiliki dinyatakan bangkrut atau perusahaan tersebut dibubarkan. Pemegang saham memiliki prioritas terendah, setelah perusahaan menyelesaikan seluruh kewajibannya.
2.2. Jaringan Syaraf Tiruan
Syaifurrahman, & Setyaningsih, 2015). Sama seperti syaraf manusia, jaringan syaraf tiruan juga memiliki banyak neuron. Neuron-neuron ini tersebar pada beberapa lapisan, antara lain lapisan masukan, lapisan tersembunyi, dan lapisan keluaran.
2.3. Algoritma Genetika
Algoritma Genetika diilhami oleh ilmu genetika (Mahmudy, 2015). Individu yang lebih baik mampu bertahan, sehingga individu tersebut akan menjadi solusi optimal dari sebuah masalah (Rahmi, Mahmudy, & Setiawan, 2015). Algoritma Genetika banyak digunakan untuk menyelesaikan berbagai masalah optimasi yang model matematikanya kompleks atau bahkan sulit dibangun (Mahmudy, 2015).
3. METODOLOGI PENELITIAN
Metodologi penelitian yang dilakukan dalam penelitian ini melalui beberapa tahapan yang dapat diilustrasikan dengan diagram blok metodologi penelitian seperti pada Gambar 1:
3.1. Pengumpulan Data
Data yang digunakan dalam penelitian ini adalah data harga saham harian PT. Bank Central Asia, Tbk. (BBCA). Data bersifat sekunder, yaitu data yang didapatkan dari sumber yang telah ada. Data harga saham BBCA yang digunakan didapatkan dari yahoo finance.
4. PERANCANGAN SISTEM
4.1. Formulasi Permasalahan
Permasalahan yang akan diselesaikan pada penelitian ini adalah prediksi harga close saham esok hari menggunakan algoritma Backpropagation dengan Algoritma Genetika. Data yang digunakan adalah data harga historis saham PT. Bank Central Asia, Tbk. (BBCA) sejak 1 Januari 2013 hingga 30 Desember 2016. Variabel pada data yang digunakan adalah open, high, low, close, dan volume. Contoh data yang digunakan seperti pada Tabel 1.
Gambar 1 Metodologi Penelitian
Tabel 1 Data Harian BBCA
Tanggal Open High Low Clos e
Volume
02-01-13 9100 9250 9000 9100 3454500
03-01-13 9150 9250 9050 9150 8406000
07-01-13 9200 9250 9050 9200 15407000
08-01-13 9150 9250 9100 9150 11588000
4.2. Pelatihan dengan Backpropagation
Metode pelatihan pertama yang digunakan adalah backpropagation. Pada metode pelatihan ini, fungsi aktivasi yang digunakan adalah fungsi binary sigmoid. Flowchart proses pelatihan backpropagation digambarkan pada Gambar 2.
Studi Literatur
Pengumpulan Data
Analisa Kebutuhan
Implementasi Sistem
Pengujian Sistem
Analisis
Gambar 2 Flowchart Pelatihan Backpropagation
4.3. Pelatihan dengan Algoritma Genetika
Metode pelatihan lain yang digunakan pada penelitian ini adalah algoritma genetika. Pada pelatihan algoritma genetika, metode reproduksi yang digunakan ada 2, yaitu crossover dan mutasi. Pada reproduksi crossover, metode yang digunakan adalah extended intermediate crossover. Sedangkan pada reproduksi mutasi, metode yang digunakan adalah random mutation. Untuk metode seleksi yang digunakan adalah seleksi elitism. Flowchart proses pelatihan algoritma genetika digambarkan pada Gambar 3.
5. PENGUJIAN DAN ANALISIS
Pengujian dilakukan sebanyak 10 kali dengan parameter yang telah disebutkan pada tiap pengujian. Tiap pengujian dicatat nilai RMSE yang dihasilkan, kemudian diambil rata-rata nilai RMSE dari tiap pengujian parameter.
5.1. Pengujian Banyak Generasi
Banyak generasi yang diuji adalah kelipatan 500, mulai 500 generasi hingga 4500 generasi. Kombinasi crossover rate (cr) dan mutation rate (mr) adalah 0.2 : 0.2 dengan ukuran populasi 80 dan pengujian dilakukan sebanyak 10 kali. Hasil pengujian banyak generasi disajikan pada Tabel 2.
Gambar 3 Flowchart Pelatihan Algoritma Genetika
Tabel 2 Hasil Pengujian Banyak Generasi
Generasi Percobaan ke-n Rata-rata
RMSE
1 … 10
500 0.278349 0.283371 0.277118
1000 0.115753 0.140271 0.123387
1500 0.088581 0.092765 0.092731
2000 0.088172 0.079408 0.089432
2500 0.085283 0.090693 0.086418
3000 0.084914 0.085534 0.08433
3500 0.085578 0.076867 0.081545
4000 0.079008 0.089783 0.079013
4500 0.076575 0.07797 0.075723
Gambar 2 Grafik Hasil Pengujian Banyak Generasi
Gambar 4 menunjukkan bahwa mulai 0,05
0,15 0,25 0,35
0 1000 2000 3000 4000 5000
Pengujian Banyak Generasi
StartInsialisasi bobot dan bias
Propagasi maju
Propagasi mundur
Perbaikan bobot
Kondisi stop
Stop
Start
Insialisasi populasi
Reproduksi
Evaluasi
Seleksi
Kondisi stop
percobaan 2000 generasi, rata-rata nilai RMSE yang dihasilkan tidak mengalami penurunan yang signifikan, atau biasa disebut dengan konvergen. Dengan data ini, maka 2000 generasi diambil sebahai hasil dari pengujian banyak generasi.
5.2. Pengujian Ukuran Populasi
Ukuran populasi yang diuji adalah kelipatan 40, mulai 40 populasi hingga 400 populasi. Kombinasi crossover rate (cr) dan mutation rate (mr) adalah 0.2 : 0.2 dengan banyak generasi sebesar 2000 generasi. Hasil pengujian banyak generasi disajikan pada Tabel 3.
Tabel 3 Hasil Pengujian Ukuran Populasi
PopSize Percobaan ke-n Rata-rata
RMSE
1 … 10
40 0.097175 0.095908 0.095569
80 0.085224 0.082012 0.089965
120 0.092082 0.089496 0.088804
160 0.08948 0.084691 0.087627
200 0.086307 0.079285 0.084291
240 0.085565 0.084524 0.086569
280 0.084293 0.087317 0.085962
320 0.08337 0.084708 0.085016
360 0.086343 0.085429 0.084485
Gambar 3 Grafik Hasil Pengujian Ukuran Populasi
Gambar 5 menunjukkan bahwa pengujian dengan ukuran populasi sebesar 200 menghasilkan rata-rata nilai RMSE terkecil. Dengan data ini, maka 200 populasi diambil sebahai hasil dari pengujian ukuran populasi.
5.3. Pengujian Kombinasi Cr dan Mr
Kombinasi cr dan mr yang diuji adalah kelipatan 0.1. Pengujian cr sebesar 0.1 dipasangkan dengan mr 0.9, cr sebesar 0.2 dipasangkan dengan mr 0.8, begitu pula seterusnya. Ukuran populasi yang digunakan
adalah 200 individu dengan banyak generasi sebesar 2000 generasi. Hasil pengujian banyak generasi disajikan pada Tabel 4.
Tabel 4 Hasil Pengujian Kombinasi Cr dan MR
Cr Mr Percobaan ke-n Rata-rata
Gambar 4 Grafik Hasil Pengujian Kombinasi Cr dan Mr
Gambar 6 dan Tabel 4 menunjukkan bahwa kombinasi cr dan mr yang menghasilkan rata-rata nilai RMSE terkecil adalah cr sebesar 0.1 dan mr sebesar 0.9. Dengan data ini, maka nilai cr sebesar 0.1 dan nilai mr sebesar 0.9 diambil sebagai hasil pengujian kombinasi cr dan mr.
5.4. Pengujian Banyak Iterasi
Banyak iterasi yang diuji adalah kelipatan 500, mulai 500 iterasi hingga 5000 iterasi dengan learning rate sebesar 0.7. Hasil pengujian banyak iterasi disajikan pada Tabel 5.
Tabel 5 Hasil Pengujian Banyak Iterasi
Iterasi Percobaan ke-n Rata-rata
RMSE
1 … 10
500 0.079837 0.084439 0.080871
1000 0.077068 0.062784 0.074028
1500 0.057472 0.056662 0.066304
2000 0.067266 0.060543 0.065823
2500 0.076631 0.052074 0.059435
3000 0.054271 0.049187 0.053411
3500 0.051762 0.049466 0.053323
0,08
4000 0.051971 0.055637 0.051613
4500 0.053328 0.048928 0.050624
5000 0.053481 0.055597 0.050933
Gambar 5 Grafik Hasil Pengujian Banyak Iterasi
Gambar 7 dan Tabel 5 menunjukkan bahwa semakin banyak iterasi yang dilakukan akan menghasilkan rata-rata nilai RMSE yang cenderung menurun. Pada pengujian 5000, rata-rata nilai RMSE yang dihasilkan tidak menunjukkan penurunan yang signifikan, sehingga 4500 iterasi diambil sebagai hasil pengujian banyak iterasi.
5.5. Pengujian Learning Rate
Learning rate yang diuji adalah kelipatan o.1, mulai 0.1 hingga 1. Hasil pengujian learning rate disajikan pada Tabel 6.
Tabel 6 Hasil Pengujian Learning Rate
Learning Rate
Percobaan ke-n
Rata-rata
0.04589 0.04829
Gambar 6 Grafik Hasil Pengujian Learning Rate
Gambar 8 menunjukkan bahwa perbedaan learning rate dapat menghasilkan rata-rata nilai RMSE yang berbeda pula. Dari pengujian yang telah dilakukan, learning rate sebesar 0.7 menghasilkan rata-rata nilai RMSE yang paling kecil. Dari data ini, maka learning rate 0.7 diambil sebagai hasil pengujian learning rate.
5.6. Pengujian Perbandingan Hasil
Backpropagation dan Algoritma Genetika
Setelah didapatkan parameter yang menghasilkan rata-rata nilai RMSE terkecil, kemudian dilakukan perbandingan kedua metode pelatihan menggunakan parameter yang telah didapatkan sebelumnya. Hasil perbandingan dapat dilihat pada Tabel 7.
Tabel 7 Hasil Pengujian Learning Rate
Pelatihan Percobaan ke-n
Rata-rata
Backpropagation 0.0437 0.0465 0.048 6
Tabel 7 menunjukkan bahwa pelatihan menggunakan backpropagation menghasilkan rata-rata nilai RMSE yang lebih kecil daripada pelatihan jaringan menggunakan algoritma genetika. Hal ini terjadi dikarenakan algoritma genetika yang digunakan pada penelitian ini adalah algoritma genetika sederhana. Pada penelitian lain algoritma genetika hybrid dengan simulated annealing dapat mengungguli pelatihan backpropagation (Shi & Zhang, 2009).
6. KESIMPULAN
Setelah penelitian Pelatihan Multi-layer Neural Network Menggunakan Algoritma Genetika Untuk Memprediksi Harga Saham Esok Hari (T+1) selesai dilakukan dapat disimpulkan bahwa parameter pelatihan 0,04
backpropagation yang menghasilkan rata-rata nilai RMSE paling kecil adalah 4500 iterasi dengan learning rate 0.7. Kemudian parameter pelatihan algoritma genetika yang menghasilkan rata-rata nilai RMSE paling kecil adalah 2000 generasi, 200 ukuran populasi, cr sebesar 0.1 dan mr sebesar 0.9. Dengan menggunakan parameter tersebut, rata-rata nilai RMSE yang dihasilkan menggunakan pelatihan algoritma genetika sebesar 0.065205 dan 0.048006 ketika menggunakan pelatihan backpropagation. Sehingga pada studi kasus ini metode pelatihan backpropagation memberikan rata-rata nilai RMSE yang lebih rendah dibandingkan menggunakan metode pelatihan algoritma genetika.
DAFTAR PUSTAKA
Jefferson, J., & Sudjatmoko, N. (2013). Shopping Saham Modal Sejuta! Jakarta: Elex Media Komputindo.
Mahmudy, W. F. (2015). Algoritma Evolusi. Malang.
Pasopati, G. (2016, March 8). Jumlah Investor Saham di RI Naik 8 Persen Sejak Awal Tahun. Retrieved from CNN Indonesia: https://www.cnnindonesia.com/ekonomi/ 20160308140957-78-116080/jumlah- investor-saham-di-ri-naik-8-persen-sejak-awal-tahun/
Rahmi, A., Mahmudy, W. F., & Setiawan, B. D. (2015). Prediksi Harga Saham Berdasarkan Data Historis Yang Dibangun Menggunakan Model Regresi Yang Dibangun Dengan Algoritma Genetika. DORO: Respository Jurnal Mahasiswa PTIIK Universitas Brawijaya, 5 (12).
Sari, N. R., Mahmudy, W. F., & Wibawa, A. P. (2016). Backpropagation on Neural Network Method for Inflation Rate Forecasting in Indonesia. Advance Soft Compu, 8 (3), 70-87.
Shi, H., & Zhang, S. (2009). Improving Artificial Neural Networks Based on Hybrid Genetic Algorithms. Beijing: IEEE.
Trimulya, A., Syaifurrahman, & Setyaningsih, F. A. (2015). Implementasi Jaringan Syaraf Tiruan Metode Backpropagation Untuk Memprediksi Harga Saham. Jurnal Coding, Sistem Komputer Untan, 66-75.