Cara Melakukan Backtesting terhadap Strategi Trading
Cara Melakukan Backtesting terhadap Strategi Trading
BerandaArtikel

Cara Melakukan Backtesting terhadap Strategi Trading

Tingkat Menengah
Published Dec 17, 2020Updated Apr 29, 2021
6m

TL;DR

Anda memiliki ide-ide hebat mengenai pasar, tetapi tidak tahu cara mengujinya tanpa mempertaruhkan dana Anda? Mempelajari cara melakukan backtesting terhadap ide trading adalah hal yang sangat penting bagi pedagang sistematis yang baik.

Premis yang mendasari backtesting adalah bahwa apa yang berhasil di masa lalu mungkin berhasil di masa depan. Tapi bagaimana Anda melakukannya sendiri? Dan bagaimana Anda mengevaluasi hasilnya? Mari kita bahas proses backtesting sederhana.


Pengantar

Backtesting merupakan salah satu komponen penting dalam mengembangkan penguasaan chart dan strategi trading Anda sendiri. Dilakukan dengan merekonstruksi trading yang terjadi di masa lalu dengan sistem berdasarkan data historis. Hasil backtesting akan memberikan gambaran umum apakah strategi investasi itu efektif atau tidak.

Sebelum melangkah lebih jauh, jika Anda ingin menguji strategi Anda sendiri, Binance Futures adalah tempat yang tepat untuk melakukannya. Untuk mendapatkan akses ke data historis dari platform ini, silakan isi formulir pengajuan ini.


Apa itu backtesting?

Pertama-tama, jika Anda ingin mengetahui lebih dalam mengenai backtesting, baca artikel kami yang berjudul Apa itu Backtesting?

Singkatnya, tujuan utama backtesting adalah untuk menunjukkan apakah ide trading Anda valid. Anda menggunakan data pasar sebelumnya untuk melihat bagaimana suatu strategi akan dilakukan. Jika strategi terlihat memiliki potensi, maka ada kemungkinan akan efektif dalam lingkungan trading yang sebenarnya.


Yang perlu dilakukan sebelum backtesting

Sebelum kita mulai dengan contoh backtesting, ada sesuatu yang harus ditentukan. Anda harus menentukan jenis pedagang seperti apa Anda. Apakah Anda seorang pedagang diskresioner atau sistematis?

Pedagang diskresioner melakukan tindakan berdasarkan keputusan - pedagang menggunakan penilaian sendiri kapan harus masuk dan keluar. Ini adalah strategi yang relatif longgar dan terbuka, di mana sebagian besar keputusan tergantung pada penilaian pedagang terhadap kondisi yang ada. Dengan cara trading seperti ini, backtesting kurang relevan, karena strateginya tidak ditentukan secara ketat.

Tentu saja ini tidak berarti bahwa jika Anda adalah pedagang diskresioner, tidak perlu melakukan backtesting atau paper trading sama sekali. Ini hanya berarti bahwa hasilnya mungkin tidak dapat diandalkan, jika dibandingkan dengan gaya trading yang lainnya.

Trading sistematis lebih berlaku untuk topik yang kita bahas. Pedagang sistematis bergantung pada sistem trading yang menentukan dan memberi tahu dengan tepat kapan harus masuk dan keluar. Sinyal masuk dan keluar ditentukan oleh strategi. Anda dapat menggambarkan strategi sistematis sederhana sebagai berikut:

  • Ketika A dan B terjadi pada saat yang bersamaan, masuki trading. 
  • Jika X terjadi setelahnya, keluar dari trading.

Beberapa pedagang lebih menyukai pendekatan ini, karena dapat menghilangkan keputusan emosional dan memberikan tingkat jaminan yang wajar bahwa sistem trading akan menguntungkan. Tentu masih belum ada jaminan.

Inilah mengapa penting untuk memastikan bahwa Anda memiliki aturan yang sangat spesifik dalam sistem Anda mengenai kapan harus masuk atau keluar dari posisi. Jika strategi tidak didefinisikan dengan baik, hasilnya juga tidak akan konsisten. Seperti yang mungkin sudah Anda duga, gaya trading ini lebih populer dengan trading algoritmik.

Ada software backtesting yang bisa dibeli jika Anda ingin melakukan backtesting otomatis. Anda dapat memasukkan data sendiri, dan software akan melakukan backtesting untuk Anda. Namun, dalam contoh ini, kita akan menggunakan strategi backtesting manual. Proses ini akan membutuhkan lebih banyak usaha, tetapi sepenuhnya gratis.


Cara melakukan backtesting terhadap strategi trading

Anda dapat menemukan template spreadsheet Google Sheets di tautan ini. Ini merupakan template dasar yang dapat Anda gunakan sebagai langkah awal untuk membuat alat Anda sendiri nantinya. Template ini memberi Anda gambaran umum mengenai informasi apa yang ada dalam lembar backtesting. Beberapa pedagang lebih suka menggunakan Excel atau mengkodekannya dengan Python – tidak ada aturan ketat di sini. Anda dapat menambahkan lebih banyak data dan hal lain yang mungkin Anda anggap berguna.
Tanggal
Pasar
Sisi
Entri
Stop LossTake ProfitRisikoRewardPnL

08/12

BTCUSD

Long

$18.000

$16.200

$21.600

10%

20%

3600

09/12

