Dalam artikel ini, kami akan membahas desain dan implementasi algoritma perdagangan dalam mata uang Kanada. Secara khusus, kami fokus pada algoritma eksekusi, algoritma pembuat pasar dan beberapa pertimbangan mikrostruktur pasar. Kami juga mempelajari penyimpangan praktik dari teori, terutama dalam menangani karakteristik pasar cryptocurrency.
Tujuan dari algoritma eksekusi adalah untuk mengubah status portofolio menjadi berbagai keadaan, sambil meminimalkan biaya untuk melakukannya. Misalnya, jika Anda ingin meningkatkan tingkat eksposur BTCUSD sebesar 1000, Anda mungkin tidak ingin memasukkan pesanan pasar ke saluran perdagangan BitMEX segera, yang menghasilkan sejumlah besar titik geser. Sebaliknya, Anda dapat mempertimbangkan untuk mendapatkan posisi yang Anda inginkan secara perlahan melalui kombinasi pasar dan batas pesanan dari beberapa bursa yang berbeda.
Algoritma eksekusi biasanya memiliki 3 lapisan: microtrader, microtrader dan smart router.
Layer macrotrader membagi pesanan awal yang besar atau pesanan induk menjadi pesanan yang lebih kecil yang mencakup waktu. Sebenarnya, ini adalah bagian penjadwalan dari seluruh algoritma. VWAP, TWAP, dan POV adalah contoh umum dan sederhana dari algoritma macrotrader. Secara umum, ada banyak model dampak pasar yang berbeda yang dapat digunakan untuk merancang lapisan macrotrader yang kompleks. Desain model dampak pasar berfokus pada respons pasar terhadap eksekusi.
Pembacaan yang diperluas: pengaruh pasar mulai menurun setelah penerapan perdagangan algoritmik:https://arxiv.org/pdf/1412.2152.pdf.
lapisan microtrader menentukan apakah untuk mengeksekusi setiap sub order sebagai market order atau limit order, dan jika itu adalah limit order, harga apa yang harus ditentukan. Ada sedikit literatur tentang desain microtrader, karena ukuran sub order biasanya merupakan bagian kecil dari seluruh pasar, sehingga cara mengimplementasikannya tidak penting. Namun, pasar mata uang digital berbeda, karena likuiditas sangat kecil, dan bahkan untuk sub order ukuran biasa dalam prakteknya, titik geser sangat jelas. Desain Microtrader biasanya berfokus pada waktu dan kedalaman, posisi antrian dan karakteristik lain dari mikrostruktur pasar.
Lapisan router cerdas memutuskan bagaimana mengarahkan pesanan ke bursa yang berbeda. Misalnya, jika Kraken memiliki likuiditas 60% dan GDAX (Coinbase ProPrime) memiliki likuiditas 40% pada tingkat harga tertentu, maka microtrader harus mengimpor pesanan ke bursa Kraken dan GDAX masing-masing pada tingkat 60% dan 40%.
Sekarang Anda dapat mengatakan bahwa arbitrager dan pembuat pasar di pasar mentransfer likuiditas dari satu bursa ke bursa lain, jadi jika Anda mengeksekusi setengah dari pesanan di Kraken dan menunggu beberapa detik, beberapa likuiditas akan ditambahkan dari arbers dan stat arbers ke likuiditas GDAX di Kraken, dan Anda dapat menyelesaikan sisa pekerjaan dengan harga yang sama. Namun, bahkan dalam hal ini, arbers akan mengenakan biaya tambahan untuk keuntungan sendiri dan mentransfer biaya lindung nilai ke biaya pembuatan pasar Kraken. Selain itu, jumlah pesanan yang dikeluarkan oleh beberapa peserta pasar melebihi skala yang ingin mereka lakukan di beberapa bursa, dan skala berlebih akan dibatalkan setelah kerugian dihentikan.
Akhirnya, lebih baik memiliki router lokal pintar Anda sendiri. Router lokal pintar ini juga memiliki keuntungan keterlambatan untuk layanan router pintar pihak ketiga. Dalam kasus pertama, Anda dapat mengarahkan langsung ke bursa, sementara dalam kasus kedua, Anda perlu mengirim pesan ke layanan router pihak ketiga terlebih dahulu, dan kemudian mereka mengirim pesanan Anda ke bursa (selain itu, Anda harus membayar biaya router ke pihak ketiga). Jumlah dua kaki segitiga yang lebih besar dari kaki ketiga.
Market making mengacu pada penyediaan likuiditas dan kompensasi segera bagi peserta pasar lainnya. Anda mengambil risiko persediaan sebagai imbalan atas nilai yang diharapkan positif. Pada akhirnya, ada dua alasan mengapa pembuat pasar mendapatkan kompensasi. Pertama, penerima pasar memiliki preferensi waktu dan mereka membutuhkan kedekatan. Sebagai imbalan, pembuat pasar yang memfasilitasi likuiditas dapat mengkompensasi preferensi waktu dan kesabaran mereka yang lebih rendah. Kedua, keuntungan PnL pembuat pasar cenderung kiri, dan sebagian besar pedagang biasanya memiliki preferensi yang cenderung kanan. Dengan kata lain, pembuat pasar mirip dengan perusahaan perjudian di pasar perjudian, kasino, perusahaan asuransi dan lotere nasional. Mereka sering memenangkan bagian kecil, tetapi mereka biasanya tidak kehilangan bagian besar. Sebagai kompensasi untuk pengembalian yang tidak terduga, pembuat pasar diberi kompensasi untuk nilai yang diharapkan.
Pembacaan diperpanjang: kemiringan:https://en.wikipedia.org/wiki/Skewness.
Dari perspektif tingkat tinggi, limit order adalah opsi bebas di pasar lain. Pasar lain memiliki hak tetapi tidak memiliki kewajiban untuk membeli atau menjual aset dengan harga batas limit order. Di pasar di mana informasi sepenuhnya diketahui, tidak ada yang akan menjual opsi bebas. Ini karena pasar secara keseluruhan bukan pasar dengan informasi yang sepenuhnya diketahui dan tidak akan pernah masuk akal untuk menjual opsi bebas. Di sisi lain, jika informasi pasar benar-benar tidak diketahui, pembuat pasar netral risiko bersedia menjual opsi order limit bebas ini dengan perbedaan harga yang kecil, karena semua transaksi adalah kebisingan.
Ketika merancang algoritma pembuat pasar, ada tiga pandangan yang harus dipertimbangkan: pembuat pasar, peserta pasar dan pembuat pasar lainnya.
Jika Anda sudah memiliki terlalu banyak risiko aset, Anda dapat mengurangi kutipan Anda, dan sebaliknya. Anda melakukan ini karena dua alasan yang berbeda. Pertama, sebagai perusahaan, Anda memiliki tingkat keengganan risiko tertentu (mungkin lebih sedikit daripada individu, tetapi kurva utilitas mata uang Anda masih cekung).
Bentuk fungsi utilitas ini memiliki banyak struktur (seperti CARA, CRRA, dan HARA, dll). Kedua, sebagai penyedia likuiditas pasif di pasar, Anda akan menghadapi risiko seleksi yang merugikan. Penerima likuiditas positif mungkin tahu apa yang tidak Anda miliki, atau hanya lebih pintar dari Anda. Ini pada dasarnya adalah masalah menjual opsi gratis ke pasar.
Selain itu, bahkan pada tingkat operasi mekanis, pesanan pasar dengan pesanan harga pasar juga akan mengurangi harga dengan cara penetapan harga pada harga pasar, dan pesanan pasar dengan kutipan yang lebih tinggi akan dihargai pada harga pasar. Pada saat yang tepat dari setiap transaksi, Anda selalu berada di sisi yang salah. Selain itu, kutipan pembuat pasar akan memiliki dampak pasar pasif. Dengan kata lain, tindakan mengirim pesanan ke buku pesanan yang belum terisi setidaknya akan menjauhkan pasar dari Anda.
Pembacaan lanjutan: Fungsi penghindaran risiko:https://en.wikipedia.org/wiki/Risk_aversion.
Pandangan penerima pasar diekspresikan oleh aliran pesanan. Frekuensi pesanan yang diperhitungkan volume sebagai fungsi dari kedalaman harus memiliki beberapa atribut kunci.
Fungsi harus:
Selain itu, faktor lain yang tidak diketahui adalah berapa banyak
Selain itu, dengan mempertimbangkan dua kasus dengan bentuk buku pesanan yang sama, penawaran terbaik dari buku pesanan terakhir akan menunjukkan bahwa harga wajar lebih rendah dari penawaran terbaik dari buku pesanan sebelumnya. Pertanyaan lain adalah apakah sejarah buku pesanan itu penting. Jika demikian, apakah kita harus memperhatikan waktu harga atau waktu volume transaksi? Jadi dengan mempertimbangkan karakteristik aliran pasar, di mana pesanan batas harga terbaik pembuat pasar harus ditempatkan? Jika Anda memperketat kedalaman di bagian atas buku pesanan, pesanan kedalaman Anda akan banyak, tetapi mereka sangat sedikit setiap kali. Jika Anda memperketat kedalaman di bagian bawah buku pesanan, pesanan mendalam Anda akan sedikit, tetapi ada banyak setiap kali.
Ini sebenarnya adalah masalah optimasi cembung dengan maksimum global yang unik. Faktor lain yang perlu dipertimbangkan adalah bahwa aliran pesanan tiba sepanjang waktu, yang terlihat seperti proses
Pembacaan yang diperpanjang: intensitas kedatangan order dalam hal kedalaman (https://arxiv.org/pdf/1204.0148.pdf).
Bacaan lanjutan: Proses Hawkes (http://jheusser.github.io/2013/09/08/hawkes.html)
Pendapat pembuat pasar lainnya diwakili oleh buku pesanan, yang mengungkapkan beberapa informasi dari pembuat pasar lainnya. Harga beli di dekat bagian atas buku pesanan lebih dari harga jual, menunjukkan bahwa pembuat pasar lain lebih bersedia menjual daripada membeli. Pembuat pasar ini mungkin sudah memiliki banyak inventaris yang tidak seimbang, atau mereka hanya berpikir bahwa harga lebih mungkin turun daripada naik dalam jangka pendek. Dalam kedua kasus, sebagai pembuat pasar, Anda dapat menyesuaikan kutipan sesuai dengan penyimpangan buku pesanan grafik.
Selain itu, Anda akan sering melihat perilaku
Pembacaan lanjutan:http://parasec.net/transmission/order-book-visualisation/
Akhirnya, sinyal orientasi jangka panjang dapat mencakup algoritma pembuatan pasar, di mana tujuan algoritma pembuatan pasar bukan lagi untuk menjaga tingkat persediaan atau tidak berubah, tetapi untuk mempertimbangkan beberapa tujuan jangka panjang dan penyimpangan yang sesuai untuk membuatnya menjadi kenyataan.
Kecepatan penting karena dua alasan utama. Pertama, Anda dapat menutup pesanan di buku pesanan sebelum membatalkan. Kedua, Anda dapat membatalkan pesanan di buku pesanan sebelum diisi. Dengan kata lain, Anda ingin mengambil inisiatif dalam mengisi dan membatalkan pesanan setiap saat. Algoritma arbitrase (aktif) dan algoritma eksekusi (aktif) lebih peduli dengan yang pertama, sementara algoritma pembuatan pasar (pasif) lebih peduli dengan yang terakhir.
Secara umum, pada prinsipnya, strategi yang paling mendapat manfaat dari kecepatan adalah strategi yang memiliki logika penilaian yang paling sederhana. Logika yang kompleks pasti akan memperlambat waktu pulang pergi. Jenis strategi algoritmik yang kompleks ini adalah mobil balap Formula 1 di dunia perdagangan. Validasi data, pemeriksaan keamanan, pengaturan perangkat keras, dan metode tata letak dapat dirampas, semuanya demi kecepatan. Lupakan OMS, EMS, dan PMS (Portfolio Management System) dan sambungkan logika perhitungan pada GPU ke antarmuka API biner dari pertukaran yang sama secara langsung.
Jenis lain dari strategi sensitif kecepatan, relatif terhadap strategi arbitrase statistik, server sebenarnya terletak di beberapa bursa, daripada hidup berdampingan dengan satu bursa.
Bacaan lanjutan: Lokasi simpul perdagangan perantara terbaik dari bursa saham terbesar di dunia (https://www.alexwg.org/publications/PhysRevE_82-056104.pdf)
Dalam permainan kecepatan, pemenang mengambil semua. Dalam contoh yang paling sederhana, jika ada peluang arbitrase, siapa pun yang bisa mendapatkan kesempatan arbitrase terlebih dahulu akan mendapatkan keuntungan. Tempat kedua mendapatkan remah-remah, dan tempat ketiga tidak mendapatkan apa-apa. Pendapatan kemungkinan akan didistribusikan dengan cara hukum daya. (Tentang hukum daya:https://zh.wikipedia.org/wiki/冪定律)
Permainan kecepatan juga merupakan kompetisi. Setelah semua orang meng-upgrade dari jaringan serat optik ke jaringan gelombang mikro atau laser, semua orang akan kembali ke lingkungan kompetitif yang adil, dan setiap keuntungan awal akan dikomersialkan.
Sebagian besar mesin yang mencocokkan pesanan mengikuti prinsip harga pertama, dan kemudian waktu pertama (pencocokan proporsional adalah alternatif yang kurang umum, tetapi kita tidak akan mempertimbangkan ini sekarang). harga yang lebih baik akan dieksekusi sebelum pesanan batas harga yang lebih buruk dieksekusi. untuk pesanan harga terbatas dengan harga yang sama, pesanan yang dikirim sebelumnya akan dieksekusi sebelum pesanan yang dikirim nanti.
Binance membagi pesanan hingga 8 desimal. Jika harga transaksi adalah.000001, harga.00000001 adalah 1% dari transaksi. Jika harga transaksi adalah.0001, harga.00000001 adalah 1 bps (yaitu, satu hop). Ini adalah perbedaan besar. Dalam kasus pertama, melewatkan pesanan besar membutuhkan titik lengkap, jadi prioritas waktu lebih penting. Dalam kasus kedua, itu 100 kali lebih murah, jadi prioritas harga lebih penting.
Dengan kata lain, jika Anda harus membayar 1% dari jumlah penuh untuk mendapatkan prioritas transaksi, mungkin tidak sepadan, karena Anda membayar jumlah yang relatif besar, dan meningkatkan kemungkinan ditutup dengan jumlah yang relatif kecil, dan mungkin lebih baik menunggu di antrean, tetapi jika Anda hanya perlu membayar 1 bps untuk mendapatkan prioritas transaksi, Anda dapat melakukannya, karena Anda mengurangi biaya marginal yang relatif kecil, itu meningkatkan probabilitas sejumlah transaksi yang relatif besar pada saat yang sama. lompatan harga yang lebih kecil kondusif untuk prioritas harga, sementara lompatan harga yang lebih besar kondusif untuk prioritas waktu.
Ini secara alami mengarah pada pertanyaan berikutnya: Apa nilai posisi antrian Anda? (Pembacaan lanjutan:https://moallemi.com/ciamac/papers/queue-value-2016.pdf)
Hanya ada dua cara untuk mengurangi jumlah transaksi order di buku order: mereka dibatalkan secara sukarela atau ditutup. Jika penurunan disebabkan oleh proses perdagangan, semua harga lainnya juga akan menurun karena proses perdagangan. Kita dapat menyortir catatan transaksi ini dengan menyortirnya dan menandai apakah setiap pengurangan disebabkan oleh transaksi atau pembatalan.
Secara intuitif, trading berarti bahwa kedua belah pihak setuju untuk berdagang dengan harga tertentu, sementara pembatalan berarti bahwa satu pihak memutuskan untuk tidak membeli atau menjual dengan harga tertentu.
Di sisi lain, harga di buku pesanan mulai naik. hanya ada satu kemungkinan: meningkatkan jumlah pesanan batas yang tersisa.
Peningkatan dan penurunan dalam buku pesanan menunjukkan keinginan pribadi peserta pasar, sehingga memberikan sinyal pergerakan harga jangka pendek.
Pada saat ini, sebagian besar indeks harga memperoleh data perdagangan dari beberapa bursa dan menggabungkannya bersama-sama untuk mendapatkan harga rata-rata tertimbang volume. khususnya indeks Tradeblock juga akan meningkatkan mekanisme hukuman dari bobot pertukaran, yang berkorelasi kuat dengan inaktivitas dan bursa yang menyimpang terlalu jauh dari harga. selain itu, apa lagi yang dapat kita perbaiki?
Di GDAX, biaya pembuat adalah 0 basis point dan biaya pengambil adalah 30 basis point. Misalnya, harga transaksi ditampilkan sebagai $4000/BTC, yang sebenarnya adalah harga jual penjual $4000/BTC dan harga pembelian pembeli $4012/BTC.
Oleh karena itu, dari perspektif penemuan harga, harga catatan transaksi tidak dapat dibandingkan secara langsung di antara bursa, dan harus distandarisasi setelah konstruksi indeks harga memperhitungkan kondisi di atas. Tentu saja, ada beberapa faktor kompleks yang menyebabkan komisi yang berbeda berdasarkan volume transaksi.
Pertama-tama, penemuan harga terbatas. Dalam beberapa hal, ini juga memperkuat asimetri antara pertukaran tentang biaya pembuat dan pembuat. Dengan asumsi bahwa sebagian besar akun GDAX berada pada tingkat 0/30 basis point biaya pembuat dan penerima dan bahwa GDAX biasanya memiliki perbedaan sen dalam buku pesanan BTCUSD, harga yang ditampilkan dalam penawaran untuk setiap transaksi adalah sekitar
Buku pesanan GDAX
Kedua, seperti hubungan pajak antara produsen dan konsumen, ada tingkat ekuivalen tertentu antara pembuat dan penerima dalam hal dampak biaya. Jika Anda mengenakan biaya yang relatif lebih tinggi kepada pembuat, mereka akan memperluas buku pesanan dan mentransfer beberapa biaya ke penerima. Jika Anda mengenakan biaya yang relatif lebih tinggi untuk penerima, pembuat akan memperketat buku pesanan dan menyerap beberapa biaya pembuat.
Kasus ekstrim di sini adalah bahwa Anda menyukai pembuat begitu banyak bahwa buku pesanan ditekan ke dalam lompatan harga (seperti yang sering kita lihat di GDAX) dan buku pesanan tidak dapat diperketat lagi.
Selain contoh ekstrim, kita dapat melihat bahwa tidak penting pihak mana yang mengumpulkan biaya, tetapi jumlah biaya pembuat dan pembuat. Akhirnya, seperti kebijakan pajak Laffer Curvein, bursa menghadapi masalah optimasi pendapatan dalam kebijakan pengisian. Kita dapat melihat bahwa pendapatan laba sama dengan kebijakan pajak. Jika bursa tidak mengenakan biaya, mereka tidak akan mendapatkan pendapatan. Jika bursa mengenakan biaya 100% dari biaya, tidak ada transaksi, jadi mereka tidak memiliki pendapatan. Melalui beberapa penelitian tambahan, jelas bahwa pendapatan pertukaran pada tingkat total biaya adalah fungsi cekung dengan maksimum yang unik.
Penjelasan istilah: kurva Laffer (https://en.wikipedia.org/wiki/Laffer_curve)
Untuk dilanjutkan...