Unit 14, lesson 106

Order flow adverse selection and price impact

How signed order flow and price response are measured, how adverse selection gives an informational bid and ask by Bayes' rule, and how stipulated permanent and temporary impact differ from that spread.

  • Video 106
  • Order books, execution and market making

A dealer with no inventory risk quotes a share that is worth 100100 on average. Why should the ask that gives the dealer zero expected profit lie above 100100? A buy order is more likely to arrive when the value is high, so the order itself carries information about the value. This lesson defines signed order flow and price response, derives the informational bid and ask of a finite Bayesian model, and separates that adverse-selection spread from a stipulated model of permanent and temporary impact. It also explains why a positive response of prices to order flow does not by itself identify what caused the move.

Key terms

Signed order flow

Definition Each trade kk gets a sign εk=+1\varepsilon_k = +1 if it is buyer-initiated and εk=−1\varepsilon_k = -1 if it is seller-initiated, where the initiator is the side whose marketable order arrived and executed against resting liquidity. With trade sizes vk>0v_k > 0 in shares, the signed order flow over an interval is the net buyer-initiated volume

OF⁡=∑kεk vk,\operatorname{OF} = \sum_{k} \varepsilon_k\, v_k ,

in shares. The sum of signs ∑kεk\sum_k \varepsilon_k is a different statistic, which counts trades instead of shares. When the data do not record the initiator, the sign must be inferred by a stated classification rule, for example by comparing the trade price with the prevailing midpoint, and under that rule a trade exactly at the midpoint stays ambiguous. The value of the statistic depends on the interval, the size measure and the sign rule, so all three are fixed before it is interpreted. A positive signed flow says that more volume was initiated by buyers. It does not say that the price must rise.

In plain words Signed flow is buying pressure minus selling pressure, where pressure is measured by who crossed the spread. Every trade has a buyer and a seller, so the sign records which side demanded immediacy, not which side traded more.

Example In a constructed interval there are four trades, a buyer-initiated trade of 300300 shares, a seller-initiated trade of 100100, a buyer-initiated trade of 200200 and a seller-initiated trade of 150150. The signed order flow is 300−100+200−150=250300 - 100 + 200 - 150 = 250 shares out of a gross volume of 750750 shares, while the sum of the trade signs is 00. The two statistics disagree, so a report has to say which one it uses.

Price response

Definition A price response statistic relates later price changes to signed flow over a chosen lag. For trades indexed by kk, with sign εk\varepsilon_k and midpoint mkm_k just before trade kk, and for a stationary sequence of trades, a common form is the response function

R(ℓ)=E[εk (mk+ℓ−mk)],R(\ell) = \mathbb{E}\bigl[\varepsilon_k\,(m_{k+\ell} - m_k)\bigr],

where the lag ℓ\ell counts trades. It is estimated by the sample average of εk(mk+ℓ−mk)\varepsilon_k (m_{k+\ell} - m_k) over the trades. Another common form is the slope of a regression of interval midpoint changes on the signed flow of the interval. Defined this way, a response is an association. Information, the mechanical depletion of liquidity, dealer inventory, autocorrelated order flow (for example a large order split into many trades of the same sign), a price trend that began before the trades, and common news all contribute to it. A positive response does not identify which of these moved the price. Reading a response as the causal effect of trading needs a research design that separates these sources, for example trades whose timing is randomized independently of any information.

In plain words The response says how far prices tend to move in the direction of the trades, on average, a given time after them. It says that buys tend to be followed by higher prices, not why.

Example In the binary model of the informational spread card below, with an informed share of θ=0.2\theta = 0.2, the dealer’s conditional value of the share is 100.2100.2 after a buy and 99.899.8 after a sell, so its change from 100100 is exactly Δ=0.2 ε\Delta = 0.2\,\varepsilon for a trade of sign ε\varepsilon. Buys and sells are equally likely, so E[ε]=0\mathbb{E}[\varepsilon] = 0, and across independent repetitions of the one-trade model the regression of the change on the sign has slope

β=Cov⁡(Δ,ε)Var⁡(ε)=0.2 E[ε2]E[ε2]=0.2.\begin{aligned} \beta &= \frac{\operatorname{Cov}(\Delta, \varepsilon)}{\operatorname{Var}(\varepsilon)} \\[0.4em] &= \frac{0.2\, \mathbb{E}[\varepsilon^2]}{\mathbb{E}[\varepsilon^2]} = 0.2 . \end{aligned}

That model has no mechanical impact at all. A mechanical model without any information could produce the same slope, so the slope alone cannot tell the two apart.

Adverse selection

Definition A liquidity provider faces adverse selection when the trades it receives are more likely to come from counterparties whose information makes the trade unfavorable to it. Let VV be the value of the share in currency units, with mean E[V]\mathbb{E}[V]. A dealer who sells at the ask aa to a buyer gains a−Va - V per share and a dealer who buys at the bid bb from a seller gains V−bV - b. Adverse selection means E[V∣buy]>E[V]\mathbb{E}[V \mid \text{buy}] > \mathbb{E}[V] and E[V∣sell]<E[V]\mathbb{E}[V \mid \text{sell}] < \mathbb{E}[V]. A risk-neutral dealer whose competitors drive expected profit to zero sets each quote equal to the conditional expected value given that a trade arrives on that side,

a=E[V∣buy],b=E[V∣sell],\begin{gathered} a = \mathbb{E}[V \mid \text{buy}], \\[0.4em] b = \mathbb{E}[V \mid \text{sell}], \end{gathered}

so that E[a−V∣buy]=0\mathbb{E}[a - V \mid \text{buy}] = 0 and E[V−b∣sell]=0\mathbb{E}[V - b \mid \text{sell}] = 0. The spread then balances expected losses to informed traders against expected gains from uninformed ones. It can be positive with no inventory risk, no costs and no market power.

In plain words When some of its counterparties are informed, a dealer who quotes the average value loses on average, because the traders who choose to trade with it are more likely to know something. Quoting the value given that a trade happens builds what the trade reveals into the price.

Example In the binary model below with θ=0.2\theta = 0.2, an informed buy happens exactly when the trader is informed and the value is 101101, which has probability 0.2⋅0.5=0.10.2 \cdot 0.5 = 0.1, while a buy has probability 0.50.5. So a buy comes from an informed trader with probability 0.1/0.5=0.20.1/0.5 = 0.2. A dealer who sold at 100100 would lose E[V∣buy]−100=0.2\mathbb{E}[V \mid \text{buy}] - 100 = 0.2 per share in expectation. At the zero-profit ask 100.2100.2 the dealer loses 101−100.2=0.8101 - 100.2 = 0.8 to an informed buyer and gains 100.2−100=0.2100.2 - 100 = 0.2 on average from an uninformed one, whose trade says nothing about the value. The expected profit per buy is

0.2⋅(−0.8)+0.8⋅0.2=0.0.2 \cdot (-0.8) + 0.8 \cdot 0.2 = 0 .

Informational spread

Definition The following finite model is constructed for this lesson in the spirit of the Glosten-Milgrom model. One trader arrives and trades one share. The value per share is V∈{VL,VH}V \in \{V_L, V_H\} with VL<VHV_L < V_H and prior P(H)=12\mathbb{P}(H) = \tfrac12, where HH is the event V=VHV = V_H and LL the event V=VLV = V_L. Independently of VV, the trader is informed with probability θ∈[0,1]\theta \in [0, 1]. An informed trader buys under HH and sells under LL, and an uninformed trader buys or sells with probability 12\tfrac12 each, independently of VV. A risk-neutral competitive dealer sets a=E[V∣buy]a = \mathbb{E}[V \mid \text{buy}] and b=E[V∣sell]b = \mathbb{E}[V \mid \text{sell}], with no fees, no tick size and no inventory cost. Under HH an informed trader buys for sure and an uninformed one with probability 12\tfrac12, so P(buy∣H)=θ+12(1−θ)\mathbb{P}(\text{buy} \mid H) = \theta + \tfrac12 (1 - \theta), and under LL only uninformed traders buy. Hence

P(buy∣H)=12(1+θ),P(buy∣L)=12(1−θ),\begin{aligned} \mathbb{P}(\text{buy} \mid H) &= \tfrac12 (1 + \theta), \\[0.4em] \mathbb{P}(\text{buy} \mid L) &= \tfrac12 (1 - \theta), \end{aligned}

so P(buy)=12\mathbb{P}(\text{buy}) = \tfrac12 and Bayes’ rule gives

P(H∣buy)=P(buy∣H) P(H)P(buy)=1+θ2.\begin{aligned} &\mathbb{P}(H \mid \text{buy}) \\[0.4em] &\quad = \frac{\mathbb{P}(\text{buy} \mid H)\, \mathbb{P}(H)}{\mathbb{P}(\text{buy})} \\[0.4em] &\quad = \frac{1 + \theta}{2} . \end{aligned}

With the prior mean Vˉ=12(VL+VH)\bar V = \tfrac12 (V_L + V_H), the ask is

