TurboCapitalTurboCapital

SierraChart Indicator

VPIN — Order Flow Toxicity

Know When the Flow Turns Toxic. Before the Chart Shows It.

VPIN — Volume-Synchronized Probability of Informed Trading

VPIN — Order Flow Toxicity indicator screenshot

Measures order flow toxicity: how one-sided recent trading volume is, and how extreme that is relative to the instrument's own recent history.

Overview

VPIN (Easley, López de Prado & O'Hara — "Flow Toxicity and Liquidity in a High Frequency World", Review of Financial Studies 2012) estimates the probability that current order flow is coming from informed/urgent traders rather than balanced two-way business. Persistent one-sided flow is "toxic" to liquidity providers: they widen spreads or pull quotes, which precedes thinner books and higher short-term volatility. VPIN on the E-mini S&P was famously elevated for hours before the May 2010 Flash Crash.

The study computes VPIN in volume time: trading is divided into equal-volume buckets, so busy periods produce many buckets and quiet periods few, keeping the measure comparable across the session.

How It Works

  1. Volume bucketing. Bar volume is poured sequentially into buckets of fixed size V (bars are split across bucket boundaries). Bucket size is set explicitly or derived automatically as average daily volume / buckets per day.
  2. Buy/sell classification. Each bar's volume is classified either by Bulk Volume ClassificationVBuy = V × Z(ΔP/σ) with Z the standard normal CDF and σ the rolling std deviation of bar-to-bar price changes — or directly from actual Ask/Bid traded volume.
  3. VPIN = mean of |VBuy − VSell| / V over the last n completed buckets. Ranges 0 (perfectly balanced) to 1 (fully one-sided). It is direction-agnostic: it rises whether the pressure is buying or selling.
  4. VPIN CDF ranks the current VPIN within its trailing history — the fraction of recent VPIN values at or below the current one. This is the recommended way to read toxicity: raw VPIN levels are not comparable across symbols or regimes, ranks are.

Subgraphs

SubgraphDescription
VPINThe raw toxicity estimate (0–1)
VPIN CDFRank of current VPIN within the trailing lookback (0–1)

Inputs

InputDefaultDescription
Volume Bucket Size0 (auto)Contracts per bucket; 0 derives it from average daily volume / Buckets Per Day
Buckets Per Day50Used for the automatic bucket size
Sample Length (buckets)50Buckets averaged into VPIN
Volume ClassificationBulk Volume ClassificationBVC (normal CDF of price change) or Actual Ask/Bid Volume
Sigma Lookback (bars)250Rolling window for the BVC price-change std deviation
VPIN CDF Lookback (buckets)500Trailing window the CDF ranks against

Reading It

  • CDF ≈ 0.5 — order flow imbalance is typical; nothing unusual.
  • CDF > 0.9 — current toxicity is higher than 90% of the lookback: expect wider spreads, faster directional moves, worse fill quality. Favor momentum over fading; widen stops.
  • CDF pinned near 1.0 — flow about as one-sided as it gets for this instrument; historically clusters around liquidity events and volatility expansions.

VPIN is a regime gauge, not an entry trigger: it is a moving average over many buckets and moves in slow waves. Expect the CDF to hold elevated for stretches rather than spike and revert.

Recommended Settings

Paper-faithful (slow, daily regime): the defaults — 50 buckets/day, sample 50 (VPIN window = one full day of volume), 1-minute chart, 24-hour session.

Intraday (ES and similar):

InputValueEffect
Buckets Per Day200A bucket completes every ~2–3 min in RTH
Sample Length30VPIN reflects the last ~60–90 min of flow
VPIN CDF Lookback10000~10 trading weeks of reference, so one volatile week can't pin the CDF
Days to Load60–90The CDF window must be rebuildable from loaded chart data

Keep Sample Length ≥ ~20 — below that VPIN gets jumpy and the CDF flickers instead of holding.

Classification choice: BVC is the paper's choice and generally tracks toxicity better on index futures — its probabilistic smearing filters the two-way HFT churn that exact aggressor-side classification lets through. With Sierra you have both; comparing them on your instrument is one click.

Notes

  • Use a 24-hour session chart: buckets fill slowly overnight (volume time working as intended), so the indicator appears frozen in quiet Globex hours and updates at trading pace in RTH.
  • By construction only ~10% of buckets rank above 0.9 over a long run — but they arrive in blocks, not scattered. That persistence is a property of the measure, not a malfunction.
  • With Actual Ask/Bid classification on a chart without bid/ask volume data, every bar classifies neutral and VPIN stays at 0; the study logs a message telling you to switch to BVC.

Installation

  1. Place VPIN.dll in your Sierra Chart Data folder
  2. Add study to chart: Analysis > Studies > Add Custom Study
  3. Search for "VPIN"

Requirements

  • Sierra Chart with intraday volume data (1-minute chart recommended)
  • Bid/ask volume data only if using Actual Ask/Bid classification

COMPLETE BUNDLE — ALL 7 INDICATORS

€149 EUR

One-time payment · Sierra Chart license · All 7 indicators included, not just VPIN — Order Flow Toxicity