What is an iceberg order? Hidden-size orders explained
An iceberg order is a large limit order that hides most of its size, revealing only a small “tip” to the public order book at a time — just as an iceberg shows only a fraction above the waterline. As each visible slice fills, the exchange automatically replenishes it from the hidden reserve. Traders use iceberg orders to accumulate or unload a big position without spooking the market or inviting front-running bots. This guide explains how iceberg orders work, why they matter, their limits, and how a bot places one.
What an iceberg order is
An iceberg order (also called a reserve order) is a single large limit order that displays only a small visible quantity on the order book while keeping the rest hidden. When the visible portion is filled, the exchange exposes the next slice automatically until the whole order is done or cancelled. To anyone watching the book, it looks like a series of small orders refilling at the same price.
Why hide your size
A large visible order is information. The moment a 500 BTC bid appears, other traders — and predatory bots — react: some front-run it, some pull their own orders, and the price moves against you before you fill. Hiding the bulk keeps that information private, reducing market impact and the slippage a visible whale order would suffer.
How it works
You set a total quantity, a limit price and a visible (display) size. The book shows only the display size; each time it fills, the next chunk appears at the same price. Some venues randomise the visible size slightly so observers cannot detect the iceberg by its perfectly regular refills.
Placing one in code
python · iceberg.pyimport ccxt
ex = ccxt.binance({'apiKey': KEY, 'secret': SECRET})
# Binance supports a native iceberg via icebergQty
ex.create_order(
'BTC/USDT', 'limit', 'buy',
amount=10, # total hidden quantity
price=60000,
params={'icebergQty': 0.5} # only 0.5 shows at a time
)
If an exchange has no native iceberg, you simulate one in code by repeatedly posting small limit orders from a hidden reserve — closer to a manual TWAP.
The limits
Iceberg orders cost you queue priority — hidden size usually sits behind fully displayed orders at the same price, so you may fill more slowly. And sophisticated participants can still infer an iceberg from the tell-tale refills at one price, then trade against it. Hiding size reduces impact; it does not make you undetectable.
Iceberg vs TWAP
An iceberg hides size at a single price; TWAP spreads size across time at whatever price prevails. Use an iceberg when you have a target price and patience; use TWAP when you need to complete by a deadline regardless of price. Many execution algos combine both.
Frequently asked questions
What is an iceberg order?
An iceberg order is a large limit order that shows only a small visible portion on the public order book while keeping the rest hidden. As the visible slice fills, the exchange automatically reveals the next slice from the hidden reserve. To observers it looks like a series of small orders refilling at the same price, hence the iceberg analogy.
Why do traders use iceberg orders?
Traders use iceberg orders to buy or sell a large position without revealing their full size. A big visible order signals intent and invites front-running and adverse price moves before it fills. Hiding the bulk keeps that information private, which reduces market impact and the slippage a large displayed order would otherwise suffer.
Are iceberg orders truly invisible?
No. Iceberg orders hide size but are not invisible. The hidden portion usually loses queue priority to fully displayed orders at the same price, so it can fill more slowly, and sophisticated traders can often detect an iceberg from its regular refills at one price level and trade against it. They reduce information leakage, not eliminate it.
What is the difference between an iceberg order and TWAP?
An iceberg order hides size at a single limit price and refills the visible tip as it fills, while a TWAP algorithm spreads an order across time at whatever price prevails on a fixed schedule. Use an iceberg when you have a target price and patience; use TWAP when you must complete by a deadline regardless of price.