Definisikan Swing Definition sebagai aturan yang dapat diuji
Untuk menguji “Swing Definition,” Anda pertama kali perlu definisi yang tidak ambigu dan dapat diukur. Dalam praktiknya, “swing” sering merujuk pada pergerakan yang berlangsung selama hari, bukan menit, tetapi pengujian mengharuskan Anda menerjemahkan gagasan itu menjadi aturan operasional.
Cara praktis untuk melakukannya adalah menyatakan sebuah hipotesis lalu menentukan apa yang harus diamati agar hipotesis tersebut benar. Misalnya, sebuah hipotesis bisa jadi:
- Jika pergerakan pasar memenuhi kriteria sebagai “swing” menggunakan kumpulan aturan Anda, maka arah dan besarnya pergerakan tersebut harus berperilaku konsisten di bawah prosedur pengukuran Anda.
Intinya adalah kumpulan aturan Anda harus menghasilkan label yang sama ketika diterapkan kembali pada jalur harga yang sama (determinisme). Definisikan elemen-elemen berikut secara eksplisit:
- Aturan horizon waktu: Berapa periode penahanan maksimum dan minimum agar sesuatu dapat disebut swing? Contoh: “X hingga Y unit waktu berikutnya.”
- Aturan peristiwa (event): Bagaimana swing dimulai dan diakhiri? Misalnya, menggunakan perubahan puncak/lembah, pelanggaran ambang batas, atau titik pembalikan yang teridentifikasi.
- Aturan arah: Apa yang dihitung sebagai “swing naik” versus “swing turun”?
- Aturan pengukuran: Metrik apa yang mendefinisikan “bagian material” dari pergerakan (return selama horizon, rentang yang tertangkap, drawdown yang dialami, dll.)?
- Aturan penyaringan (filtering): Apakah Anda mengecualikan periode volatilitas rendah atau waktu yang tidak likuid? Jika ya, tuliskan kriterianya.
Ini mengubah Swing Definition dari sebuah konsep menjadi sebuah prosedur yang dapat diuji.
Tentukan hipotesis, baseline, dan pembagian data
Sebuah pengujian hanya bermakna ketika Anda membandingkan definisi Anda dengan sesuatu yang mewakili “tidak ada struktur swing khusus.” Baseline Anda harus sederhana dan tetap sebelum Anda melihat hasil.
Bentuk hipotesis
Tuliskan hipotesis agar memiliki keluaran yang dapat diukur. Salah satu contoh keluaran yang dapat diukur:
- Outcome A (stabilitas): Ketika definisi Anda memberi label sebuah swing, rata-rata pergerakan masa depan selama horizon yang ditentukan harus konsisten positif/negatif sesuai arah.
- Outcome B (selektivitas): Swing yang diidentifikasi oleh aturan Anda menunjukkan karakteristik rata-rata yang berbeda dibandingkan periode non-swing.
Hindari kata-kata yang samar seperti “lebih baik.” Gunakan metrik yang spesifik.
Pemilihan baseline
Baseline bisa berupa:
- Sebuah aturan yang memberi label peristiwa secara acak pada periode waktu yang sama.
- Aturan pelabelan naif yang menggunakan definisi berbeda (misalnya, horizon yang jauh lebih pendek atau jauh lebih panjang).
- Pendekatan “tanpa sinyal” yang mengevaluasi apa yang terjadi ketika Anda mengukur horizon yang sama mulai dari timestamp acak.
Baseline harus cocok dengan metode pengukuran prosedur Anda, sehingga perbedaan dapat diatribusikan pada definisi itu sendiri, bukan pada perubahan cara pengukuran.
Pembagian data (train vs test)
Pengujian Swing Definition sebaiknya menggunakan setidaknya dua segmen data yang tidak saling tumpang tindih:
- Pengembangan (opsional): Anda mendefinisikan dan menyempurnakan aturan menggunakan satu segmen.
- Evaluasi (wajib): Anda menerapkan aturan yang sudah final sekali pada segmen terpisah.
Untuk konsep seperti pelabelan swing, mode kegagalan yang umum adalah overfitting: aturan yang secara tidak sengaja cocok dengan perilaku satu periode saja. Pembagian berbasis waktu mengurangi risiko tersebut.
Perhitungkan biaya dan faktor yang bervariasi
Banyak pengujian “swing definition” gagal karena mengabaikan biaya dan gesekan eksekusi. Bahkan jika Anda menguji sebuah definisi, bukan menempatkan trade, Anda tetap perlu model biaya ketika menerjemahkan pergerakan berlabel menjadi hasil yang dapat diukur.
Jenis biaya yang harus disertakan
Anda perlu menentukan biaya mana dari berikut ini yang dimasukkan dalam perhitungan Anda:
- Spread atau proksi biaya transaksi: Seberapa besar setiap pergerakan berkurang akibat gesekan saat trading.
- Slippage: Perbedaan yang diharapkan antara harga yang diamati dan harga eksekusi.
- Frekuensi rebalancing: Jika definisi Anda menyiratkan masuk dan keluar pada titik-titik tertentu, asumsi Anda tentang seberapa cepat Anda dapat bertindak memengaruhi hasil.
Jika Anda tidak dapat membenarkan nilai numerik, Anda tetap bisa melakukan uji sensitivitas (misalnya, mengevaluasi bagaimana hasil berubah di bawah asumsi biaya “rendah/sedang/tinggi”). Ini menjaga pengujian tetap fokus pada robustness, bukan pada satu angka biaya yang terlalu optimistis.
Kondisi pasar yang bervariasi
Pisahkan mekanisme yang stabil dari kondisi yang bervariasi. Misalnya, rezim volatilitas, kekuatan tren, dan kepadatan peristiwa dapat mengubah cara swing terlihat. Prosedur pengujian Anda harus mencatat deskriptor rezim (bahkan yang sederhana) dan memeriksa apakah definisi tersebut berperforma serupa di antara rezim-rezim tersebut.
Anda juga harus menyatakan asumsi dengan jelas:
- Frekuensi data apa yang digunakan?
- Bagaimana titik data yang hilang ditangani?
- Apakah zona waktu atau sesi trading relevan untuk dataset Anda?
Bahkan ketika hasil bervariasi, Anda sering kali dapat mengidentifikasi kapan dan mengapa definisi berhenti berperilaku seperti yang diharapkan.
Jalankan robustness checks yang menargetkan mode kegagalan
Pengujian “Swing Definition” yang kuat lebih dari sekadar melaporkan satu hasil. Ia memeriksa apakah hasil tersebut rapuh atau stabil di bawah perubahan yang masuk akal.
Jenis robustness check
Pertimbangkan setidaknya kategori berikut:
- Sensitivitas parameter: Jika definisi Anda menggunakan ambang batas (misalnya, ukuran pergerakan minimum), uji nilai ambang batas yang berdekatan. Jika kesimpulan berbalik hanya dengan perubahan kecil, definisi kemungkinan besar tidak stabil.
- Robustness terhadap sampel/periode: Evaluasi di beberapa segmen waktu (bulan/tahun yang berbeda). Hubungan historis tidak menjamin hasil di masa depan, jadi Anda mencari konsistensi.
- Sensitivitas eksekusi: Ganggu waktu masuk dan keluar dalam jendela kecil untuk merepresentasikan keterlambatan yang realistis.
- Sensitivitas biaya: Ulangi evaluasi di bawah beberapa asumsi biaya.
- Robustness rezim: Bandingkan hasil di berbagai kondisi volatilitas/tren.
Batasan material dan mode kegagalan
Setidaknya satu mode kegagalan harus dinyatakan secara eksplisit. Yang umum meliputi:
- Ambiguitas titik pembalikan: Banyak pasar memiliki swing yang saling tumpang tindih. Jika aturan Anda mendefinisikan awal/akhir menggunakan ekstrem lokal, ia mungkin memberi label pergerakan harga yang sama secara berbeda tergantung pada noise kecil.
- Ketidakcocokan horizon: Horizon waktu swing Anda mungkin tidak sesuai dengan persistensi aktual pergerakan pada beberapa rezim, sehingga “hasil masa depan” yang diukur menjadi menurun.
- Bias seleksi: Jika Anda mendefinisikan swing menggunakan informasi yang tidak tersedia pada waktu keputusan, pengujian Anda menjadi tidak valid.
Untuk menguji definisi Anda dengan benar, pelabelan event Anda harus hanya didasarkan pada informasi yang tersedia pada saat swing tersebut dinyatakan.
Gunakan pelaporan yang jelas agar pihak lain dapat memverifikasi secara independen
Untuk memenuhi tujuan penjelasan yang akurat, mandiri, dan dapat diverifikasi secara independen, pelaporan harus mencakup:
- Aturan pelabelan swing yang tepat (langkah deterministik).
- Hipotesis yang tepat dan metrik outcome.
- Definisi baseline.
- Metode pembagian data dan batasannya.
- Asumsi biaya dan eksekusi yang digunakan.
- Robustness checks yang dilakukan, termasuk apa yang berubah dan apa yang tetap konstan.
Tanpa ini, peneliti lain tidak dapat mereproduksi pengujian.
Daftar periksa verifikasi dan pertanyaan berikutnya
Cara praktis untuk memverifikasi apakah Swing Definition Anda sudah siap diuji adalah dengan bertanya: