IOC vs FOK, Market dan Limit Order: Jenis Order untuk Eksekusi Forex Algoritmik November 4, 2026 – Posted in: Arbitrage Software, Forex trading
IOC, FOK, Market, atau Limit: Memilih Order yang Sesuai dengan Trade
Memilih jenis order berarti memutuskan apa yang lebih bisa Anda terima: harga yang lebih buruk, eksekusi yang lebih kecil, atau tidak terisi sama sekali. Panduan ini menunjukkan perilaku setiap instruksi di order book, dalam pesan FIX, dan di bawah last look, disertai perhitungan untuk algoritma yang harus memilih dalam hitungan milidetik.
Jawaban singkat: IOC vs FOK. Order Immediate-or-Cancel (IOC) mengambil apa pun yang tersedia saat ini pada harga Anda atau lebih baik, lalu membatalkan sisanya, sehingga eksekusi parsial bisa terjadi. Order Fill-or-Kill (FOK) harus terisi penuh saat itu juga atau dibatalkan seluruhnya, sehingga Anda mendapatkan semuanya atau tidak sama sekali. Gunakan IOC jika sebagian ukuran pun sudah berguna, dan FOK jika posisi parsial lebih buruk daripada tidak ada posisi.
- Jenis order dan time in force adalah dua keputusan
- Market order di forex
- Limit, marketable limit, dan stop order
- Time in force: IOC, FOK, GTC, Day, GTD
- IOC vs FOK vs market: satu order book, tiga hasil
- Bagaimana order terlihat di FIX
- Likuiditas full-amount dan last look
- Di mana menempatkan limit: model perhitungan
- Menangani eksekusi parsial
- Order mana untuk strategi mana
- Tujuh langkah mengonfigurasi eksekusi
- Kesalahan umum
- Apa yang perlu diukur
- FAQ
Jenis order dan time in force adalah dua keputusan yang terpisah
Sebagian besar glosarium mencantumkan market, limit, stop, IOC, dan FOK seolah-olah kelimanya adalah pilihan dari menu yang sama. Kenyataannya tidak demikian. Di baliknya ada dua pertanyaan yang tidak saling bergantung, dan algoritma harus menjawab keduanya untuk setiap order:
- Harga berapa yang bersedia saya terima? Itulah jenis order: market (harga berapa pun), limit (harga ini atau lebih baik), stop (aktif saat harga pemicu diperdagangkan atau dikuotasikan).
- Berapa lama order boleh tetap aktif? Itulah time in force, atau TIF: segera (IOC, FOK), sampai akhir sesi (Day), sampai dibatalkan (GTC), atau sampai waktu tertentu (GTD).
Jadi, IOC dan FOK bukan alternatif dari limit order. Keduanya adalah masa berlaku yang dilekatkan pada limit order. “Limit IOC” dan “Limit FOK” adalah dua instruksi agresif yang paling umum dalam forex algoritmik, dan protokol FIX menyimpan kedua keputusan tersebut dalam field terpisah: OrdType (tag 40) dan TimeInForce (tag 59).
Market order di forex: arti sebenarnya dari “at market”
Market order berarti: eksekusi saya sekarang, harga urusan kedua. Karena tidak memiliki limit, order ini menawarkan kepastian eksekusi tertinggi tetapi tanpa perlindungan atas harga yang Anda peroleh. Jika order book telah bergerak atau tipis, order akan naik melewati level-level yang tersedia sampai ukurannya terpenuhi. Biaya itulah yang disebut slippage, yang dibahas secara mendalam dalam panduan kami tentang cara mengukur dan mengurangi slippage forex.
Forex memiliki dua detail tambahan yang dilewatkan oleh penjelasan berbasis bursa:
- Tidak ada satu order book pusat. Broker atau ECN Anda menampilkan aliran harga gabungan dari beberapa penyedia likuiditas. “At market” berarti harga terbaik yang bisa didapat venue Anda dari aliran tersebut, bukan harga pasar universal.
- Market order tetap memiliki masa berlaku implisit. Banyak venue memperlakukan market order sebagai IOC atau FOK secara internal: mengisi apa yang bisa diisi saat ini dan melaporkan sisanya. Sebagian venue memungkinkan Anda menambahkan deviasi maksimum, yang secara efektif mengubah order menjadi limit. Jangan berasumsi; bacalah spesifikasi venue.
Peran praktis market order dalam algoritma cukup sempit. Order ini cocok digunakan saat tidak melakukan trade justru menjadi bahaya yang lebih besar, misalnya menutup posisi yang kehilangan hedge-nya.
Limit, marketable limit, dan stop order
Limit order pasif
Limit order yang ditempatkan jauh dari harga saat ini akan berdiam di order book dan menunggu. Buy limit di bawah ask tidak mengambil likuiditas, melainkan menyediakannya. Anda mungkin memperoleh spread alih-alih membayarnya, tetapi Anda menanggung risiko antrean dan adverse selection: order pasif cenderung terisi ketika pasar sedang bergerak menembusnya. Order pasif biasanya dipasangkan dengan Day, GTC, atau GTD.
Marketable limit order
Buy limit yang dipasang pada atau di atas ask saat ini langsung tereksekusi seperti market order, tetapi tidak dapat terisi melewati limitnya. “Marketable limit” ini adalah andalan eksekusi otomatis. Jika digabungkan dengan IOC, artinya: ambil likuiditas sekarang, sampai harga ini, dan jangan tinggalkan apa pun di order book.
Poin price improvement sering disalahpahami. Limit adalah harga terburuk yang dapat diterima, bukan harga eksekusi. Jika Anda membeli dengan limit di 1.08510 dan ask berada di 1.08502, Anda seharusnya mendapatkan 1.08502 atau level berikutnya hingga limit Anda.
Stop order dan stop-limit order
Stop order tidak aktif sampai harga pemicu tercapai, lalu berubah menjadi market order. Stop-limit justru berubah menjadi limit order. Yang pertama menjamin aktivasi, bukan harga. Yang kedua membatasi harga tetapi bisa membuat Anda tidak terisi justru saat pasar mengalami gap, sifat yang kurang menyenangkan untuk stop pelindung. Tempat stop disimpan juga penting: stop yang disimpan di venue tetap bertahan saat koneksi Anda terputus, sedangkan stop yang disimulasikan di perangkat lunak Anda sendiri tidak.
Time in force: daftar lengkap
| Instruksi | FIX 59 | Masa berlaku | Eksekusi parsial? | Penggunaan umum |
|---|---|---|---|---|
| Day | 0 | Sampai sesi berakhir | Ya | Kuotasi pasif selama sesi tertentu |
| GTC (Good Till Cancel) | 1 | Sampai dibatalkan | Ya | Entri tertunda, order take-profit dan stop |
| IOC (Immediate or Cancel) | 3 | Tereksekusi seketika, sisanya dibatalkan | Ya | Mengambil likuiditas saat sebagian ukuran pun berguna |
| FOK (Fill or Kill) | 4 | Ukuran penuh seketika atau tidak sama sekali | Tidak | Entri all-or-nothing dan leg berukuran tetap |
| GTD (Good Till Date) | 6 | Sampai waktu tertentu (tag 126 atau 432) | Ya | Kuotasi dengan batas waktu tegas, misalnya sebelum rilis berita |
Nilai diambil dari spesifikasi FIX 4.4. Venue biasanya hanya mendukung sebagian dari daftar ini, dan sebagian membatasi TIF untuk jenis order tertentu, sehingga aturan dari broker Anda mengesampingkan tabel apa pun dalam artikel.
IOC vs FOK vs market: satu order book, tiga hasil
Mari ambil contoh konkret. Sebuah algoritma ingin membeli 2,000,000 EURUSD. Best ask adalah 1.08500, dan inilah sisi penawaran yang terlihat saat order tiba:
| Harga ask | Ukuran tersedia | Kumulatif |
|---|---|---|
| 1.08500 | 500,000 | 500,000 |
| 1.08501 | 500,000 | 1,000,000 |
| 1.08503 | 1,000,000 | 2,000,000 |
| 1.08506 | 2,000,000 | 4,000,000 |

