Bagaimana Algoritma Eksekusi Dapat Diukur?
Algoritma eksekusi: apa yang Anda ukur
Algoritma eksekusi adalah metode yang menentukan bagaimana pesanan dipecah menjadi tindakan yang lebih kecil dan bagaimana tindakan tersebut diatur waktu serta dirutekan. Untuk mengukurnya dengan cara yang dapat diverifikasi orang lain, fokuslah pada bidang eksekusi yang terukur (apa yang terjadi) dan bidang waktu yang terukur (kapan hal itu terjadi). Kemudian bandingkan hasil hanya di bawah asumsi yang dinyatakan dengan jelas, karena kondisi pasar dan biaya eksekusi dapat mendominasi hasil.
Mekanisme dan bidang yang terukur
Cara praktis untuk mendefinisikan pengukuran adalah dengan memulai dari “log peristiwa pesanan” untuk satu pesanan induk.
1) Bidang waktu
- Waktu permintaan: saat pesanan induk diajukan.
- Mulai eksekusi: saat upaya eksekusi anak pertama terjadi.
- Waktu penyelesaian: saat pesanan induk terisi penuh atau dihentikan.
- Jendela antrean/latensi: waktu yang berlalu antara mengirim pesanan anak dan menerima konfirmasi atau pemenuhan (jika data Anda menangkapnya).
2) Bidang kualitas pemenuhan
- Rasio pemenuhan: kuantitas terisi dibagi dengan kuantitas yang dimaksudkan.
- Kuantitas tersisa: apa yang tidak terisi pada saat penyelesaian.
- Distribusi pemenuhan: berapa banyak yang terisi di setiap keranjang waktu.
3) Bidang biaya dan dampak harga Untuk menghindari ambiguitas, hitung biaya menggunakan harga referensi yang dipilih dan formula yang didefinisikan dengan jelas. Pilihan referensi umum meliputi:
- Harga tengah pada awal (titik tengah antara penawaran terbaik dan permintaan terbaik, jika Anda dapat mengamatinya)
- Harga keputusan pada saat algoritme dimulai
- Harga kedatangan pada saat pertama kali dapat dieksekusi
Kemudian ukur:
- Slippage: perbedaan antara harga eksekusi rata-rata dan harga referensi (berarah).
- Implementation shortfall (secara konseptual): biaya relatif terhadap referensi yang mencakup pergerakan harga dan ketidaklengkapan eksekusi.
4) Bidang kendala dan kontrol Jika algoritme memiliki parameter (misalnya, target partisipasi atau batas waktu), perlakukan sebagai input yang terukur dan verifikasi seberapa sering algoritme memenuhi kendala tersebut di bawah setiap skenario.
Bukti dan contoh perhitungan (dengan asumsi eksplisit)
Asumsikan Anda memiliki pesanan induk untuk 100 unit.
- Pesanan induk diajukan pada 10:00:00.
- Upaya eksekusi anak pertama pada 10:00:05.
- Penyelesaian penuh pada 10:00:35.
- Harga eksekusi rata-rata di seluruh pemenuhan adalah 1.2000.
- Harga referensi Anda (harga tengah pada awal eksekusi) adalah 1.1980.
Perhitungan slippage sederhana yang dapat diverifikasi adalah:
- Slippage = Harga eksekusi rata-rata − Harga referensi
- = 1.2000 − 1.1980 = 0.0020 (per unit, dalam istilah harga)
Untuk membuat ini independen dan dapat direproduksi, Anda juga menyatakan:
- definisi referensi (harga tengah pada 10:00:05)
- granularitas data (harga pemenuhan dan stempel waktu)
- apakah Anda menggunakan rata-rata tertimbang kuantitas
Jika Anda juga mengamati bahwa hanya 90 dari 100 unit yang terisi, Anda melaporkan rasio pemenuhan = 0,90 dan memperlakukan ketidaklengkapan sebagai komponen material terpisah daripada memasukkannya ke dalam harga saja.
Keterbatasan dan mode kegagalan (apa yang merusak perbandingan)
Bahkan dengan metrik yang cermat, perbandingan dapat menyesatkan jika mengabaikan variabilitas.
Keterbatasan material
- Kondisi pasar mendominasi: likuiditas, lebar spread, dan volatilitas dapat berubah selama eksekusi dan memengaruhi biaya.
- Biaya berbeda di seluruh skenario: biaya, komisi, dan biaya terkait eksekusi lainnya dapat mengubah metrik biaya.
- Ketergantungan tolok ukur: angka slippage berubah saat Anda mengubah definisi harga referensi.
- Hubungan historis tidak menetapkan hasil masa depan: kinerja masa lalu di bawah satu rezim mungkin tidak berlaku untuk rezim lain.
Mode kegagalan untuk diukur atau diperhatikan
- Pemenuhan sebagian: algoritme selesai dengan kuantitas tersisa.
- Penundaan antrean dan sensitivitas latensi: waktu eksekusi dapat memburuk selama periode kemacetan yang lebih tinggi.
- Perdagangan berlebihan atau kurang perdagangan terhadap kecepatan yang dimaksudkan: tingkat pesanan anak aktual dapat menyimpang dari target.
- Perilaku berhenti/penghentian: pembatalan berulang atau keluar lebih awal dapat membiaskan perbandingan biaya dan waktu penyelesaian.
Verifikasi dan pertanyaan berikutnya
Untuk memverifikasi klaim tentang algoritme eksekusi, Anda memerlukan tiga hal yang dapat diperiksa secara independen: (1) bidang dan formula yang diukur, (2) stempel waktu dan jendela waktu yang digunakan, dan (3) asumsi tentang harga referensi dan ketersediaan data. Jika dua pihak menghitung metrik yang “sama” tetapi memilih harga referensi atau jendela pengambilan sampel yang berbeda, hasil mereka dapat berbeda secara sah.
Pertanyaan berikutnya yang berguna adalah: data apa yang sebenarnya Anda miliki untuk harga referensi (harga tengah, harga kedatangan, atau proksi lain) dan untuk latensi/konfirmasi? Dengan menjawab itu, Anda dapat menyelaraskan definisi pengukuran sebelum membandingkan algoritme atau penyedia.