• Tidak ada hasil yang ditemukan

PERBANDINGAN PERAMALAN INDEKS HARGA SAHAM GABUNGAN MENGGUNAKAN SUPPORT VECTOR MACHINES DAN JARINGAN SARAF TIRUAN

N/A
N/A
Protected

Academic year: 2021

Membagikan "PERBANDINGAN PERAMALAN INDEKS HARGA SAHAM GABUNGAN MENGGUNAKAN SUPPORT VECTOR MACHINES DAN JARINGAN SARAF TIRUAN"

Copied!
10
0
0

Teks penuh

(1)

PERBANDINGAN PERAMALAN INDEKS HARGA SAHAM GABUNGAN MENGGUNAKAN SUPPORT VECTOR MACHINES DAN JARINGAN SARAF TIRUAN

Karina Priscilia1, Rian Febrian Umbara2, Jondri3 School of Computing Telkom University, Bandung 1[email protected], 2[email protected]

Abstrak

Support vector machines merupakan sebuah alat prediksi klasifikasi dan regresi yang menggunakan teori pembelajaran mesin (machine learning) untuk meningkatkan akurasi prediksi dan sekaligus menghindari data yang over-fit. Jaringan saraf tiruan adalah suatu teknologi komputasi yang berbasis pada model saraf biologis, model ini membantu mensimulasikan tingkah laku dan kerja model saraf terhadap berbagai macam masukan.

Penelitian ini menggunakan metode support vector machines dan jaringan saraf tiruan untuk peramalan pergerakan Indeks Harga Saham Gabungan. Kedua metode ini akan dibandingkan melalui nilai akurasi, waktu komputasi dan kompleksitas algoritma. Hasil perhitungan 10 indikator dijadikan input pada sistem.

Pada penelitian ini diperoleh hasil, yaitu dengan menggunakan metode jaringan saraf tiruan didapatkan akurasi testing sebesar 68,26% dan total waktu komputasi sebesar 9,068 seconds, sedangkan menggunakan metode support vector machines didapatkan akurasi sebesar 56,57% dan total waktu komputasi sebesar 27,666 seconds. Waktu asimptotik metode JST adalah 𝑶(𝒏𝟐) dan waktu asimptotik metode SVM adalah 𝑶(𝒏𝟑). Percobaan ini menunjukkan metode jaringan saraf tiruan lebih baik dibandingkan support vector machines dalam meramalkan pergerakan Indeks Harga Saham Gabungan, selain itu metode JST memiliki kompleksitas waktu asimptotik yang lebih cepat, hal ini menunjukkan bahwa algoritma JST lebih efisien.

Kata kunci : support vector machines, jaringan saraf tiruan, 10 indikator, Indeks Harga Saham Gabungan (IHSG), kompleksitas waktu.

1. Pendahuluan

Prediksi atau peramalan permasalahan finansial, seperti peramalan pergerakan Indeks Harga Saham Gabungan (IHSG) merupakan salah satu peramalan modern yang paling sulit dilakukan. Hal ini disebabkan oleh deret waktu pada permasalahan tersebut bersifat non-stasioner, dimana harga selalu berfluktuasi, serta tidak ada informasi lengkap yang dapat diperoleh melalui perilaku masa lalu dari pasar keuangan yang dapat dipelajari dan dilihat sifat ketergantungannya dan pengaruhnya terhadap harga masa mendatang.

IHSG merupakan tolok ukur dari kinerja seluruh saham di BEI yang dapat dijadikan sebagai indikator ekonomi nasional.

Dalam ini akan dilakukan perhitungan untuk peramalan pergerakan indeks harga saham gabungan (IHSG) dengan menggunakan support vector machines, mencari akurasi peramalannya, serta akan membandingkan hasil peramalan yang dihasilkan oleh metode SVM dengan metode lainnya, yaitu jaringan saraf tiruan, sehingga menghasilkan akurasi dari masing-masing metode yang selanjutnya dapat dianalisis lebih lanjut. Selain itu dilakukan juga perbandingan kompleksitas algoritma dan waktu komputasi, untuk mengetahui metode yang lebih baik dalam peramalan harga saham.

Sebagai input untuk kedua metode ini digunakan indikator teknis. Indikator teknis adalah hasil perhitungan matematis berdasarkan indikasi harga atau volume. Nilai-nilai yang diperoleh digunakan untuk memperkirakan kemungkinan perubahan harga. Dalam penelitian ini akan digunakan sepuluh indikator teknis, yaitu Simple 10-day moving average, Weighted 10-day moving average, Momentum, Stochastic K%, Stochastic D%, RSI (Relative Strength Index), MACD (moving average convergence divergence),   Larry   William’s   R%,   A/D   (Accumulation/Distribution Oscillator), CCI (Commodity Channel Index).

