Prediksi Pergerakan Mata Uang dengan Convolutional Neural Network pada Trading Forex: Studi Kasus EUR/USD
Author: Abdillah  Baradja
Afiliation: Universitas  Surakarta
Corresponding email dillahbaraja@gmail.com
Histori Naskah:
Submit: 2024-02-20
Accepted: 2024-02-22
Published: 2024-02-22
This is an Creative Commons
License This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License
Abstrak :
Prediksi  pergerakan  pasar  di  forex  trading  merupakan  tantangan  besar karena ketidakstabilan dan sifat non-linear pasar. Kecerdasan Buatan (AI), khususnya  pembelajaran  mendalam,  telah  menarik  perhatian  sebagai  alat bantu  dalam  pengambilan  keputusan  trading,  mengingat  keberhasilannya dalam  berbagai  aplikasi  lain.  Penelitian  ini  bertujuan  untuk  menguji efektivitas  jaringan  saraf  konvolusional  (Convolutional  Neural  Network  - CNN)  dalam  memprediksi  pergerakan  pasar  forex.  Penelitian  ini menggunakan  metode  pembelajaran  terawasi  dengan  algoritma  propagasi balik  untuk  melatih  CNN.  Data  yang  digunakan  diperoleh  dari  platform MetaTrader,  mencakup  nilai  tukar  harian  EUR/USD  selama  dua  tahun (2018-2019).  CNN  dirancang  dengan  tiga  jenis  lapisan:  konvolusi,  sub- sampling, dan  terhubung penuh,  dengan tujuan  untuk mengidentifikasi  pola dalam  data  dan  menghasilkan  prediksi  yang  akurat.  Hasil  eksperimen menunjukkan  peningkatan  marginal  dalam  kinerja  CNN  dibandingkan dengan  model  neural  network  lainnya,  terutama  dalam  hal  kesalahan prediksi  dan  ketepatan  sasaran.  Walaupun  demikian,  CNN  memerlukan waktu  dan  sumber  daya  yang  lebih  banyak  untuk  pelatihan.  CNN menunjukkan  potensi  dalam  meningkatkan  akurasi  prediksi  pergerakan pasar  forex  dibandingkan  dengan  model  jaringan  saraf  lainnya,  terutama karena  kemampuannya  dalam  preprocessing  data  dan  mengurangi  noise. Namun, tantangan terkait waktu dan sumber daya pelatihan perlu ditangani untuk penerapan yang lebih efisien.
Kata  kunci :  Supervised  Learning,  Convolutional  Neural  Network,  Back Propagation Algorithm,  Forex Trading,  EUR/USD

