What is the difference between IOC and FOK orders?


When placing a market order, the client (trader) should pay attention to such order execution strategies as the 'immediately execute or cancel' (IOC) order and the 'fully execute or cancel' (FOK) order, located at the top of the 'Market' Widget of the trading terminal. What is the difference between these types of orders?



The main difference between IOC and FOK orders is in different execution methods. The clients of UNI Stex can choose one of the order execution strategies in accordance with the various objectives of the transactions.


'Execute or Cancel Immediately' order (IOC, Immediate Or Cancel)


The IOC order will be immediately executed in full or in part at the stated (or best) price, and the part that cannot be immediately executed will be cancelled. If the order cannot be executed immediately in full or in part, it will be cancelled.


Here is an example of an IOC market order:


The seller placed an order for the sale of 10 BTC at the current price of 50,000 EUR, however, the buyer at the same price placed an order for the buy of only 8 BTC. According to the IOC strategy, a transaction for 8 BTC will be immediately concluded, and the unfulfilled part of the order for 2 BTC will be cancelled.


IOC is usually used for orders for large amounts. To speed up the transaction, the part of the order that cannot be executed immediately will be cancelled in order to control risks.


Order 'fully execute or cancel' (FOK, Fill or Kill)


The FOK order must be immediately executed in full at the stated (or best) price or cancelled, that is, its partial execution is not allowed.


Here is an example of a market order FOK:


The buyer wants to immediately sell 10 BTC at the price of 50,000 EUR and sets a limit order FOK at 50,000 EUR.


There are only 8 BTC orders for sale at the current price of 50,000 EUR. According to the FOC strategy, this order cannot be executed in full immediately, and therefore it will be cancelled.


FOC is also usually used for orders for large amounts and guarantees the execution of an order at the expected price and in the right amount in order to reduce the cost of managing unfulfilled orders.