a=VL+(VH−VL) 1+θ2=Vˉ+θ2 (VH−VL),\begin{aligned} a &= V_L + (V_H - V_L)\, \frac{1 + \theta}{2} \\[0.4em] &= \bar V + \frac{\theta}{2}\, (V_H - V_L), \end{aligned}

and the same computation after a sell, where P(H∣sell)=12(1−θ)\mathbb{P}(H \mid \text{sell}) = \tfrac12 (1 - \theta), gives b=Vˉ−θ2(VH−VL)b = \bar V - \tfrac{\theta}{2} (V_H - V_L). The informational spread is a−b=θ (VH−VL)a - b = \theta\, (V_H - V_L). It increases with θ\theta. It vanishes at θ=0\theta = 0, because the order then has the same likelihood under both values and reveals nothing, and it equals VH−VLV_H - V_L at θ=1\theta = 1, when every trade reveals the value. The spread in this model comes from information alone. Fees, the tick size, inventory costs and order processing costs can create spreads that the model leaves out.

In plain words The ask is the value the dealer expects after learning that someone wants to buy, and the bid is the value after learning that someone wants to sell. The larger the informed share of the order flow, the more a single order says about the value, and the farther apart the quotes must be.

Example With VL=99V_L = 99, VH=101V_H = 101 and the constructed informed share θ=0.2\theta = 0.2, a buy has probability 0.60.6 under HH and 0.40.4 under LL, so a buy raises the probability of HH from 0.50.5 to 0.60.6. The ask is 0.6⋅101+0.4⋅99=100.20.6 \cdot 101 + 0.4 \cdot 99 = 100.2, the bid is 99.899.8 and the spread is 0.40.4 currency units per share. With θ=0.4\theta = 0.4 the probability of HH after a buy is 0.70.7, the quotes are 100.4100.4 and 99.699.6, and the spread doubles to 0.80.8.

Permanent impact

Definition In a stipulated impact model a trade of signed size qq shares, positive for a buy and negative for a sell, moves the midpoint from mm to

m+γq,m + \gamma q ,

and the shift persists over the horizon of the model. The coefficient γ≥0\gamma \ge 0 is in currency per share squared, so γq\gamma q is in currency per share. Calling impact permanent is a modeling assumption that needs a stated horizon and a stated mechanism, and the word supplies neither. It does not say whether the shift comes from information or from mechanics, and the model takes γ\gamma as given rather than estimating it. A dynamic impact model should also be checked on round trips. If buying and then selling the same quantity could earn a profit from the modeled price displacement alone, the model allows price manipulation. Whether a model avoids this depends on its impact functions, its timing convention, its costs and the admissible trading paths taken together. A positive fitted coefficient does not settle it, and this lesson derives no general no-manipulation theorem.

In plain words Permanent impact is the part of the price move that a trade leaves behind. Later trades start from the shifted price.

Example For a constructed buy of q=100q = 100 shares with γ=0.0002\gamma = 0.0002 currency per share squared, the permanent shift is 0.0002⋅100=0.020.0002 \cdot 100 = 0.02 currency units per share, so a midpoint of 100100 becomes 100.02100.02 and stays there within the model.

Temporary impact

Definition Temporary impact is a displacement of the execution price that applies only to the trade that causes it and has dissipated by the next observation of the midpoint. In the linear stipulated model it is ηq\eta q, with η≥0\eta \ge 0 in currency per share squared. The execution price also needs a timing convention. Here the trade is assumed to execute at the fully shifted midpoint plus the temporary displacement,

pexec=m+γq+ηq,p_{\text{exec}} = m + \gamma q + \eta q ,

after which the midpoint is m+γqm + \gamma q. The cost of the trade relative to the pre-trade midpoint is then

q (pexec−m)=(γ+η) q2,\begin{aligned} &q\,(p_{\text{exec}} - m) \\[0.4em] &\quad = (\gamma + \eta)\, q^2 , \end{aligned}

which is nonnegative for buys and sells alike. Other conventions give other execution prices, for example a trade that sweeps through the book while the permanent shift builds up. The convention is part of the model, in the same way that the conditioning rule is part of the informational model.

In plain words Temporary impact is the premium for demanding liquidity now. It is paid on the trade and then disappears from the price, while the permanent part stays in the price for everyone.

Example For the constructed buy of 100100 shares with γ=0.0002\gamma = 0.0002 and η=0.0005\eta = 0.0005, the temporary displacement is 0.050.05 per share. From a midpoint of 100100 the execution price is 100+0.02+0.05=100.07100 + 0.02 + 0.05 = 100.07, and once the temporary part has dissipated the midpoint is 100.02100.02. The cost against the pre-trade midpoint is 100⋅0.07=7100 \cdot 0.07 = 7 currency units. If instead the permanent shift built up linearly while the shares traded, with the same temporary displacement, the average midpoint during the trade would be 100.01100.01 and the average execution price 100.06100.06.

Check yourself

  1. In the binary model, let VL=48V_L = 48, VH=52V_H = 52 and θ=0.25\theta = 0.25. Find the probability of the high value after a buy, the zero-profit ask and bid, and the spread.
Show the answer

After a buy the probability of HH is 12(1+0.25)=0.625\tfrac12(1 + 0.25) = 0.625, and after a sell it is 0.3750.375. The ask is

a=48+4⋅0.625=50.5,\begin{aligned} a &= 48 + 4 \cdot 0.625 \\[0.4em] &= 50.5 , \end{aligned}

and the bid is 48+4⋅0.375=49.548 + 4 \cdot 0.375 = 49.5. The spread is 11 currency unit per share, which agrees with θ (VH−VL)=0.25⋅4\theta\,(V_H - V_L) = 0.25 \cdot 4. The quotes sit symmetrically around the prior mean 5050.

  1. Trades are generated by the binary model with VL=99V_L = 99, VH=101V_H = 101 and θ=0.2\theta = 0.2. An analyst regresses the change in the dealer’s conditional value on the trade sign, finds the slope 0.20.2 and reports it as the permanent mechanical impact of a one-share trade. What is wrong with that reading?
Show the answer

The slope is correct, but the model contains no mechanical impact. After a buy the conditional value rises from 100100 to 100.2100.2 because the dealer updates the probability of the high value, and after a sell it falls to 99.899.8. The revision is even permanent on average, since E[ε(V−100)]=0.5⋅0.2+0.5⋅0.2=0.2\mathbb{E}[\varepsilon (V - 100)] = 0.5 \cdot 0.2 + 0.5 \cdot 0.2 = 0.2 when the value is finally revealed. So a permanent response does not imply a mechanical cause. The same revision follows a trade by an uninformed trader, who knows nothing, because the dealer cannot tell the two apart. In real data a positive slope can also come from buyers who anticipate news, from autocorrelated order flow or from a trend that began before the trades. Identifying a mechanical coefficient such as γ\gamma needs a research design that separates these sources, and the slope alone describes an association.

  1. Use the stipulated model with γ=0.0002\gamma = 0.0002, η=0.0005\eta = 0.0005 and a midpoint of 100100. A trader buys 100100 shares and, once the temporary displacement has dissipated, sells 100100 shares. Find the profit of the round trip under the timing convention of the temporary impact card. Then suppose instead that each trade executes at its pre-trade midpoint plus or minus the temporary displacement, and the permanent shift applies only after the trade. Find the round-trip profit for γ=0.0002\gamma = 0.0002 and for γ=0.0012\gamma = 0.0012.
Show the answer

Under the card’s convention the buy executes at 100.07100.07 and leaves the midpoint at 100.02100.02. The sell has q=−100q = -100, so it executes at 100.02−0.02−0.05=99.95100.02 - 0.02 - 0.05 = 99.95 and returns the midpoint to 100100. The profit is 100⋅(99.95−100.07)=−12100 \cdot (99.95 - 100.07) = -12 currency units, which is −(γ+2η) q2-(\gamma + 2\eta)\, q^2. Under this convention the round trip never gains, whatever the coefficients γ,η≥0\gamma, \eta \ge 0.

Under the second convention the buy executes at 100+0.05=100.05100 + 0.05 = 100.05 and the midpoint then moves to 100+100γ100 + 100\gamma. The sell executes at that midpoint minus 0.050.05. The profit is

100⋅(100γ−0.1)=(γ−2η) q2,\begin{aligned} &100 \cdot (100 \gamma - 0.1) \\[0.4em] &\quad = (\gamma - 2\eta)\, q^2 , \end{aligned}

with q=100q = 100. For γ=0.0002\gamma = 0.0002 it is −8-8 currency units. For γ=0.0012\gamma = 0.0012 the sell executes at 100.12−0.05=100.07100.12 - 0.05 = 100.07, and the profit is +2+2 currency units from the modeled displacement alone. That version of the model allows price manipulation, which shows that a fitted coefficient cannot be judged without the timing convention and the admissible trades.

How this lesson connects