## Pendahuluan
Meramalkan pergerakan pasar dalam forex trading adalah tantangan kompleks karena sifat pasar forex yang tidak stabil dan tidak linear. Keberhasilan dalam trading forex sangat dipengaruhi oleh faktor-faktor seperti kondisi politik, ekonomi  lokal dan  global, dan  faktor lainnya  (Bekiros,  2010; Wang  et al.,  2012; Zhang  & Yang, 2017). Menimbang semua faktor ini saat membuat keputusan trading menjadi sulit, sehingga muncul minat besar dalam pemanfaatan Kecerdasan Buatan (AI) untuk pengambilan keputusan.
Minat ini didorong oleh keberhasilan pembelajaran mendalam dalam berbagai aplikasi AI, dari pengenalan suara  hingga  pemrosesan  bahasa  alami.  Dalam  konteks  kompleksitas  deret  waktu  keuangan, mengintegrasikan pembelajaran mesin untuk prediksi pasar forex trading dianggap sebagai topik penelitian yang  menarik  (Cavalcante  et  al.,  2016).  Dalam  artikel  ini  kami  akan  menggunakan  pembelajaran  yang diawasi ( supervised learning) . Pembelajaran terawasi digunakan ketika ada sekumpulan data awal yang cukup dengan jawaban yang benar untuk pertanyaan yang diajukan. Selama proses pembelajaran, data awal
dimasukkan ke  dalam jaringan  dan output  diverifikasi dengan  jawaban yang  diketahui benar.  Setelah  itu, bobot disesuaikan untuk mengurangi kesalahan (Gerlein et al., 2016; Jubert de Almeida et al., 2018). Kami menggunakan algoritma  propagasi  balik  ( back  propagation  algorithm). Pendekatan  ini  memungkinkan pelatihan jaringan  saraf tiruan yang berkelanjutan dalam waktu nyata.
Metode ini didasarkan pada penggunaan kesalahan ( error ) jaringan saraf keluaran untuk koreksi bobotnya. Algoritma pembelajaran terdiri dari dua tahap. Pertama, berdasarkan data input, jaringan menghitung nilai yang  dihasilkan,  yang  kemudian  diverifikasi  dengan  nilai  referensi  dan  kesalahan  dihitung.  Selanjutnya, dilakukan  lintasan  balik,  dengan  penyebaran  kesalahan  dari  output  jaringan  ke  inputnya,  dengan penyesuaian semua faktor pembobot. Ini adalah pendekatan interaktif dan jaringan dilatih selangkah demi selangkah. Setelah belajar menggunakan data historis, jaringan dapat dilatih lebih lanjut dalam mode online.
Convolutional Neural Network (CNN) termasuk bagian  dari pembelajaran mesin yang memainkan  peran krusial dalam  mengidentifikasi pola  pada array  data  (Sezer &  Ozbayoglu, 2018).  Operasinya  melibatkan konvolusi matematika dengan filter sebagai kernel untuk mencari elemen pola dalam sampel asli. Pola ini tidak ditentukan  selama perancangan jaringan, melainkan  dipilih  selama proses pembelajaran.
Layer sub-sampling kemudian digunakan untuk mengurangi dimensi array fitur dan menyaring noise. Data dipadatkan dengan menyimpan nilai maksimum atau rata-rata dalam "jendela" yang ditentukan. Bergantung pada kompleksitas  masalah,  kelompok  layer  konvolusi dan  sub-sampling  dapat  digunakan  sebelum  array fitur dimasukkan  ke multilayer  perceptron untuk pengambilan  keputusan.
Pelatihan  CNN  dilakukan  dengan  propagasi  balik  dalam  pembelajaran  terawasi.  Gradien  kesalahan ditransfer  dari  output  ke  input,  dan  pelatihan  layer  konvolusi  melibatkan  operasi  konvolusi  dan  invers konvolusi  (Shin  et  al.,  2019).  Jaringan  ini  terdiri  dari  tiga  jenis  lapisan  (konvolusi,  sub-sampling,  dan terhubung  penuh)  dengan  pewarisan  kelas  dan  virtualisasi  fungsi,  membentuk  suatu  kesatuan  dalam pengolahan informasi  dan pengambilan  keputusan.
Gambar 1. Diagram lapisan-lapisan  Convolutional  Neural Network (CNN)