BTCUSD

Short

$19.000

$20.900

$13.300

10%

30%

-1900


Jadi, mari kita lakukan backtesting terhadap strategi trading sederhana. Idenya kira-kira seperti ini:

  • Kita membeli satu Bitcoin pada daily close pertama setelah golden cross. Kita menganggap golden cross terjadi jika moving average 50 hari melintas ke atas moving average 200 hari.
  • Kita menjual satu Bitcoin pada daily close pertama setelah death cross. Kita menganggap death cross terjadi jika moving average 200 hari melintas ke bawah moving average 50 hari.

Seperti yang Anda lihat, kita juga menentukan kerangka waktu atau time frame di mana strategi tersebut valid. Artinya, kita tidak akan menganggapnya sebagai sinyal trading jika golden cross terjadi pada chart 4 jam.

Untuk mendukung contoh ini, kita hanya akan melihat periode waktu dari awal tahun 2019. Namun, jika ingin mendapatkan hasil yang lebih akurat dan andal, Anda dapat mengamati aksi harga Bitcoin dengan rentang yang lebih jauh.

Sekarang, mari kita lihat sinyal trading apa yang dihasilkan sistem ini untuk periode tersebut:

  • Beli @ ~$5.000
  • Jual @ ~$9.200
  • Beli @ ~$9.600
  • Jual @ ~$6.700
  • Beli @ ~$9.000


Berikut tampilan sinyal pada chart:

Strategi golden cross - death cross. Sumber: TradingView.


Trading pertama kita akan menghasilkan laba sekitar $3800, sementara trading kedua menyebabkan kerugian sekitar $2900. Ini berarti PnL terealisasi saat ini sejumlah $900. 

Kita juga berada dalam trading aktif, yang pada bulan Desember 2020 memiliki sekitar $9.000 laba yang belum terealisasi. Jika kita tetap berpegang pada strategi yang ditetapkan sejak awal, kita akan menutup trading ini ketika death cross berikutnya terjadi. 



Mengevaluasi hasil backtesting

Jadi, apa yang bisa dilihat dari hasil ini? Strategi kita akan menghasilkan laba yang wajar, tetapi sejauh ini tidak menunjukkan hal yang luar biasa. Kita bisa saja melakukan trading pada open trade saat ini untuk secara drastis meningkatkan PnL terealisasi, tetapi itu justru akan menggagalkan tujuan backtesting. Jika kita tidak berpegang pada rencana, hasilnya juga tidak akan dapat diandalkan.

Meskipun ini merupakan strategi yang sistematis, ada baiknya juga mempertimbangkan konteksnya. Trading yang tidak menguntungkan dari $9600 menjadi $6700 terjadi pada saat meluasnya wabah COVID-19 di bulan Maret 2020. Peristiwa black swan seperti itu dapat memiliki pengaruh yang sangat besar pada semua sistem trading. Inilah alasan lain mengapa perlu untuk melihat lebih jauh apakah kerugian ini berasal dari luar atau produk sampingan dari strategi.
Bagaimanapun, seperti inilah tampilan proses backtesting yang sederhana. Strategi ini mungkin menjanjikan jika kita mengujinya dengan lebih banyak data atau menyertakan indikator teknikal lainnya yang berpotensi membuat sinyal yang dihasilkannya lebih kuat.

Apa lagi yang bisa dilihat dari hasil backtesting?

  • Pengukuran volatilitas: upside dan drawdown maksimum Anda.
  • Eksposur: jumlah modal yang perlu dialokasikan dalam satu strategi dari seluruh portofolio Anda.
  • Laba tahunan: persentase laba dari strategi selama setahun.
  • Rasio laba-rugi: berapa banyak trading dalam sistem yang menghasilkan laba dan berapa banyak yang merugi.
Ini hanya beberapa contoh dan bukan daftar lengkap sama sekali. Metrik apa yang ingin Anda lacak, sepenuhnya terserah Anda. Bagaimanapun, semakin banyak detail yang Anda persiapkan dalam jurnal, semakin banyak peluang yang harus Anda pelajari dari hasilnya. Beberapa pedagang sangat teliti dalam melakukan backtesting, dan itu mungkin juga tercermin dalam hasil mereka.
Satu hal terakhir yang perlu dipertimbangkan adalah pengoptimalan. Jika Anda telah membaca artikel backtesting kami, Anda akan mengetahui perbedaan antara backtesting dan forward testing, atau paper trading. Akan sangat membantu untuk menguji dan mengoptimalkan ide-ide Anda dalam lingkungan trading yang sebenarnya, misalnya dengan menggunakan testnet Binance Futures.


Konklusi

Kami telah membahas proses dasar dalam melakukan backtesting manual terhadap strategi trading. Ingat, kinerja masa lalu bukan jaminan untuk kinerja masa depan. 

Lingkungan pasar akan selalu berubah, Anda harus beradaptasi dengan perubahan tersebut jika ingin meningkatkan kinerja trading Anda. Secara umum, ada gunanya juga tidak memercayai data secara membabi buta. Akal sehat dapat menjadi alat yang sangat berguna dalam mengevaluasi hasil. 

Anda masih memiliki pertanyaan mengenai backtesting dan kripto secara umum? Lihat platform tanya jawab kami, Ask Academy, tempat komunitas akan menjawab pertanyaan-pertanyaan Anda.