| Instruksi | Terisi | Harga rata-rata | Biaya vs best ask | Hasil |
|---|---|---|---|---|
| Market, 2M | 2,000,000 | 1.085018 | 0.175 pip, sekitar $35 | Selesai, pada harga yang tidak Anda pilih |
| Limit 1.08502 IOC, 2M | 1,000,000 | 1.085005 | 0.05 pip, sekitar $5 | Setengah ukuran, 1M dibatalkan |
| Limit 1.08502 FOK, 2M | 0 | Tidak ada | $0 | Dibatalkan: hanya 1M pada atau di bawah limit |
| Limit 1.08503 FOK, 2M | 2,000,000 | 1.085018 | 0.175 pip, sekitar $35 | Terisi: limit cukup lebar |
Baris terakhir inilah yang paling halus. Tambahan sepersepuluh pip saja mengubah FOK dari tanpa trade menjadi terisi penuh, dengan rata-rata yang lebih baik daripada limitnya. FOK tidak berarti “ketat”. FOK berarti “seluruh ukuran harus muat di bawah harga ini pada saat ini”. IOC dan FOK pada limit yang sama melihat likuiditas yang sama. Keduanya hanya berbeda dalam tindakan yang diambil ketika likuiditas itu tidak cukup.
Tidak ada pula instruksi yang selalu lebih murah. IOC seharga $5 tampak murah dibandingkan market order $35, tetapi hanya memberikan separuh posisi. Jika sisa 1M harus dibeli kemudian pada harga yang lebih buruk, perbandingannya berubah. Biaya dari ukuran yang hilang itulah yang dibahas di sisa panduan ini.
Bagaimana order terlihat di FIX
Pada koneksi FIX API, Anda menyatakan setiap instruksi secara eksplisit dalam pesan NewOrderSingle (35=D). Jika disederhanakan ke field yang penting saja, order IOC dari contoh di atas terlihat seperti ini:
Ubah 59=3 menjadi 59=4 dan order yang sama menjadi FOK. Hapus harga dan tetapkan 40=1, maka order menjadi market order. Header, checksum, timestamp, dan field akun tidak ditampilkan di sini, dan format simbol berbeda-beda di setiap venue: sebagian menggunakan ID simbol numerik.
| Tag | Field | Nilai yang akan Anda temui |
|---|---|---|
| 40 | OrdType | 1 Market, 2 Limit, 3 Stop, 4 Stop-limit, D Previously quoted (kuotasi sebelumnya) |
| 59 | TimeInForce | 0 Day, 1 GTC, 3 IOC, 4 FOK, 6 GTD |
| 110 | MinQty | Kuantitas minimum yang harus tereksekusi, jika didukung |
| 150 | ExecType | 0 New (baru), F Trade (transaksi), 4 Canceled (dibatalkan), 8 Rejected (ditolak), C Expired (kedaluwarsa) |
| 39 | OrdStatus | 0 New (baru), 1 Partially filled (terisi sebagian), 2 Filled (terisi), 4 Canceled (dibatalkan), 8 Rejected (ditolak), C Expired (kedaluwarsa) |
| 14 / 151 | CumQty / LeavesQty | Terisi sejauh ini / masih terbuka. LeavesQty 0 berarti order telah selesai |
| 31 / 32 / 6 | LastPx / LastQty / AvgPx | Harga dan ukuran eksekusi ini / rata-rata seluruh eksekusi |
Bagian yang rumit bukan mengirim order, melainkan membaca jawabannya. Satu IOC dapat menghasilkan serangkaian ExecutionReport (35=8), dan cara sisa order dilaporkan bergantung pada venue.