## Studi Literatur
Dalam beberapa dekade terakhir, model pembelajaran mesin, seperti Jaringan Syaraf Tiruan (JST)  (Guo et al.,  2014)  dan  Support  Vector  Machines  (SVR)  (Das  &  Padhy,  2012),  telah  digunakan  luas  untuk memprediksi deret  waktu  keuangan  dengan  tingkat akurasi  yang  mencengangkan.  Model  deep  learning, sebagai  perkembangan  lebih  lanjut  dari  model  pembelajaran  mesin  tradisional,  kini  diterapkan  dalam masalah ini karena mampu memodelkan topologi nonlinier yang kompleks. Kelebihan utama deep learning adalah kemampuannya untuk berhasil memodelkan data dunia nyata yang rumit, mengekstraksi fitur  kuat yang menggambarkan informasi  relevan, dan  akibatnya, mencapai  kinerja yang  lebih baik  (Bengio et  al., 2013; Hinton  & Salakhutdinov,  2006).
Contoh  sukses  penggunaan  deep  learning  dalam  mengembangkan  model  trading  algoritmik  dapat  dibagi menjadi  dua  kategori  utama,  yaitu  metode  berbasis  pembelajaran  mendalam  dan  metode  berbasis pembelajaran  penguatan.  Sebagai  contoh,  Arevalo  dkk.  (Arévalo  et  al.,  2016)  mengenalkan  strategi perdagangan  frekuensi  tinggi  berdasarkan  Deep  NN  yang  mencapai  prediksi  arah  66%  dan  81% perdagangan yang  berhasil selama  periode pengujian.  Pendekatan  lain, seperti  yang digunakan  oleh  Bao dkk. (Bao et al., 2017), menggabungkan transformasi wavelet dengan tumpukan autoencoder dan lapisan LSTM  untuk  memprediksi  harga  saham.  Studi  perbandingan  oleh  M  dkk.  (Hiransha  et  al.,  2018) menunjukkan  bahwa  Convolutional  Neural  Network  (CNN)  mengungguli  Recurrent  Neural  Network (RNN) dan Long-Short Term Memory (LSTM) dalam memprediksi harga saham di sektor IT dan farmasi.
Sementara itu, beberapa peneliti lebih memfokuskan pada penerapan teknik Reinforcement Learning (RL) untuk  mengatasi  tantangan  perdagangan  algoritmik.  Moody  dan  Saell  [14]  memperkenalkan  algoritma pembelajaran penguatan  berulang  untuk  mengidentifikasi  kebijakan  investasi  yang  menguntungkan  tanpa perlu  membuat  model  peramalan.  Dempster  dan  Leemans  [15]  menggunakan  Pembelajaran  Penguatan (Reinforcement  Learning)  Adaptif  untuk  berdagang  di  pasar  valuta  asing.  Keunggulan  RL  melibatkan penggunaan fungsi reward untuk  memaksimalkan imbalan di masa  depan, berbeda dengan model  regresi dan klasifikasi DL yang berfokus pada prediksi probabilitas hasil. Kombinasi metode ini dalam pe ndekatan Deep Reinforcement  Learning  menggabungkan  keunggulan keduanya,  memungkinkan  agen  mempelajari fitur  yang  mendalam  dari  data  pelatihan  tanpa  memerlukan  kumpulan  data  berlabel  yang  besar,  serta memungkinkan  penyesuaian fungsi  reward (Deng et al., 2017).

