Pada awalnya banyak trader kuantitatif mengoptimalkan parameter, seringkali lebih atau kurang terjadi tiga jenis kesalahan: bias prospektif, optimasi berlebihan, dan penyesuaian kurva. Ketiga perangkap ini mudah meledak jika salah satunya terjadi dalam proses pengembangan strategi dan pengoptimalan parameter, dan hasilnya adalah bencana. Kesalahan ini dapat dikatakan sebagai ranjau darat di depan trader kuantitatif, sedikit tidak berhati-hati.
Pertama-tama, kita akan membahas tentang forward bias. Forward bias mengacu pada pengembangan strategi yang mengambil beberapa informasi dari masa depan, yang pada dasarnya tidak mungkin dilakukan dalam operasi disk. Forward bias terutama muncul dalam dua aspek, yaitu fungsi masa depan dan sinyal flash.
Sebagai contoh untuk menggambarkan fungsi masa depan, jika suatu strategi garis rata adalah: Anda membuka posisi dengan harga terbuka saat Anda melewati garis rata pada harga saat ini, untuk kenyamanan, kami memberi nama kepada strategi ini, yang disebut penarikan masa depan A, penarikan masa depan A. Strategi penarikan masa depan A adalah strategi yang biasa menggunakan fungsi masa depan, karena saat penarikan terbuka Anda tidak dapat mengetahui apakah garis K ini akhirnya dapat menembus garis rata dan mengeluarkan sinyal penarikan posisi, penarikan masa depan A menggunakan harga masa depan untuk menentukan pembelian dan penjualan sebelumnya. Dalam operasi praktis, kita tidak akan pernah tahu pada saat penarikan terbuka apakah masa depan mungkin terobos, jika penarikan masa depan A digunakan untuk tes, akan menunjukkan kinerja yang sangat baik, tetapi dalam waktu singkat penarikan terjadi di pasar nyata, tetapi tidak dapat dilakukan dengan harga terbuka, sehingga strategi penarikan masa depan A hampir tidak mungkin menjadi strategi untuk mendapatkan keuntungan lagi dalam perdagangan.
Ada juga situasi yang disebut pencurian harga, yang sebenarnya termasuk dalam kategori fungsi masa depan. Sebagai contoh, strategi dengan frekuensi yang lebih tinggi, kita sementara menamai pencurian A, pencurian A Strategi ini adalah bahwa ketika harga menembus harga tertinggi hari itu, pencurian A dilakukan dengan harga tertinggi hari itu. Pencurian A tampaknya tidak ada masalah, tetapi perhatikan bahwa pencurian A berarti lebih tinggi dari, yaitu, setidaknya harus lebih tinggi dari harga tertinggi hari itu satu detik untuk disebut sebagai pencurian, yaitu kondisi pencurian muncul harga saat ini = harga tertinggi hari itu + 1 tick pencurian A disebut pencurian. Ketika situasi ini terjadi, pencurian A hanya diminta untuk membuka toko di tempat pencurian harga tertinggi hari itu + 0 tick pencurian A, yang jelas mencuri harga pencurian tick.
Jangan meremehkan kesalahan tick ini, misalnya dengan spiral steel, asumsikan bahwa 250 hari perdagangan dalam setahun, setiap hari perdagangan dilakukan satu kali, maka sepanjang tahun 500 tick, 500 tick biaya slippage akan melebihi modal Anda. Situasi yang sebenarnya tidak hanya tidak mungkin membuat Anda berdagang di bawah harga satu tick, lebih banyak situasi sebaliknya lebih tinggi dari satu atau bahkan lebih tick harga, karena alasan yang sangat sederhana, sebagian besar pedagang tren sinyal hampir sama, di beberapa titik kunci (misalnya, sinyal penambangan di titik tertinggi suatu hari), di depan banyak pedagang tren akan terbentuk persaingan, kita bersaing untuk membeli setelah itu, persaingan menyebabkan harga di titik-titik kunci ini menjadi sangat berfluktuasi, fluktuasi ini biasanya tidak menguntungkan untuk membangun program perdagangan. Jadi ketika membangun sistem perdagangan yang lebih sering, yang paling penting adalah mempertimbangkan slippage dan lebih banyak titik.
Selanjutnya, mari kita bahas tentang sinyal flash, jika aturan dari strategi equity lainnya adalah: Anda akan membuka posisi dengan harga terobosan saat harga close out lebih tinggi dari rata-rata, kita masih memberi nama untuknya, asumsikan bahwa strategi ini disebut flash B. Flash B adalah strategi dengan sinyal flash, flash B tidak dapat dilihat secara intuitif seperti flash A di masa depan dalam pengujian, tetapi ketika flash B digunakan untuk perdagangan nyata, Anda akan menemukan masalah di dalamnya.
Fungsi masa depan dan sinyal berkedip, yang kita sebut sebagai bias prospektif, berkedip B dan berkedip masa depan A memiliki satu kesamaan, yaitu menggunakan harga masa depan untuk menentukan pembelian dan penjualan sebelumnya, dan ini adalah kesalahan yang ingin kita hindari.
Berbicara tentang over-optimisasi dan curve fit, over-optimisasi adalah mengoptimalkan beberapa parameter dari suatu strategi secara berulang hingga optimal, kemudian membuat strategi dan mengendalikan risiko berdasarkan parameter terbaik yang diperoleh. Jelas, jika Anda mengoptimalkan dengan kekerasan, bahkan jika itu adalah strategi yang tidak dapat menghasilkan uang, Anda dapat menghasilkan keuntungan dari parameter individu, tetapi hasilnya sulit untuk menghasilkan keuntungan di masa depan.
Ada dua cara yang efektif untuk menghindari optimasi berlebihan, yaitu dengan menggunakan parameter yang lebih sedikit, semakin sedikit parameter, semakin sedikit proyek yang dapat dioptimalkan, dan lebih baik untuk menghindari overoptimisasi alami, dan, semakin sedikit strategi yang dibangun dengan parameter, seringkali lebih kokoh, terlepas dari efektivitas atau robustitasnya, dapat melampaui banyak strategi yang kompleks.
Cara kedua untuk menghindari over-optimisasi adalah dengan melakukan backtesting dengan parameter default dari suatu strategi, atau dengan beberapa set parameter acak untuk menguji suatu strategi, jika strategi tersebut dapat menghasilkan uang baik dengan parameter default maupun dengan parameter acak, maka strategi tersebut harus dikembangkan lebih lanjut; sebaliknya, jika strategi hanya memiliki beberapa parameter yang dapat menghasilkan uang, maka saran saya adalah untuk memutuskan untuk meninggalkan strategi tersebut. Selain itu, Anda harus menggunakan strategi yang dianggap dapat digunakan untuk pengujian beberapa varietas, dan jika suatu strategi hanya dapat digunakan untuk varietas tertentu, saya juga sangat merekomendasikan untuk tidak menggunakan strategi ini untuk disk.
Curve fit dan over-optimisasi lebih mirip, yaitu menambahkan beberapa aturan yang tidak perlu untuk menyesuaikan data historis. Sebagai contoh, strategi saham tertentu, kita hanya menyebutnya penyetelan C fit, yang menetapkan 3 tahun untuk melakukan perdagangan bergolak, 3 tahun untuk perdagangan tren. Asumsikan penyetelan C fit strategi mulai diuji dari Januari 2010 sampai Desember 2012 adalah melakukan aturan bergolak, Januari 2013 sampai Desember 2015 melakukan aturan tren, dan mulai lagi pada Januari 2016 aturan bergolak.
Metode untuk menghindari dan mengoptimalkan terlalu banyak dari kecocokan kurva adalah sama, yaitu dengan menggunakan aturan sesedikit mungkin untuk membangun sistem perdagangan, orang-orang yang memiliki sedikit pengetahuan matematika tahu, sebuah fungsi 2 kali, akan dapat disesuaikan dengan situasi satu putaran, sebuah fungsi 7 kali, akan dapat disesuaikan dengan situasi 6 putaran, hanya dengan menambahkan tambahan satu aturan, dapat disesuaikan dengan perubahan di pasar, dengan strategi yang disesuaikan, mungkin akan mencapai 100% keberhasilan, tetapi hal ini tidak masuk akal baik untuk sejarah umum, atau untuk masa depan.
Strategi yang menggunakan bias prospektif, over-optimisasi, dan penyesuaian kurva memiliki kesamaan, yaitu kinerja strategi yang sangat baik pada saat pengembalian, tetapi tidak dapat dimasukkan ke dalam real time, ini adalah tindakan yang menipu diri sendiri, tetapi lebih banyak kasus adalah banyak pedagang yang secara tidak sadar membuat kesalahan ini dalam pengembangan strategi, melakukan pengembalian dengan beberapa logika dan rumus yang salah, dan menggunakan hasil pengembalian langsung untuk keuntungan yang diharapkan dan manajemen risiko mereka sendiri.
Jadi, sebelum saya melihat kode dari strategi orang lain, tidak akan mudah menilai keunggulan dan kelemahan strategi tersebut, karena banyak strategi pembelian online, sebagian besar adalah strategi dengan masalah di atas, dan masalah-masalah ini, sangat sedikit yang mungkin ditemukan sebelum memasuki pintu perdagangan kuantitatif, bahkan jika Anda dapat membeli strategi yang benar-benar menghasilkan uang, sebelumnya saya juga telah membuktikan kepada Anda bahwa Anda masih tidak dapat melaksanakan strategi ini dalam jangka panjang, jadi, jangan berpikir untuk mengambil jalan pintas, strategi harus dikembangkan dan dibangun oleh diri sendiri, tidak akan jatuh dari langit, kue pasti menjadi perangkap.
Dikutip dari Python Quantitative Transaction Community