Validasi walk-forward: jauhkan data masa depan dari pelatihan
Rancang proses riset kronologis yang mengevaluasi seluruh prosedur pengambilan keputusan, bukan aturan historis yang sudah dipoles.

Uji proses, bukan rumus akhir
Studi walk-forward berulang kali menyesuaikan model menggunakan informasi yang tersedia pada tanggal historis, membekukan keputusan yang dihasilkan, dan mengevaluasinya pada interval berikutnya. Urutannya kemudian bergerak maju. Ini meniru proses riset yang harus beroperasi tanpa pengetahuan masa depan. Prosedur ini tidak membuat strategi menguntungkan atau menghilangkan semua bias.
Tuliskan apa yang boleh berubah pada setiap langkah. Parameter sinyal, pemilihan aset, estimasi volatilitas, dan asumsi biaya semuanya bagian dari prosedur. Jika peneliti menyesuaikannya secara manual setelah melihat periode uji, prosedurnya telah berubah dan periode itu bukan lagi penilaian yang bersih. Jadwal yang dapat direproduksi lebih informatif daripada grafik yang disusun dari revisi diskresioner.
Pilih riwayat bergulir atau meluas secara sengaja
Jendela yang meluas mempertahankan semua pengamatan sebelumnya seiring berjalannya waktu. Ini dapat menstabilkan estimasi tetapi juga mempertahankan data dari kondisi pasar yang sudah tidak relevan. Jendela bergulir menggunakan rentang terbaru yang tetap, sehingga memudahkan adaptasi tetapi meningkatkan derau sampel. Tidak satu pun pendekatan unggul secara universal; kompromi yang relevan bergantung pada hubungan ekonomi yang diharapkan bertahan.
Pilih panjang jendela berdasarkan alasan yang dapat dipertanggungjawabkan sebelum membandingkan hasil. Mencoba puluhan panjang jendela dan memilih yang terbaik hanya memindahkan optimalisasi ke tingkat lebih tinggi. Catat jumlah pengamatan, episode pasar yang berbeda, dan transaksi aktual pada setiap interval uji. Rentang kalender panjang dengan sangat sedikit keputusan independen mungkin memberikan bukti lebih sedikit daripada yang disiratkan durasinya.
Kebocoran tersembunyi dalam persiapan data
Pemisahan kronologis diperlukan tetapi tidak cukup. Menstandardisasi fitur dengan rata-rata seluruh sampel memungkinkan pengamatan masa depan memengaruhi masukan masa lalu. Memilih efek yang masih bertahan, menggunakan angka makroekonomi yang direvisi, atau memasukkan laporan sebelum waktu publikasinya menghasilkan bentuk lain dari bias pengetahuan setelah kejadian. Sesuaikan transformasi pada data pelatihan dan pertahankan informasi ketersediaan pada saat itu sedapat mungkin.
Label juga penting. Jika contoh pelatihan memprediksi imbal hasil yang diukur selama lima hari berikutnya, hasilnya dapat tumpang tindih dengan awal periode uji. Hapus atau pisahkan pengamatan yang jendela labelnya melintasi batas. Perangkat lunak dapat menyisipkan celah antara indeks pelatihan dan pengujian, tetapi memilih celah yang bermakna memerlukan pemahaman tentang horizon label, jeda publikasi, dan ketergantungan dalam kumpulan data tersebut.
Tanggal fitur berbeda dari saat target prediksi benar-benar diketahui. Sinyal Senin dapat memakai masukan yang tersedia pada Senin, tetapi imbal hasil lima hari sesudahnya belum selesai pada Selasa. Pelatihan ulang Selasa tidak boleh memakai label lengkap tersebut. Penyaringan data harus memeriksa seluruh rentang label dan waktu ketersediaannya, bukan hanya tanggal awal baris.
Lakukan penyetelan dalam pelatihan, pertahankan evaluasi yang belum disentuh
Pemilihan parameter harus berlangsung hanya menggunakan informasi di dalam wilayah pelatihan, mungkin melalui prosedur validasi kronologis internal. Interval uji luar kemudian mengevaluasi prosedur yang dipilih. Susunan bertingkat ini membedakan pemilihan model dari pengukuran kinerja pilihan tersebut. Ini juga membuat komputasi lebih mahal, yang lebih baik daripada memperoleh hasil murah tetapi tercemar.
Gabungkan imbal hasil uji berurutan menurut urutan waktu sebenarnya, termasuk periode tanpa posisi. Terapkan biaya dan asumsi eksekusi secara konsisten. Jangan merata-ratakan rasio menarik dari setiap bagian uji tanpa memeriksa makna ekonominya: interval singkat dan tenang dapat tampak sama pentingnya dengan interval panjang dan volatil. Tampilkan sebaran antar-interval bersama hasil gabungan.
Hasil yang lemah adalah bukti yang bisa digunakan
Kinerja walk-forward yang memburuk setelah biaya, bergantung pada satu interval, atau berubah drastis akibat penyesuaian waktu kecil layak diselidiki, bukan diperbaiki secara kosmetik. Pisahkan cacat data atau penerapan dari strategi yang memang tidak didukung bukti. Memperbaiki bug nyata dapat membenarkan pengujian ulang, tetapi paparan sebelumnya terhadap hasil harus tetap menjadi bagian dari riwayat riset.
Akhiri dengan spesifikasi yang dibekukan dan periode pengamatan simulasi yang benar-benar baru jika evaluasi lanjutan diperlukan. Tentukan sebelumnya data apa yang akan dikumpulkan dan apa yang akan membatalkan asumsi. Tujuannya bukan terus mengoptimalkan sampai garis yang menarik muncul, melainkan memastikan apakah prosedur yang disiplin dan dapat diterapkan bertahan ketika diberi kesempatan untuk gagal.
Pertahankan kesinambungan posisi dan modal antarperiode
Melatih ulang model tidak otomatis menutup posisi. Jika pengujian Januari–Maret berakhir dengan posisi yang menurut aturan lama baru keluar pada April, tentukan sebelumnya apakah aturan lama diteruskan, diganti secara terdokumentasi, atau posisi ditutup dengan biaya. Reset diam-diam ke kas pada setiap bagian dapat menghapus kerugian, memulihkan modal secara semu, atau menghindari transisi sulit.
Modal juga harus berlanjut. Keuntungan 10% kemudian kerugian 10% menghasilkan pengali 1,10 × 0,90 = 0,99, yaitu rugi 1%. Rata-rata aritmetik nol tidak merekonstruksi rekening. Pertahankan seri kronologis dengan aturan modal dan ukuran yang konsisten. Jika periode uji bertumpang tindih, jangan menghitung hari yang sama dua kali; tentukan model pengambil keputusan atau pembagian modal antarmodel.
Ulangi pemilihan fitur, standardisasi, pengisian data hilang, dan perbandingan algoritme di dalam setiap batas pelatihan. Transformasi yang disesuaikan sekali pada seluruh data tetap dapat membocorkan masa depan. TimeSeriesSplit membantu membagi indeks menurut waktu, tetapi tidak mengetahui kematangan label keuangan, revisi pengumuman, atau penanganan posisi terbuka.
Simpan catatan tiap bagian: akhir pelatihan, observasi tersedia, parameter, waktu eksekusi pertama yang mungkin, posisi awal, biaya, dan posisi akhir. Jelaskan data atau order yang dilewati. Setelah memperbaiki cacat, jalankan ulang seluruh proses secara konsisten dan simpan hasil lama. Versi perbaikan pada data yang telah dilihat bukan eksperimen baru yang sepenuhnya belum tersentuh.