Sebagian venue mengirim konfirmasi tambahan (150=0) sebelum eksekusi. Venue lain mengirim satu eksekusi gabungan. Sesi FIX 4.2 menggunakan nilai ExecType yang berbeda untuk eksekusi (1 dan 2) dibandingkan FIX 4.3 dan yang lebih baru (F). Karena itu, handler yang andal berpatokan pada CumQty, LeavesQty, dan OrdStatus, bukan pada jumlah pesan yang tetap. Panduan langkah demi langkah protokol FIX menjelaskan lapisan sesi di balik pesan-pesan ini.
Likuiditas full-amount dan last look: mengapa forex berbeda
Penjelasan pasar saham mengasumsikan central limit order book, tempat penawaran yang ditampilkan bersifat pasti. Venue forex dapat berperilaku berbeda dalam dua hal yang langsung memengaruhi IOC dan FOK.
Likuiditas sweepable vs full-amount. Dalam order book sweepable, order dapat mengambil beberapa level dari beberapa penyedia, seperti pada contoh di atas. Dalam harga full-amount, penyedia mengutip satu harga untuk seluruh ukuran dan tingkatannya tidak dapat dijumlahkan, sehingga FOK untuk 2M seharusnya dicocokkan dengan tingkatan 2M, bukan dengan jumlah kuotasi 1M. Karena itu, tampilan kedalaman yang terlihat sama bisa berarti hal yang berbeda.
Last look. Jika penyedia menerapkan last look, order Anda hanyalah permintaan yang masih bisa ditolak setelah penahanan singkat. FOK bisa ditolak meskipun order book menampilkan ukuran yang cukup saat Anda mengirimnya, dan IOC bisa kembali dengan ukuran lebih kecil daripada yang ditampilkan. FX Global Code (kode etik pasar valas global) meminta penyedia yang menggunakan last look untuk mengungkapkan praktik ini kepada klien, jadi mintalah pengungkapan tersebut. Penolakan akibat last look hanya terlihat di log Anda jika Anda mencatatnya. Mekanismenya dibahas dalam panduan kami tentang eksekusi broker, A-book, B-book, dan last look.
Di mana menempatkan limit: model perhitungan
Untuk IOC atau FOK, parameter kuncinya bukan TIF, melainkan harga limit. Pasang tepat di kuotasi saat ini dan sebagian besar sinyal akan terlewat. Biarkan tanpa batas dan eksekusi terburuk akan menggerus edge. Di antara kedua ekstrem itu ada jawaban yang dapat dihitung.
Ambil contoh sinyal berumur pendek dengan ekspektasi edge 1.2 pip setelah komisi, diukur dari harga sinyal. Antara sinyal dan kedatangan di venue, harga bergerak. Asumsikan dua rezim: pada 80% kasus harga bergeser sekitar 0.2 pip berlawanan dengan Anda (standar deviasi 0.3 pip), dan pada 20% kasus pergerakan cepat membawanya sekitar 2 pip menjauh (standar deviasi 1 pip). Input ini bersifat ilustratif. Dalam praktik, Anda memperkirakannya dari log order Anda sendiri.