Sepuluh indikator ini juga sudah dibahas dan dikaji oleh penelitian sebelumnya yang dilakukan oleh Yakup Kara, Melek Acar Boyacioglu dan Ömer Kaan Baykan[12]. Mereka menggunakan sepuluh indikator tersebut untuk memprediksi pergerakan harga saham Instanbul Stock Exchange dengan menggunakan metode jaringan saraf tiruan dan support vector machines, dalam penelitian tersebut didapatkan akurasi hasil prediksi menggunakan JST sebesar 75,74% dan akurasi hasil prediksi menggunakan SVM sebesar

(2)

71,52%, hal ini menyatakan bahwa hasil prediksi menggunakan metode ANN lebih baik dibandingkan dengan hasil prediksi menggunakan metode SVM.

2. Dasar Teori

2.1 Support vector machines

Support vector machines pertama kali muncul pada tahun 1992, dikenalkan oleh Boser, Guyon dan Vapnik di COLT-92. Support vector machines adalah serangkaian set dari relasi metode supervised learning yang digunakan untuk klasifikasi, pengenalan (recognition), time series, dan regresi. Pengertian lain support vector machines adalah sebuah alat prediksi klasifikasi dan regresi yang menggunakan teori pembelajaran mesin (machine learning) untuk meningkatkan akurasi prediksi dan sekaligus menghindari data yang over-fit[11].

Ide pokok dari SVM adalah membangun sebuah hyperplane atau fungsi pemisah untuk memutuskan pemisahan margin positif dan negatif atau dua macam obyek, sedangkan ide pokok SVM untuk fungsi pendekatan adalah memetakan x data kedalam high-dimentional feature space menggunakan pemetaan nonlinier, kemudian menampilkan sebuah regresi linier didalam feature space[21]. Dalam teknik ini kita berusaha menemukan

fungsi pemisah (klasifier/hyperplane) terbaik diantara fungsi yang tidak terbatas jumlahnya untuk memisahkan dua macam obyek. Hyperplane yang baik adalah hyperplane yang terletak ditengah-tengah antara dua set obyek dari dua kelas[22]. Mencari hyperplane terbaik ekuivalen dengan memaksimalkan margin atau jarak antara dua set obyek dari kelas yang berbeda. Contoh training, dengan input vektor xi ∈ Rd dan label yang diberikan yi ∈{+1,-1}, SVM mempelajari mengklasifikasikan objek kedalam dua kelas.

SVM menggunakan model linier untuk menetapkan batas kelas nonlinier melalui beberapa pemetaan nonlinier inputan vektor x ke dalam ruang fitur dimensi tinggi (high-dimensional feature space). Model linier yang dibangun pada ruang baru dapat merepresentasikan sebuah keputusan nonlinier pada ruang yang asli (original space). Didalam ruang baru (new space) ini, hyperplane yang optimal dibangun. Dengan demikian, SVM dikenal sebagai algoritma yang dapat menemukan bentuk-bentuk spesial dari model-model linear (the maximum margin hyperplane).

The maximum margin hyperplane memberikan pemisahan maksimum antar kelas-kelas keputusan (decision classes). Contoh-contoh training yang memiliki jarak terdekat terhadap the maximum margin hyperplane disebut vektor pendukung atau support vectors. Contoh training yang lainnya tidak relevan untuk mendefinisikan batas-batas kelas biner.

Untuk kasus linier terpisah (linearly separable), sebuah hyperplane yang memisahkan kelas biner dalam kasus tiga atribut, dapat direpresentasikan dengan persamaan berikut[13]:

y = w0 + w1x1 +w2x2 +w3x3 (1)

dimana y adalah hasil, xi adalah nilai atribut, dan terdapat empat bobot wi untuk dipelajari oleh algoritma

pembelajaran (learning algorithm). Pada persamaan (7), bobot wi adalah parameter yang menentukan

hyperplane. The maximum margin hyperplane dapat direpresentasikan dengan persamaan dibawah ini dalam bentuk support vectors:

y = b + ∑ 𝛼 𝑦 x(𝑖). x (2)

dimana yi adalah nilai kelas dari contoh pelatihan (training example) x(i), .merepresentasikan dot product.

Vektor x merepresentasikan sebuah contoh test dan vektor x(i) adalah support vector. Dalam persamaan ini b dan 𝛼 adalah parameter yang menentukan hyperplane. dari implementasi, menemukan support vector dan menentukan parameter b dan 𝛼, setara dengan memecahkan pemrograman kuadratik (QP) dengan konstrain (constrained quadratic programming).

SVM membangun model linier untuk mengimplementasikan batas-batas kelas nonlinier melalui transformasi input kedalam ruang fitur dimensi tinggi (high-dimentional feature space). Dalam kasus nonlinier terpisah, sebuah ruang fitur dimensi tinggi dapat direpresentasikan sebagai berikut:

y = b + ∑ 𝛼 𝑦 𝐾(x(𝑖), x) (3)

fungsi 𝐾(x(𝑖), x) disebut sebagai fungsi kernel. Terdapat beberapa macam kernel yang dapat digunakan untuk menghasilkan hasil kali dalam (inner product) untuk membuat mesin dengan tipe tampilan nonlinier yang berbeda dalam ruang input (input space). Pemilihan terhadap kernel yang berbeda yang dapat meminimalisasi estimasi adalah pilihan yang baik.

