Mekanisme dan definisi
Slippage adalah selisih antara harga yang Anda harapkan untuk didapatkan dari sebuah order dan harga yang benar-benar Anda terima saat order tersebut dieksekusi. Untuk mengukurnya secara konsisten, Anda memerlukan tiga elemen: (1) harga referensi yang mewakili “intended execution”, (2) harga eksekusi aktual, dan (3) aturan untuk menangani timing dan partial fills.
Salah satu field yang dapat diukur adalah slippage (dalam satuan harga):
- Slippage = ActualExecutionPrice − IntendedExecutionPrice Untuk buy, harga aktual yang lebih tinggi mengimplikasikan slippage positif; untuk sell, interpretasi tanda bisa dibalik tergantung konvensi yang Anda pilih. Pilih satu konvensi dan terapkan pada setiap perhitungan.
Field lain yang dapat diukur adalah slippage dalam mata uang akun (dampak biaya). Ini mengubah selisih harga menjadi jumlah menggunakan ukuran trade dan spesifikasi kontrak. Rumus yang tepat bergantung pada bagaimana sistem eksekusi Anda mendefinisikan nilai kontrak, jadi metode perhitungan Anda harus dinyatakan sebagai sebuah asumsi.
Cara mengukurnya langkah demi langkah
- Pilih referensi harga yang dimaksud (intended). Contoh harga “intended” yang mungkin termasuk harga kuotasi pada saat order dikirim, harga limit/stop order (jika berlaku), atau “expected price” internal yang digunakan oleh workflow eksekusi Anda. Pengukuran hanya akan konsisten sejauh pilihan ini konsisten.
- Pilih referensi harga eksekusi aktual. Gunakan harga fill trade yang tercatat oleh venue/platform eksekusi. Jika ada beberapa fill, Anda harus memutuskan apakah mengukur setiap fill secara terpisah atau menghitung rata-rata tertimbang berdasarkan volume.
- Tentukan timestamp dan logika pencocokan. Anda perlu aturan untuk menentukan timestamp mana yang menjadi jangkar “intent” vs “execution”. Misalnya, Anda bisa menggunakan timestamp saat order dikirim untuk harga intended dan timestamp saat fill terjadi untuk harga aktual. Jika sistem menyediakan beberapa event (update kuotasi, request dikirim, acceptance, fill), tentukan pasangan mana yang Anda bandingkan.
- Tangani partial fills. Jika sebuah order terisi dalam beberapa bagian, Anda dapat menghitung volume-weighted average slippage di seluruh fill, dengan menggunakan ukuran tiap fill sebagai bobot. Alternatifnya, laporkan slippage per-fill dan sebaran hasil.
Bukti dan contoh dengan asumsi eksplisit
Anggap setup pengukuran berikut untuk satu order:
- IntendedExecutionPrice adalah kuotasi yang ditampilkan yang digunakan saat request order dibuat.
- ActualExecutionPrice adalah volume-weighted average price di seluruh fill untuk order tersebut.
- Slippage dihitung sebagai Actual − Intended.
Contoh (angka hanya ilustratif): IntendedExecutionPrice = 1.1000, dan volume-weighted average ActualExecutionPrice yang dieksekusi = 1.1012. Lalu slippage (price units) = 1.1012 − 1.1000 = 0.0012.
Untuk memverifikasi perhitungan secara independen, bandingkan timestamp dan nilai kuotasi intended Anda dengan log eksekusi, lalu hitung ulang rata-rata tertimbang dari ukuran dan harga fill. Jika sistem Anda mencatat baik “request sent” maupun “fill time,” ulangi pengukuran dengan setiap timestamp intent yang masuk akal untuk melihat seberapa besar perubahan hasil; perubahan besar menunjukkan bahwa asumsi timestamp Anda kemungkinan besar mendominasi pengukuran.
Keterbatasan dan risiko dalam pengukuran
Pengukuran slippage memiliki keterbatasan yang material:
- Ambiguitas intent: Sistem yang berbeda mendefinisikan “expected” atau “intended” price secara berbeda (kuotasi pada request, level limit/stop, atau ekspektasi yang tersimpan). Mengubah definisi ini dapat mengubah slippage meskipun harga eksekusi identik.
- Ketidakpastian timing: Pasar dapat bergerak antara saat Anda menangkap harga intended dan saat order benar-benar dieksekusi. Jika Anda tidak dapat menyelaraskan timestamp secara presisi, Anda mungkin mengukur “delay plus movement,” bukan hanya slippage.
- Partial fills dan efek agregasi: Menggabungkan fill menjadi rata-rata tertimbang dapat menyembunyikan fakta bahwa beberapa fill menguntungkan sementara yang lain tidak.
- Variabilitas provider dan jalur eksekusi: Eksekusi yang Anda amati bergantung pada bagaimana order dirutekan dan dicocokkan, likuiditas yang tersedia pada waktu eksekusi, dan biaya transaksi. Bahkan dengan metode yang identik, hasil dapat berbeda antar waktu dan lingkungan.
Perbandingan historis harus diperlakukan sebagai deskriptif: hubungan yang diamati di masa lalu tidak menjamin perilaku slippage di masa depan. Selain itu, biaya seperti komisi dan fee dapat dilaporkan secara terpisah dari slippage harga; menggabungkannya ke dalam satu angka harus dihindari kecuali definisi Anda secara eksplisit memasukkannya.
Verifikasi dan apa yang perlu diukur selanjutnya
Agar pengukuran slippage dapat diverifikasi secara independen, dokumentasikan asumsi Anda: definisi harga intended yang Anda gunakan, bagaimana Anda memasangkan timestamp, apakah Anda menggunakan per-fill atau volume-weighted averages, dan aturan konversi mata uang apa yang Anda terapkan.
DOCUMENT END