Quant Memo
Core

Sourcing Dark Liquidity

How execution algorithms probe non-displayed venues — dark pools, midpoint crossing networks, and hidden order types — to fill large orders without moving the visible price.

Prerequisites: Liquidity-Seeking Algorithms, Detecting Hidden Liquidity

A trader who needs to sell 500,000 shares faces a bind: posting that size on the lit order book announces the intention to the entire market, and other participants will step in front of it, pushing the price down before the order is half filled. Dark liquidity seeking routes pieces of that order to venues where size and intention are not displayed, so a counterparty can be found without broadcasting the trade first.

What "dark" means here

A dark pool (or non-displayed venue) matches buyers and sellers without showing quotes publicly — orders sit hidden, and a trade only becomes visible after it executes and is reported. Many dark venues also match at the midpoint of the public bid-ask spread, so neither side pays the full spread. A dark-seeking algorithm doesn't send the whole order to one pool; it "pings" many pools with small, non-committal orders — often called Immediate-or-Cancel probes — to discover where a matching counterparty might be resting, then routes larger pieces to whichever venues show fills.

The appeal: no displayed quote means no signal to react to, and midpoint execution means better prices than crossing the lit spread. The cost is uncertainty — there is no order book to read, so the algorithm must find out how much size is really there by trial.

Worked example: routing a 200,000-share sell order

A trader has 200,000 shares to sell and the lit book shows only 5,000 shares on the bid, meaning a direct market order would walk through several price levels. A dark-seeking algorithm instead sends 2,000-share IOC probes simultaneously to four pools. Two return no fill, one returns a partial fill of 800 shares, and one returns a full fill of 2,000 shares at the midpoint. The algorithm follows up with a larger clip — say 15,000 shares — to the pool that just filled fully, since a fill is evidence of resting liquidity there right now, while reducing probe size to the pools that returned nothing. Over the order, this adaptive routing might source 40% of the total size in the dark at the midpoint, capturing real spread savings while limiting how much of the order's true size the lit market ever sees at once.

Parent order Pool A: no fill Pool B: no fill Pool C: partial Pool D: full fill Route more here
Small IOC probes go out to several dark pools at once; the pools that fill are the ones inferred to have real resting liquidity, and follow-up size is routed there.

What this means in practice

Dark liquidity seeking is usually one component of a larger execution schedule, not a standalone strategy — algorithms blend dark routing with lit-market participation (see order slicing and child orders), sending low-impact size to dark venues while still needing the lit book for the portion dark pools can't absorb. It matters most for large, illiquid orders where lit-market impact would be expensive. Traders also watch fill quality: a fill from a pool dominated by short-term, informed counterparties can mean adverse selection — the price moves against you right after — even though the trade nominally executed at a "good" midpoint price.

Dark liquidity seeking routes small probe orders to non-displayed venues to find hidden counterparties and execute at the midpoint without signaling size to the lit market, adapting which venues get more flow based on which ones actually fill.

A useful mental model: probing a dark pool is like knocking on doors to ask "anyone selling?" without shouting it down the street — you learn where the sellers are one quiet knock at a time, rather than announcing you're buying and watching prices move before you've bought anything.

Related concepts

Practice in interviews

Further reading

  • Harris, Trading and Exchanges, ch. 4
  • Johnson, Algorithmic Trading and DMA, ch. 9
ShareTwitterLinkedIn