2.1.1 Kernel

Secara umum, kasus-kasus di dunia nyata adalah kasus yang tidak linier dan datanya sulit dipisahkan secara linier. Metoda kernel adalah salah satu cara untuk mengatasinya.

K(xi, xj) dinamakan fungsi kernel. Nilainya sama dengan nilai perkalian dalam (inner product) dari

(3)

Dengan metoda kernel suatu data x di input space dimapping ke featurespaceF dengan dimensi yang lebih tinggi melalui map 𝜑 sebagai berikut : x→  𝜑 (x). Karena itu data x di input space menjadi 𝜑 (x) di featurespace. Suatu fungsi kernel, k(x,  x’), bisa untuk menggantikan dot product < 𝜑 (x), 𝜑 (x)’>. Kemudian di feature space, kita bisa membuat suatu fungsi pemisah yang linier yang mewakili fungsi nonlinear di input space.

Terdapat banyak pilihan fungsi kernel, diantaranya adalah: Linear kernel : K(xi,xj) = 〈𝑥 , 𝑥 〉

Polinomial kernel : K(xi,xj) = 〈𝑥 , 𝑥 〉 + 1 , d Sigmoid kernel : K(xi,xj) = tanh 〈𝑥 , 𝑥 〉 + Θ

Gaussian Radial Basis Function (RBF) kernel : K(xi,xj) = exp −     , 𝜎 ℝ 2.1.1.1 Radial Basis Function (RBF)

Pada machine learning,radial basis function kernel (RBF) adalah kernel fungsi yang digunakan pada klasifikasi support vector machines. RBF kernel pada  dua  sampel  x  dan  x’,  direpresentasikan  sebagai  fitur   vektor dalam beberapa ruang input, didefinisikan sebagai:

K(x,x’)  =  exp   ‖ ‖ (4)

‖𝑥 − 𝑥′‖ diketahui sebagai jarak Euclidean kuadrat diantara dua fitur vektor. 𝜎 adalah parameter bebas. Bentuk yang lebih sederhana adalah sebagai berikut:

K(x,x’)  =  exp(𝛾‖𝑥 − 𝑥′‖ ) (5)

Dimana 𝛾 =   − . Nilai dari RBF menurun dengan jarak yang berkisar antara 0 sampai 1, ketika 𝑥 = 𝑥′. Feature space dari kernel memiliki jumlah dimensi yang tak terbatas. Untuk 𝜎 = 1, ekspansinya adalah:

exp − ‖𝑥 − 𝑥′‖ =   ∑ ! exp − ‖𝑥‖ exp − ‖𝑥′‖ (6)

Karena SVM dan model lainnya yang menggunakan trik kernel tidak mempunyai skala yang baik dalam sampel training atau fitur dalam jumlah yang besar dalam input space, maka dibuat beberapa pendekatan/aproksimasi untuk kernel RBF. Biasanya digunakan bentuk fungsi z yang memetakan vektor tunggal kepada vektor dimensi yang lebih tinggi. Bentuk pendekatannya adalah sebagai berikut:

𝑧(𝑥)𝑧(𝑥′) ≈  𝜑(𝑥)𝜑(𝑥′) = 𝐾(𝑥, 𝑥 ) (7)

Dimana 𝜑 adalah pemetaan implisit yang terdapat didalam kernel RBF. Salah satu cara untuk membangun z adalah dengan sampel acak dari transformasi Fourier dari kernel.

2.1.1.2 Polynomial Kernel

Kernel polinomial merupakan jenis kernel non-stasioner. Kernel polinomial efektif digunakan pada data training yang sudah dinormalisasi.

Bentuk sederhana dari rumus kernel polinomial adalah sebagai berikut: 𝑘(𝑥, 𝑦) = (𝑥 𝑦 + 1) (8)

Dimana d adalah derajat polinomial dan 𝑥 adalah data training yang telah di transpose. 2.2 Jaringan Saraf Tiruan

Jaringan saraf tiruan adalah algoritma pembelajaran yang terinspirasi dari sistem saraf biologis[1]. Jaringan saraf tiruan merupakan representasi buatan manusia yang selalu mencoba mensimulasikan proses pembelajaran pada otak manusia tersebut. Otak manusia berisi berjuta-juta sel saraf yang bertugas untuk memproses informasi. Tiap-tiap sel bekerja seperti suatu processor sederhana. Masing-masing sel tersebut saling berinteraksi sehingga mendukung kemampuan kerja otak manusia[23].

Jaringan saraf tiruan sering digunakan karena kemampuannya untuk menggeneralisasi hasil dari data yang tak terlihat, terutama untuk sistem dinamis secara real time. JST dapat mengidentifikasi dan mempelajari pola korelasi antara set input data.

Jaringan saraf tiruan memiliki dua fase kerja, yaitu fase pembelajaran (learning) dan fase recall. Dalam fase pembelajaran, set data digunakan sebagai sinyal pelatihan (training signal) pada input dan output layer. Fase recall dilakukan menggunakan berat (weight) yang diperoleh dalam tahap fase pembelajaran[1].

(4)

2.2.1 Backpropagation

Backpropagation merupakan salah satu metode pelatihan dari jaringan saraf tiruan. Backpropagation lebih banyak digunakan dibandingkan dengan sistem jaringan saraf lainnya, berbeda dengan perceptron sebelumnya, Backpropagation adalah jaringan feedforward multilayer dengan fungsi transfer yang berbeda dalam neuron buatan dan memiliki learning rule yang lebih kuat[7]. Backpropagation menggunakan arsitektur multilayer dengan metode pelatihan supervised training[23].

Disebut backpropagation karena merupakan jenis teknik gradient descent dengan propagasi kesalahan mundur (backward error)[7]. Jaringan backpropagation terdiri dari satu input layer, satu output layer dan satu atau lebih hidden layer.

Algoritma Backpropagation[7]

 Inisialisasi bobot (weight initialization)

Atur semua bobot dan node pada angka-angka berjumlah kecil secara acak. Catat bahwa batas ambang node adalah negatif dari bobot yang berasal dari unit bias (dimana level aktivasi ditentukan 1).

 Perhitungan aktivasi

1. Level aktivasi dari sebuah input ditentukan oleh pemisalan (asumsi) yang diberikan ke jaringan. 2. Level aktivasi Oj dari sebuah hidden dan output unit ditentukan oleh

Oj = F(  Σ  WjiOi – Ɵj) (1)

Dimana Wji adalah bobot dari input Oi, Ɵj adalah batas simpul (node threshold), dan F adalah fungsi sigmoid:

𝐹(𝑎)   =   (2)

 Pelatihan bobot (weight training)

1. Mulai dari unit output dan bekerja mundur ke lapisan tersembunyi (hidden layers) secara rekursif. Sesuaikan bobot oleh

Wji(t+1) = Wji(t)  +  ΔWji (3)

Dimana Wji(t) adalah bobot dari unit i ke unit j pada saat t (atau pada saat iterasi ke-t)  dan  ΔWji adalah penyesuaian bobot (weight adjustment).

2. Perubahan bobot dapat dihitung menggunakan

ΔWji = ηδjOi (4)

Dimana η adalah sebuah trial-independent learning rate (0 < η  < 1, misalnya 0,3) dan δj adalah error gradient pada unit j. Konvergensi terkadang lebih cepat dengan menambahkan momentum term: Wji(t+1) = Wji(t) + ηδjOi +  α[Wji(t)  Wji(t  1)]

Dimana  0  <  α  <  1.

3. Error gradient diperoleh dari:  Untuk unit output:

δj = Oj (1  Oj)(Tj – Oj) (5)

dimana Tj adalah target aktivasi output dan Oj adalah output aktual aktivasi pada output unit j.  Untuk hidden unit:

δj = Oj (1  Oj) ∑ 𝛿  𝑊   (6)

dimana 𝛿   adalah error gradient pada unit k yang merupakan sebuah titik koneksi dari hidden unit j. 4. Ulangi iterasi sampai mendapatkan bentuk yang konvergen dalam pemilihan kriteria error. Iterasi

mencakup memberikan sebuah pemisalan/asumsi (instance), menghitung aktivasi dan memodifikasi bobot.

Untuk meminimumkan kriteria error, dapat digunakan: 𝐸 =    ∑ (𝑇    − 𝑂 ) (7)

Kriteria Berhenti (Stopping Criteria)[7]

Proses penyesuaian bobot berdasarkan gradient diulang sampai kriteria minimum tercapai. Dalam prakteknya kita harus memilih kondisi berhenti. Ada beberapa kriteria berhenti yang dapat dipertimbangkan:

 Berdasarkan minimalisasi error: dalam pengenalan pola, prosedur pemberhentian akan tercapai ketika data benar-benar sudah terklasifikasi. Jika keadaan tersebut tidak tercapai, maka asumsi pembatasan akan digunakan. Namun, kriteria ini tidak menjamin generalisasi ke data baru.  Berdasarkan gradient: algoritma akan berhenti ketika gradien sudah cukup kecil. Perlu diingat

bahwa gradien akan menjadi nol saat minimal menurut definisi/asumsi.

 Berdasarkan kinerja cross-validasi: kriteria ini dapat digunakan untuk memantau kinerja generalisasi selama proses learning dan untuk memberhentikan algoritma ketika sudah tidak ada perbaikan.

(5)

Dua kriteria pertama sensitif terhadap pemilihan parameter dan dapat menyebabkan hasil yang buruk jika parameter yang dipilih tidak tepat. Kriteria cross-validasi tidak memiliki kekurangan ini, kriteria ini dapat menghindari overfitting data dan dapat meningkatkan kinerja generalisasi jaringan. Namun cross -validasi lebih bersifat komputasi intensif dan memerlukan lebih banyak data.

2.3 Indikator Teknis

Indikator adalah sesuatu yang dapat memberikan, menjadi petunjuk atau keterangan. Dalam peramalan pergerakan harga saham, indikator dapat digunakan untuk mengantisipasi perubahan harga dimasa depan.

Indikator teknis adalah hasil perhitungan matematis berdasarkan indikasi harga atau volume. Nilai-nilai yang diperoleh digunakan untuk memperkirakan kemungkinan perubahan harga.

Terdapat beberapa indikator teknis yang telah dikembangkan, namun dalam penelitian ini hanya akan digunakan sepuluh indikator, yaitu Simple 10-day moving average, Weighted 10-day moving average, Momentum, Stochastic K%, Stochastic D%, RSI (Relative Strength Index), MACD (moving average convergence divergence),  Larry  William’s  R%,  A/D  (Accumulation/Distribution Oscillator), CCI (Commodity Channel Index).

Sepuluh indikator yang digunakan dalam penelitian ini merupakan indikator yang diterima dan digunakan oleh investor dan manager keuangan sebagai sinyal trend pasar saham masa depan. Selain itu, sepuluh indikator ini juga sudah dibahas dan dikaji oleh penelitian sebelumnya yang dilakukan oleh Yakup Kara, Melek Acar Boyacioglu dan Ömer Kaan Baykan [12]. Penggunaan indikator teknis juga dilakukan oleh Kyoung-jae Kim [13].

Selain telah diterima dan digunakan oleh investor dan manager keuangan, penggunaan indikator ini efektif menyaring data, melatih classifier dan mengekstrak rules dari classifier, selain itu mengurangi dimensi dari ruang fitur, meningkatkan kemampuan generalisasi classifier dan mengurangi biaya serta waktu.

Adapun rumus perhitungan 10 indikator adalah sebagai berikut : Tabel 2.1 Rumus 10 Indikator [12]

Indikator Rumus Simple 10-day moving average 𝐶 + 𝐶 + ⋯ + 𝐶 10 Weighted 10-day moving average ((𝑛)  x  𝐶 + (𝑛 − 1)  x  𝐶 + ⋯ + 𝐶 ) (𝑛 + (𝑛 − 1) + ⋯ + 1) Momentum 𝐶 − 𝐶 Stochastic K%  x  100% Stochastic D% ∑ 𝐾 % 𝑛 RSI

