Free Tools & Code Worked Examples Home Markets News Equities Quantum Papers Microstructure About
HomeLearn › What is VPIN?

What is VPIN?

Short answer

VPIN (Volume-Synchronized Probability of Informed Trading) estimates how toxic order flow is — that is, how likely it is that the counterparties trading against a market maker are better informed. It works by splitting trading activity into equal-volume buckets rather than equal time intervals, classifying each bucket's volume as buy- or sell-initiated, and averaging the absolute imbalance. Readings near 1 indicate heavily one-sided, likely informed flow; readings near 0 indicate balanced flow.

Why time buckets fail and volume buckets do not

The idea VPIN replaced was PIN, which estimated informed trading from daily buy and sell counts using a maximum-likelihood fit. That approach struggles once trading becomes fast and uneven: in modern markets, a single minute at the open can carry more volume than an hour at midday, so a clock-based window mixes a frantic period and a quiet one into the same observation.

VPIN's central move is to stop using the clock. Volume is accumulated until a fixed bucket size is reached, and only then is the bucket closed. Every bucket therefore represents the same amount of economic activity, which makes buckets comparable to one another regardless of how long each took in wall time. In an active period buckets close quickly; in a quiet one they take longer. This is what “volume-synchronized” means.

Formula

Split the tape into n buckets of equal volume V. For bucket i, classify volume into buy-initiated (Vb) and sell-initiated (Vs), so that Vb_i + Vs_i = V. 1 n VPIN = ------- * SUM | Vb_i - Vs_i | n * V i = 1 VPIN is bounded in [0, 1]: 0 -> every bucket perfectly balanced 1 -> every bucket entirely one-sided

Worked example

Take a bucket size of V = 100,000 shares and four completed buckets:

BucketBuy volumeSell volume|Imbalance|
155,00045,00010,000
280,00020,00060,000
348,00052,0004,000
490,00010,00080,000
VPIN = (10,000 + 60,000 + 4,000 + 80,000) / (4 x 100,000) = 154,000 / 400,000 = 0.385

0.385 means that, on average, about 38.5% of each bucket's volume was unmatched directional pressure. Two of the four buckets (2 and 4) are doing almost all the work — which is typical, and a reason to look at the distribution of bucket imbalances rather than the average alone.

Where the buy/sell split comes from

Exchange tapes do not label trades as buyer- or seller-initiated, so the split has to be inferred. Two common approaches:

The choice matters: published VPIN levels are not comparable across studies unless the classification method, bucket size and sample window all match.

What a high reading actually means

A high VPIN says order flow has been persistently one-sided. For a liquidity provider that is a warning about adverse selection: the probability of being filled by someone who knows more rises, so quoting the same spread becomes more expensive. The documented response is to widen spreads or withdraw, which is the mechanism connecting toxicity to liquidity deterioration.

What it does not say is which direction price will go. VPIN uses the absolute imbalance, so a heavily bought and a heavily sold bucket produce the same contribution. It is a measure of one-sidedness, not of direction.

Limitations

References

Related