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).
Dari fakta yang telah diuraikan, saat ini menabung bukan merupakan cara untuk menjadi kaya dalam jangka panjang. Untuk mendapatkan
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
Jaringan syaraf tiruan merupakan salah satu representasi buatan dari otak manusia yang selalu mensimulasikan proses pembelajaran pada otak manusia tersebut (Trimulya,
Fakultas Ilmu Komputer, Universitas Brawijaya 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 Kesimpulan Perancangan Sistem
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
Start
Insialisasi bobot dan bias
Propagasi maju Propagasi mundur Perbaikan bobot Kondisi stop Stop Start Insialisasi populasi Reproduksi Evaluasi Seleksi Kondisi stop Stop
Fakultas Ilmu Komputer, Universitas Brawijaya 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
RMSE 1 … 10 0.9 0.1 0.087206 0.091656 0.089923 0.8 0.2 0.0778 0.075127 0.076794 0.7 0.3 0.065246 0.072876 0.06991 0.6 0.4 0.070066 0.065382 0.070321 0.5 0.5 0.064259 0.067064 0.067342 0.4 0.6 0.079475 0.072636 0.071451 0.3 0.7 0.072656 0.07031 0.070921 0.2 0.8 0.078569 0.069794 0.07287 0.1 0.9 0.060082 0.073814 0.0658
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 0,085 0,09 0,095 0,1 0 100 200 300 400 500
Pengujian Ukuran Populasi
0,05 0,1
0 0,2 0,4 0,6 0,8 1
Pengujian Kombinasi Cr dan
Mr
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 RMSE 1 … 10 0.1 0.0536 0.04858 0.05025 3 0.2 0.04711 5 0.05204 2 0.04929 4 0.3 0.05627 1 0.04860 9 0.05023 2 0.4 0.04737 1 0.04698 5 0.04877 0.5 0.05319 0.05137 8 0.04859 1 0.6 0.04524 4 0.04570 1 0.04737 0.7 0.04568 4 0.04675 8 0.04658 3 0.8 0.04571 7 0.04588 5 0.04659 6 0.9 0.04569 2 0.05347 4 0.04740 9 1 0.05110 2 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 RMSE 1 … 10 Algoritma Genetika 0.0692 7 0.0583 8 0.065 2 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 0,06 0,08 0,1
0 2000 4000
Pengujian Banyak Iterasi
0,046 0,048 0,05 0,052
0 0,5 1 1,5
Fakultas Ilmu Komputer, Universitas Brawijaya
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.
Wijaya, R. F. (2015). Menjadi Kaya dan
Terencana Dengan Reksa Dana. Jakarta: