Order flow toxicity (VPIN)
Order flow is called toxic when it adversely selects the liquidity providers who trade against it, that is, when the aggressors tend to be right about the next move. VPIN, the volume-synchronized probability of informed trading introduced by Easley, López de Prado and O'Hara, estimates toxicity from the imbalance between buy and sell volume measured in equal-volume buckets.
Senzoukria · Glossary · Updated September 2026
Definition
Easley, López de Prado and O'Hara, in 'Flow Toxicity and Liquidity in a High-frequency World' (Review of Financial Studies, 2012), describe flow as toxic when it adversely selects market makers who may be unaware that they are providing liquidity at a loss. High toxicity pushes liquidity providers to withdraw, which thins the book and can make price moves more abrupt.
How VPIN is computed
- Divide trading into buckets of equal volume rather than equal time, so that busy periods produce more buckets.
- Within each bucket, split the volume into buy volume and sell volume. The original method uses a statistical classification of volume, called bulk volume classification, rather than trade-by-trade aggressor flags.
- For each bucket, take the absolute imbalance |buy − sell| divided by the bucket volume.
- VPIN is the average of that ratio over the last n buckets, a number between 0 and 1.
A worked example
Five buckets of 1,000 contracts show net aggressive volumes of +300, −100, +500, +200 and −50. The absolute imbalances sum to 1,150 over 5,000 contracts, so the ratio is 0.23. A reading of 0.23 means that, over those buckets, about a quarter of volume was one-sided net flow; whether that is high depends on the instrument's own history.
Criticisms and limits
The measure was presented with evidence around the May 2010 flash crash, and later work, notably by Andersen and Bondarenko, questioned its predictive power and showed that results are sensitive to how trades are classified as buys or sells. VPIN describes the recent balance of flow; treating it as a forecast of crashes or reversals goes beyond what that debate supports.
In Senzoukria
There is no VPIN indicator. Its ingredients are available: volume bars close every time a fixed number of contracts has traded, which is the equal-volume bucket, and the Delta % indicator gives each bar's net aggression as a share of its volume. Averaging the absolute value of Delta % over the last n volume bars gives a VPIN-like reading built on exchange aggressor flags rather than on bulk classification; it is a related measure, not the published one. Kyle Lambda (price impact), in the Quantitative group, measures the complementary question of how much that net flow moved price.
Related
In the same section
- Order guardrails
- Order flow software
- Order modification
- Order flow
- Order routing
- Order book snapshot
- Order ticket
- Book resiliency
This page in other languages
Frequently asked questions
- Does a high VPIN predict a crash?
- It was proposed as an early warning of toxicity-induced illiquidity, and its predictive value has been disputed in later research, in part because it depends on the trade classification used. A high reading says that recent volume was one-sided; what follows is not determined by the number.
- Why use volume buckets instead of time bars?
- Because information arrives with trading activity rather than with the clock. Equal-volume buckets sample more often when the market is busy and less often when it is quiet, which is the idea behind volume bars on order flow charts.