## Metode Penelitian
Jaringan syaraf  konvolusional  (CNN)  yang  dirancang  untuk  analisis  terdiri  dari  tiga  lapisan  syaraf  yang berbeda: konvolusional, subsampled, dan sepenuhnya terhubung. Setiap lapisan memiliki kelas syaraf yang unik dan berfungsi secara spesifik untuk proses maju dan mundur. Organisasi metode pemrosesan data yang sesuai dengan  syaraf  yang  sedang diproses  menjadi  kunci  untuk mengintegrasikan  semua  elemen  ini  ke dalam jaringan yang padu.
Pemahaman terhadap lapisan input diperoleh melalui evaluasi informasi awal pada setiap candlestick  dan perkalian dengan kedalaman data historis yang dianalisis. Data indikator tidak memerlukan pra-pemrosesan karena  sudah  dinormalisasi,  namun,  untuk  data  harga  candlestick,  normalisasi  diperlukan.  Dengan memasukkan selisih harga Close, High, dan Low dari harga Open candlestick, tiga syaraf dibuat di mana tanda dari syaraf pertama menentukan arah candlestick.
Dalam konteks faktor waktu yang mempengaruhi volatilitas mata uang, penambahan bulan, jam, dan  hari pembentukan candlestick ke dalam jaringan syaraf memberikan keunggulan analisis yang lebih mendalam. Informasi  tersebut  diurai  secara  rinci  untuk  memungkinkan  jaringan  syaraf  menggeneralisasi  dan
mengidentifikasi  ketergantungan.  Informasi  volume,  baik  itu  riil  atau  tik  juga  diperhitungkan  untuk memperkaya analisis. Sebagai hasilnya, diperlukan 12 syaraf untuk menggambarkan setiap candlestick, dan ukuran lapisan  input jaringan  syaraf ditentukan  oleh hasil  perkalian jumlah  ini dengan  kedalaman  sejarah yang dianalisis.
Langkah  berikutnya  adalah  mempersiapkan  lapisan  tersembunyi  ( hidden  layer )  dari  jaringan  syaraf. Menentukan struktur jaringan merupakan tugas yang menantang. Dengan menetapkan jumlah syaraf dalam lapisan tersembunyi  pertama,  dan menerapkan  aturan  Pareto untuk  mengurangi  jumlah syaraf  di  lapisan berikutnya,  serta  memberlakukan  batas  minimum,  kompleksitas  jaringan  dapat  dipertahankan  tanpa mengorbankan konvergensi.
Terakhir, jumlah syaraf dalam lapisan output tergantung pada tujuan. Dua variasi jaringan syaraf diajukan: yang pertama dengan satu syaraf di lapisan output, menghasilkan sinyal beli, jual, atau tidak ada sinyal; dan yang kedua dengan tiga syaraf, memproduksi probabilitas munculnya fractal. Dengan memanfaatkan fungsi aktivasi  tangen  hiperbolik,  jaringan  syaraf  ini  dirancang  untuk  menyajikan  hasil  yang  berguna  sesuai dengan tujuan analisis.
Data  yang  digunakan  dalam  penelitian  kami  diunduh  dari  platform  MetaTrader  selama  sesi  pembukaan pasar forex (senin-jum’at). Dataset ini memberikan informasi seputar nilai tukar harian dari pasangan mata uang EUR/USD, yang  merupakan fokus utama  analisis kami. Rentang  waktu dataset mencakup  periode yang  signifikan,  yaitu  selama  2  tahun,  dimulai  dari  tanggal  1  Januari  2018  hingga  31  Desember  2019. Pemilihan  rentang  waktu  ini  dirancang  untuk  memberikan  gambaran  yang  komprehensif  dan  mendalam mengenai fluktuasi  nilai  tukar dalam jangka waktu yang cukup panjang.

## Hasil
Dalam  rangka  menguji  kinerja  Convolutional  Neural  Network  (CNN),  penelitian  ini  bertujuan  untuk melatih  jaringan  syaraf  untuk  memprediksi  kemunculan  fractal  pada  candlestick  saat  ini.  Metode  yang digunakan  melibatkan  penyediaan  informasi  tentang  pembentukan  candlestick  terakhir  dan  data  dari  4 osilator  untuk periode yang sama ke dalam jaringan syaraf.
Pada  lapisan  konvolusi  CNN,  dibentuk  4  filter  yang  dirancang  untuk  mencari  pola  dalam  data  total pembentukan  candlestick  dan  pembacaan  osilator  pada  candlestick  yang  sedang  dianalisis.  Pengaturan filter, termasuk jendela dan langkah, disesuaikan dengan jumlah data per deskripsi candlestick. Pendekatan ini  memungkinkan  pengayaan  data  awal  dengan  informasi  baru  tentang  candlestick  tanpa  pengurangan kinerja yang signifikan.
Selanjutnya,  lapisan  konvolusi  mencari  elemen  pola  di  seluruh  sampel  asli.  Pada  setiap  iterasi,  template digeser di sepanjang larik data awal dengan langkah tertentu, yang ukurannya bisa dari "1" hingga ukuran pola. Jika ukuran langkah offset kurang dari ukuran pola, konvolusi  seperti itu disebut tumpang tindih.
Operasi  konvolusi  menghasilkan  larik  fitur  yang  menunjukkan  "kemiripan"  data  asli  dengan  pola  yang diperlukan  pada  setiap  iterasi.  Fungsi  aktivasi  digunakan  untuk  menormalkan  data.  Ukuran  array  yang dihasilkan  akan lebih kecil  dari array data asli. Jumlah array tersebut sama dengan jumlah filter.
Count input data − Count filter
Step + 1 = Count conv (1)
Poin  penting  yang  dilakukan  adalah  bahwa  pola-pola  tersebut  tidak  ditentukan  saat  mendesain  jaringan syaraf, tetapi dipilih  dalam proses pembelajaran.
Gambar 2. Terminal MetaTrader 5 dengan fractal indicators
Eksperimen dilaksanakan pada pasangan mata uang EURUSD dengan kerangka waktu H1. Tiga  Expert Advisor diterapkan, satu menggunakan regression neural network dengan 1 neuron pada lapisan output, classification neural network dengan 3 neuron pada lapisan output dan convolutional neural network dari simbol yang  sama  di  terminal yang  sama.  Parameter  lapisan terhubung  penuh  sesuai  dengan  pa rameter jaringan  terhubung penuh.

