PENERAPAN ALGORITMA DECISION TREE C5.0 UNTUK PERAMALAN FOREX Kurniarti Putri Wirdhaningsih1, Dian Eka Ratnawati, S.Si., M.Kom.2, Drs. Marji, MT.3 Program Studi Informatika/Ilmu Komputer, Fakultas Program Teknologi Informatika dan Ilmu Komputer Universitas Brawijaya Malang Jalan Veteran No.8 Malang 65145, Indonesia Email1:
[email protected] Abstrak Perdagangan forex merupakan investasi yang berisiko tinggi dan memiliki prospek yang tinggi. Banyaknya kalangan yang berperan di dalamnya dan besarnya nilai uang yang beredar menjadikan pasar forex sulit untuk dikendalikan oleh kalangan tertentu sehingga diperlukan sistem prediksi dalam menetukan kebijakan yang diambil untuk mencapai profit yang tinggi. Pada penelitian ini bertujuan untuk mengimplementasi algoritma Decision Tree. C5.0 yang memperlakukan variabel kontinyu dan pemilihan atribut yang akan diproses menggunakan information gain tertinggi dalam pembentukan tree yang akan memberikan hasil prediksi. Adapun pre-processing, data history akan diproses menggunakan indikator MACD dan RSI dengan nilai close sebagai inputan sehingga menghasilkan data training. Selain itu pada pre-processing terdapat proses kondisi dengan inputan open, high, dan low yang digunakan sebagai parameter asumsi dalam menentukan keputusan buy atau sell pada saat pergerakan naik ataupun turun. Tingkat keberhasilan prediksi forex dengan metode C5.0 secara optimal diperoleh dari time frame M15 (per-15-menit) untuk pair mata uang EUR/USD dengan akurasi buy 84,49 %, akurasi sell 83,69 %, dan nilai profit yang dicapai yaitu 2,31 $. Kata Kunci: Forex, MACD, RSI, Data Mining, Decision Tree, Algoritma C5.0 Abstract Forex trading is a high risk investment and has a high prospect. The number of people who participate in it and the amount of money in circulation makes it difficult for the forex market is controlled by certain circles that the prediction system is required in determining the measures taken to achieve a higher profit. In this study aims to implement the Decision Tree algorithm. C5.0 which treat continuous variables and the selection of attributes that will be processed using the highest information gain in the establishment of tree that would yield prediction. As for pre-processing, history data will be processed using MACD and RSI indicator with a value close as input to produce training data. In addition there is a pre-processing on the input conditions of the open, high, low and used as the parameter assumptions in determining the decision to buy or sell at the time of movement up or down. Forex prediction success rate with C5.0 method optimally obtained from the time frame M15 (per-15-minutes) for the currency pair EUR / USD with 84.49% accuracy buy, sell accuracy of 83.69%, and the value of profit achieved is $ 2.31. Keywords: Forex, MACD, RSI, Data Mining, Decision Tree, C5.0 Algorithm
1.
Pendahuluan Trading Forex atau yang lebih dikenal dengan valas merupakan suatu jenis transaksi yang memperdagangkan mata uang (currency) suatu negara tehadap mata uang negara lainnya dengan tujuan untuk mendapatkan keuntungan (profit) dari perbedaan nilai mata uang. Pasar forex tidak seperti pasar saham, pasar forex bersifat interbank atau Over The Counter karena waktu perdagangannya yang secara kontinyu mengikuti waktu perdagangan masing-masing negara dan bisa diasumsikan bahwa pasar forex buka 24 jam {7}. Selama kurun waktu yang cukup lama, transaksi forex dianggap suatu bisnis/usaha yang bersifat sangat menguntungkan (High Gain), bisnis ini juga berisiko tinggi (High Risk) dan membutuhkan modal yang sangat besar sehingga
setiap pelaku bisnis (trader) harus memahami bisnis secara benar {7}. Ada beberapa persepsi salah yang dialami oleh trade-trader yang baru dan persepsi ini sangat berpengaruh terhadap kesuksesan. Di dalam menentukan transaksi apa yang dilakukan oleh trader hanya berbekal analisa sesuai dengan insting dari penganalisa, padahal analisa berhubungan dengan data dalam jumlah banyak membuat analisa menjadi tidak efektif dan tidak efisien yang membuat dari segi hasil tidak tepat dengan hasil yang diharapkan. Prediksi forex adalah suatu proses menganalisis dan menentukan trend suatu forex dimasa yang akan datang. Dengan analisa teknikal, prediksi forex dapat ditentukan dengan mengamati perubahan harga dimasa lalu. Pemikiran yang mendasari analisis teknikal adalah bahwa pola
pergerakan kurs forex mencerminkan informasi yang relevan. Informasi tersebut ditunjukkan oleh perubahan harga forex di waktu yang lalu dapat memprediksi pergerakan dimasa yang akan datang, dan karenanya perubahan pergerakan kurs forex mempunyai pola tertentu dan pola tersebut berulang. Parameter masukan data yang digunakan dalam prediksi adalah harga buka (open price), harga terendah (low price), harga tertinggi (high price), dan harga penutupan (close price). Sedangkan indikator yang digunakan dalam memprediksikan pergerakan naik turun nilai pertukarannya yaitu Moving Average Convergence Divergence (MACD) dan Relative Strenght Index (RSI). Hal ini dimaksudkan untuk mengolah dan menganalisa data sehingga menjadi data testing sebagai input baru yang akan diolah sebagai hasil prediksi. Dan keluaran dari prediksi adalah suatu grafik pola pergerakan forex dengan nilai indikator prediksi yaitu nilai MACD, nilai RSI, serta hasil prediksi C5.0 akan menujukkan prediksi membeli (buy) atau menjual (sell). Pada penelitian ini digunakan metode C5.0 (Commercial Version 5.0) untuk mengolah variabelvariabel analisa yang digunakan. C5.0 merupakan salah satu algoritma yang terdapat dalam klasifikasi data mining yang khususnya diterapkan pada teknik Decision Tree. Dalam algoritma C5.0 menghasilkan tree dengan jumlah cabang per node bervariasi. C5.0 memperlakukan variabel kontinyu dan pemilihan atribut yang akan diproses menggunakan information gain tertinggi sebagai parent bagi node selanjutnya. Dengan metode C5.0 diharapkan dapat melakukan prediksi yang tepat sehingga memberikan keuntungan yang maksimal. 2. Tinjauan Pustaka 2.1
Pasar Forex Trading Forex adalah perdagangan mata uang dari negara yang berbeda satu sama lain. Forex ini adalah singkatan dari Foreign Exchange. Sebagai contoh, mata uang yang beredar di Eropa disebut Euro (EUR) dan mata uang yang beredar di Amerika Serikat disebut Dolar AS (USD). Sebuah contoh dari perdagangan Forex adalah untuk membeli Euro dan secara bersamaan menjual US Dolar yang disingkat EUR/USD. Sedangkan pasar Forex adalah pasar tunai non stop dimana terdapat mata uang negara-negara yang diperdagangkan {3}. Pada Forex, terdapat pair yang di dalamnya terdapat session yang dikenal dengan istilah time frame yang terdiri dari time frame 1M (per-1-menit), 5M (per-5-menit), 15M (per-15-menit), 30M (per-30menit), H1 (per hours), H4(per-four-hours), D1 (daily), W1 (weekly), dan MN (monthly). Di dalamnya
terdapat komponen berupa candlestick yang memiliki variabel waktu, open, high, low, close. 2.2
Data Mining Ada beberapa definisi mengenai data mining. Menurut Han (2001), Data mining merupakan sebuah proses menganalisis sekumpulan data hasil penelitian, dengan tujuan untuk menemukan hubungan antar data, dan untuk meringkas data sehingga data menjadi mudah dimengerti dan berguna bagi pemilik data{5}. Sedangkan menurut Connolly (2005: 123), data mining adalah proses menghasilkan informasi yang tidak diketahui sebelumnya dari suatu database yang besar, yang kemudian digunakan dalam proses pengambilan keputusan bisnis{1}. Kumpulan data dalam jumlah besar membuat organisasi memiliki data dalam jumlah banyak, namun tanpa adanya pengolahan data, data tersebut belum dapat menghasilkan informasi ataupun knowlegde yang berguna. Oleh karena itu, data mining diperlukan untuk menemukan polapola dari data yang ada, meningkatkan nilai intrinsik data, dan mengubah data menjadi knowledge {8}. 2.3
Algoritma C5.0 Algoritma C5.0 adalah salah satu algoritma data mining yang khususnya diterapkan pada teknik decision tree. C5.0 merupakan penyempurnaan algoritma sebelumnya yang dibentuk oleh Ross Quinlan pada tahun 1987, yaitu ID3 dan C4.5. Dalam algoritma ini pemilihan atribut yang akan diproses menggunakan information gain. Dalam memilih atribut untuk pemecah obyek dalam beberapa kelas harus dipilih atribut yang menghasilkan information gain paling besar. Atribut dengan nilai information gain tertinggi akan dipilih sebagai parent bagi node selanjutnya {4} C5.0 adalah versi komersial dari C4.5 yang secara luas digunakan di banyak pemaketan data mining seperti Clementine and RuleQuest. Tidak seperti C4.5, penggunaan algoritma yang tepat untuk C5.0 belum terungkap. Hasil menunjukkan bahwa C5.0 meningkatkan pada penggunaaan memori sekitar 90%, lebih cepat daripada C4.5 {2}. 2.4
Information Gain Ukuran information gain digunakan untuk memilih atribut uji pada setiap node di dalam tree. Ukuran ini digunakan untuk memilih atribut atau node pada tree. Atribut dengan nilai information gain tertinggi akan terpilih sebagai parent bagi node selanjutnya. Rumus yang digunakan untuk information gain adalah {6}:
, , β¦ , = β β ()
dengan :
S
=
himpunan kasus
m =
jumlah sample
Pi =
proporsi kelas
S adalah sebuah himpunan yang terdiri dari s data sampel. Diketahui atribut class adalah m dimana mendefinisikan kelas-kelas di dalamnya, Ci (for i= 1, β¦, m), si adalah jumlah sampel pada S dalam class Ci. Untuk mengklasifikasikan sampel yang digunakan maka diperlukan informasi dengan menggunakan aturan seperti di atas. Dimana pi adalah proporsi kelas dalam output seperti pada kelas Ci dan diestimasikan dengan si /s. Atribut A memiliki nilai tertentu {a1, a2, β¦, av}. Atribut A dapat digunakan pada partisi S ke dalam v subset, {S1, S2, β¦, Sv}, dimana Sj berisi sample pada S yang bernilai aj pada A. Jika A dipilih sebagai atribut tes (sebagai contoh atribut terbaik untuk split), maka subset ini akan berhubungan pada cabang dari node himpunan S. Sij adalah jumlah sample pada class Ci dalam sebuah subset Sj. Untuk mendapatkan informasi nilai subset dari atribut A tersebut maka digunakan rumus sebagai berikut {9}: #
() = β$ dengan :
! β¦ "!
( $ , β¦ $ )
= jumlah subset j yang dibagi dengan jumalah sampel S
Untuk mendapatkan nilai gain selanjutnya digunakan rumus di bawah ini {9}:
transaksi sell atau buy disertai dengan nilai kemungkinannya. Alur penelitian yang dilakukan dapat diilustrasikan dalam bentuk diagram alir yang ditunjukkan pada Gambar 3.1. Identifikasi Load Data
Studi Literatur
Perancangan
Implementasi
Pengujian dan
Evaluasi
Gambar 3.1. Tahapan-tahapan dalam penelitian 3.2
Perancangan Perangkat Lunak Proses β proses untuk perancangan model prediksi trend saham adalah : 1. Memasukkan data history untuk dianalisa. 2. Pemanggilan indikator MACD, RSI, dan kondisi. 3. Dari pemanggilan indikator maka diperoleh data training. 4. Pembangunan proses prediksi dengan Algoritma Decision Tree C5.0 5. Hasil prediksi (output). Langkah β langkah perancangan model ditunjukkan pada Gambar 3.2.
Gain (A) = I S, S, β¦ , S, β E (A) dengan
:
A = S
=
S1 =
atribut himpunana kasus jumlah sampel
3. Metodologi Dan Perancangan Sistem Gambaran Umum Perangkat Sistem Aplikasi perangkat analisa forex trading merupakan implementasi dari beberapa teknik penganalisaan data yaitu MACD, dan RSI dengan algoritma C5.0. Pada aplikasi ini terdapat dua proses utama yaitu proses perancangan data training dan proses pengambilan keputusan. Proses perancangan data training menjalankan prosedur MACD, dan RSI. Pada proses pengambilan keputusan dijalankan prosedur Algoritma C5.0 untuk menganalisa hasil sebuah prediksi nilai tukar mata uang. Algoritma C5.0 akan memberikan hasil prediksi berupa keputusan
Gambar 3.2. Diagram alir perancangan model
3.1
4. Implementasi Antarmuka Expert advisor merupakan bagian program yang dijalankan oleh trader. Pada bagian ini trader diminta untuk memasukan empat data yaitu lots, data_testing, TakeProfit, StopLost.
data selama satu bulan yaitu 6 Juni 2013 s/d 28 Juni 2013 maka didapat hasil akurasi buy/sell dengan nilai profit/loss yang dicapai diitunjukkan oleh tabel 5.1 berikut: Tabel 5.1. Tabel uji coba system
Gambar 4.1 Data masukan pada Expert Advisor Setelah program expert advisor dijalankan, program ini akan menampilkan hasil NaΓ―ve Bayes dan candlestick.
Akurasi (%)
No
Time Frame
Profit/loss ($)
Buy
Sell
1
M1
81,71
83,03
-9,21
2
M5
82,31
82,61
-5,43
3
M15
84,49
83,69
2,31
4
M30
80,14
81,39
-4,41
5
H1
80,29
81,82
-2,16
6
H4
82,14
82,89
-0,18
7
D1
85,71
86,67
0,12
Dari tabel 5.1 dapat dilihat:
Gambar 4.2 Hasil analisis C5.0 dan candlestick. Gambar 4.2 menunjukkan hasil analisis Algoritma Decision Tree C5.0 dan candlestick. Pada gambar tersebut terdapat garis merah yang menunjukkan TakeProfit, Garis hijau menunjukan posisi order. Pada gambar juga terlihat MACD= 0.00015984, menunjukkan nilai MACD saat ini adalah 0.00015984, SL=0,00040970, menunjukkan nilai SL saat ini adalah 0,00040970, RSI= 26,82926829, menunjukkan nilai RSI saat ini adalah 26,82926829, serta C5.0 = SELL menujukkan prediksi C5.0 adalah SELL. 5. Analisa Hasil Uji Coba 5.1
Uji Coba Pada subbab ini akan dilakukan pembahasan mengenai pengujian yang telah dilakukan pada sistem dan hasil evaluasi dari ringkasan hasil Strategi Tester. Ditunjukan pada Gambar 5.1
1. Pada time frame M1 (per-1-menit) prosentase akurasi buy 81,71%, akurasi sell 83,03%, dengan nilai loss 9,21 $. 2. Pada time frame M5 (per-5-menit) prosentase akurasi buy 82,31%, akurasi sell 82,61%, dengan nilai loss 5,43 $. 3. Pada time frame M15 (per-15-menit) prosentase akurasi buy 84,49%, akurasi sell 83,69%, dengan nilai profit 2,31 $. 4. Pada time frame M30 (per-30-menit) prosentase akurasi buy 80,14%, akurasi sell 81,39%, dengan nilai loss 4,41 $. 5. Pada time frame H1 (per hours) prosentase akurasi buy 80,29%, akurasi sell 81,82%, dengan nilai loss 2,16$. 6. Pada time frame H4 (per-four-hours) prosentase akurasi buy 82,14%, akurasi sell 82,89%, dengan nilai loss 0,18 $. Pada time frame D1 (daily) prosentase akurasi buy 85,71%, akurasi sell 86,67%, dengan nilai profit 0,12 $. 5.2
Analisis Berdasarkan hasil pengujian yang telah dilakukan pada sistem dari ringkasan hasil Strategi Tester dapat dianalisis akurasi buy/sell dengan nilai profit/loss yang dicapai untuk masing-masing time frame. Pada Gambar 5.8. dapat dilihat grafik akurasi buy/sell dari masing-masing time frame pada pair mata uang EUR/USD.
Gambar 5.1 Hasil Strategy Tester M15 Dari hasil uji coba yang dilakukan pada Strategi Tester untuk
Pair mata uang EUR/USD
time frame M1 (per-1-menit), M5 (per-5-menit), M15 (per-15-menit), M30 (per-30-menit), H1 (per hours), H4 (per-four-hours), dan D1 (daily) dengan
6. Kesimpulan Dan Saran 6.1 Kesimpulan
86,67 85,71 84,49 83,69 Akurasi ( % )
83,03 82,61 82,31 81,71
81,39
82,89 82,14 81,82 Buy
80,14 80,29
Sell
M1
M5
M15 M30 Time Frame
H1
H4
D1
Gambar 5.2. Grafik Akurasi Buy/Sell Akurasi buy dan sell optimal terdapat pada time frame D1 (daily) dengan prosentase akurasi buy 85,71%, akurasi sell 86,67%. Dan akurasi buy dan sell terendah terdapat pada time frame M1 (per-1-menit) menit) dengan prosentase akurasi buy 81,71%, dan akurasi sell 83,03%. Adapun Gambar grafik dari nilai profit dan loss yang dicapai untuk masing-masing masing time frame pada pair mata uang EUR/USD sebagai berikut. Profit/loss ( $)
4 2,31
2 0
-0,18 M1
M5
M15
M30
H1
-2 -4
H4 -2,16
0,12
D1
-4,41 -5,43
-6 -8 -9,21 -10
Gambar 5.3. Grafik Profit/Loss Untuk nilai profit optimal didapat pada time frame M15 (per-15-menit) menit) yaitu 2,31 $. Dan nilai loss terbesar didapat pada time frame M5 (per-5(per menit) dengan nilai loss 5,43 $. Dari analisa akurasi buy/sell dan analisa profit/loss untuk pair mata uang EUR/USD maka dapat disimpulkan bahwa akurasi buy dan sell se dengan profit optimal didapat pada time frame M15 (per-15-menit) menit) dengan akurasi buy 84,49 %, akurasi sell 83,69 %, dan nilai profit yang dicapai yaitu 2,31 $. Sedangkan akurasi buy dan sell dengan loss terbesar didapat pada time frame M5 (per-5-menit) prosentase rosentase akurasi buy 82,31%, akurasi sell 82,61%, dengan nilai loss 5,43 $. Hal ini dikarenakan pergerakan harga forex pada time frame M15 (per-15-menit) menit) lebih stabil dibandingkan dengan time frame M5 (per-5-menit) (per yang fluktuatif.
Setelah melakukan skripsi ini maka disimpulkan : 1. Pada implementasi prediksi forex terdapat dua proses utama yaitu proses perancangan data training (pre-processing) processing) dan proses pengambilan keputusan. Dalam pre-processing, data history akan diproses menggunakan indikator MACD dan RSI dengan nilai close sebagai inputan sehingga menghasilkan data training. Selain itu pada pre-processing pre terdapat proses kondisi dengan inputan open, high, dan low yang digunakan sebagai parameter asumsi dalam menentukan keputusan buy atau sell pada saat pergerakan naik ataupun turun. Sedangkan pada proses pengambilan keputusan dijalankan prosedur Algoritma Decision Tree C5.0 dengan mencari information gain dalam pembentukan tree yang akan memberikan hasil prediksi berupa keputusan order sell atau buy . 2. Tingkat keberhasilan prediksi forex dengan metode C5.0 secara optimal diperoleh dari time frame M15 (per-15-menit) menit) untuk pair mata uang EUR/USD dengan akurasi sebagai berikut: a. Akurasi Buy dengan persentase sebesar 84,49%. b. Akurasi Sell dengan persentase sebesar 83,69%. c. Profit Optimal sebesar 2,31$. 6.2
Saran Untuk pengembangan lebih lanjut perangkat lunak k maka ada beberapa saran yang dapat diberikan : 1. Untuk membuat model prediksi terlebih dahulu menentukan variabel-variabel variabel yang digunakan sebagai indikator pada forex salah satunya MACD dan RSI. 2. Untuk pengembangan selanjutnya dapat digunakan variasi metode metod C5.0 agar hasil prediksi yang diperoleh memberikan profit yang optimal dan keputusan eksekusi yang tepat. 7. [1]
[2]
[3]
Daftar Pustaka Connolly, T and Begg, Carolyn E. (2005). Database System: A Practical Approach to Design, Implementation, and Management, Fourth Edition. Addison ison Wesley Publishing company, Inc, USA. Dunham, M.H. 2003. Data mining introductory and advanced topics. topics Upper Saddle River, NJ: Pearson Education, Inc. Dharmawan, Bagas.2012. Membongkar Rahasia Sukses Forex Trading. Trading Solo: Pustaka Baru Press.
[4]
[5]
[6]
Ernawati, Iin.2008. Prediksi Status Keaktifan Studi Mahasiswa Dengan Algoritma C5.0 Dan K-Nearest Neighbor. Sekolah Pasca Sarjana Institute Pertanian Bogor: Bogor. Han, Jiawei and Khamber, Micheline. 2001. Data Mining : Concepts and Techniques. Morgan Kaufmann Publishers. San Francisco. Kantardzic M. 2003. Data Mining Concept Models, Methods, and Algorithms. New Jersey, USA: A John Wiley & Sons.
[7] [8]
[9]
Susanto, Andi. 2007. Forex Trading. Penerbit : Andi. Yogyakarta. Tan, Pang-Ning, Michael Steinbach dan Vipin Kumar. 2004. Introducing to data Mining. New York Prof. Nilima Patil, Prof. Rekha Lathi, Prof. Vidya Chitre. 2012. Comparison of C5.0 & CART Classification algorithms using pruning technique. International Journal of Engineering Research & Technology (IJERT). Vol. 1. ISSN: 2278-0181. [4 June 2012].