VPIN: formule, volumebuckets en het debat over de Flash Crash
Lees hoe VPIN volumetijdbuckets en bulk-volumeclassificatie gebruikt om onevenwicht in de orderstroom samen te vatten. Bekijk een hypothetische berekening en de betwiste onderzoeksresultaten over de Flash Crash van 2010.
In deze gidsWat VPIN meet en wat de naam kan overdrijven
Korte samenvatting
VPIN is een voortschrijdend gemiddelde van de absolute onbalans tussen koop- en verkoopvolume in recente buckets met hetzelfde volume. De bedenkers stelden het voor als een manier om de toxiciteit van orderstroom op volumetijd te volgen, maar de invoer en interpretatie zijn omstreden. De score is geen rechtstreeks waargenomen kans dat een transactie op voorkennis berust, geen bewezen Flash-Crashwaarschuwing en geen zelfstandig handelssignaal.
Wat VPIN meet en wat de naam kan overdrijven
VPIN staat voor volume-synchronized probability of informed trading. Easley, López de Prado en O’Hara introduceerden het als een hoogfrequente maatstaf die samenhangt met toxiciteit van orderstroom: situaties waarin liquiditeitsverschaffers nadelige selectie kunnen ondervinden, omdat inkomende transacties waarschijnlijker van de geïnformeerde kant komen. Hun methode combineert volumeonbalans met handelsintensiteit en wordt bijgewerkt op een volumeklok in plaats van vaste kloktijdintervallen (Easley, López de Prado en O’Hara, 2012).
De naam vraagt om voorzichtigheid. Een berekende VPIN-waarde van bijvoorbeeld 0.32 betekent niet dat de volgende transactie met een gekalibreerde kans van 32% afkomstig is van een handelaar met voorkennis. Het is een genormaliseerd gemiddelde van geschatte onbalansen op basis van gekozen data, classificatie, bucketgrootte en vensterregels. De maatstaf identificeert niet welke handelaar geïnformeerd is, maakt geen onderscheid tussen informatie en liquiditeitsgedreven handel, en bewijst niet dat een liquiditeitsverschaffer daadwerkelijk verlies heeft geleden.
VPIN verschilt ook van gesigneerde orderstroomonbalans. Voor het gemiddelde neemt de maatstaf de absolute onbalans binnen elke bucket, zodat zowel buckets met veel koop- als met veel verkoopvolume positief bijdragen. De score vat samen hoe eenzijdig de stroom in recente volume-intervallen was, maar verwijdert de richting van de onbalans uit het eindresultaat. Het klassieke PIN-model modelleert daarentegen aantallen aankomende koop- en verkooporders over tijdsperioden met een latentetoestandsmodel.
Buckets op volumetijd laten updates afhangen van handelsactiviteit
Een grafiek op kloktijd neemt waarnemingen op vaste intervallen, bijvoorbeeld elke seconde of minuut. Een volumeklok gaat verder zodra een bepaalde hoeveelheid is verhandeld. Als een bucket is ingesteld op 1.000 contracten, wordt die telkens afgesloten nadat 1.000 contracten zijn verhandeld, of dat nu 20 seconden duurt in een drukke periode of 12 minuten in een rustige periode.
Elke bucket is bedoeld om hetzelfde totale handelsvolume te bevatten. De kloktijd die een bucket beslaat, verschilt dus. VPIN wordt vervolgens berekend over een voortschrijdend venster van de meest recente (n) volumebuckets en bijgewerkt wanneer een nieuwe bucket compleet is. Daardoor zijn er meer updates in drukke perioden en minder in rustige perioden.
Volumetijd is een steekproefconventie, geen manier om marktactiviteit uit de data te verwijderen. Sneller handelen kan veranderen hoe snel een VPIN-venster opschuift, en ook het aantal waarnemingen per uur varieert. De resultaten hangen daarom af van het instrument, de sessie, het bucketvolume, de behandeling van transacties die bucketgrenzen passeren en de initialisatie van de volumeklok. Een reproduceerbare analyse vermeldt deze keuzes.
Bulk-volumeclassificatie schat de handelsrichting in groepen
VPIN heeft koop- en verkoopvolume nodig. Als er richtingslabels op transactieniveau beschikbaar zijn, kunnen die worden samengevoegd, rekening houdend met de kwaliteit van de classificatie. Als betrouwbare labels ontbreken, stelde het oorspronkelijke VPIN-onderzoek Bulk Volume Classification (BVC) voor: de vermoedelijke koop- en verkoopaandelen van het volume in een tijdsbalk afleiden uit de prijsverandering in die balk.
Een gangbare beschrijving van BVC is
\[ \widehat V^{B}_t=V_t\Phi\!\left(\frac{\Delta P_t}{\widehat\sigma_{\Delta P}}\right), \qquad \widehat V^{S}_t=V_t-\widehat V^{B}_t, \]
waarbij (V_t) het totale volume in de balk is, \(\Delta P_t\) de prijsverandering, \(\widehat\sigma_{\Delta P}\) een vermelde schatting van de schaal van prijsveranderingen en \(\Phi\) de cumulatieve standaardnormale verdelingsfunctie. Een positieve gestandaardiseerde prijsverandering wijst meer volume aan kopen toe; een negatieve verandering meer aan verkopen. Bij een gestandaardiseerde verandering van nul splitst de formule het volume gelijk.
Stel bijvoorbeeld dat een hypothetische tijdbalk 1.000 contracten bevat en de gestandaardiseerde prijsverandering (0.5) is. Dan is \(\Phi(0.5)\approx0.6915\). BVC wijst ongeveer 691.5 contracten aan koopvolume en 308.5 aan verkoopvolume toe. De fracties zijn schattingen, geen waargenomen fracties van contracten of bekende handelsintenties. De uitkomst hangt af van de balklengte, de prijsmaatstaf, het venster voor de volatiliteitsschatting en de verdelingsaanname.
BVC classificeert volume in groepen op basis van prijsbewegingen; het stelt niet de richting van elke transactie in de groep vast. De tijdbalken voor deze schatting en de latere buckets met gelijk volume vervullen verschillende stappen. Documenteer ze allebei. De vergelijking van Andersen en Bondarenko uit 2015 meldt dat BVC voor hun E-mini S&P 500-futuresbenchmark slechter presteerde dan een standaard tickregel tegenover een transactieclassificatie die uit noteringen en transacties was opgebouwd (Andersen en Bondarenko, 2015). De Lee–Ready-methode voor transactierichting helpt de beperkingen van geschatte labels voor de initiërende zijde te duiden.
De VPIN-formule middelt de absolute onbalans per bucket
Laat (V) het doelvolume per bucket zijn en \(\widehat V^B_i\) en \(\widehat V^S_i\) het geschatte koop- en verkoopvolume in bucket (i). Elke volledige bucket voldoet aan \(\widehat V^B_i+\widehat V^S_i=V\). Een veelgebruikte voortschrijdende vorm is
\[ \mathrm{VPIN}_t= \frac{1}{nV} \sum_{i=t-n+1}^{t} \left|\widehat V^B_i-\widehat V^S_i\right|. \]
De teller telt het absolute verschil tussen koop- en verkoopvolume op in elk van de meest recente (n) buckets. De noemer (nV) is hun totale volume. Bij volledige buckets met niet-negatieve koop- en verkoopschattingen die samen (V) zijn, ligt de score tussen 0 en 1; sommige weergaven vermenigvuldigen de score met 100 en tonen een percentage.
Een waarde dicht bij nul betekent dat het geschatte koop- en verkoopvolume binnen die buckets relatief in balans was. Een hogere waarde betekent dat de geschatte stroom gemiddeld eenzijdiger was over dat voortschrijdende volumevenster. De score zegt niet of de eenzijdige stroom uit kopen of verkopen bestond, omdat de absolute waarde het teken wegneemt.
Verschillende implementaties kunnen andere methoden voor handelsrichting, bucketgroottes, vensterlengtes, steekproefintervallen en prijsinputs gebruiken. In de praktijk maken die keuzes deel uit van de definitie van de statistiek. Waarden met verschillende instellingen zijn niet vanzelf vergelijkbaar.
Een hypothetische berekening met vier buckets is reproduceerbaar
Stel dat vier volledige buckets elk (V=100) contracten bevatten. Na toepassing van één beschreven procedure voor transactiesclassificatie zijn de geschatte koop- en verkoopvolumes:
| Bucket | Geschatte aankopen | Geschatte verkopen | Absolute onbalans |
|---|---|---|---|
| 1 | 70 | 30 | \(|70-30|=40\) |
| 2 | 55 | 45 | \(|55-45|=10\) |
| 3 | 20 | 80 | \(|20-80|=60\) |
| 4 | 60 | 40 | \(|60-40|=20\) |
De vier absolute onbalansen tellen op tot (40+10+60+20=130) contracten. Het totale volume is (4\times100=400) contracten, dus
\[ \mathrm{VPIN}=\frac{130}{400}=0.325=32.5\%. \]
In hetzelfde venster bedragen de geschatte aankopen samen 205 en de verkopen 195. De getekende netto-onbalans is slechts \(205-195=10\) contracten, of \(10/400=2.5\%\) van het totale volume. Dat verschilt van VPIN, omdat positieve en negatieve bucketonbalansen elkaar gedeeltelijk opheffen in de getekende netto-uitkomst, terwijl VPIN hun absolute omvang optelt.
Alle bucketvolumes en classificaties zijn hier hypothetisch. De berekening verduidelijkt de formule en is geen schatting voor een werkelijk activum, beurs, waarschijnlijkheid of marktgebeurtenis. Als BVC de schattingen opleverde, moeten ook de tijdbalken en de volatiliteitsschaal worden vermeld om de classificatiestap te kunnen reproduceren.
<!-- learn:illustration --> <!-- Tekstloos concept: volumebuckets met gelijk volume tonen verschillende geschatte koop- en verkoopverdelingen; het voortschrijdende gemiddelde behoudt de omvang van de onbalans maar verwijdert de richting. Geen marktdata, crashkans, prognose of handelssignaal. -->