## Pembahasan
Hasil pengujian  menunjukkan peningkatan  kinerja  yang marginal  pada  CNN, meskipun  ditambahkan  dua lapisan.  Waktu  pelatihan  rata-rata  untuk  satu  epoch  ( iterasi pelatihan)  CNN  adalah  1  jam  20  menit, sedangkan untuk regression neural network adalah 2 jam 10 menit dan untuk classification neural network adalah  2  jam  15  menit.  CNN  menunjukkan  hasil  sedikit  lebih  baik  dalam  hal  kesalahan  prediksi  dan mencapai target. Setelah 30 epoch pelatihan, perbedaan dalam statistik sedikit meningkat - model jaringan saraf regresi berkinerja lebih baik.
Gambar 3. Grafik Root mean square error
Gambar 4. Grafik total prosentase keuntungan prediksi  dalam 2 tahun
Pelatihan jaringan syaraf ( neural network ) dilakukan pada pasangan mata uang EURUSD dengan kerangka waktu H1, menggunakan data 20 candlestick selama 2 tahun terakhir (2018 – 2019). Tiga Expert Advisor dengan arsitektur jaringan yang berbeda diaktifkan pada terminal yang  sama untuk membandingkan hasil. Epoch pertama pelatihan pada 6197 batang lilin ( candlestick ) memakan waktu 2 jam 10 menit. Pengujian model menggunakan Root Mean Square Error (RMSE) untuk mengevaluasi nilai  akurasi model  prediksi.

## Kesimpulan
Dari hasil pengujian menunjukkan bahwa varian organisasi jaringan syaraf menghasilkan hasil yang serupa dalam hal  waktu  pelatihan  dan akurasi  prediksi,  akan  tetapi  untuk CNN  menunjukkan  hasil  yang  sedikit lebih  baik  dalam  hal  kesalahan  prediksi  dan  "ketepatan  sasaran".  Meski  demikian,  hasil  menunjukkan bahwa jaringan syaraf membutuhkan waktu dan sumber daya tambahan untuk pelatihan.
Tabel 1. Hasil akhir pengujian  tiga model  neural network
Test Result Regression Neural Network Classification Neural Network Convolutional Neural Network Root mean square error 0.63 0.56 0.42 Hit percentage 11.35% 7.9% 25.45%
Pada  artikel  ini,  kami  telah  menguji  kemungkinan  menggunakan  jaringan  saraf  convolutional  di  pasar keuangan. Pengujian  telah menunjukkan  bahwa  dengan menggunakannya,  kita dapat  meningkatkan  hasil dari jaringan saraf yang terhubung sepenuhnya. Hal ini dapat dihubungkan dengan preprocessing data yang kita masukkan ke dalam perceptron yang terhubung penuh. Data asli disaring di lapisan convolutional dan subsampel  untuk  menghilangkan  noise,  yang  meningkatkan  kualitas  data  sumber  dan  kualitas  jaringan saraf. Selain itu, pengurangan dimensi membantu mengurangi jumlah koneksi perceptron dengan data asli, yang memberikan peningkatan  kinerja

