Bagaimana R Squared Dapat Di-backtest Secara Bertanggung Jawab?
R Squared: definisikan konsepnya sebelum backtesting
R Squared (sering ditulis R²) adalah statistik yang menggambarkan seberapa besar variasi dalam hasil yang diukur dapat dijelaskan oleh sebuah model atau hubungan. Dalam backtesting, tanggung jawab utamanya bukanlah memperlakukan R² sebagai sinyal trading itu sendiri, tetapi untuk mendefinisikan secara tepat apa yang Anda regresikan terhadap apa, dan apa arti “hasil yang dijelaskan” dalam kasus penggunaan Anda.
Alur kerja yang bertanggung jawab dimulai dengan menuliskan:
- variabel dependen (hasil yang Anda ukur)
- variabel independen (fitur atau nilai indikator yang Anda gunakan)
- metode yang digunakan untuk menghitung hubungan (misalnya, pendekatan regresi atau korelasi)
- aturan penyelarasan waktu (timestamp/harga mana yang menjadi input untuk hasil periode mana)
Jika Anda tidak dapat menyatakan hal-hal ini secara tepat, hasil backtest tidak dapat diverifikasi secara independen.
Mekanika: tentukan data, asumsi, dan biaya
Backtest hanya bermakna ketika aturan persiapan data bersifat eksplisit. Tanggung jawab umum meliputi:
Definisi data dan pengambilan sampel
Pilih kerangka waktu yang konsisten (misalnya, setiap penutupan bar) dan tentukan bagaimana Anda menangani observasi yang hilang. Definisikan jendela lookback yang digunakan untuk menghitung R². Jika Anda menggunakan jendela bergulir, tentukan panjangnya dan apakah jendela tersebut diperbarui pada setiap bar atau hanya pada waktu-waktu tertentu.
Penyelarasan waktu dan kontrol kebocoran
Mode kegagalan yang umum adalah bias look-ahead: menggunakan informasi yang tidak akan diketahui pada saat pengambilan keputusan. Buat aturan penyelarasan seperti “nilai indikator yang dihitung menggunakan data hingga waktu t dievaluasi terhadap hasil dari t hingga t+1.” Kemudian terapkan aturan tersebut dalam kode dan dengan memeriksa tanggal secara acak.
Biaya dan model eksekusi
Bahkan jika Anda hanya menguji statistik hubungan, banyak alur kerja pada akhirnya menerjemahkannya menjadi keputusan. Jika Anda melakukannya, Anda harus memodelkan gesekan material:
- asumsi spread bid/ask
- komisi atau biaya
- slippage dari dampak pasar atau pemenuhan order
Backtest yang bertanggung jawab memperlakukan biaya sebagai bagian dari alur data-ke-hasil, bukan sebagai pemikiran belakangan. Jika tidak, R² mungkin terlihat kuat sementara hasil praktis yang sadar-biaya akan lebih lemah atau tidak konsisten.
Bukti: gunakan kontrol bias dan pemeriksaan di luar sampel
Untuk memverifikasi bahwa “efek R²” Anda bukan artefak, gunakan pemisahan data dan evaluasi yang ketat.
Kontrol bias
Minimal, kendalikan sumber bias utama:
- bias look-ahead (penyelarasan waktu)
- bias seleksi (memilih periode setelah melihat hasil)
- bias overfitting (menyetel parameter untuk memaksimalkan kinerja dalam sampel)
Pendekatan praktis adalah memperlakukan pilihan parameter apa pun (panjang jendela, aturan prapemrosesan, ambang batas) sebagai tetap sebelum langkah evaluasi akhir.
Pengujian di luar sampel
R² yang dihitung pada data yang sama yang digunakan untuk mendefinisikan hubungan dapat melebih-lebihkan reliabilitas. Gunakan:
- periode pelatihan (dalam sampel) untuk menetapkan pilihan apa pun
- periode validasi untuk mengonfirmasi bahwa Anda tidak hanya menyesuaikan noise
- periode di luar sampel final untuk penilaian paling konservatif
Jika hubungan berubah secara material antar periode, itu adalah temuan penting.
Satu keterbatasan material dan mengapa itu penting
Mode kegagalan utama adalah bahwa hubungan penjelas historis tidak menjamin stabilitas masa depan. Rezim pasar dapat berubah, dan kecocokan statistik dapat memburuk ketika kondisi berubah, terutama ketika biaya, likuiditas, atau kualitas eksekusi berbeda dari asumsi.
Keterbatasan dan risiko yang harus dapat Anda jelaskan
Backtest yang bertanggung jawab harus menyertakan bagian keterbatasan yang jelas yang membahas:
- Non-stasioneritas: hubungan dapat bervariasi seiring waktu.
- Sensitivitas spesifikasi model: perubahan kecil pada input atau penyelarasan dapat mengubah R².
- Risiko overfitting: kecocokan dalam sampel yang tinggi masih dapat menghasilkan hasil dunia nyata yang lemah.
- Sensitivitas biaya: mengabaikan spread dan slippage dapat mengubah hubungan yang tampak menjadi ilusi.
Ingat juga: R² adalah ukuran kecocokan terhadap definisi hasil. Jika variabel hasil Anda dipilih dengan buruk atau tidak konsisten dengan peluang keputusan nyata, statistik tersebut dapat menyesatkan.
Verifikasi: apa yang dapat Anda periksa secara independen selanjutnya
Untuk memverifikasi secara independen backtest R² yang bertanggung jawab, Anda harus dapat menunjukkan kepada orang lain:
- definisi yang tepat dari variabel dependen dan independen
- aturan penyelarasan waktu dan metode windowing
- asumsi biaya dan eksekusi yang digunakan dalam alur
- strategi pembagian data (pelatihan/validasi/di luar sampel) dan parameter mana yang disetel
- setidaknya satu mode kegagalan yang Anda uji (misalnya, bias look-ahead melalui pemeriksaan pergeseran tanggal yang diketahui)