Het bewijs rond de Flash Crash is onderwerp van gepubliceerd debat
De studie van Easley, López de Prado en O’Hara uit 2012 presenteerde VPIN als maatstaf voor orderstroomtoxiciteit en meldde een verband met volatiliteit op korte termijn (Easley, López de Prado en O’Hara, 2012). In een eerdere analyse beschreven ze ook verhoogde VPIN-waarden vóór de Flash Crash van 6 mei 2010 (Easley, López de Prado en O’Hara, 2011). Dat is de aanleiding om VPIN als mogelijke meter voor marktstress te bekijken, geen bewijs dat de maatstaf crashes betrouwbaar voorspelt.
Andersen en Bondarenko kwamen in hun reconstructie uit 2014 tot een andere conclusie. Zij meldden dat VPIN een zwakke voorspeller was van kortetermijnvolatiliteit, pas na de Flash Crash zijn maximum bereikte en grotendeels voorspellende inhoud had die samenhing met handelsintensiteit. Hun analyse testte specifieke classificatieprocedures en implementaties; ze bewijst niet dat elke VPIN-versie in elke markt hetzelfde werkt (Andersen en Bondarenko, 2014).
Easley, López de Prado en O’Hara reageerden in 2014. Zij betwistten de replicatie en interpretatie en voerden aan dat de analyse hun methodologie en conclusies niet toetste en dat marktmicrostructuur van belang was voor de vergelijking (Easley, López de Prado en O’Hara, 2014). Deze uitwisseling toont onenigheid over de implementatie en empirische interpretatie, geen consensus dat VPIN een gevalideerd vroegwaarschuwingssignaal is.
In een latere beoordeling gebruikten Andersen en Bondarenko noterings- en transactiedata om handelsclassificatie voor E-mini S&P 500-futures te toetsen. Zij rapporteerden dat hun benchmark de voorkeur gaf aan een tickregel boven BVC en stelden dat volatiliteitsgerelateerde classificatiefouten de schijnbare volatiliteitsvoorspelling van VPIN in hun situatie konden verklaren (Andersen en Bondarenko, 2015). Dit is een serieus meetprobleem, omdat VPIN afhangt van geschat koop- en verkoopvolume, maar het blijft een empirische uitkomst voor specifieke gegevens en procedures.
Het artikel van Ke en Lin uit 2017 ontwikkelt een alternatieve VPIN-formule op basis van maximum-likelihoodschatting. Zij stellen dat de oorspronkelijke maatstaf instabiel kan zijn bij kleine volumebuckets en weinig transacties van geïnformeerde partijen, en rapporteren consistentere schattingen met hun alternatief (Ke en Lin, 2017). Deze bijdrage laat zien dat de modelconstructie ertoe doet, maar beslecht niet of een VPIN-variant in verschillende activa, handelsplaatsen of marktomstandigheden een betrouwbaar realtimewaarschuwingssignaal is.
Gezamenlijk ondersteunen de publicaties niet de eenvoudige bewering dat VPIN elke relevante episode wel of niet “voorspelde”. Onderzoekers vonden verschillende resultaten met verschillende classificatiekeuzes, gegevens, implementaties en toetsen. Die onenigheid is juist een reden om de constructie te rapporteren en de extra voorspellende waarde te toetsen tegen eenvoudige benchmarks voor activiteit en volatiliteit.
Bucketgrootte, classificatie en steekproefkeuzes kunnen de score veranderen
Bucketvolume (V) bepaalt hoeveel handel in elke waarneming wordt samengevat. Kleinere buckets leveren vaker updates op, maar kunnen schattingen gevoeliger maken voor individuele pieken en classificatieruis. Grotere buckets vlakken lokale variatie af en verlagen de updatefrequentie. De passende schaal hangt af van de gebruikelijke marktactiviteit en de onderzoeksvraag; een waarde die na het bekijken van een crash is gekozen, kan de waarschuwingsprestatie achteraf sterker laten lijken.
Het voortschrijdende venster (n) bepaalt hoeveel recent volume meetelt. Een korter venster reageert snel maar kan ruis bevatten; een langer venster is vloeiender en trager. Rapporteer zowel (V) als (n), plus de verdeling van de equivalente duur in kloktijd. Hetzelfde aantal buckets staat niet gelijk aan dezelfde verstreken tijd in rustige en actieve perioden.
BVC brengt eigen keuzes mee: de lengte van de tijdbalk, transactieprijs of noteringsprijs als input, het volatiliteitsschattingvenster, de behandeling van prijsveranderingen van nul en de aangenomen verdeling. Ook bij tekens op transactieniveau kunnen classificatiefouten door de timing van noteringen, midpointvergelijkingen, tickregels of venuegebonden berichtconventies van belang zijn. De kritiek in de studie uit 2015 koppelt volatiliteitsveranderingen specifiek aan systematische BVC-classificatiefouten in de onderzochte situatie. Boekgebaseerde orderstroomonbalans is een aparte maatstaf voor veranderingen in zichtbaar aanbod en vraag, niet voor op deze manier geclassificeerd transactievolume.
Ook de initialisatie is van belang. Een voortschrijdend VPIN-venster begint bij een bepaalde bucketgrens. Een andere startpositie kan transacties anders groeperen en daarmee de bucketonbalans veranderen. Toetsen moeten deze gevoeligheid meten in plaats van de uitlijning te kiezen die de sterkste stijging vóór een gebeurtenis geeft. Structurele veranderingen in handelsuren, tickgrootte, contractontwerp of samenstelling van handelsplaatsen kunnen de vergelijkbaarheid door de tijd verder beperken.
Beoordeel extra bewijs voordat je VPIN een waarschuwingsrol geeft
Een zorgvuldige VPIN-studie legt de gegevens en het algoritme vast voordat de doelgebeurtenis wordt bekeken. Vermeld markt en contract, sessie, filters voor transacties en noteringen, prijsinput, methode voor transactierichting of BVC-instellingen, (V), (n), initialisatieregel en behandeling van gedeeltelijke buckets of transacties die grenzen overschrijden. Laat zien hoeveel kloktijd elk VPIN-venster bestrijkt bij verschillende activiteitsniveaus.
Gebruik voor een voorspellende claim een chronologisch out-of-sample-ontwerp en vergelijk VPIN met direct waarneembare benchmarks zoals volume, handelsintensiteit, gerealiseerde volatiliteit en orderonbalans. Controleer of VPIN informatie toevoegt nadat deze grootheden zijn meegenomen. Rapporteer valse alarmen, gemiste gebeurtenissen, aanlooptijd, onzekerheid en resultaten voor verschillende drempels, niet alleen een terugblikkende grafiek waarin de indicator vóór één gekozen crash opliep. Een drempel die op basis van de gebeurtenis zelf is gekozen, bewijst geen voorafgaande waarschuwing.
Voor een claim over toxiciteit van orderstroom zijn onafhankelijke metingen nodig van nadelige selectie of liquiditeitsuitkomsten, zoals latere prijsimpact, spreads, diepte of gerealiseerde verliezen van marketmakers. Leg ook uit hoe die uitkomsten worden vastgesteld. Een correlatie tussen VPIN en volatiliteit valideert de toxiciteitsinterpretatie op zichzelf niet. Een hogere waarde kan ontstaan door meer eenzijdig geclassificeerd volume, hogere volatiliteit die BVC beïnvloedt of een sneller lopende volumeklok.
Zie VPIN als omstreden diagnose, niet als handelssignaal
VPIN kan nuttig zijn als beschrijvende samenvatting wanneer een onderzoeker de geschatte absolute onbalans van orderstroom in vensters met gelijk volume wil volgen. De maatstaf kan ook een kenmerk zijn in een bredere analyse als de constructie transparant is en de bijdrage overeind blijft tegenover eenvoudigere maatstaven. De interpretatie is beperkt: VPIN vat een specifieke classificatie van recent volume samen.
Een hoge score bewijst op zichzelf niet dat handelaren met voorkennis actief zijn, dat er een liquiditeitscrisis aankomt, dat prijzen een bepaalde kant op zullen bewegen of dat het vergroten of verkleinen van een positie winstgevend is. Een lage score verklaart een markt niet veilig of liquide. Elk operationeel gebruik vereist onafhankelijke validatie, passende controles, een expliciete beslisregel, data waarin latency is verwerkt en een realistische analyse van uitvoeringskosten.
De Roll-spreadschatter beantwoordt juist een andere vraag en leidt een spreadproxy af uit de autocovariantie van rendementen.
Veelgestelde vragen
Q1Betekent een VPIN-waarde van 0.32 een kans van 32% op handel met voorkennis, of dat ik moet stoppen met handelen?
Nee. De gebruikelijke score is een genormaliseerd gemiddelde van geschatte absolute volumeonbalans, geen gekalibreerde posterior kans dat een transactie of handelaar geïnformeerd is. De score geeft ook geen richting aan, bewijst geen dreigende liquiditeitscrisis en houdt geen rekening met je uitvoeringskosten of beperkingen. Elke beslisregel vereist aparte out-of-samplevalidatie en risicocontroles.
Q2Gebruikt VPIN gelijke tijdsintervallen?
Nee. De voortschrijdende waarnemingen bevatten gelijke hoeveelheden verhandeld volume, waardoor de kloktijd van een bucket varieert met de marktactiviteit. BVC kan eerst getekend volume schatten in afzonderlijke tijdbalken.
Q3Voorspelde VPIN de Flash Crash van 6 mei 2010?
De gepubliceerde bevindingen zijn omstreden. Easley, López de Prado en O’Hara presenteerden verhoogde waarden als aanwijzing voor mogelijke waarschuwingswaarde; Andersen en Bondarenko meldden dat de piek in hun reconstructie na de gebeurtenis kwam en betwijfelden de voorspellende inhoud. Hun weerwoord en latere beoordelingen verschillen van mening over methode en interpretatie.
Q4Kun je twee VPIN-grafieken voor dezelfde markt direct vergelijken?
Alleen als de data, prijsinputs, transactieclassificatie, volumebucketgrootte, het voortschrijdende venster, de initialisatie en andere constructiekeuzes voldoende overeenkomen. Verschillende instellingen kunnen verschillende scores en updatesnelheden opleveren.
Bronnen en verder lezen
Probleem melden
We bereiden een e-mail met de link naar dit artikel voor. Mark ontvangt je melding pas nadat je die verstuurt
Snelle check
De gids gelezen? Test jezelf met 3 vragen
Vraag 01
Wat middelt VPIN over de meest recente volumebuckets?
Kies een antwoord om de uitleg te zien