## Referensi
Arévalo, A., Niño, J., Hernández, G., & Sandoval, J. (2016). High-frequency trading strategy based on deep neural networks. International Conference on Intelligent Computing , 424–436.
Bao, W., Yue, J., &  Rao, Y. (2017). A  deep learning framework for  financial time series using  stacked autoencoders and long-short term memory. PloS One , 12 (7), e0180944.
Bekiros, S. D. (2010). Fuzzy adaptive decision-making for boundedly rational traders in speculative stock markets. European Journal of Operational Research , 202 (1), 285–293.
Bengio, Y., Courville, A., & Vincent, P. (2013). Representation learning: A review and new perspectives. IEEE Transactions on Pattern Analysis and Machine Intelligence , 35 (8), 1798–1828.
Cavalcante,  R.  C.,  Brasileiro,  R.  C.,  Souza,  V.  L.  F.,  Nobrega,  J.  P.,  &  Oliveira,  A.  L.  I.  (2016). Computational intelligence and financial markets: A survey and future directions. Expert Systems with Applications , 55 , 194–211.
Das, S. P., & Padhy, S. (2012). Support vector  machines for prediction of futures prices in Indian  stock market. International Journal of Computer Applications , 41 (3).
Deng, Y., Bao, F., Kong, Y., Ren, Z., & Dai, Q. (2017). Deep Direct Reinforcement Learning for Financial Signal Representation and Trading. IEEE Transactions on Neural Networks and Learning Systems , 28 (3), 653–664. https://doi.org/10.1109/TNNLS.2016.2522401
Gerlein, E. A., McGinnity, M., Belatreche, A., & ... (2016). Evaluating machine learning classification for financial trading:
An empirical approach. Expert Systems
with
… .
https://www.sciencedirect.com/science/article/pii/S0957417416000282
Guo, Z., Wang, H., Liu, Q., & Yang, J. (2014). A feature fusion based forecasting model for financial time
series. PloS One , 9 (6), e101113.
Hinton, G. E., & Salakhutdinov, R. R. (2006). Reducing the dimensionality of data with neural networks. Science , 313 (5786), 504–507.
Hiransha, M., Gopalakrishnan, E. A., Menon, V. K., & Soman, K. P. (2018). NSE stock market prediction using deep-learning  models. Procedia Computer Science , 132 , 1351–1362.
Jubert de Almeida, B., Ferreira Neves, R., & Horta, N. (2018). Combining Support Vector Machine with Genetic  Algorithms  to  optimize  investments  in  Forex  markets  with  high  leverage. Applied  Soft Computing , 64 , 596–613. https://doi.org/10.1016/j.asoc.2017.12.047
Sezer, O.  B.,  &  Ozbayoglu,  A.  M.  (2018).  Algorithmic  financial  trading  with  deep  convolutional  neural networks:  Time series to  image conversion approach. Applied Soft Computing . https://www.sciencedirect.com/science/article/pii/S1568494618302151
Shin, H.-G., Ra, I., & Choi, Y.-H. (2019). A Deep Multimodal Reinforcement Learning System Combined with CNN and LSTM for Stock Trading . 7–11. https://doi.org/10.1109/ICTC46691.2019.8939991
Wang, B., Huang, H., & Wang, X. (2012). A novel text mining approach to financial time series forecasting. Neurocomputing , 83 , 136–145.
Zhang, Y.,  &  Yang,  X.  (2017).  Online  portfolio selection  strategy  based  on  combining  experts’  advice. Computational Economics , 50 , 141–159.