Dalam artikel ini saya ingin memperkenalkan metode yang saya gunakan untuk mengidentifikasi strategi perdagangan algoritmik yang menguntungkan. Tujuan kami hari ini adalah untuk memahami secara rinci bagaimana menemukan, mengevaluasi dan memilih sistem tersebut. Saya akan menjelaskan bagaimana mengidentifikasi strategi adalah tentang preferensi pribadi seperti tentang kinerja strategi, bagaimana menentukan jenis dan kuantitas data historis untuk pengujian, bagaimana menilai strategi perdagangan dengan tidak bergairah dan akhirnya bagaimana melanjutkan ke tahap backtesting dan implementasi strategi.
Untuk menjadi trader yang sukses - baik secara discretionary atau algorithmically - perlu untuk bertanya pada diri sendiri beberapa pertanyaan yang jujur. Trading memberi Anda kemampuan untuk kehilangan uang pada tingkat yang mengkhawatirkan, jadi perlu untuk
Saya akan mengatakan pertimbangan yang paling penting dalam trading adalah menyadari kepribadian Anda sendiri. Trading, dan trading algoritmik khususnya, membutuhkan tingkat disiplin, kesabaran, dan detasemen emosional yang signifikan. Karena Anda membiarkan algoritma melakukan trading Anda untuk Anda, perlu untuk bertekad untuk tidak mengganggu strategi saat sedang dieksekusi. Ini bisa sangat sulit, terutama pada periode penarikan yang diperpanjang. Namun, banyak strategi yang telah terbukti sangat menguntungkan dalam backtest dapat hancur oleh gangguan sederhana.
Pertimbangan berikutnya adalah waktu. Apakah Anda memiliki pekerjaan penuh waktu? Apakah Anda bekerja paruh waktu? Apakah Anda bekerja dari rumah atau memiliki perjalanan panjang setiap hari? Pertanyaan ini akan membantu menentukan frekuensi strategi yang harus Anda cari. Bagi Anda yang bekerja penuh waktu, strategi berjangka intraday mungkin tidak sesuai (setidaknya sampai sepenuhnya otomatis!).
Saya percaya bahwa perlu untuk melakukan penelitian terus menerus ke dalam strategi trading Anda untuk mempertahankan portofolio yang menguntungkan secara konsisten. Beberapa strategi tetap
Anda juga perlu mempertimbangkan modal perdagangan Anda. Jumlah minimum ideal yang diterima secara umum untuk strategi kuantitatif adalah 50.000 USD (sekitar £ 35.000 untuk kami di Inggris). Jika saya memulai lagi, saya akan memulai dengan jumlah yang lebih besar, mungkin lebih dekat 100.000 USD (sekitar £ 70.000). Ini karena biaya transaksi dapat sangat mahal untuk strategi frekuensi menengah hingga tinggi dan perlu memiliki modal yang cukup untuk menyerapnya pada saat penarikan. Jika Anda mempertimbangkan untuk memulai dengan kurang dari 10.000 USD maka Anda harus membatasi diri pada strategi frekuensi rendah, perdagangan dalam satu atau dua aset, karena biaya transaksi akan dengan cepat memakan pengembalian Anda. Interactive Brokers, yang merupakan salah satu broker paling ramah bagi mereka yang memiliki keterampilan pemrograman, karena API minimumnya, memiliki akun ritel sebesar 10.000 USD.
Kemampuan pemrograman adalah faktor penting dalam menciptakan strategi perdagangan algoritma otomatis. Memiliki pengetahuan dalam bahasa pemrograman seperti C ++, Java, C #, Python atau R akan memungkinkan Anda untuk membuat penyimpanan data end-to-end, mesin backtest dan sistem eksekusi sendiri. Ini memiliki sejumlah keuntungan, yang utamanya adalah kemampuan untuk sepenuhnya menyadari semua aspek infrastruktur perdagangan. Ini juga memungkinkan Anda untuk mengeksplorasi strategi frekuensi yang lebih tinggi karena Anda akan memiliki kendali penuh atas tumpukan teknologi Anda. Meskipun ini berarti Anda dapat menguji perangkat lunak Anda sendiri dan menghilangkan bug, ini juga berarti lebih banyak waktu yang dihabiskan untuk mengkode infrastruktur dan lebih sedikit untuk menerapkan strategi, setidaknya di bagian awal karir trading Anda. Anda mungkin menemukan bahwa Anda nyaman berdagang di Excel atau MATLAB dan dapat melakukan outsourcing pengembangan komponen lain.
Anda perlu bertanya pada diri sendiri apa yang Anda harapkan untuk dicapai dengan perdagangan algoritmik. Apakah Anda tertarik pada pendapatan reguler, yang mana Anda berharap untuk menarik keuntungan dari akun trading Anda? Atau, apakah Anda tertarik pada keuntungan modal jangka panjang dan mampu berdagang tanpa perlu menarik dana? ketergantungan pendapatan akan menentukan frekuensi strategi Anda. Penarikan pendapatan yang lebih teratur akan membutuhkan strategi perdagangan frekuensi yang lebih tinggi dengan volatilitas yang lebih rendah (yaitu rasio Sharpe yang lebih tinggi).
Akhirnya, jangan tertipu oleh gagasan menjadi sangat kaya dalam waktu singkat! Perdagangan Algo BUKAN skema cepat kaya - jika ada, itu bisa menjadi skema cepat miskin. Dibutuhkan disiplin, penelitian, ketekunan dan kesabaran yang signifikan untuk menjadi sukses dalam perdagangan algoritmik.
Terlepas dari persepsi umum yang sebaliknya, sebenarnya cukup mudah untuk menemukan strategi perdagangan yang menguntungkan di domain publik. Tidak pernah ada ide perdagangan yang lebih mudah tersedia daripada saat ini. Jurnal keuangan akademik, server pra-cetak, blog perdagangan, forum perdagangan, majalah perdagangan mingguan dan teks spesialis menyediakan ribuan strategi perdagangan untuk mendasarkan ide Anda.
Tujuan kami sebagai peneliti perdagangan kuantitatif adalah untuk membangun pipa strategi yang akan memberi kami aliran ide perdagangan yang sedang berlangsung. Idealnya kami ingin menciptakan pendekatan metodis untuk mencari, mengevaluasi dan menerapkan strategi yang kami temui. Tujuan pipa adalah untuk menghasilkan jumlah ide baru yang konsisten dan memberi kami kerangka kerja untuk menolak sebagian besar ide ini dengan pertimbangan emosional minimal.
Kita harus sangat berhati-hati untuk tidak membiarkan bias kognitif mempengaruhi metodologi pengambilan keputusan kita. Ini bisa sesederhana memiliki preferensi untuk satu kelas aset daripada yang lain (emas dan logam mulia lainnya terlintas dalam pikiran) karena mereka dianggap lebih eksotis. Tujuan kita harus selalu menemukan strategi yang menguntungkan secara konsisten, dengan harapan positif.
Jika Anda benar-benar tidak terbiasa dengan konsep strategi trading maka tempat pertama untuk mencari adalah dengan buku teks yang sudah mapan. teks klasik menyediakan berbagai ide yang lebih sederhana, lebih langsung, dengan yang membiasakan diri dengan perdagangan kuantitatif. berikut adalah pilihan yang saya rekomendasikan bagi mereka yang baru mengenal perdagangan kuantitatif, yang secara bertahap menjadi lebih canggih saat Anda bekerja melalui daftar:
Untuk daftar buku perdagangan kuantitatif yang lebih panjang, silakan kunjungi daftar bacaan QuantStart.
Di tempat berikutnya untuk menemukan strategi yang lebih canggih adalah dengan forum perdagangan dan blog perdagangan. Namun, catatan hati-hati: Banyak blog perdagangan mengandalkan konsep analisis teknis. Analisis teknis melibatkan penggunaan indikator dasar dan psikologi perilaku untuk menentukan tren atau pola pembalikan harga aset.
Meskipun sangat populer di ruang perdagangan secara keseluruhan, analisis teknis dianggap agak tidak efektif di komunitas keuangan kuantitatif. Beberapa telah menyarankan bahwa tidak lebih baik daripada membaca horoskop atau mempelajari daun teh dalam hal kekuatan prediktifnya!
Berikut adalah daftar blog dan forum perdagangan algoritmik yang sangat dihormati:
Setelah Anda memiliki beberapa pengalaman dalam mengevaluasi strategi yang lebih sederhana, saatnya untuk melihat penawaran akademik yang lebih canggih. Beberapa jurnal akademik akan sulit diakses, tanpa langganan tinggi atau biaya satu kali. Jika Anda adalah anggota atau alumni universitas, Anda harus dapat mendapatkan akses ke beberapa jurnal keuangan ini. Jika tidak, Anda dapat melihat server pra-cetak, yang merupakan repositori internet draf akhir makalah akademik yang sedang menjalani tinjauan rekan. Karena kami hanya tertarik pada strategi yang dapat kami replikasi dengan sukses, backtest dan mendapatkan profitabilitas, tinjauan rekan kurang penting bagi kami.
Kelemahan utama dari strategi akademik adalah bahwa mereka seringkali dapat menjadi ketinggalan zaman, memerlukan data historis yang tidak jelas dan mahal, perdagangan dalam kelas aset yang tidak likuid atau tidak mempertimbangkan biaya, geser atau spread.
Berikut adalah daftar server pra-cetak dan jurnal keuangan yang lebih populer yang dapat Anda sumber ide dari:
Bagaimana dengan membentuk strategi kuantitatif Anda sendiri? hal ini umumnya membutuhkan (tetapi tidak terbatas pada) keahlian dalam satu atau lebih kategori berikut:
Ada, tentu saja, banyak bidang lain untuk quants untuk diselidiki.
Dengan terus memantau sumber-sumber ini setiap minggu, atau bahkan setiap hari, Anda menyiapkan diri untuk menerima daftar strategi yang konsisten dari berbagai sumber. Langkah selanjutnya adalah menentukan bagaimana menolak sebagian besar strategi ini untuk meminimalkan pemborosan waktu dan sumber daya backtesting pada strategi yang mungkin tidak menguntungkan.
Pertimbangan pertama, dan bisa dibilang yang paling jelas adalah apakah Anda benar-benar memahami strategi. Apakah Anda dapat menjelaskan strategi secara ringkas atau apakah memerlukan serangkaian peringatan dan daftar parameter yang tak ada habisnya? Selain itu, apakah strategi memiliki dasar yang baik dan solid dalam kenyataan? Misalnya, bisakah Anda menunjukkan beberapa alasan perilaku atau kendala struktur dana yang mungkin menyebabkan pola yang Anda coba eksploitasi? Apakah kendala ini bertahan terhadap perubahan rezim, seperti gangguan lingkungan peraturan yang dramatis? Apakah strategi bergantung pada aturan statistik atau matematika yang kompleks? Apakah berlaku untuk seri waktu keuangan apa pun atau apakah spesifik untuk kelas aset yang diklaim menguntungkan? Anda harus terus memikirkan faktor-faktor ini saat mengevaluasi metode perdagangan baru, jika tidak Anda mungkin membuang banyak waktu untuk mencoba menguji kembali dan mengoptimalkan strategi yang tidak menguntungkan.
Setelah Anda memutuskan bahwa Anda memahami prinsip-prinsip dasar strategi, Anda perlu memutuskan apakah itu sesuai dengan profil kepribadian Anda yang disebutkan di atas. Ini bukan pertimbangan yang tidak jelas seperti kedengarannya! Strategi akan berbeda secara substansial dalam karakteristik kinerja mereka. Ada tipe kepribadian tertentu yang dapat menangani periode penurunan yang lebih signifikan, atau bersedia menerima risiko yang lebih besar untuk pengembalian yang lebih besar. Meskipun kita, sebagai kuant, mencoba dan menghilangkan bias kognitif sebanyak mungkin dan harus dapat mengevaluasi strategi dengan tidak bergairah, bias akan selalu merayap. Oleh karena itu kita membutuhkan sarana yang konsisten dan tidak emosional untuk menilai kinerja strategi. Berikut adalah daftar kriteria yang saya menilai strategi baru potensial dengan:
Perhatikan bahwa kita belum membahas pengembalian sebenarnya dari strategi. Mengapa ini? Secara terpisah, pengembalian sebenarnya memberikan kita informasi yang terbatas mengenai efektivitas strategi. Mereka tidak memberi Anda wawasan tentang leverage, volatilitas, patokan atau persyaratan modal. Dengan demikian strategi jarang dinilai berdasarkan pengembalian mereka saja. Selalu pertimbangkan atribut risiko dari strategi sebelum melihat pengembalian.
Pada tahap ini, banyak strategi yang ditemukan dari pipa Anda akan ditolak karena tidak memenuhi persyaratan modal, kendala leverage, toleransi penarikan maksimum atau preferensi volatilitas Anda. Strategi yang tersisa sekarang dapat dipertimbangkan untuk backtesting. Namun, sebelum ini mungkin, perlu untuk mempertimbangkan satu kriteria penolakan terakhir - data historis yang tersedia untuk menguji strategi ini.
Saat ini, luasnya persyaratan teknis di seluruh kelas aset untuk penyimpanan data historis sangat besar. Untuk tetap kompetitif, baik pihak beli (dana) dan pihak jual (bank investasi) berinvestasi besar-besaran dalam infrastruktur teknis mereka. Sangat penting untuk mempertimbangkan pentingnya. Secara khusus, kami tertarik pada ketepatan waktu, akurasi dan persyaratan penyimpanan. Saya sekarang akan menguraikan dasar-dasar untuk memperoleh data historis dan cara menyimpannya. Sayangnya ini adalah topik yang sangat mendalam dan teknis, jadi saya tidak akan dapat mengatakan semuanya dalam artikel ini. Namun, saya akan menulis lebih banyak tentang ini di masa depan karena pengalaman industri saya sebelumnya di industri keuangan terutama berkaitan dengan akuisisi, penyimpanan dan akses data keuangan.
Dalam bagian sebelumnya kami telah menyiapkan pipa strategi yang memungkinkan kami untuk menolak strategi tertentu berdasarkan kriteria penolakan pribadi kami sendiri. Dalam bagian ini kami akan menyaring lebih banyak strategi berdasarkan preferensi kami sendiri untuk memperoleh data historis. Pertimbangan utama (terutama di tingkat praktisi ritel) adalah biaya data, persyaratan penyimpanan dan tingkat keahlian teknis Anda. Kami juga perlu mendiskusikan berbagai jenis data yang tersedia dan pertimbangan yang berbeda yang akan dikenakan setiap jenis data kepada kami.
Mari kita mulai dengan membahas jenis data yang tersedia dan isu-isu utama yang perlu kita pikirkan:
Seperti yang dapat dilihat, setelah strategi telah diidentifikasi melalui pipa, akan diperlukan untuk mengevaluasi ketersediaan, biaya, kompleksitas dan rincian implementasi dari seperangkat data historis tertentu. Anda mungkin merasa perlu untuk menolak strategi yang didasarkan hanya pada pertimbangan data historis. Ini adalah area yang besar dan tim PhD bekerja dengan dana besar memastikan penetapan harga akurat dan tepat waktu. Jangan meremehkan kesulitan menciptakan pusat data yang kuat untuk tujuan backtesting Anda!
Saya ingin mengatakan, bagaimanapun, bahwa banyak platform backtesting dapat menyediakan data ini untuk Anda secara otomatis - dengan biaya. Dengan demikian itu akan mengambil banyak dari implementasi rasa sakit dari Anda, dan Anda dapat berkonsentrasi murni pada implementasi strategi dan optimasi. Alat seperti TradeStation memiliki kemampuan ini. Namun, pandangan pribadi saya adalah untuk menerapkan sebanyak mungkin secara internal dan menghindari outsourcing bagian dari tumpukan ke vendor perangkat lunak.
Sekarang setelah kita telah membahas isu-isu yang mengelilingi data historis, saatnya untuk mulai menerapkan strategi kita dalam mesin backtesting.