Belajar bagaimana cara melakukan backtest terhadap strategi trading berkaitan dengan satu disiplin. Anda mencatat aturan-aturannya, memutar ulang mereka terhadap data historis persis seperti yang tertulis, mencatat setiap perdagangan simulasi, dan kemudian menilai hasil dengan metrik yang menghukum keberuntungan. Tidak ada yang lain yang dihitung sebagai backtest. Menggulir grafik dan mengingat entri yang baik adalah latihan memori, bukan tes.
Langkah-langkahnya sederhana untuk dicatat dan mudah untuk meleset. Kebanyakan backtest yang bermasalah gagal pada kualitas data, pada ukuran sampel, atau pada informasi yang bocor dari masa depan ke dalam aturan.
Panduan ini menjelaskan cara melakukan backtest terhadap strategi trading dari awal hingga akhir. Ini mencakup pengujian manual dan otomatis, berapa banyak sejarah yang Anda butuhkan, metrik kinerja yang layak dibaca, bias melihat ke depan, dan validasi dari luar sampel sebelum melibatkan modal riil.
Jawaban Cepat: Cara Melakukan Backtest Terhadap Strategi Trading
Enam langkah mencakup seluruh proses, dan melewatkan salah satunya akan membatalkan hasil.
- Tulis strategi sebagai aturan yang tidak ambigu untuk entri, keluar, ukuran, dan filter.
- Kumpulkan data historis yang bersih untuk pasar dan jangka waktu yang akan Anda tradingkan.
- Putar ulang aturan bar demi bar, tanpa pengetahuan tentang apa yang terjadi selanjutnya.
- Catat setiap perdagangan simulasi, termasuk kerugian yang lebih baik Anda lupakan.
- Nilai hasilnya dengan metrik kinerja yang disesuaikan dengan risiko, bukan hanya total pengembalian.
- Uji kembali pada data yang belum pernah dilihat strategi sebelum Anda mempertaruhkan apapun di live.
Langkah ketiga adalah tempat kebanyakan tes gagal. Langkah keenam adalah tempat kebanyakan orang berhenti lebih awal.
Apa yang Dapat Dibuktikan oleh Backtest dan Apa yang Tidak Dapat
Sebuah backtest menjawab pertanyaan yang sempit. Ini memberi tahu Anda bagaimana seperangkat aturan tetap akan berperilaku dalam satu potongan sejarah tertentu. Itu sangat berguna, karena itu menyaring ide-ide yang tidak pernah berfungsi sama sekali.
Ini tidak memberi tahu Anda apa yang terjadi selanjutnya. Regulator mengulangi peringatan ini untuk alasan, dan poin bahwa kinerja masa lalu tidak menunjukkan hasil di masa depan berlaku dengan kekuatan penuh untuk catatan simulasi Anda sendiri.
Backtesting juga tidak dapat memodelkan perilaku Anda. Kurva historis tidak pernah ragu, tidak pernah memperlebar stop, dan tidak pernah melewatkan perdagangan setelah tiga kerugian. Anda akan melakukan hal itu. Kesenjangan antara aturan yang diuji dan aturan yang diperdagangkan adalah sumber kekecewaan terbesar.
Backtesting Manual vs Backtesting Otomatis
| Faktor | Pemutaran Manual | Pengujian Otomatis |
|---|---|---|
| Waktu Persiapan | Menit untuk memulai. | Jam atau hari untuk dibangun. |
| Ukuran Sampel Terpenuhi | Puluhan perdagangan. | Ribuan perdagangan. |
| Risiko Bias | Tinggi, karena Anda melihat grafik. | Rendah, jika kode tersebut jujur. |
| Penggunaan Terbaik | Belajar bagaimana rasanya sebuah pengaturan. | Mengukur apakah ada keunggulan. |
| Kelemahan Utama | Sampel kecil dan pencatatan yang diinginkan. | Bug senyap yang memperindah hasil. |
Pemutaran manual memiliki satu keuntungan nyata. Ini memaksa Anda untuk duduk dengan ketidakpastian grafik langsung, bar demi bar, yang mengajarkan Anda di mana aturan Anda samar. Pengujian otomatis adalah satu-satunya cara untuk mencapai ukuran sampel yang cukup besar untuk memisahkan keterampilan dari kebisingan.
Sebagian besar trader membutuhkan keduanya. Putar ulang seratus bar secara manual untuk mengasah aturan, kemudian otomasi untuk mengukurnya.
Proses Backtesting, Langkah-demi-Langkah
Ini adalah inti praktis tentang bagaimana melakukan backtest terhadap strategi trading. Laksanakan langkah-langkahnya sesuai urutan, dan tahan keinginan untuk melihat hasil sebelum langkah lima.
Langkah 1: Ubah ide menjadi aturan yang dapat diikuti orang asing
Setiap kondisi membutuhkan angka. "Masuk pada retracement yang kuat" tidak dapat diuji. "Masuk saat harga menutup kembali di atas rata-rata 20 periode setelah dua penutupan lebih rendah berturut-turut" dapat diuji. Sertakan keluar, stop, ukuran posisi dan filter yang menghindarkan Anda.
Tulis aturan sebelum Anda melihat grafik lagi. Aturan yang ditulis saat melihat data sudah terkontaminasi.
Langkah 2: Kumpulkan data yang cocok dengan cara Anda akan trading
Gunakan jangka waktu yang sama, instrumen yang sama, dan sesi yang sama yang Anda niatkan untuk trading live. Periksa celah, tick buruk, dan hari yang hilang. Sesi liburan dan penutupan lebih awal mendistorsi rata-rata intraday, dan kalender tempat yang diterbitkan seperti jam dan kalender NYSE memberi tahu Anda hari-hari mana yang dipersingkat.
Langkah 3: Putar ulang aturan tanpa melihat
Setiap keputusan harus menggunakan hanya informasi yang tersedia pada saat itu. Jika sebuah aturan merujuk pada nilai penutupan harian, Anda tidak dapat bertindak berdasarkan itu pada tengah hari. Pembatasan ini adalah seluruh perbedaan antara sebuah tes dan sebuah cerita.
Langkah 4: Catat setiap perdagangan simulasi
Catat waktu masuk, waktu keluar, arah, ukuran, hasil dalam unit risiko, dan alasan perdagangan berakhir. Sebuah backtest tanpa log perdagangan tidak dapat diaudit kemudian, dan hasil yang tidak diaudit akan ditinggalkan pada saat rentetan kerugian pertama tiba.
Langkah 5: Kurangi biaya yang realistis
Model spread, komisi dan penghindaran slippage pada setiap perjalanan pergi pulang. Trading yang sering membawa biaya berat, dan SEC tegas bahwa biaya dan kerugian berdampak berat pada trader aktif (Trading Harian: Uang Anda dalam Risiko). Sebuah strategi yang hanya bekerja dengan biaya nol tidak berfungsi.
Langkah 6: Nilai hasilnya dan uji kembali di tempat lain
Hitung metrik yang dijelaskan di bawah ini. Kemudian jalankan aturan identik pada periode atau instrumen yang Anda kecualikan secara sengaja. Kesepakatan antara keduanya adalah hal terdekat dengan bukti yang akan Anda dapatkan.
Ukuran Sampel, Jangka Waktu dan Pengujian Dari Luar Sampel
Siapa pun yang bertanya bagaimana cara melakukan backtest terhadap strategi trading dengan benar menghadapi dua pertanyaan struktural. Seberapa banyak sejarah yang cukup, dan bagaimana Anda tetap jujur terhadap sebagian darinya? Jawab keduanya dan sisa proses adalah pembukuan.
Seberapa banyak sejarah yang cukup
Ukuran sampel adalah pembunuh yang diam. Tiga puluh perdagangan tidak memberi tahu Anda hampir apa-apa, karena satu rentetan keberuntungan selama itu adalah hal yang biasa. Sebuah aturan yang trading sekali seminggu memerlukan beberapa tahun sejarah untuk menghasilkan hitungan yang dapat dipertahankan.
Dua pertanyaan menyelesaikan jangka waktu. Berapa banyak perdagangan yang terdapat dalam sampel, dan berapa banyak kondisi pasar yang berbeda yang dicakupnya? Sebuah tes yang hanya mencakup pasar yang tenang dan meningkat telah mengukur satu rezim dan menyebutnya dunia.
Arahkan pada beberapa ratus perdagangan di mana frekuensi mengizinkannya. Di mana tidak, katakan dengan jelas dan perlakukan hasil sebagai sementara. Pastikan juga sejarah mencakup setidaknya satu periode penurunan tajam, karena di situlah strategi akan dinilai.
Bias Melihat ke Depan dan Kesalahan Senyap Lainnya
Bias melihat ke depan
Ini adalah penggunaan informasi yang tidak tersedia pada waktu keputusan. Ini merayap masuk melalui harga penutupan yang digunakan dalam bar, melalui indikator yang dihitung ulang pada keseluruhan seri, dan melalui data yang direvisi setelah fakta. Hasilnya terlihat luar biasa dan tidak dapat diulang.
Perbaikan bersifat prosedural. Cap waktu setiap input, dan tanyakan pada setiap aturan apakah Anda bisa mengetahuinya saat itu.
Bias kelangsungan hidup
Pengujian hanya instrumen yang masih ada hari ini menghilangkan kegagalan dari sampel. Sebuah keranjang yang disaring dari indeks saat ini diam-diam mengecualikan setiap perusahaan yang keluar. Pengembalian yang terukur meningkat karena alasan yang tidak ada hubungannya dengan strategi.
Overfitting dan penyesuaian kurva
Menyesuaikan parameter hingga kurva ekuitas terlihat indah cocok dengan kebisingan, bukan pasar. Sebuah aturan dengan sembilan pengaturan yang dapat disesuaikan dapat dibuat untuk menggambarkan sejarah apa pun dengan sempurna. Lebih baik sedikit parameter, dan lebih baik pengaturan yang bekerja di seluruh lingkungan nilai yang luas daripada satu angka ajaib.
Metrik Kinerja untuk Menilai Hasil
Total pengembalian adalah angka yang paling tidak informatif di halaman. Metrik yang disesuaikan dengan risiko memberi tahu Anda apakah strategi dapat diperdagangkan.
Metrik yang layak dibaca
- Ekspektasi per perdagangan, diekspresikan dalam unit risiko, yang menunjukkan hasil rata-rata dari aturan.
- Penurunan maksimum, jatuh dari puncak terdalam hingga lembah terendah, yang menentukan ukuran yang dapat Anda bertahan.
- Tingkat kemenangan yang dipasangkan dengan rasio pembayaran, karena tidak ada angka yang berarti apa-apa sendiri.
- Rentetan kerugian terpanjang, yang memprediksi momen Anda akan meninggalkan rencana.
- Jumlah perdagangan, karena setiap metrik lain hanya seandal sampel di belakangnya.
Membacanya bersamaan
Tingkat kemenangan tinggi dengan rasio pembayaran buruk adalah strategi yang mengembalikan segalanya pada satu hari buruk. Penurunan tajam dengan total pengembalian yang kuat mungkin hanya merupakan pinjaman dalam penyamaran. Uang yang dipinjam memperbesar kedua arah, dan penjelasan SEC mengenai pembelian dengan margin menjelaskan mekanik jual paksa yang mengakhiri eksperimen yang diberdayakan lebih awal.
Menyimpan data yang belum Anda sentuh
Pisahkan data sebelum Anda mulai. Kembangkan pada satu bagian, lalu uji sekali pada bagian yang belum pernah Anda periksa. Menguji berulang kali pada data yang disimpan menghancurkan nilainya, karena itu menjadi bagian dari set pengembangan.
Validasi walk-forward memperluas ide itu. Anda mengoptimalkan pada sebuah jendela, menguji pada jendela yang mengikuti, lalu menggulir kedua jendela ke depan dan ulangi. Outputnya adalah rangkaian hasil di luar sampel daripada satu angka yang memuji.
Expectasi degradasi. Hasil live dan forward biasanya lebih buruk daripada sampel pengembangan, dan strategi yang hanya baru saja menyelesaikan pengujian akan jatuh di bawahnya. Bangun margin di muka.
Contoh yang Dikerjakan: Membaca Satu Laporan Backtest
Seorang trader menguji aturan breakout di pasar futures likuid selama delapan tahun. Laporan menunjukkan 412 perdagangan, tingkat kemenangan 41 persen, rata-rata pemenang 2,1 unit risiko dan rata-rata kerugian 1,0 unit.
Ekspektasi adalah 0,41 kali 2,1, dikurangi 0,59 kali 1,0. Itu sama dengan 0,861 dikurangi 0,59, atau plus 0,271 unit per perdagangan. Melalui 412 perdagangan, angka kotor sekitar 112 unit.
Sekarang terapkan disiplin tersebut. Biaya sebesar 0,06 unit per perjalanan pergi pulang menghilangkan sekitar 25 unit, menyisakan 87. Penurunan maksimum dalam sampel adalah 19 unit, dan rentetan kerugian terpanjang mencapai 14 perdagangan.
Angka penurunan itu adalah temuan yang sebenarnya. Pada satu persen risiko per perdagangan, penurunan 19 unit adalah penurunan akun sebesar 19 persen. Trader harus memutuskan, sebelumnya, apakah mereka akan terus menempatkan pesanan di bulan ketujuh dari rentetan kerugian. Jika jawabannya tidak, strategi tidak dapat diperdagangkan bagi mereka terlepas dari ekspektasi.
Pemisahan sampel memastikan sisanya. Enam tahun pertama menghasilkan 0,29 unit per perdagangan, dua tahun terakhir yang dipesan menghasilkan 0,18. Lebih rendah, tetapi dengan tanda yang sama, yang merupakan hasil yang Anda harapkan.
Kerangka Keputusan: Apakah Backtest Ini Siap untuk Uang Riil?
Beri satu poin untuk setiap pernyataan yang dapat Anda pertahankan dengan log perdagangan.
- Aturannya sudah ditetapkan secara tertulis sebelum pengujian dimulai.
- Sampel mencakup setidaknya beberapa ratus perdagangan.
- Sejarah mencakup periode tren dan periode yang bergejolak.
- Biaya dan slippage dimodelkan pada setiap perdagangan.
- Hasil bertahan pada data yang disimpan dari awal.
- Penurunan maksimum adalah satu yang akan Anda terima tanpa mengubah ukuran.
Lima atau enam poin. Lanjutkan ke pengujian ke depan dalam simulasi, dengan ukuran kecil.
Tiga atau empat poin. Idenya menjanjikan dan buktinya tipis. Perbaiki input yang paling lemah dan uji ulang.
Nol hingga dua poin. Ini adalah hipotesis, bukan strategi. Belum ada modal.
Apa yang Harus Diketahui Sebelum Anda Melakukan Trading Dengan Strategi yang Sudah Diuji
Backtest yang bersih mengubah apa yang Anda ketahui, bukan apa yang akan dilakukan pasar. Sebelum menginvestasikan uang, kerjakan melalui pertanyaan-pertanyaan yang disarankan oleh SEC untuk ditanyakan terlebih dahulu, terutama yang mengenai toleransi risiko dan uang yang Anda mampu untuk kehilangan.
Kemudian uji ke depan. Menjalankan aturan terhadap harga live dalam waktu nyata mengungkapkan masalah praktis yang disembunyikan oleh pemutaran historis. Pesanan terlewat, spread melebar, dan perdagangan yang Anda rencanakan tidak selalu menjadi perdagangan yang Anda dapatkan.
Simulasi adalah jembatan yang masuk akal antara keduanya. Lingkungan trading yang disimulasikan memungkinkan Anda untuk menempatkan perdagangan dalam waktu nyata tanpa risiko menabung, sehingga strategi memenuhi data live sebelum akun Anda. Ini tidak akan mereproduksi beban emosional dari uang riil, dan Anda harus mengharapkan perbedaan itu. Pivex dibangun untuk langkah berikutnya: evaluasi terstruktur dengan aturan dan ketentuan yang jelas dan diterbitkan.
Sebelum berpartisipasi, tinjau aturan program Pivex saat ini dan putuskan apakah evaluasi trading simulasi proprietary sesuai dengan pengalaman dan batas risiko Anda. Partisipasi tidak menjamin imbalan, pendapatan, atau hasil trading tertentu.