Slippage adalah selisih antara harga yang diminta atau diamati dan harga aktual saat order tereksekusi. Nilainya dapat positif atau negatif. Latensi merupakan salah satu faktor, tetapi pergerakan harga, likuiditas, ukuran order, dan penanganan server juga menentukan hasilnya.
Slippage, latensi, dan requote berbeda
Slippage adalah selisih harga. Latensi adalah jeda waktu antara suatu tindakan dan respons server broker. requote terjadi ketika harga yang diminta tidak lagi tersedia dalam mode eksekusi yang meminta trader atau program menerima harga lain. Penolakan order berbeda lagi: server dapat menolak permintaan karena volume, stop, status pasar, izin, atau margin yang tidak mencukupi.
| Peristiwa | Yang terlihat | Bukti yang berguna |
|---|---|---|
| Slippage | Harga eksekusi berbeda dari harga yang diminta. | Permintaan order, eksekusi, dan spread pada waktu yang sama. |
| Latensi | Eksekusi atau modifikasi memerlukan waktu lebih lama. | Waktu dalam log terminal dan laporan eksekusi dari broker. |
| Requote | Harga baru ditawarkan sebagai pengganti harga yang diminta. | Pesan Journal dan mode eksekusi simbol. |
| Penolakan | Server tidak menerima permintaan. | Kode kesalahan, parameter, dan spesifikasi kontrak. |
Mengapa order otomatis dapat memperoleh hasil berbeda
Pasar dapat bergerak antara perhitungan sinyal dan eksekusi. Volume yang tersedia pada harga terbaik mungkin lebih kecil daripada order, terutama saat rilis data, pergantian sesi, atau rollover. Broker dapat menggabungkan kuotasi, menerapkan markup, memvalidasi stop dan margin, lalu merutekan atau menangani order secara internal sesuai kebijakannya. Setiap tahap dapat menambah waktu atau mengubah harga yang dapat dieksekusi.
Jarak VPS ke server penting, tetapi ping jaringan yang rendah tidak mengukur antrean, pemrosesan bridge, respons penyedia likuiditas, atau waktu yang digunakan EA itu sendiri. Order besar, modifikasi cepat, dan beberapa posisi bersamaan dapat menghasilkan perilaku berbeda dari satu transaksi uji kecil.
Ukur distribusi, bukan satu transaksi
- Sinkronkan jam VPS dan simpan log Experts serta Journal MT4.
- Catat simbol, arah, jenis order, harga yang diminta, harga eksekusi, ukuran lot, dan waktu.
- Simpan spread bid/ask saat permintaan dikirim dan identifikasi rollover atau berita terjadwal.
- Pisahkan entry pasar, pemicu pending order, penutupan, dan modifikasi stop.
- Hitung slippage positif dan negatif secara terpisah, beserta median dan hasil ekstremnya.
- Bandingkan demo dan live hanya ketika pengaturan, waktu, dan badan hukum broker setara.
Eksekusi yang menguntungkan dan merugikan dapat saling mengimbangi dalam rata-rata, sementara beberapa eksekusi yang sangat merugikan menyebabkan sebagian besar kerugian. Periksa juga persentil dan kasus terburuk. Konvensi tanda yang digunakan di sini dijelaskan di bawah.
Kurangi dampak tanpa menyimpangkan strategi
Jangan sekadar memperlebar setiap toleransi. Deviasi berlebihan dapat mengubah entry terkendali menjadi eksekusi yang merugikan, sedangkan toleransi terlalu ketat dapat memicu percobaan ulang berulang atau exit yang terlewat. Batas yang tepat bergantung pada keunggulan yang diharapkan dari strategi, timeframe, dan model risiko.
Kesalahan penafsiran yang umum
Jangan menganggap setiap transaksi rugi sebagai manipulasi broker, membandingkan chart yang hanya menampilkan bid dengan eksekusi buy, atau menilai eksekusi dari tangkapan layar tanpa harga ask pada saat yang sama. Jangan membandingkan order demo dengan order live yang ditempatkan beberapa detik kemudian, dan jangan menganggap VPS yang lebih cepat mengatasi likuiditas tipis. Rekonstruksi dahulu seluruh peristiwa order dari log dan riwayat akun.
Bagi EA, penanganan kesalahan yang andal sama pentingnya dengan eksekusi normal. Program harus menghindari loop percobaan ulang yang tidak terkendali, order ganda, dan kegagalan tanpa pemberitahuan setelah koneksi terputus.
Gunakan satu konvensi tanda untuk membandingkan eksekusi
Definisikan slippage positif sebagai biaya yang merugikan. Untuk permintaan BUY, hitung fill price − requested price; untuk permintaan SELL, gunakan requested price − fill price. Nilai negatif kemudian menunjukkan perbaikan harga yang menguntungkan. Menutup posisi BUY merupakan operasi SELL; menutup posisi SELL merupakan operasi BUY.
Contoh BUY hipotetis: harga yang diminta 1.10020, harga tereksekusi 1.10035. Selisih yang merugikan adalah 0.00015: 15 point ketika Point = 0.00001, atau 1.5 pip ketika satu pip adalah 0.00010. Nyatakan satuan simbol sebelum membandingkan instrumen lain.
Ukur interval waktu dan pastikan hasil yang belum jelas
Untuk latensi permintaan yang diamati terminal, ukur waktu dari pengiriman permintaan hingga penerimaan hasil menggunakan jam yang sama. Ping jaringan, jeda sinyal hingga permintaan, dan pemrosesan server merupakan interval berbeda. Jangan mengurangi waktu dari mesin yang tidak tersinkron lalu menyebut hasilnya latensi eksekusi.
Parameter slippage/deviasi MT4 bukan jaminan harga eksekusi universal; pengaruhnya bergantung pada konteks eksekusi. Requote, penolakan, dan timeout merupakan hasil berbeda. Setelah hasil yang belum jelas, rekonsiliasikan daftar order dan riwayat sebelum mencoba ulang dengan batas yang ditentukan. Bandingkan distribusi eksekusi bertanda dan transaksi yang terlewat secara terpisah, termasuk hasil ekstrem yang merugikan, bukan hanya rata-rata.
Dokumentasi resmi dokumentasi OrderSend menjelaskan harga yang diminta, slippage, dan penanganan kesalahan.
Referensi resmi
MetaTrader menjelaskan cara permintaan trading dieksekusi dan mencantumkan parameter yang dikendalikan broker dalam spesifikasi simbol. Cocokkan setiap pesan log dengan mode eksekusi dan spesifikasi yang digunakan simbol tersebut.