(Relative Strength Index) 100 - (∑ )/(∑ / ) MACD (moving average

convergence divergence) 𝑀𝐴𝐶𝐷(𝑛) + 2 𝑛+ 1  x  (𝐷𝐼𝐹𝐹 − 𝑀𝐴𝐶𝐷(𝑛) Larry William’s  R%  x  100% A/D (Accumulation/Distribution Oscillator) 𝐻 − 𝐶 𝐻 − 𝐿

(6)

Keterangan:

Ct : Harga penutupan (closing price) Lt : Low price

Ht : High price

k : Periode waktu dari hari ke-k exponential moving average LLt : Lowest low

HHt : Highest high

Upt : Perubahan harga naik pada saat t Dwt : Perubahan harga turun pada saat t

MACD : Indikator yang menyatakan hubungan harga antara dua moving average. MACD dihitung melalui 26-days Exponential Moving Average (EMA) dan 12-days EMA

DIFFt : Selisih antara 12-days EMA dan 26-days EMA ( 12days EMA – 26days EMA) Mt : Typical price

SMt : Simpe Moving Average 3. Perancangan Sistem

Perancangan sistem menggambarkan proses sistem yang akan dirancang, dimana dimulai dari pengumpulan data indeks harga saham gabungan sampai proses peramalan pergerakan indeks harga saham gabungan tersebut. Pemodelan sistem untuk ini adalah :

Data IHSG

Prediksi Menggunakan SVM

Prediksi Menggunakan JST

Hasil Prediksi Peramalan Pergerakan IHSG dan

akurasi

Membandingkan Tingkat Akurasi dari Kedua

Metode

Didapat Metode yang Memiliki Akurasi terbaik

Rekomendasi

Data historis harga Indeks Harga Gabungan (IHSG) yang digunakan adalah close, high, low dan merupakan data harian (daily) periode Januari 2009 sampai Desember 2013. Data historis dapat di unduh pada http://finance.yahoo.com/.

Data di kelompokkan menjadi 2 kelas, kelas 0, jika (harga saham sebelumnya – harga saham saat ini) < 0 (saham mengalami penurunan) dan kelas 1, jika (harga saham sebelumnya – harga saham saat ini) > 0 (saham mengalami kenaikan).

Setelah proses normalisasi, data IHSG tersebut akan digunakan dalam perhitungan 10 indikator[12] (simple 10-day moving average, weighted 10-day moving average, momentum, stochastic K%, stochastic D%, RSI(Relative Strength Index), MACD(moving average convergence divergence), larry william’s  R%,  A/D  (Accumulation/Distribution)  Oscillator,  CCI  (Commodity  Channel  Index).

Hasil perhitungan 10 indikator akan digunakan sebagai input dalam perhitungan pada metode jaringan saraf tiruan dan support vector machines. Kemudian akan dilakukan proses training dan testing

CCI

(Commodity Channel Index)

𝑀 − 𝑆𝑀 0.015𝐷

(7)

Training (%) Testing (%) Training (s) Testing (s)

66,31 68,26 8,936 0,132

Error 0,01, LR 0,1, HN 4 Epoch 50

Akurasi Waktu Komputasi

Training (%) Testing (%) Training (s) Testing (s)

62,49 56,57 11,702 15,964

σ  =  2,  Kernel  RBF

Akurasi Waktu Komputasi

Training (%) Testing (%) 66,31 68,26 Akurasi Error 0,01, LR 0,1, HN 4 Epoch 50 Training (%) Testing (%) 62,49 56,57 Akurasi σ  =  2,  Kernel  RBF

menggunakan kedua metode tersebut untuk memperoleh outputberupa  nilai  “1”  untukpergerakan IHSG

naik  dan  nilai  “0”  untuk  pergerakan  IHSG  turun,  serta  untuk  mendapatkan  akurasi,  waktu  komputasi  dan  

kompleksitas algoritma. 4. Pengujian dan Analisis

Pengujian pada penelitian ini menggunakan data historis IHSG (close price, high, low) yang sudah

dihitung menggunakan rumus 10 indikator (Tabel 2.1). Kemudian akan digunakan strategi pengujian

untuk masing-masing metode jaringan saraf tiruan dan support vector machines, dengan skenario

sebanyak ( 9 skenario untuk metode jaringan saraf tiruan dan 3 skenario untuk support vector machines,

serta 3 kali perbandingan (akurasi, waktu komputasi (dalam seconds) dan kompleksitas algoritma).

4.1 Skenario Jaringan Saraf Tiruan

Skenario pada metode jaringan saraf tiruan dilakukan dengan mengganti nilai epoch, error, dan

learning rate setiap kali percobaan. Dari skenario yang telah dilakukan akan diperoleh skenario terbaik,

yaitu skenario yang memiliki akurasi testing paling tinggi.

Adapun skenario terbaik yang dihasilkan melalui percobaan menggunakan metode JST adalah sebagai berikut:

Tabel 4.1 Skenario JST Error 0.01, LR 0.1, HN 4

dapat diketahui bahwa hasil terbaik terdapat pada percobaan error 0.01, learning rate 0.1, hidden neuron

4 dan epoch 50. Didapatkan akurasi testing sebesar 68,26%, total waktu komputasi sebesar 9,068 seconds.

4.2 Skenario Support vector machines

Skenario pada metode support vector machines dilakukan dengan mengganti kernel (RBF atau

polynomial),   dan   nilai   d   (derajat)   dan   σ   (gamma) setiap kali percobaan. Dari skenario yang telah dilakukan akan diperoleh skenario terbaik, yaitu skenario yang memiliki akurasi paling tinggi.

Adapun skenario terbaik yang dihasilkan melalui percobaan menggunakan metode JST adalah sebagai berikut:

Tabel 4.2 Skenario SVM kernel RBF, gamma=2

dapat diketahui bahwa hasil terbaik yaitu pada percobaan dengan menggunakan kernel RBF pada saat

nilai gamma sebesar 2, didapatkan akurasi sebesar 56,57%, total waktu komputasi sebesar 27,666

seconds.

4.3 Perbandingan Akurasi

Akurasi merupakan tolak ukur yang sangat penting bagi suatu peramalan, melalui nilai akurasi dapat

diketahui baik atau tidaknya suatu peramalan. Akurasi adalah tingkat kedekatan pengukuran kuantitas

(8)

Error 0,01, LR 0,1, HN 4 Epoch 50 Waktu Komputasi (s) 9,068 σ  =  2,  Kernel  RBF Waktu Komputasi (s) 27,666

Perbandingan akurasi antara dua metode dapat dilihat melalui hasil skenario terbaik. Melalui tabel diatas dapat dilihat bahwa metode JST memiliki akurasi yang lebih tinggi, yaitu 68,26% dibandingkan dengan metode SVM yang hanya sebesar 56,57%, sehingga dapat ditarik kesimpulan bahwa akurasi metode JST lebih baik dibandingkan metode SVM.

4.4 Perbandingan Waktu Komputasi

Banyaknya waktu yang diperlukan untuk menjalankan sebuah metode juga berpengaruh terhadap peramalan. Semakin lama waktu yang diperlukan maka metode tersebut tidak efisien.

Jika dihitung, total waktu komputasi metode JST sebesar 9,068 seconds dan total waktu komputasi

metode SVM sebesar 27,666 seconds. Dari jumlah tersebut dapat diketahui bahwa waktu komputasi

metode JST lebih cepat dibandingkan metode SVM. 4.5 Perbandingan Kompleksitas Algoritma

 Kompleksitas waktu algoritma jaringan saraf tiruan backpropagation.

Perhitungan kompleksitas waktu asimptotik metode backpropagation dapat dihitung dengan menelusuri

setiap langkah metode backpropagation pada pseudocode-nya.

Jika dilihat dari pseudo-code proses yang banyak dilakukan oleh algoritma JST backpropagation

adalah for. Kompleksitas waktu for dapat dihitung melalui jumlah pengulangan dikali dengan kompleksitas waktu rumus atau perhitungan yang berada didalamnya.

Kompleksitas waktu asimptotik

𝑛𝑂(𝑛) = 𝑂(𝑛. 𝑛)

= 𝑂(𝑛 )

Dalam kompleksitas waktu 𝑂(𝑛 ) bila n dinaikkan menjadi dua kali semula, maka waktu

pelaksanaan algoritma meningkat menjadi empat kali semula.

 Kompleksitas waktu asimptotik support vector machines.

Proses yang dijalankan oleh metode SVM mirip dengan algoritma sequential search, karena sistem

akan   selalu   mencari   nilai   α   yang   sesuai   dengan   target,   sampai   nilai   α   tersebut   ditemukan   dan   tidak  

berubah.

 Kasus terbaik (terjadi bila 𝛼 = 𝑥)

𝑇 (𝑛) = 1

Pada kasus ini nilai Big-O = 𝑂(1)

Kompleksitas 𝑂(1) berarti waktu pelaksanaan algoritma adalah tetap, tidak bergantung pada ukuran

masukan.

 Kasus terburuk (terjadi bila 𝛼 = 𝑥  atau 𝑥 belum ditemukan dan masih berubah).

𝑇 (𝑛) = 𝑛

Pada kasus ini nilai Big-O = 𝑂(𝑛)

Dalam kompleksitas 𝑂(𝑛) bila nilai n dijadikan dua kali semula, maka waktu pelaksanaan juga dua kali

semula.

 Kasus rata-rata (jika nilai 𝑥 ditemukan pada posisi ke-j, maka operasi perbandingan akan dieksekusi

sebanyak j kali. 𝑇 (1 + 2 + 3 + ⋯ + 𝑛) 𝑛 =   𝑛(1 + 𝑛) 𝑛 =   (𝑛 + 1) 2

Pada kasus ini nilai Big-O = 𝑂(𝑛)

 Pada dasarnya kompleksitas waktu algoritma SVM bervariasi antara 𝑂(𝑛) sampai 𝑂(𝑛 . ). Pada

kasus SVM yang menggunakan quadratic programming, kompleksitas waktu training SVM sebesar

(9)

 Berdasarkan analisis diatas, waktu asimptotik metode JST adalah 𝑂(𝑛 ) dan waktu asimptotik metode SVM yang menggunakan QP (quadratic programming) adalah 𝑂(𝑛 ), hal ini menunjukkan bahwa metode JST memiliki waktu asimptotik yang lebih cepat dibandingkan dengan metode SVM.

5. Kesimpulan

Berdasarkan analisis terhadap implementasi sistem dan pengujian sistem peramalan pergerakan indeks harga saham gabungan dengan menggunakan metode jaringan saraf tiruan dan support vector machines, maka dapat ditarik kesimpulan sebagai berikut:

1. Dengan menggunakan metode jaringan saraf tiruan backpropagation didapatkan akurasi sebesar 68,26%, sedangkan menggunakan metode support vector machines kernel RBF didapatkan akurasi sebesar 56,57%.

2. Total waktu komputasi metode jaringan saraf tiruan backpropagation sebesar 9,068 seconds, dan total waktu komputasi metode support vector machines kernel RBF sebesar 27,666 seconds.

3. Waktu asimptotik metode JST adalah 𝑂(𝑛 ) dan waktu asimptotik metode SVM adalah 𝑂(𝑛 ). Berdasarkan perbandingan ini dapat ditarik kesimpulan bahwa metode JST memiliki kompleksitas waktu asimptotik yang lebih cepat dibandingkan metode SVM, hal ini menunjukkan bahwa algoritma JST lebih efisien.

Daftar Pustaka

[1] Aamodt, Rune. (2010). Using Artificial Neural Networks To Forecast Financial Time Series. Norwegian University of Science and Technology.

[2] Bab II Tinjauan Pustaka. Bab-ii. Diperoleh pada 29 November 2013, dari http://panji.web.id/files/skripsi/bab-ii.pdf.

[3] Cao, Lijuan., E.H, Francis. (2001). Neural Comput & Applic: Financial Forecasting Using Support vector machines. Springer-Verlag London Limited. 10:184–192.

[4]   Capital   Market   Education’s   by   Coki.  IHSG sebagai indikator bursa di Indonesia. Diperoleh pada 1 Desember 2013, dari http://coki002.wordpress.com/ihsg-sebagai-indikator-bursa-di-indonesia/. [5] Endang, Triana. (2008). Model Peramalan Harga Saham dengan Jaringan Syaraf Tiruan Propagasi

Balik. Tesis. Institut Pertanian Bogor.

[6] Finance Roll. (2012). IHSG. Diperoleh pada 1 Desember 2013, dari http://financeroll.co.id/uncategorized/ihsg/.

[7] Fu, LiMin. (1994). Neural Networks in Computer Intelligence. McGraw-Hill Companies.

[8] IDX Indonesia Stock Exchange Bursa Efek Indonesia. (2010). Indeks. Diperoleh pada 1 Desember 2013, dari

http://www.idx.co.id/id-id/beranda/informasi/bagiinvestor/indeks.aspx.

[9] IDX Indonesia Stock Exchange Bursa Efek Indonesia. (2010). Saham. Diperoleh pada 29 November 2013, dari

http://www.idx.co.id/id-id/beranda/produkdanlayanan/saham.aspx.

[10] Indonesia Stock Exchange. (2010). Buku Panduan Indeks Harga Saham Bursa Efek Indonesia.

[11] Jakkula, Vikramaditya. Tutorial on Support Vector Machine (SVM). School of EECS. Washington State University.

[12] Kara, Yakup., Boyacioglu Acar, Melek., Baykan Kaan, Omer. (2011). Predicting Direction of Stock Price

Index  Movement   Using  Artificial  Neural  Networks  and  Support vector machines: The Sample of The Istanbul Stock Exchange. Expert Systems with Applications 38. Elsevier Ltd. 5311–531.

(10)

[13] Kim. Kyoung-jae. (2003). Financial Time Series Forecasting Using Support vector machines. Elsevier B.V. Neurocomputing 55 (2003) 307–319.

[14] Lin, Yuling., Guo, Haixiang., Hu, Jinglu. (2013). An SVM-based Approach for Stock Market Trend Prediction. Proceedings of International Joint Conference on Neural Networks. USA.

[15] Neural networks. Feed-Forward Network. Diperoleh pada 10 Desember 2013, dari

http://www.csfaculty.stanford.edu/~eroberts/courses/soco/projects/neuralnetworks/Architectur e/feedforward.html.

[16] Neural Networks chapter 20. Diperoleh pada 13 Agustus 2014, dari

https://www.cs.sfu.ca/~mori/courses/cmpt882/fall05/slides/chapter20b.pdf

[17] Pemilihan Teknik Peramalan dan Penentuan Kesalahan Peramalan. Diperoleh pada 20 Desember 2013, dari http://winita.staff.mipa.uns.ac.id/files/2011/09/pemilihan-teknik-peramalan.pdf. [18] Pedersen, Rasmus.,Schoeberl,Martin. An Embedded Support Vector Machine. Diperoleh pada 13

Agustus, dari https://ti.tuwien.ac.at/cps/people/schoeberl/publications/rtsvm_wises2006.pdf [19] Rujukan Forex Marketiva AGEA Indonesia. (2010). Saham, Indeks Saham, dan Indeks Saham

Berjangka. Diperoleh pada 1 Desember 2013, dari http://forex.marketiva-id.com/tag/ihsg-indeks-harga-saham-gabungan-dan-lq45-liquidity-45.

[20] Rusmiati, Nurmalasari. Jaringan Syaraf Tiruan Backpropagation Sebagai Metode Peramalan Pada Perhitungan Tingkat Suku Bunga Pinjaman di Indonesia. Universitas Gunadarma.

[21] Samsudin. R., Shabri. A., Saad.P. A Comparison of Time Series Forecasting Using Support Vector Machine and Artificial Neural Network Model. Universiti Teknologi Malaysia.

[22] Santosa Budi. Tutorial Support Vector Machine. Kampus ITS. Surabaya.

[23] Setiawan, Wahyudi. (2008). Prediksi Harga Saham Menggunakan Jaringan Syaraf Tiruan Multilayer Feedforward Network dengan Algoritma Backpropagation. Konferensi Nasional Sistem dan Informatika. KNS&I08-020.

Referensi

Dokumen terkait

Salah satu strategi pembelajaran yang mampu mengelola beban kognitif yaitu menggunakan pembelajaran kooperatif tipe Two Stay Two Stray (TSTS), karena struktur dua

Terlihat pada gambar 4.3.1 diatas menunjukkan bahwa semakin lama waktu penyinaran dengan sinar matahari langsung efektivitas fotodegradasi Methyl Orange semakin

Kegiatan yang dilakukan pada tahap tindakan ini mencakup perbaikan kegiatan yang dilakukan pada siklus I. Keterampilan dasar yang dikembangkan adalah kemampuan menggali

Hasil yang diperoleh setelah melakukan pengujian pada perusahaan sektor industri tobacco menunjukkan bahwa current ratio, leverage ratio, gross profit margin,

Sampai empat hari setelah perlakuan, insektisida nabati campuran minyak cengkih + serai wangi dan minyak cengkih + serai dapur lebih tinggi dalam menyebabkan

Dengan melalui analisis tipe bisnis konsep BCG menunjukkan bahwa laju pertumbuhan secara rata-rata sebesar 12,65 % dengan pangsa pasar relatif tinggi sebesar 12,65 % , hal ini

Peserta didik membandingkan, mengklasifikasi, menjelaskan keterkaitan makna antar bagian-bagian dalam teks khusus dalam bentuk undangan resmi : • pandangan, maksud, pendapat

Berdasarkan hasil pengujian dari hipotesis pertama dan kedua, maka simpulan yang diperoleh dari penelitian ini sebagai berikut; 1). Terdapat perbedaan abnormal