| Toleransi limit dari harga sinyal | Fill rate | Rata-rata bersih per eksekusi | Ekspektasi bersih per sinyal |
|---|---|---|---|
| 0 pip (limit di harga sinyal) | 20.7% | 1.38 pip | 0.29 pip |
| 0.3 pip | 51.3% | 1.18 pip | 0.61 pip |
| 0.6 pip | 74.3% | 1.05 pip | 0.78 pip |
| 1.2 pip (sama dengan edge) | 84.2% | 0.98 pip | 0.82 pip |
| 2.0 pip | 90.0% | 0.89 pip | 0.80 pip |
| Tanpa limit (market order) | 100% | 0.64 pip | 0.64 pip |
Tiga kesimpulan berikut berlaku jauh melampaui contoh ini:
- Limit terbaik adalah harga impas, bukan kuotasi. Setiap eksekusi yang masih menyisakan ekspektasi laba positif layak diambil. Dalam model ini, nilai maksimum berada tepat di titik toleransi sama dengan edge, karena eksekusi marginal berikutnya menghasilkan nol.
- Kurva di dekat puncak cenderung datar. Antara 0.8 dan 2 pip, ekspektasi laba nyaris tidak berubah. Anda tidak memerlukan toleransi yang presisi, tetapi Anda tetap harus memilikinya.
- Rata-rata harga eksekusi adalah target yang menyesatkan. Limit paling ketat memiliki harga terbaik per eksekusi (1.38 pip) dan hasil terburuk per sinyal (0.29 pip), karena 79% sinyal tidak pernah menjadi trade.
Model ini mengabaikan efek antrean dan mengasumsikan seluruh ukuran terisi setiap kali limit tercapai. Untuk order yang lebih besar, ulangi perhitungan dengan kedalaman riil Anda, karena limit juga menentukan seberapa besar ukuran yang bisa masuk. Periksa asumsi dengan data: panduan kami tentang kesenjangan antara backtest dan eksekusi live menunjukkan cara memasukkan waktu eksekusi ke dalam pengujian.
Menangani eksekusi parsial tanpa menciptakan risiko baru
Eksekusi parsial bukan kesalahan, melainkan kondisi baru yang harus memiliki aturan dalam algoritma. FOK menghindari kondisi ini saat entri; IOC memindahkan masalahnya ke logika Anda. Tentukan kebijakannya sebelum live:
| Kebijakan sisa order | Kapan cocok | Risiko yang perlu dikendalikan |
|---|---|---|
| Terima dan kelola bagian yang terisi | Entri dengan edge yang tidak bergantung pada ukuran | Posisi terlalu kecil untuk menutup biaya tetap |
| Kirim ulang sisa order pada harga baru | Sinyal masih valid, edge masih di atas toleransi | Mengejar harga. Batasi percobaan ulang dan periksa kembali edge setiap kali |
| Lakukan hedge atau selesaikan di venue lain | Trade multi-leg | Perbedaan langkah lot dan kemungkinan kedua untuk tidak terisi |
| Tutup bagian yang terisi | Eksekusi di bawah ukuran yang layak | Membayar spread dua kali |
Trade dua leg memerlukan kehati-hatian paling besar. Misalkan sebuah trade ter-hedge membeli 2M di venue A dengan IOC dan menjual di venue B. Jika A hanya mengisi 1M dan algoritma tetap menjual 2M sesuai rencana, algoritma memegang posisi short terbuka 1M. Dengan sekitar $100 per pip per juta pada EURUSD, pergerakan 10 pip melawan posisi tersebut menelan biaya $1,000, yang dengan mudah melebihi edge banyak trade. Aturannya sederhana: tentukan ukuran leg kedua dari CumQty leg pertama, jangan pernah dari kuantitas yang diminta.
Konversikan juga ke grid ukuran venue kedua. Jika leg pertama terisi 1,370,000 dan venue B menerima kelipatan 100,000, Anda dapat melakukan hedge 1,400,000 atau 1,300,000, bukan ukuran yang persis sama. Tetapkan aturan untuk sisa tersebut, dan perlakukan sisa yang tidak ter-hedge sebagai batas risiko.
FOK pada leg pertama menghilangkan ketidaksesuaian ukuran, tetapi menciptakan lebih banyak kejadian tanpa trade. FOK pada leg kedua biasanya merupakan pilihan buruk: ketika leg pertama sudah terisi, hedge yang dibatalkan membuat Anda terekspos sepenuhnya. Leg kedua itulah tempat kepastian eksekusi layak dibayar.
Order mana untuk strategi mana

