Who it's for — For those placing complex orders on derivatives and wanting granular control over what happens if the order cannot be completely executed.
Every time you open the window of a Limit Order on a professional exchange (like Binance or Bybit), you will find a small dropdown menu called Time in Force.
It serves to tell the exchange server: "If the order cannot be filled 100% right away, what do you want me to do with the rest?"
The 3 main variants
1. GTC (Good Till Canceled)
It is the default setting. It means the order will remain alive in the Order Book forever. If it is filled for only 50%, the other 50% will stay there waiting for another trader to buy it, even for months, until you manually cancel it.
2. IOC (Immediate Or Cancel)
You are telling the exchange: "Execute everything you can in THIS exact instant at the price I said. If anything is left over (because there isn't enough liquidity), cancel the remainder, don't leave it in the book!"
- Useful when you want to buy or sell massive amounts quickly without risking leaving a passive order exposed if the market is crazy.
3. FOK (Fill Or Kill)
It is the most tyrannical order. "Either execute 100% of my size instantly at my price, or cancel EVERYTHING. I do not accept partial executions."
- Used by arbitrage bots: they need the exact quantity to be mathematically guaranteed to make the math work, a partial execution would break their strategy.
Summary Sheet
- GTC: Wait forever. Leaves remainders in the book. (The option for 99% of Retail traders).
- IOC: Take what is there immediately, cancel the rest.
- FOK: All at once, or nothing.
Links
- limit-order — The order to which Time in Force rules apply.
- liquidity — The reason these directives exist (liquidity is never infinite).
- bronze-path
Module: Module 3 — Orders and Operations
Know what happens when you click buy or sell.