Quant Memo
Core

Pre-Trade Cost Models

Before an order is sent, a desk estimates what it will cost to trade — spread, impact, and the risk of prices moving while you wait — and uses that estimate to pick how fast to trade.

Prerequisites: The Square-Root Impact Law, Bid-Ask Spread Decomposition

A portfolio manager wants to buy 200,000 shares of a stock. Average daily volume (ADV) is 4,000,000 shares, the stock trades at $50.00 with a quoted spread of $0.02, and its daily volatility is 2%. Before the order goes anywhere, the desk needs a number: roughly what will this cost, and does that number change if we trade it over one hour instead of one day? That estimate — made before a single share trades — is a pre-trade cost model.

The order is 200,000/4,000,000=5%200{,}000 / 4{,}000{,}000 = 5\% of ADV. That participation rate, call it XX, drives almost everything. A standard model splits expected cost into three pieces:

spread cost=12×spread×shares\text{spread cost} = \tfrac{1}{2} \times \text{spread} \times \text{shares}

impact cost=σ×ηX×shares×price\text{impact cost} = \sigma \times \eta \sqrt{X} \times \text{shares} \times \text{price}

timing risk=σ×T×shares×price\text{timing risk} = \sigma \times \sqrt{T} \times \text{shares} \times \text{price}

In words: spread cost is what you pay crossing the bid-ask on the way in (half the spread per share, roughly, for an order that isn't purely passive). Impact cost is the square-root impact law — cost grows with the square root of how large your order is relative to the market, scaled by volatility σ\sigma and a stock-specific constant η\eta (typically fit from historical data, often around 0.5–1). Timing risk isn't a cost you pay on average, it's the standard deviation of your outcome — the price can drift against you simply from holding an unfinished order open for time TT (measured as a fraction of a trading day), and that risk shrinks the faster you trade.

Worked example

Plug in the numbers. Spread cost: 12×0.02×200,000=2,000\tfrac{1}{2} \times 0.02 \times 200{,}000 = 2{,}000, i.e. $2,000 — half a cent per share crossing the spread.

Impact cost, trading over a full day (X=0.05X = 0.05, take η=0.75\eta = 0.75): 0.02×0.75×0.05×200,000×50=0.02×0.75×0.2236×10,000,00033,5400.02 \times 0.75 \times \sqrt{0.05} \times 200{,}000 \times 50 = 0.02 \times 0.75 \times 0.2236 \times 10{,}000{,}000 \approx 33{,}540, i.e. roughly $33,500 — about 3.4 basis points of notional.

Timing risk, trading over a full day (T=1T=1): 0.02×1×10,000,000=200,0000.02 \times \sqrt{1} \times 10{,}000{,}000 = 200{,}000, i.e. $200,000 of standard deviation around the expected cost — this is not money you expect to lose, it's the width of the distribution of outcomes if the market happens to run away from you while the order is still open.

Now compare to trading it in one hour instead (T=1/6.5T = 1/6.5 of a 6.5-hour session, so participation rate roughly quadruples to X0.20X \approx 0.20 if volume is spread evenly through the day, though real intraday volume is front- and back-loaded). Impact cost rises to 0.02×0.75×0.20×10,000,00067,0000.02 \times 0.75 \times \sqrt{0.20} \times 10{,}000{,}000 \approx 67{,}000, i.e. $67,000 — impact roughly doubles because it scales with X\sqrt{X}. But timing risk falls to 0.02×1/6.5×10,000,00078,4000.02 \times \sqrt{1/6.5} \times 10{,}000{,}000 \approx 78{,}400, i.e. $78,400 — a quarter of the full-day number, because T\sqrt{T} shrinks fast.

participation rate (slower → faster) cost timing risk impact cost total expected cost optimum
Impact cost rises with speed, timing risk falls with speed; total expected cost (impact plus a risk penalty) traces a shallow U, and the desk picks the participation rate near its minimum given how risk-averse the fund is.

Pre-trade cost has two currencies, not one: an expected cost (spread + impact, which grows with speed) and a risk (timing risk, which shrinks with speed). There is no speed that minimizes both at once — the "optimal" participation rate is wherever the desk's risk aversion says the trade-off is worth it, not the minimum of either curve alone.

Where this is used in practice

  • Algo selection. The pre-trade estimate is what tells a trader to route to a VWAP algo over the full day versus an aggressive liquidity-seeking algo over twenty minutes — the model's cost-vs-speed curve is the menu.
  • Best execution and compliance. Funds are often required to document that expected costs were considered before trading, and the pre-trade estimate becomes the benchmark that post-trade TCA is measured against.
  • Portfolio construction. If a signal's expected edge is 10 bps and the pre-trade model says trading the position costs 15 bps, the honest answer is not to trade it — pre-trade models are as much a filter on which ideas are worth acting on as they are an execution tool.

These models are calibrated on historical averages and can be badly wrong exactly when it matters most — in a stock with a stale ADV number (post-earnings volume spike, index inclusion), the participation rate you plug in understates true available liquidity or overstates it, and the cost estimate is off by multiples, not percentages. Always sanity-check ADV and volatility inputs against very recent data, not a trailing 90-day average that predates a regime change.

In interviews

Expect to be asked to build the estimate from scratch: participation rate first (order size over ADV), then spread cost as a flat half-spread charge, then impact as σηX\sigma \eta \sqrt{X}, then timing risk as σT\sigma \sqrt{T}. The key insight to state explicitly is that impact and timing risk move in opposite directions with speed, so "optimal execution" is a risk-aversion choice, not a pure minimization — tie it back to Permanent Versus Temporary Impact if asked why impact doesn't simply reverse once the order is done.

Related concepts

Practice in interviews

Further reading

  • Almgren & Chriss (2001), Optimal Execution of Portfolio Transactions
  • Kissell (2013), The Science of Algorithmic Trading and Portfolio Management
ShareTwitterLinkedIn