Bagaimana Indikator Momentum dapat di-backtest secara bertanggung jawab?
Apa arti “backtesting yang bertanggung jawab” untuk Indikator Momentum
Backtesting memperkirakan bagaimana aturan berbasis Indikator Momentum akan berperilaku menggunakan data historis. Backtesting yang bertanggung jawab kurang berfokus pada angka akhir dan lebih pada apakah pengaturan pengujian dapat dieksekusi dengan informasi yang benar-benar tersedia pada saat itu.
Setidaknya, Anda harus dapat menjelaskan:
- data apa yang digunakan indikator dan bagaimana data tersebut dihitung,
- aturan apa yang mengubah pembacaan indikator menjadi sebuah aksi (jika ada),
- asumsi apa yang dibuat tentang biaya dan eksekusi,
- bagian mana yang merupakan mekanika indikator yang stabil versus kondisi pasar dan penyedia data yang bervariasi.
Kinerja historis tidak pernah dapat membuktikan hasil masa depan, karena hubungan dapat berubah dan karena backtest sensitif terhadap kualitas data, biaya, dan bias metodologis.
Mekanisme dan definisi: pisahkan matematika indikator dari asumsi pengujian
Indikator Momentum biasanya merupakan konsep “perubahan selama periode lookback”: ia membandingkan harga dengan nilainya dari sejumlah periode yang lalu. Formula pastinya dapat berbeda antar platform (misalnya, membandingkan penutupan saat ini dengan penutupan N periode lalu, atau menggunakan varian rate-of-change), jadi tanggung jawab pertama adalah mengunci definisi.
Backtest yang bertanggung jawab dimulai dengan definisi tetap:
- Seri harga yang digunakan (misalnya, close-to-close).
- Panjang lookback (jumlah periode).
- Detail perhitungan (selisih vs. perubahan persentase; penghalusan jika digunakan).
- Aturan waktu (kapan nilai yang dihitung diketahui dan kapan keputusan dibuat).
Kemudian pisahkan mekanika dari kondisi variabel:
- Mekanika stabil: kalkulasi indikator dan aturan seleksi mekanis murni yang Anda terapkan.
- Kondisi variabel: konstruksi candle, bar yang hilang, penanganan zona waktu, rollover, likuiditas, perilaku spread bid/ask, dan bagaimana eksekusi dimodelkan.
Jenis biaya dan friksi eksekusi yang perlu dimodelkan
Backtest sering melebih-lebihkan hasil karena mengabaikan biaya. Bahkan dalam pemeriksaan edukasional (tanpa merekomendasikan tindakan apa pun), Anda dapat memodelkan biaya dengan cara yang konsisten dengan data:
- Spread atau biaya transaksi efektif per perdagangan (bagaimana Anda mengonversi perbedaan bid/ask menjadi satu biaya bersih).
- Komisi atau biaya per pesanan.
- Slippage: kesenjangan antara harga eksekusi yang diasumsikan dan harga eksekusi yang dapat dicapai.
- Waktu pesanan: apakah eksekusi terjadi pada pembukaan bar berikutnya, pada penutupan bar yang sama, atau di tempat lain.
Untuk setiap input biaya, nyatakan asumsi secara eksplisit. Jika Anda tidak dapat membenarkan angka-angka tersebut, perlakukan pengujian sebagai studi sensitivitas, bukan klaim kinerja.
Kontrol bias: cegah look-ahead, overfitting, dan cherry-picking
Mode kegagalan yang umum adalah backtest secara tidak sengaja menggunakan informasi masa depan atau menyetel parameter ke satu periode hingga “cocok”. Backtesting yang bertanggung jawab menggunakan pemeriksaan yang membuat overfitting lebih sulit disembunyikan.
Kontrol bias inti
- Tanpa look-ahead: pastikan nilai indikator dan ambang batas apa pun yang digunakan untuk keputusan dapat dihitung pada saat keputusan dibuat.
- Pengujian walk-forward (out-of-sample): cocokkan atau pilih parameter pada satu segmen, lalu evaluasi pada segmen yang tidak terlihat di kemudian hari.
- Beberapa pemeriksaan ketahanan: variasikan asumsi non-esensial (seperti tingkat biaya dalam rentang yang masuk akal) untuk melihat apakah kesimpulan tetap bertahan.
Contoh mode kegagalan yang perlu diperhatikan
Jika aturan berbasis indikator Anda hanya berkinerja baik untuk serangkaian nilai parameter yang sempit, itu mungkin menangkap noise dari periode pelatihan. Mode kegagalan lainnya adalah pola hasil yang hilang ketika Anda mengganti konstruksi harga (atau ketika Anda mengambil sampel ulang ke ukuran bar yang berbeda), yang menunjukkan bahwa backtest terlalu bergantung pada data.
Keterbatasan dan risiko yang harus Anda nyatakan sebelum menafsirkan hasil
Setidaknya satu keterbatasan material harus menjadi bagian dari laporan backtesting Anda:
- Perubahan rezim pasar: hubungan yang muncul di satu periode dapat melemah di kemudian hari.
- Perbedaan kualitas data: bar historis mungkin tidak mereplikasi perilaku likuiditas dan harga secara langsung.
- Ketidakcocokan eksekusi: model pengisian yang diasumsikan (open berikutnya, close, mid) dapat mendominasi hasil.
- Ketidakstabilan parameter: hasil dapat sensitif terhadap panjang lookback dan pilihan ambang batas.
Cara yang berguna untuk menyatakannya adalah: bahkan jika backtest konsisten secara internal, itu tidak menetapkan bahwa aturan yang sama akan menggeneralisasi.
Verifikasi dan pertanyaan lanjutan untuk membuat pemeriksaan Anda independen
Untuk memverifikasi fakta-fakta yang relevan secara independen, fokuslah pada reproduktifitas:
- Buat ulang Indikator Momentum persis seperti yang didefinisikan (termasuk lookback dan varian kalkulasi yang sama). - Jalankan ulang backtest dengan kode/pipeline data yang sama dan verifikasi bahwa setiap langkah sesuai dengan asumsi tertulis Anda. - Konfirmasi waktu: kapan indikator dihitung dan kapan keputusan dibuat.