| Situasi | Default yang wajar | Alasan |
|---|---|---|
| Entri latency arbitrage | Limit IOC pada harga impas | Edge menyusut dalam hitungan milidetik; eksekusi parsial tetap menghasilkan, dan limit menghentikan ekor risiko |
| Leg pertama dari pasangan ter-hedge | Limit FOK, atau IOC dengan hedging berdasarkan CumQty | FOK melindungi penentuan ukuran; IOC meningkatkan fill rate tetapi memerlukan logika yang lebih baik |
| Leg kedua, ketika leg pertama sudah terisi | Market atau IOC lebar | Tidak ter-hedge adalah risiko yang lebih besar |
| Entri berbasis berita | Limit IOC, ukuran kecil | Spread dan kedalaman berubah cepat, dan market order tidak memiliki batas atas |
| Keluar darurat atau stop-out | Market atau IOC lebar, diulang sampai posisi nol | Kepastian yang utama; FOK dapat membiarkan posisi tetap terbuka |
| Trading pasangan atau statistik | Limit IOC atau limit pasif berumur pendek | Periode kepemilikan lebih panjang, sehingga spread yang dibayar lebih penting daripada kecepatan |
| Spread capture dan rebalancing | Limit pasif, Day atau GTD | Anda dibayar untuk menunggu, dan Anda harus membatalkan sebelum berita dan rollover |
Eksekusi juga bergantung pada waktu. Di sekitar rollover dan berita, spread melebar dan kedalaman menipis, sehingga limit yang terisi baik pada tengah hari London bisa gagal atau menjadi mahal pada periode tersebut. Buat toleransi dan ukuran bergantung pada spread saat ini, jangan menetapkannya untuk sepanjang hari. Pembahasan lebih dalam tentang strategi yang peka terhadap kecepatan tersedia dalam panduan kami tentang latency arbitrage.
Tujuh langkah mengonfigurasi eksekusi order
Kesalahan umum dalam penanganan order otomatis
- Mengasumsikan ukuran yang diminta telah terisi. Posisi harus berasal dari laporan eksekusi, bukan dari order yang Anda kirim.
- Menganggap FOK yang dibatalkan sebagai kesalahan sistem. Ini adalah hasil yang normal. Memberi peringatan untuk setiap kejadian membuat Anda terbiasa mengabaikan peringatan; buatlah peringatan berdasarkan tingkat kejadiannya.
- Mengulang pada harga yang sama dalam loop. Jika harga sudah bergerak, percobaan ulang juga gagal, dan percobaan ulang yang cepat bisa melanggar batas pesan. Perbarui harga, atau berhenti.
- Mengabaikan kondisi tidak diketahui. Jika tidak ada respons, order mungkin masih aktif atau sudah terisi. Tanyakan statusnya dengan OrderStatusRequest (
35=H) atau rekonsiliasi posisi setelah tersambung kembali, sebelum mengirim order pengganti. - Menggunakan ulang nilai ClOrdID. Tag 11 yang unik untuk setiap order, termasuk setiap percobaan ulang, adalah yang memungkinkan rekonsiliasi.
- Menggunakan harga usang untuk limit. Limit yang dihitung dari kuotasi tertunda akan terlalu ketat atau terlalu longgar. Feed harga yang cepat membuat toleransi menjadi bermakna.
- Menguji dengan eksekusi sempurna. Backtest yang mengisi setiap order secara penuh pada kuotasi tidak dapat membedakan market, IOC, dan FOK. Modelkan kedalaman dan penolakan, atau lakukan forward test dengan ukuran kecil.
- Membawa pengaturan antar-venue. Toleransi yang disetel pada satu broker hanya sedikit berlaku untuk broker lain, karena kedalaman, last look, dan latensi semuanya berbeda.
Apa yang perlu diukur
Memilih jenis order adalah pertanyaan empiris, dan hanya log yang lengkap yang dapat menjawabnya. Laporan harus mencakup sinyal dan percobaan, bukan hanya trade yang selesai.
| Metrik | Definisi | Apa yang ditunjukkan |
|---|---|---|
| Fill ratio | Kuantitas terisi / kuantitas diminta | Terlalu rendah berarti limit ketat atau kedalaman tipis |
| Tingkat penolakan | Order ditolak atau dibatalkan / order terkirim | Lonjakan mendadak menandakan perubahan likuiditas atau broker |
| Slippage | Harga eksekusi dikurangi harga acuan saat sinyal, bertanda | Biaya eksekusi per trade yang terisi |
| Waktu pulang-pergi | Order terkirim hingga laporan eksekusi pertama | Apakah venue melambat, menurut waktu dalam sehari |
| Bersih per sinyal | Hasil total / semua sinyal, termasuk yang terlewat | Angka yang seharusnya menentukan toleransi |
Pisahkan angka-angka ini berdasarkan simbol, venue, jam, dan jenis order, lalu bandingkan hasilnya sebelum dan sesudah setiap perubahan. SharpTrader menampilkan order dan statistik kinerja dengan PnL, slippage, dan waktu eksekusi, yang menjadi dasar praktis untuk tinjauan semacam ini. Jenis order dan nilai TIF yang tersedia dalam suatu pengaturan bergantung pada konektor dan broker, jadi pastikan untuk akun Anda sendiri.
Bangun eksekusi berdasarkan data Anda sendiri
SharpTrader terhubung ke broker melalui FIX API dan protokol lainnya, menjalankan strategi arbitrase dan non-arbitrase, serta mencatat slippage dan waktu eksekusi untuk setiap order. Untuk menyetel parameter berdasarkan data tersebut, SharpTrader Optimizer mengotomatiskan pencariannya.
Scanner arbitrase gratis + kursus email singkat
Dapatkan tautan scanner gratis dan beberapa email singkat dan praktis dari Boris: arti sebenarnya selisih harga setelah biaya, cara menguji strategi sebelum mempertaruhkan uang sungguhan, dan alat mana yang cocok untuk pasar Anda. Tanpa janji berlebihan. Email dikirim dalam bahasa Inggris.
Pertanyaan yang sering diajukan
Apa perbedaan antara IOC dan FOK?
Keduanya tereksekusi segera dan tidak pernah berdiam di order book. IOC menerima eksekusi parsial dan membatalkan sisa yang tidak terisi. FOK mengharuskan seluruh kuantitas terisi sekaligus; jika tidak, seluruh order dibatalkan dan tidak ada transaksi.
Apakah FOK lebih baik daripada IOC?
Secara umum tidak ada yang lebih baik. FOK cocok untuk trade yang posisi parsialnya tidak berguna atau mempersulit hedge. IOC biasanya lebih sering menghasilkan transaksi karena sebagian ukuran tereksekusi, tetapi algoritma Anda harus menangani eksekusi parsial dengan benar.
Bisakah order FOK terisi sebagian?
Tidak. Menurut definisi, order FOK terisi penuh atau tidak sama sekali. Jika Anda melihat eksekusi parsial, berarti order tersebut bukan FOK sejati di venue itu, jadi periksa bagaimana broker memetakan instruksinya.
Apa yang terjadi pada bagian order IOC yang tidak terisi?
Bagian itu langsung dibatalkan dan tidak pernah berdiam di order book. Di FIX, Anda menerima laporan eksekusi yang menutup order, biasanya sebagai Canceled atau Expired tergantung venue, dengan LeavesQty 0.
Apakah market order sama dengan order IOC?
Tidak persis. Market order tidak memiliki batas harga, sedangkan IOC biasanya memilikinya. Banyak venue memang menjalankan market order dengan perilaku IOC atau FOK, sehingga masa berlakunya bisa sama, tetapi hanya limit yang melindungi harga.
Apa nilai FIX untuk IOC dan FOK?
Pada field TimeInForce, tag 59, IOC bernilai 3 dan FOK bernilai 4. Jenis order ditetapkan secara terpisah pada tag 40, dengan 1 untuk market dan 2 untuk limit.
Apakah semua broker forex mendukung IOC dan FOK?
Tidak. Dukungan bergantung pada broker, platform, dan jenis koneksi. Koneksi FIX API biasanya memberikan kontrol lebih besar, tetapi setiap venue menerbitkan daftar kombinasi jenis order dan time in force yang diterimanya.
Artikel ini bersifat edukatif dan bukan nasihat investasi. Order book dan model di sini adalah contoh ilustratif, bukan hasil trading. Trading valuta asing mengandung risiko kerugian yang signifikan.