LANDASAN TEORI
2.1Indeks Harga Saham
Saham adalah satuan nilai atau pembukuan dalam berbagai instrumen finansial yang mengacu pada bagian kepemilikan sebuah perusahaan [1]. Bentuk fisik saham adalah selembar kertas, pada saham tersebut dinyatakan bahwa pemegang saham adalah pemilik perusahaan. Menerbitkan saham merupakan salah satu pilihan perusahaan ketika memutuskan untuk pendanaan perusahaan. Saham dapat didefinisikan juga sebagai tanda penyertaan modal seseorang atau pihak (badan usaha) dalam suatu perusahaan atau perseroan terbatas.
Indeks harga saham adalah indikator atau cerminan pergerakan harga saham. Indeks merupakan salah satu pedoman bagi investor untuk melakukan investasi di pasar modal khususnya saham. Indeks dapat memberikan investor gagasan secara cepat tentang bagaimana kinerja sebuah bursa selama waktu tertentu. Dengan melihat indeks, maka investor dapat memperkirakan dengan cepat bagaimana kinerja portofolio sahamnya [2].
Saat ini Bursa Efek Indonesia memiliki 11 jenis indeks harga saham, yang secara terus menerus disebarluaskan melalui media cetak maupun elektronik. Indeks-indeks tersebut adalah Indeks Harga Saham Gabungan (IHSG), Indeks Sektoral, Indeks LQ45, Jakarta Islamic Indeks (JII), Indeks Kompas100, Indeks BISNIS-27, Indeks PEFINDO25, Indeks SRI-KEHATI, Indeks Papan Utama, Indeks Papan Pengembangan, Indeks Individual [2].
7
2.2Indeks BISNIS-27
Pada tanggal 27 Januari 2009, PT Bursa Efek Indonesia bersama dengan Harian Bisnis Indonesia meluncurkan indeks harga saham yang diberi nama Indeks Bisnis-27 yang diharapkan dapat menjadi salah satu indikator bagi investor dalam berinvestasi di Pasar Modal Indonesia [3].
Indeks Bisnis-27 terdiri dari 27 saham yang dipilih berdasarkan kriteria fundamental dan dan teknikal atau likuiditas, sebagai berikut:
1. Kriteria Fundamental
Beberapa faktor fundamental yang dipertimbangkan dalam pemilihan saham adalah laba usaha, laba bersih, ROA, ROE, dan DER. Khusus untuk emiten perbankan akan dipertimbangkan juga faktor LDR dan CAR.
2. Kriteria Teknikal atau Likuiditas Transaksi
Analisis Teknikal merupakan metode untuk memprediksi pergerakan harga saham dan trend pasar di waktu mendatang dengan memakai kajian grafik berdasarkan data masa lalu. Dari grafik dapat diperoleh informasi mengenai pola pergerakan harga saham. Tujuan utama dari analisis ini adalah untuk mendapatkan capital gain (keuntungan) dari selisih harga beli dan harga jual saham dalam jangka waktu yang relatif pendek.
Beberapa faktor teknikal yang dipertimbangkan adalah hari transaksi, nilai,volume dan frekuensi transaksi serta kapitalisasi pasar. Dalam pemilihan saham indeks bisnis-27 juga mendapat masukkan dan pertimbangan dari Komite
8
Indeks Bisnis-27 yang terdiri dari para ahli dan profesional di pasar modal. Hal ini untuk menjamin kewajaran dalam pemilihan saham tersebut.
Bursa Efek Indonesia dan Harian Bisnis Indonesia secara rutin akan memantau komponen saham yang masuk dalam perhitungan indeks. Review dan pergantian emiten yang masuk dalam perhitungan indeks bisnis-27 dilakukan setiap 6 bulan yaitu setiap awal Februari dan Agustus.
2.3Pengertian Jaringan Syaraf Tiruan
Suatu jaringan saraf tiruan memproses sejumlah besar informasi secara paralel dan terdistribusi, hal ini terinspirasi oleh model kerja otak biologis. Beberapa definisi tentang jaringan saraf tiruan adalah sebagai berikut di bawah ini.
Hecht-Nielsend (1988) mendefinisikan jaringan saraf tiruan adalah suatu struktur pemroses informasi yang terdistribusi dan bekerja secara paralel, yang terdiri atas elemen pemroses (yang memiliki memori lokal dan beroperasi dengan informasi lokal) yang diinterkoneksi bersama dengan alur sinyal searah yang disebut koneksi. Setiap elemen pemroses memiliki koneksi keluaran tunggal yang bercabang ke sejumlah koneksi kolateral yang diinginkan (setiap koneksi membawa sinyal yang sama dari keluaran elemen pemroses tersebut). Keluaran dari elemen pemroses tersebut dapat merupakan sebarang jenis persamaan matematis yang diinginkan [4].
Menurut Haykin, S. (1994), Neural Networks: A Comprehensive Foundation, NY, Macmillan, mendefinisikan jaringan saraf adalah sebuah jaringan
9
saraf adalah sebuah prosesor yang terdistribusi paralel dan mempuyai kecenderungan untuk menyimpan pengetahuan yang didapatkannya dari pengalaman dan membuatnya tetap tersedia untuk digunakan. Hal ini menyerupai kerja otak dalam dua hal yaitu: 1. Pengetahuan diperoleh oleh jaringan melalui suatu proses belajar. 2. Kekuatan hubungan antar sel saraf yang dikenal dengan bobot sinapsis digunakan untuk menyimpan pengetahuan.
Maka secara umum jaringan saraf tiruan (JST) (Artificial Neural Network
(ANN) adalah jaringan dari sekelompok unit pemroses kecil yang dimodelkan berdasarkan jaringan saraf manusia. JST merupakan sistem adaptif yang dapat merubah strukturnya untuk memecahkan masalah berdasarkan informasi eksternal maupun internal yang mengalir melalui jaringan tersebut. Secara sederhana, JST adalah sebuah alat pemodelan data statistik non-linier. JST dapat digunakan untuk memodelkan hubungan yang kompleks antara masukan dan keluaran untuk menemukan pola-pola pada data.
2.4Arsitektur Jaringan Syaraf Tiruan
Pemodelan struktur pemrosesan informasi terdistribusi dilakukan dengan menentukan pola hubungan antar sel-sel saraf buatan. Pola hubungan yang umum adalah hubungan antar layer (lapisan). Setiap lapisan terdiri dari sekumpulan sel saraf buatan (unit) yang memiliki fungsi tertentu, misalnya fungsi masukan (masukan) atau fungsi keluaran (keluaran).
10
Sistem saraf buatan terdiri dari tiga lapisan unit, yaitu:
1. Unit masukan
Pada Gambar 2.1 unit masukan dinotasikan dengan i. Unit masukan ini menerima data dari jaringan saraf luar. Aktifasi unit-unit lapisan masukan menunjukkan informasi dasar yang kemudian digunakan dalam jaringan saraf buatan.
2. Unit tersembunyi
Unit tersembunyi dinotasikan dengan h pada Gambar 2.1. Unit tersembunyi menerima dan mengirim sinyal ke jaringan saraf. Aktifasi setiap unit-unit lapisan tersembunyi ditentukan oleh aktifasi dari unit-unit-unit-unit masukan dan bobot dari koneksi antara unit-unit masukan dan unit-unit lapisan tersembunyi.
3. Unit keluaran
Unit keluaran dinotasikan dengan o. Unit keluaran mengirim data ke jaringan saraf. Karakteristik dari unit keluaran tergantung dari aktifasi unit lapisan tersembunyi dan bobot antara unit lapisan tersembunyi dan unit-unit keluaran. Keluaran ini biasanya berupa nilai diskrit yang merupakan hasil klasifikasi dari data masukan.
Gambar 2.1 Jaringan Saraf Tiruan
X1 X2 X3 X4 i1 Y1 Y2 i2 i3 i4 o2 o1 h1 h2 h3
11
Sedangkan tipe arsitektur jaringan saraf buatan ada tiga yaitu :
1. Jaringan dengan lapisan tunggal (Single Layer Net)
Jaringan dengan lapisan tunggal hanya memiliki satu lapisan dengan bobot yang terhubung. Jaringan ini hanya menerima masukan kemudian secara langsung akan mengolahnya menjadi keluaran tanpa harus melalui lapisan tersembunyi (Gambar 2.2).
Gambar 2.2. Jaringan Saraf Sederhana Lapisan Tunggal Feedforward 2. Jaringan dengan lapisan banyak (Multilayer Net)
Pada tipe ini, di antara lapisan masukan dan keluaran terdapat satu atau lebih lapisan tersembunyi (Gambar 2.3). Hubungan antar lapisan berlangsung satu arah. Jaringan dengan banyak lapisan ini dapat menyelesaikan permasalahan yang lebih sulit dari pada lapisan tunggal.
12
Gambar 2.3. Jaringan Saraf Sederhana lapisan banyak Feedforward
3. Reccurent Network
Tipe reccurent berbeda dengan kedua tipe sebelumnya. Pada reccurent,
sedikitnya memiliki satu koneksi umpan balik (feedback).
Gambar 2.4. Jaringan dengan lapisan kompetitif reccurent
2.5Metode Backpropagation
Jaringan Syaraf Tiruan backpropagataion atau rambat balik (JSTBP) adalah metode yang paling sederhana dan mudah dipahami dari metode-metode yang lain. JST-BP akan merubah bobot biasnya untuk mengurangi perbedaan antara keluaran jaringan dan target keluaran. Setelah pelatihan selesai, dilakukan pengujian terhadap jaringan yang telah dilatih. Pembelajaran algoritma jaringan
13
syaraf membutuhkan perambatan maju dan diikuti dengan perambatan mundur. Keduanya dilakukan untuk semua pola pelatihan.
Gambar 2.5. Arsitektur algoritma backpropagation
Keterangan X = lapisan masukan
Z = lapisan tersembunyi
Y = lapisan keluaran
= bobot dari lapisan masukan ke lapisan tersembunyi = bobot dari lapisan tersembunyi ke lapisan keluaran
2.5.1 Fungsi Aktivasi pada Backpropagation
Dalam jaringan syaraf tiruan, fungsi aktivasi dipakai untuk menentukan keluaran suatu neuron. Pada Backpropagation, fungsi aktivasi yang dipakai harus memenuhi beberapa syarat sebagai berikut:
1. Kontinu
14
3. Merupakan fungsi yang tidak turun
Salah satu fungsi yang memenuhi ketiga syarat tersebut adalah fungsi sigmoid biner yang memiliki range (0,1) [6]. Fungsi sigmoid biner didefinisikan sebagai berikut. x e x f y 1 1 ) ( (2.1) Dengan turunan (2.2)
Gambar 2.6. Fungsi sigmoid biner
Fungsi lain yang sering dipakai adalah fungsi sigmoid bipolar yang bentuk fungsinya mirip dengan fungsi sigmoid biner, tapi dengan range (-1,1).
1 1 2 ) ( z e x f (2.3)
15 Dengan turunan 2 )) ( 1 ))( ( 1 ( ) (x f x f x f (2.4)
Gambar 2.7.Fungsi Sigmoid Bipolar
Fungsi sigmoid memiliki nilai maksimum 1. Maka untuk pola yang targetnya > 1, pola masukan dan keluaran harus terlebih dahulu ditransformasi sehingga semua polanya memiliki range yang sama seperti fungsi sigmoid yang dipakai. Alternatif lain adalah menggunakan fungsi aktivasi sigmoid hanya pada lapisan yang bukan lapisan keluaran. Pada lapisan keluaran, fungsi aktivasi yang dipakai adalah fungsi identitas : f(x) = x.
2.5.2 Pelatihan Standard Backpropagation
Adapun langkah-langkah pelatihan dalam jaringan syaraf tiruan
backpropagation adalah sebagai berikut: 1. Definisikan pola masukan dan targetnya 2. Inisialisasi bobot awal dengan bilangan acak
16
3. Tentukan iterasi dan error yang diinginkan
4. Kerjakan langkah-langkah berikut selama (Epoh < Maksimum Epoh) dan (MSE > Target Error)
Fase propagasi maju:
a. Jumlahkan semua sinyal yang masuk ke lapisan unit
Tiap-tiap unit masukan ( ) menerima sinyal dan meneruskan sinyal tersebut ke semua unit pada lapisan yang ada diatasnya (lapisan tersembunyi). Tiap-tiap unit pada suatu lapisan tersembunyi ( ) menjumlahkan sinyal-sinyal masukan berbobot:
ij n i i ij j b xv net z_
(2.5) Dengan: = total sinyal masukan pada lapisan unit j= nilai masukan pada unit i
= bobot antara masukan unit i dan lapisan unit j
b_ij = bobot bias masukan unit i dan lapisan unit j
Hitung keluaran semua lapisan unit j pada lapisan tersembunyi berdasarkan fungsi aktivasi: j net z j j e net z f z _ 1 1 ) _ ( (2.6)
Dengan: = keluaran pada lapisan unit j
17
b. Jumlahkan semua sinyal yang masuk ke keluaran unit k
Tiap-tiap unit keluaran ( , k=1,2,3,..,m) menjumlahkan sinyal-sinyal masukan berbobot. kj p j j k k w z w net y_ 0
1 (2.7)dengan: y_ = total sinyal masukan pada keluaran unit k
= nilai masukan pada lapisan unit j
= bobot antara lapisan unit j dan keluaran unit k
Gunakan fungsi aktivasi untuk menghitung sinyal keluarannya dan kirimkan sinyal tersebut ke semua unit di lapisan atasnya (unit-unit keluaran).
k net y k k e net y f y ( _ ) 1 _
(2.8)Fase propagasi mundur:
a. Hitung faktor kesalahan pada keluaran layer
Tiap-tiap unit keluaran ( ) menerima target pola yang berhubungan dengan pola masukan.
(1- ) (2.9)
Dengan: = faktor kesalahan pada keluaran unit k
= keluaran pada keluaran unit k
Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai ).
18 j k kj z w
(2.10)b. Hitung penjumlahan kesalahannya
Tiap-tiap unit tersembunyi ( ) menjumlahkan delta masukannya (dari unit-unit yang berada pada lapisan diatasnya)
kj k m k netj
w
1 (2.11)Kalikan nilai ini dengan turunan dari fungsi aktivasinya untuk menghitung informasi error. ) 1 ( _ j j j j
net z Z z
(2.12)Kemudian hitung koreksi bobot (yang nantinya akan digunakan untuk memperbaiki nilai ).
(2.13)
Perubahan bobot
a. Ubah bobot yang menuju keluaran lapisan
kj kj
kj t w t w
w ( 1) () (2.14) b. Ubah bobot yang menuju lapisan tersembunyi
ji kj
ji t v t v
v ( 1) () (2.15)
5. Hitung MSE pada setiap epoh
2 ) ( 1
npoka k k k n y t pola MSE (2.16)19
Dengan: = target pada keluaran unit k
= keluaran pada keluaran unit k n = jumlah pola
20
Adapun flowchart untuk backpropagation adalah sebagai berikut:
Inisialisasi jaringan
Randomisasi bobot
Hitung output pada masing-masing unit
Hitung sigmoid ji w wx y e y 1 1 ) (
Hitung nilai error pada unit output
) )( 1 ( k k k k k o o t o
Hitung nilai error pada unit tersembunyi
k k kh k k o o w (1 ) Hitung ji j ij x w Hitung ji ji ji w w w Penentuan MSE Input Data End21
2.6 Algoritma Pelatihan
Algoritma standard yang digunakan dalam pelatihan Jaringan Syaraf Tiruan Feed Forward Back Propagation, yaitu gradient conjugate dan gradient conjugate with momentum seringkali terlalu lambat untuk keperluan praktis. Oleh karena itu, pada penelitian ini akan digunakan Algoritma Gradient Conjugate With Adaptive Learning Rate and Momentum (traingdx). Algoritma ini merupakan penggabungan dari Algoritma Gradient Conjugate with Adaptive Learning(traingda) dan Gradient Conjugate With Momentum(traingdm).
Pada standard backpropagation, perubahan bobot didasarkan atas gradien yang terjadi untuk pola yang dimasukkan saat itu. Modifikasi yang dapat dilakukan adalah melakukan perubahan bobot yang didasarkan atas arah gradien pola terakhir dan pola sebelumnya (disebut momentum) yang dimasukkan, jadi tidak hanya pola masukan terakhir saja yang diperhitungkan.
Penambahan momentum dimaksudkan untuk menghindari perubahan bobot yang mencolok akibat adanya data yang sangat berbeda dengan yang lain (outlier). Apabila beberapa data terakhir yang diberikan ke jaringan memiliki pola yang serupa (berarti arah gradien sudah benar), maka perubahan bobot dilakukan secara cepat. Namun, apabila data terakhir yang dimasukkan memiliki pola yang berbeda dengan pola sebelumnya, maka perubahan dilakukan secara lambat [6].
Dengan Penambahan momentum, bobot baru pada waktu ke (t+1) didasarkan atas bobot pada waktu t dan (t-1). Disini harus ditambahkan dua variabel baru yang mencatat besarnya momentum untuk dua iterasi terakhir. Jika
22
adalah konstanta (0 ≤ ≤ 1) yang menyatakan parameter momentum maka
bobot baru dihitung berdasarkan persamaan :
() ( 1)
) ( ) 1 (t w t z w t w t wkj kj
k j
kj kj (2.17) dan
() ( 1)
) ( ) 1 (t v t x v t v tvji jij
j i
jij jij(2.18) Algoritma gradient descent dengan adaptive learning rate, dasarnya sama dengan algoritma gradient descent standard dengan beberapa perubahan. Pertama-tama dihitung terlebih dahulu nilai output jaringan dan error pelatihan. Pada setiap epoch, bobot-bobot baru dihitung dengan menggunakan learning rate yang ada. Kemudian dihitung kembali output jaringan dan error pelatihan. Jika perbandingan antara error pelatihan yang baru dengan error pelatihan lama melebihi maksimum kenaikan kinerja (max_perf_inc), maka bobot-bobot baru tersebut akan diabaikan, sekaligus nilai learning rate akan dikurangi dengan cara mengalikannya dengan lr_dec. Sebaliknya, apabila perbandingan antara error
pelatihan baru dengan error pelatihan lama kurang dari maksimum kenaikan kinerja, maka nilai bobot-bobot akan dipertahankan, sekaligus nilai learning rate
akan dinaikkan dengan cara mengalikannya dengan lr_inc.
Dengan cara ini, apabila learning rate terlalu tinggi dan mengarah ke ketidakstabilan, maka learning rate akan diturunkan. Sebaliknya jika learning rate
terlalu kecil untuk menuju konvergensi, maka learning rate akan dinaikkan. Dengan demikian, maka algoritma pembelajaran akan tetap terjaga pada kondisi stabil.
23
Algoritma gradient descent with momentum and adaptive learning
(traingdx) merupakan penggabungan antara algoritma gradient descent with adaptive learning (traingda) dan algoritma gradient descent with momentum
(traingdm). Algoritma ini merupakan algoritma default yang digunakan oleh scilab karena memiliki performa kecepatan pelatihan yang tinggi.
Simulasi dilakukan baik pada periode training maupun periode testing. Salah satu cara yang dapat digunakan untuk melakukan evaluasi terhadap jaringan syaraf yang digunakan adalah dengan menggunakan analisis regresi terhadap respon jaringan dan target yang diharapkan. Analisis ini akan dilakukan dengan fungsi postreg yang terdapat pada SCILAB.
Perambatan galat mundur (Backpropagation) merupakan sebuah metode sistematik untuk pelatihan multiplayer jaringan saraf tiruan. Metode ini memiliki dasar matematis yang kuat, obyektif dan algoritma ini mendapatkan bentuk persamaan dan nilai koefisien dalam formula dengan meminimalkan jumlah kuadrat galat error melalui model yang dikembangkan (training set).
24