Jurnal Teknik Informatika dan Sistem Informasi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 467
Sistem Prediksi Harga Kripto Dengan Metode Regresi
Muhammad Khoirul Anam*1, Deni Ahmad Jakaria*2
1,2STMIK DCI; Jl. Sutisna Senjaya No.158-A, Tasikmalaya, Telp: (0265) 332492 e-mail: *1[email protected], *2[email protected]
Abstrak
Cryptocurrency adalah mata uang digital yang menggunakan kriptografi, sementara Machine Learning adalah bidang kecerdasan buatan yang memungkinkan komputer belajar dari data. Dalam konteks cryptocurrency, terdapat masalah kompleks seperti fluktuasi harga yang sulit diprediksi. Untuk mengatasi masalah ini, metode Machine Learning dapat diterapkan dengan menggunakan bahasa Python. Python menawarkan pustaka dan alat yang kuat untuk implementasi model Machine Learning. Dengan menggunakan data historis dan fitur-fitur terkait, model Machine Learning dapat dikembangkan untuk menganalisis tren pasar dan memprediksi pergerakan harga cryptocurrency di masa depan. Dalam evaluasi performa model, metrik seperti Error Absolut Rata-rata (mean absolute error) dan Error Kuadrat Rata- rata (mean squared error) digunakan. Error Absolut Rata-rata mengukur kesalahan rata-rata dalam prediksi dengan mengambil selisih absolut antara nilai prediksi dan nilai sebenarnya.
Error Kuadrat Rata-rata memberikan perhatian lebih besar pada perbedaan yang lebih besar dengan menghitung selisih kuadrat antara nilai prediksi dan nilai sebenarnya. Hasil akhir dari implementasi Machine Learning menggunakan Python dalam analisis cryptocurrency adalah adanya model prediktif yang dapat digunakan untuk memprediksi harga cryptocurrency di masa depan. Dengan menggunakan metrik evaluasi seperti Error Absolut Rata-rata dan Error Kuadrat Rata-rata, kita dapat mengukur sejauh mana model ini berhasil dalam memprediksi harga dengan akurat. Hal ini memberikan pemahaman lebih baik tentang pasar cryptocurrency dan membantu dalam pengambilan keputusan investasi yang lebih informasional.
Kata kunci— Machine Learning, Python, Error Absolut Rata-rata, Error Kuadrat Rata-rata.
Abstract
Cryptocurrency is a digital currency that utilizes cryptography, while Machine Learning is an artificial intelligence field that enables computers to learn from data. In the context of cryptocurrency, there is a complex problem of predicting price fluctuations. To address this problem, Machine Learning methods can be applied using the Python programming language. Python offers powerful libraries and tools for implementing Machine Learning models. By utilizing historical data and relevant features, Machine Learning models can be developed to analyze market trends and predict future cryptocurrency price movements.
In evaluating the performance of the models, metrics such as Mean Absolute Error and Mean Squared Error are used. Mean Absolute Error measures the average error in predictions by taking the absolute difference between predicted values and actual values. Mean Squared Error gives more weight to larger differences by calculating the squared difference between predicted values and actual values. The ultimate outcome of implementing Machine Learning using Python in cryptocurrency analysis is the creation of predictive models that can be used to forecast cryptocurrency prices in the future. By employing evaluation metrics such as Mean Absolute Error and Mean Squared Error, we can assess the accuracy of these models in
468 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
predicting prices. This provides a better understanding of the cryptocurrency market and aids in making more informed investment decisions.
Keywords—
Machine Learning, Python, Mean Absolute Error, Mean Squared Error
1. PENDAHULUAN
Saat ini perkembangan teknologi sangat pesat dan peranannya sangat penting untuk mendukung aktivitas manusia agar dapat mengoptimalkan waktu dengan lebih baik. Salah satu contoh teknologi yang membantu aktivitas manusia adalah machine learning. Machine learning merupakan salah satu cabang ilmu Kecerdasan Buatan (Artificial Intelligence) yang berkembang sangat cepat dan telah menyebabkan masalah klasifikasi, regresi, klastering, dan anomaly detection pada berbagai bidang dapat diatasi lebih efisien [1].
Meliput dari data Coinmarketcap.com yang dibuka pada tanggal 24 Oktober 2022, Bitcoin mencatat marketcap 367.96B dollar. Hal tersebut yang membuat Bitcoin tetap kokoh sebagai pemegang marketcap crypto terbesar didunia. Adapun yang membuat harga naik dan turunnya crypto salah satunya bitcoin yang diliput dari investor.id dan ditulis oleh Lona Olavia yaitu ada 7, yaitu ketersediaan pasokan dan permintaan, adopsi bitcoin, berita dan komentar tokoh ternama, ketidakpastian nilai bitcoin di masa depan, regulasi pemerintah, karakter investor dan tingkat penjualan bitcoin di pasaran [2].
Crypto yang dibuatkan aplikasinya, yaitu menggunakan metode decision tree regression.
Decision tree adalah mengubah data menjadi aturan-aturan keputusan. Manfaat utama dari penggunaan decision tree adalah kemampuannya untuk mem-break down proses pengambilan keputusan yang kompleks menjadi lebih simple, sehingga pengambil keputusan akan lebih menginterpretasikan solusi dari permasalahan [3].
Implementasi machine learning yang dibangun yaitu menggunakan jupyter dan google colab sebagai alat pengujian dan menggunakan github sebagai repository untuk menyimpan source code dan filenya. Adapun data crypto yang diambil, yaitu dari yahoo finance yang terdapat banyak data crypto. Kemudian diaplikasikan dalam memprediksi harga crypto.
2. METODE PENELITIAN
Penelitian menggunakan metode regresi. Decision tree adalah salah satu dari regresi yang dipakai dalam penelitian ini. Decesion tree menurut Ardi Satyo adalah merupakan salah satu cara data processing dalam memprediksi masa depan dengan cara membangun klasifikasi atau regresi model dalam bentuk struktur pohon [4]. Hal tersebut dilakukan dengan cara memecah terus ke dalam himpunan bagian yang lebih kecil lalu pada saat itu juga sebuah pohon keputusan secara bertahap dikembangkan. Sebelum masuk ke model atau metode regresi, hal yang harus dilakukan yaitu data preprocessing yang disebut dataset.
Dataset menurut Reyvan Maulid adalah sebuah kumpulan data yang bersifat sebagai himpunan data yang berasal dari informasi pada masa sebelumnya dan siap untuk dikelola menjadi sebuah informasi baru [5].
Dalam membangun model Machine Learning, kumpulan dataset dibagi menjadi dua bagian yaitu training data dan testing data. Training Data adalah bagian dataset yang kita latih untuk membuat prediksi atau menjalankan fungsi dari sebuah algoritma Machine Learning sesuai tujuannya masing-masing. Melalui algoritma Machine Learning yang kita latih maka dataset bisa mencari korelasinya sendiri [6]. Testing Data adalah bagian dataset yang kita tes
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 469
untuk melihat keakuratannya, atau dengan kata lain melihat performanya [7]. Validation Data adalah himpunan data yang digunakan untuk mengoptimasi saat melatih model [8].3. HASIL DAN PEMBAHASAN 3.1 Arsitektur Umum
Permasalahan utama yang dibahas dalam jurnal ini adalah bagaimana cara untuk memprediksi crypto dengan cara mengambil data dari yahoo finance lalu diolah menjadi prediksi harga crypto kedepannya salah satunya bitcoin yang di analisis. berikut lagkah-langkah yang harus dilakukan yang terdapat pada gambar 1.
Gambar 1. Diagram Activity Analisis Sistem 3.2 Pengumpulan Dataset
Langkah pertama yang dilakukan yaitu melakukan pengumpulan data crypto. dataset yang diperoleh dari situs yahoo finance digunakan sebagai data crypto utama dalam melakukan prediksi menggunakan metode decision tree regresi. berikut gambar 2.
470 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
Gambar 2. Dataset Bitcoin dari 01 Januari 2022 hingga 30 Oktober 2022
Dilihat dari gambar 3 diatas, data perubahan harga bitcoin dari tanggal 01 Januari 2022 hingga 30 Oktober 2022 yang berjumlah 303 data dengan 6 kolom dan mewakili untuk diolah ketahap selanjutnya.
3.3 Preprosesing Dataset
Langkah selanjutnya yaitu preprocessing data yang merupakan proses pengolahan data dimana data yang akan diproses merupakan masih mentah untuk digunakan menjadi training data dan testing data dalam proses regresi. Dimana dalam tahap ini ada proses yang harus dilakukan yaitu cleaning data.
Cleaning data dimana data yang tidak diperlukan atau kosong/null akan dihapus guna meningkatkan keefektifan algoritma decesion tree regresi juga mencegah data harga crypto yang tidak bisa di analisis.
3.4 Regresi Decesion Tree
Analisis data proses merupakan penguraian data yang masuk ke dalam sistem dan data itu bisa menjadi bahan untuk diproses. Data yang sudah di proses pada tahap preprocessing dataset mengubah data menjadi bersih dan dapat digunakan untuk regresi dengan metode decision tree dimana motode tersebut merupakan salah satu metode yang dapat digunakan untuk dalam menganalisis harga crypto. Proses regresi tersebut diawali dengan pembagian dataset menjadi dua bagian, yaitu training data dan testing data. Melalui bantuan library sklearn python dengan menggunakan fungsi train_test_split() dapat membagi data menjadi 75:25 dimana 75% menjadi training data atau data latih dan 25% menjadi testing data atau data uji serta masing-masing memiliki data beserta labelnya yang akan di prediksi dengan diubah menjadi empat numpy array yaitu data latih (X_train), data latih label (y_train), data uji (X_test), data uji label(y_test).
Dikarenakan data harga crypto berupa numeric, maka proses selanjutnya yaitu mengimplementasikan ke metode decision tree regresi. Berikut gambar dalam melakukan fungsi train_test_split() pada gambar 3 dan gambar 4.
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 471
Gambar 3. Kolom yang Berkorelasi dan Kolom yang Akan Dianalisis
Gambar 4. Training data dan Testing Data Berikut proses data training dan testing:
a. Training Data
Training Data digunakan untuk melatih model machine learning yang akan diregresikan sehingga dapat menghasilkan regresi dengan nilai akurasi yang tinggi. Berikut proses training data serta hasil akurasinya menggunakan metode Decision Tree dengan library sklearn python pada gambar 5.
Gambar 5. Training Data Latih
b. Testing Data
Testing data digunakan untuk menguji performa model sebelum digunakan untuk implementasi untuk berkerja. Data testing diambil dari 25% dataset secara acak. Berikut proses testing data serta hasil akurasinya menggunakan metode Decision Tree Regression dengan library sklearn python pada gambar 6 dan gambar 7.
Gambar 6. Training Data Uji
472 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
Gambar 7. Hasil Predict Data Test
Terlihat pada gambar diatas setelah data melewati proses training nilai akurasi pada data testing menjadi naik lalu data testing menghasilkan nilai hasil harga prediksi crypto menggunakan decision tree.
3.5 Hasil Analisis
Data Keluaran merupakan data yang dihasilkan oleh sistem. Data keluaran dihasilkan dari regresi dengan metode decision tree berupa harga crypto hasil dari peramalan atau prediksi.
Gambar 8 data keluaran sistem dari data testing yang telah dianalisis dengan metode decision tree berupa data harga prediksi.
Gambar 8. Hasil dari Merge Data Close Price Dengan Hasil Prediksi
Sementara itu dari grafik prediksi dan harga close nya dari machine learning regression dengan metode decision tree bisa dilihat di gambar 9.
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 473
Gambar 9. Grafik Hasil dari Machine Learning
Gambar di atas yaitu grafik dari BTC-USD yang digunakan sebagai data crypto yang dianalisis secara default.
3.6 Evaluasi Model Dari Hasil Analisis
Teknik evaluasi yang penulis gunakan dalam mengukur kinerja suatu metode regresi yaitu menggunakan Root Mean Square Error (RMSE) dan Mean Absolute Percentage Error (MAPE) sebagai nilai utama dari penelitian ini, terdapat pada gambar 10.
Gambar 10. Nilai MAPE dan RMSE dari Hasil Prediksi
RMSE adalah merupakan besarnya tingkat kesalahan hasil prediksi, dimana semakin kecil (mendekati 0) nilai RMSE maka hasil prediksi akan semakin akurat [9]. Sedangkan MAPE merupakan perhitungan yang digunakan untuk menghitung rata-rata persentase kesalahan mutlak [10].
Penulis menyimpulkan bahwa berdasarkan dari hasil pengujian regresi pada data testing diperoleh hasil nilai akurasi, RMSE dan MAPE dengan masing-masing nilai akurasi yaitu 1.0, nilai RMSE yaitu 14288.02 dan nilai dari MAPE yaitu 29.76%. Maka dataset serta metode Decision Tree dapat digunakan dalam memprediksi harga crypto. Adapun perbandingannya dengan crypto lainnya selain bitcoin dari tanggal 1 januari 2022 sampai 30 Oktober 2022 yaitu lihat pada tabel 1 perbandingan berikut.
474 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
Tabel 1. Perbandingan Akurasi, RMSE dan MAPE Dengan Crypto LainnyaDilihat dari tabel perbandingan di atas, RMSE terbesar yaitu BTC-USD atau bitcoin, Akan tetapi bukan berarti tidak bagus karena nilai Mean Absolute Percentage Error (MAPE) lebih baik dari Doge, XRP dan Etherium. Dan yang mendapat nilai MAPE terbaik yaitu BNB dengan angka 19.8%.
3.7 Rancangan Sistem
Rancangan yang dibuat akan terdiri dari rancangan Use Case Diagram dan rancangan Activity Diagram.
3.8 Rancangan Use Case Diagram 3.8.1 Use Case Diagram
Rancangan Use Case Diagram Regresi dan Prediksi Harga Crypto sebagai berikut pada gambar 11.
Gambar 11. Use Case Diagram Regresi Dalam Memprediksi Harga Crypto
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 475
3.8.2 Definisi Aktor dan Deskripsinya
Berikut penjelasan definisi aktor terdapat pada tabel 2:
Tabel 2. Definisi Aktor dan Deskripsinya
Aktor Deskripsi
User
User adalah orang yang dapat menggunakan sistem untuk mengetahui prediksi harga crypto dimana user mengisi simbol crypto yang akan di prediksi, lalu dapat melihat hasil regresi tersebut dan dapat melihat info tentang aplikasi tersebut.
3.8.3 Definisi Use Case dan Deskripsinya
Berikut penjelasan definisi use case terdapat pada tabel 3:
Tabel 3. Definisi Use Case dan Deskripsinya
No Use Case Deskripsi
1 Input simbol crypto yang akan diprediksi
Merupakan proses pengisian data untuk diproses kedalam model sistem.
2 Pemrosesan model regresi
Merupakan proses model regresi dari data yang input oleh user serta diolah menggunakan metode decision tree regresi dan menghasilkan prediksi.
3 Regresi decision tree dan hasil prediksi
Merupakan proses regresi dari data simbol yang di input oleh user yang telah bersih dan disesuaikan dengan prosedur atau langkah- langkah dalam memprediksi harga crypto.
4 Menampilkan hasil prediksi crypto dari metode decision tree regression
Merupakan proses menampilkan hasil regresi dan hasil prediksi crypto dari proses model sistem.
5 Melihat hasil prediksi crypto berserta grafik nya
Merupakan proses melihat hasil regresi dan hasil prediksi dari proses model sistem oleh user.
6 Melihat info tentang aplikasi Merupakan proses melihat deskripsi tentang info aplikasi oleh user.
3.9 Rancangan Diagram Activity Model Regresi
Berikut Diagram Activity Pemrosesan Model Regresi pada gambar 12.
476 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
Gambar 12. Diagram Activity Pemrosesan Model Regresi
Gambar 12 menjelaskan aktifitas use case “Pemrosesan Model Regresi” yang dilakukan oleh user yakni proses dimulai dari user yang masuk kedalam sistem dengan membuka aplikasi prediksi crypto dengan metode regresi. Kemudian ketika user memilih menu regresi, user dapat memilih simbol crypto dan input rentang tanggal yang akan diprediksi oleh sistem. Kemudian sistem akan memproses model regresi dan prediksi crypto sehingga user dapat melihat hasil dari model tersebut.
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 477
3.10 Rancangan User InterfaceGambar 13. Mockup Menu Regresi
Gambar 14. Mockup Menu Tentang Aplikasi
4. KESIMPULAN
Berdasarkan uraian diatas maka diambil kesimpulan bahwa penggunaan model Machine Learning saat proses training dan testing menghasilkan MAPE dengan rata-rata nilai dibawah 35% dengan metode Decision Tree Regresi. Akan Tetapi nilai dari RMSE dan MAPE tersebut belum bisa dikatakan baik. Implementasi model Machine Learning menggunakan sistem yang telah dibangun menjadi website dengan menerima inputan dari user untuk dilakukan proses
478 Jatisi ISSN 2407-4322 Vol. 10, No. 2, Juni 2023, Hal. 467-479 E-ISSN 2503-2933
prediksi. Sistem ini dibuat untuk alat bantu dalam memutuskan diangka berapa kita harus jual dan beli ataupun hold crypto yang sudah disediakan.5. SARAN
Berdasarkan kesimpulan diatas maka ada beberapa saran sebagai berikut:
1. Menggunakan metode Machine Learning yang lain untuk mendapatkan hasil prediksi yang maksimal.
2. Dikarenakan banyak aplikasi berbasis mobile baik berupa sistem operasi android atau ios maka lebih baik dibuatkan aplikasi berbasis mobile.
3. Tetap harus belajar analisis teknik dan fundamental dalam memprediksi crypto secara manual. Karena pada dasarnya crypto sama halnya barang ketika banyak orang yang mencari dan membeli maka harganya naik dan sebaliknya. Dan diperlukan untuk mencari berita- berita tentang crypto agar lebih mudah dalam memutuskan apakah harus membeli atau tidak.
UCAPAN TERIMA KASIH
Terima kasih banyak untuk berbagai pihak yang sudah memberi dukungan dan semangat selama penelitian ini, mulai dari pihak Duta Crypto, dosen pembimbing dan rekan- rekan mahasiswa dari STMIK DCI.
DAFTAR PUSTAKA
[1] Heryadi, Y., & Wahyono, T. (2020). Machine Learning Konsep dan Implementasi. Gava Media.
[2] Olavia, L. (2022, April 29). Ini Dia 7 Penyebab Harga Bitcoin Fluktuatif Menurut Para Ahli. investor.id. https://investor.id/market-and-corporate/292439/ini-dia-7-penyebab- harga-bitcoin-fluktuatif-menurut-para-ahli.
[3] Galih, A. (2020, May 26). Konsep Decision Tree dan Random Forest. socs.binus.ac.id.
https://socs.binus.ac.id/2020/05/26/konsep-decision-tree-random-forest/.
[4] Satyo, A. (2021). Decision Tree Algoritma Beserta Contohnya pada Data Mining.
sis.binus.ac.id. https://sis.binus.ac.id/2022/01/21/decision-tree-algoritma-beserta- contohnya-pada-data-mining/
.
[5] Maulid, R. (2021, November 24). Kenali Istilah Data Science dalam Proses Pengolahan Data Sehari-hari. dqlab.id. https://dqlab.id/kenali-istilah-data-science-dalam-proses- pengolahan-data-sehari-hari
.
[6] Mufadhol. (2022, Mei 13). Perbedaan Data Training dan Data Testing. teknik-
informatika-s1.stekom.ac.id. https://teknik-informatika-
s1.stekom.ac.id/informasi/baca/Perbedaan-Data-Training-dan-Data- Testing/d475bd43bdae3488afe8a0f648ee5671fb6cdc40
.
Jatisi ISSN 2407-4322
Vol. 10, No. 2, Juni 2023, Hal. 467-479 E- ISSN 2503-2933 479
[7] Herlambang. (2018, Mei 19). Training dan Test Set. megabagus.id.
https://www.megabagus.id/training-set-test-set/
.
[8] Salsabila. (2023, Febuari 9). 3 Tipe Proses Dataset Dalam Machine Learning. dqlab.id.
https://dqlab.id/3-tipe-proses-dataset-dalam-machine-learning.
[9] Maulid, R. (2022, January 14). Kriteria Jenis Teknik Analisis Data Dalam Forecasting.
dqlab.id. https://dqlab.id/kriteria-jenis-teknik-analisis-data-dalam-forecasting
.
[10] Kadek, S. (2015). Peramalan Deret Waktu Menggunakan S-Curve dan Quadratic Trend Model (Vol. 9).