Waarom zijn beurskoersen vijftien minuten vertraagd?
Ontdek waarom beurskoersen vaak vijftien minuten vertraagd zijn. Lees hoe licentieovereenkomsten voor marktdata deze regels bepalen en wat de impact is op real-time prijzen.
Beurskoersen en vertragingen
Op de meeste gratis websites zijn beurskoersen met vijftien minuten vertraagd vanwege licentieovereenkomsten. De technische infrastructuur is niet traag: een koers verlaat de matching engine van een beurs en bereikt een scherm in een fractie van een seconde. De vijftien minuten zijn een contractuele voorwaarde. Deze is vastgelegd in de overeenkomsten die bepalen wie live koersen mag tonen en wat daarvoor betaald moet worden.
Waar een aandelenkoers vandaan komt voordat deze u bereikt
Een enkel Amerikaans aandeel wordt gelijktijdig op meer dan twaalf openbare handelsplatformen verhandeld, naast een lange reeks off-exchange transacties waarvan de prints afzonderlijk worden gerapporteerd. Elk platform publiceert zijn eigen quotes en transacties. Industriële plannen consolideren al deze gegevens tot één tape; één plan dekt de NYSE-genoteerde namen en een ander de Nasdaq-genoteerde namen. De verwerkers die deze beheren zijn de SIP's, een afkorting voor securities information processors. Die geconsolideerde tape produceert de national best bid and offer, het beste koerspaar dat op dat moment overal beschikbaar is, volledig uitgelegd in onze gids over wat de NBBO is.
Beurzen verkopen daarnaast hun eigen directe feeds, die sneller en gedetailleerder zijn dan de geconsolideerde tape en waarvoor afzonderlijke licenties gelden.
Waarom beurskoersen vijftien minuten vertraagd zijn: het antwoord vanuit licentieperspectief
Marktdata is een inkomstenbron voor beurzen. Elke distributeur van koersen – een broker, website, terminal of mobiele app – sluit overeenkomsten met beurzen en de 'tape plans'. Deze overeenkomsten splitsen dezelfde cijfers op in twee producten. Real-time data is onderhevig aan vergoedingen en wordt per gebruiker maandelijks gerapporteerd. Vertraagde data, zodra deze ten minste vijftien minuten oud is, valt buiten het real-time schema en een distributeur kan deze kosteloos aanbieden zonder het aantal gebruikers te hoeven tellen.
De tariefschema's stapelen verschillende kosten: een toegangstarief voor de datastroom, een maandelijkse vergoeding per gebruiker voor iedereen die live koersen kan inzien, en 'non-display' vergoedingen voor systemen die koersen verwerken zonder menselijke tussenkomst. Tarieven worden publiekelijk gedeponeerd en wijzigen bijna elk jaar, waardoor de structuur belangrijker is dan de cijfers van dit jaar. Iemand betaalt per persoon per maand voor live koersen. Niemand betaalt voor een koers die een kwartier oud is.
Dat is het volledige antwoord op de vraag waarom de gratis versie gratis is. Volume vormt de andere helft van de kosten voor het aanbieden van live koersen: de 'tape' verwerkt gedurende de handelssessie een continue stroom aan koersupdates, waarbij opties het uiterste geval vormen, zoals de omvang van de optiekoersfeed laat zien.
Wat een vertraging van vijftien minuten werkelijk waard is
Een vertraging is van belang in de mate waarin de koers daarbinnen beweegt, wat meetbaar is. Het onderstaande overzicht neemt elke minuutbalk van de reguliere handelssessie in SPY, het fonds dat de S&P 500 volgt, tot en met juni 2026 en vergelijkt deze met de balk vijftien minuten later, gegroepeerd per uur waarin de eerdere balk viel.
De exacte SQL achter elk getal
WITH regular_bars AS
(
SELECT
toTimeZone(window_start, 'America/New_York') AS et,
toTimeZone(window_start, 'America/New_York') + INTERVAL 15 MINUTE AS et_later,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND close > 0
AND window_start >= '2026-06-01 00:00:00'
AND window_start < '2026-07-01 00:00:00'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
SELECT
formatDateTime(toStartOfHour(a.et), '%H:%i') AS et_time,
round(quantileDeterministic(0.5)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3) AS median_gap_pct,
round(quantileDeterministic(0.95)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3) AS p95_gap_pct,
count() AS sample_count
FROM regular_bars AS a
INNER JOIN regular_bars AS b ON b.et = a.et_later
GROUP BY et_time
ORDER BY et_timeBalken met een tijdstempel in het openingsuur, dat om 09:30 uur ET begint, bewogen over de daaropvolgende vijftien minuten met een mediaan van 0.125%, met een 95e percentiel van 0.556%. In het 15:00-uur bedroeg de mediaan 0.065%. Elke categorie bundelt 630 overlappende minuutparen, dus dit zijn representatieve cijfers in plaats van een toevalligheid van één dag. De curve is niet vlak en een vaste vertraging verhult op sommige uren meer dan op andere.
Hoeveel er wordt verhuld, hangt ook af van het aandeel. Dezelfde meting, zes bekende tickers, dezelfde maand.
De exacte SQL achter elk getal
WITH regular_bars AS
(
SELECT
ticker,
toTimeZone(window_start, 'America/New_York') AS et,
toTimeZone(window_start, 'America/New_York') + INTERVAL 15 MINUTE AS et_later,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'KO', 'AAPL', 'MSFT', 'NVDA', 'AMD')
AND close > 0
AND window_start >= '2026-06-01 00:00:00'
AND window_start < '2026-07-01 00:00:00'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
SELECT
a.ticker AS ticker,
round(quantileDeterministic(0.5)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3) AS median_gap_pct,
round(quantileDeterministic(0.99)(abs(b.px / a.px - 1) * 100, toUInt64(toUnixTimestamp(a.et))), 3) AS p99_gap_pct
FROM regular_bars AS a
INNER JOIN regular_bars AS b ON b.ticker = a.ticker AND b.et = a.et_later
GROUP BY ticker
ORDER BY median_gap_pct DESCAMD kende van de zes het grootste gemiddelde verschil met 0.361%, en SPY het kleinste met 0.071%. De kolom voor het 99e percentiel is de kolom om twee keer te lezen: in de slechtste één procent van de vijftienminutenvensters van die maand bewoog AMD met 2.532%.
Hier is hetzelfde idee voor één dag. Het overzicht identificeert de sessie van juni 2026 met de grootste intraday range in SPY en tekent vervolgens twee lijnen: de live tape op elk tienminutenpunt en wat een vertraagde pagina van vijftien minuten op dat moment liet zien.
De exacte SQL achter elk getal
WITH
widest_session AS
(
SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS d
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND close > 0
AND window_start >= '2026-06-01 00:00:00'
AND window_start < '2026-07-01 00:00:00'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
GROUP BY d
ORDER BY (max(toFloat64(high)) - min(toFloat64(low))) / min(toFloat64(low)) DESC
LIMIT 1
),
session_bars AS
(
SELECT
toTimeZone(window_start, 'America/New_York') AS et,
toTimeZone(window_start, 'America/New_York') - INTERVAL 15 MINUTE AS et_earlier,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY'
AND close > 0
AND toDate(toTimeZone(window_start, 'America/New_York')) IN (SELECT d FROM widest_session)
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
)
SELECT
formatDateTime(a.et, '%H:%i') AS et_time,
round(a.px, 2) AS live_price,
round(b.px, 2) AS delayed_price,
round(abs(a.px - b.px), 2) AS gap_delta,
formatDateTime(a.et, '%b %e') AS session_label
FROM session_bars AS a
INNER JOIN session_bars AS b ON b.et = a.et_earlier
WHERE toMinute(a.et) % 10 = 0
ORDER BY a.etOp Jun 9, om 09:50 ET, stond de live SPY op 746.13, terwijl de vertraagde weergave 744.22 aangaf, een verschil van $1.91. Om 15:50 stonden beide op 735.29 en 734.49. De lijnen overlappen elkaar wanneer de tape rustig is en wijken uiteen wanneer er beweging is. Een vertraging kost niets in een rustige markt en het meest op de momenten dat mensen kijken.
De weergaveverplichting: wat een website aan u moet tonen
Regulation NMS bevat een verplichting tot geconsolideerde weergave, Rule 603(c). Een aanbieder die koersinformatie aan het publiek toont, moet geconsolideerde gegevens presenteren: de national best bid and offer (NBBO) samen met de geconsolideerde laatste koers, in plaats van de koers van slechts één handelsplatform als dé prijs te presenteren. Aanbieders moeten vertraagde data bovendien als zodanig markeren; dit is de oorsprong van de kleine lettertjes onderaan elke financiële pagina. Voor iedereen die een gratis koers raadpleegt, vloeien hier twee zaken uit voort.
- Een gratis live koers van één enkele beurs is een reële prijs, maar het is niet de NBBO. Het toont het orderboek van één platform, dat een wijdere spread kan hebben dan de best beschikbare prijs.
- Een pagina met een live laatste koers zonder bied- of laatprijs is gebruikelijk. De laatste koers en de quotes zijn afzonderlijk gelicentieerde producten, waarbij de laatste koers de goedkopere variant is.
Voor wat er gebeurt wanneer twee handelsplatformen op hetzelfde niveau in het orderboek uitkomen, zie locked and crossed markets.
Professioneel of niet-professioneel: de toets die uw factuur bepaalt
Wat live data een individu kost, hangt af van een classificatie, en die classificatie hangt af van uw beroep in plaats van uw vermogen. U geldt als een niet-professionele abonnee, in de terminologie die de beurzen hanteren, wanneer aan alle onderstaande voorwaarden is voldaan.
- U bent een natuurlijk persoon die de data voor persoonlijk gebruik afneemt, niet namens een bedrijf of enige andere entiteit.
- U bent niet geregistreerd of gekwalificeerd bij de SEC, de CFTC, een staatsagentschap voor effecten, een effectenbeurs of -vereniging, of een markt voor termijncontracten.
- U bent niet werkzaam als beleggingsadviseur of vermogensbeheerder, en u bent niet in dienst voor werkzaamheden waarvoor een dergelijke registratie vereist zou zijn.
- U gebruikt de data niet voor zakelijke doeleinden, ook niet bij een werkgever die het abonnement vergoedt.
Voldoet u aan één van deze punten niet, dan classificeren de beurzen u als professioneel. U wordt dan per beurs, per gebruiker, per maand gefactureerd tegen een veelvoud van het niet-professionele tarief. Een junior analist bij een fonds met een kleine persoonlijke rekening is professioneel; een gepensioneerde belegger met een grote portefeuille, die enkel met eigen geld handelt, is dat niet. Distributeurs zijn verplicht uw antwoord te verzamelen en te rapporteren; daarom vraagt elke aanmelding voor live data naar uw werkgever en uw registraties.
Wat is een snapshot quote?
Een snapshot is een enkele meting op het moment van uw verzoek: de laatste koers, of de huidige bid en ask, die eenmalig wordt geretourneerd en niet wordt bijgewerkt. Een stream is een doorlopend abonnement, waarbij elke wijziging wordt doorgegeven zodra deze zich voordoet. Licentiekosten voor beide vormen verschillen, vaak gebaseerd op het aantal queries versus het aantal gebruikers per maand. Daarom biedt een gratis API u een endpoint voor een vertraagde snapshot en geen live stream. Ververst u een snapshot elke seconde, dan heeft u in feite een stream nagebouwd; de overeenkomsten zijn zo opgesteld dat dit wordt opgemerkt.
Hoe u kunt zien of de koers voor u vertraagd is
- De tijdstempel is het enige betrouwbare kenmerk. Een live koers is voorzien van een tijdstempel die binnen één of twee seconden van de huidige ET-klok ligt.
- De dag-high en het lopende volume verouderen eveneens, waardoor een vertraagde pagina een high kan missen die tien minuten geleden op de tape verscheen.
- Gedurende de eerste vijftien minuten na de opening om 09:30 uur ET bevat een vertraagde pagina nog geen gegevens van de huidige sessie en toont deze de slotkoers van de vorige dag of een premarket print.
- De bevriezingstest, waarbij u kijkt of het getal überhaupt beweegt, werkt alleen bij namen die daadwerkelijk bewegen.
Voor dat laatste punt is onderliggende data nodig.
De exacte SQL achter elk getal
WITH regular_bars AS
(
SELECT
ticker,
toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
toTimeZone(window_start, 'America/New_York') AS et,
toFloat64(close) AS px
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker IN ('SPY', 'KO', 'AAPL', 'MSFT', 'NVDA', 'AMD')
AND close > 0
AND window_start >= '2026-06-01 00:00:00'
AND window_start < '2026-07-01 00:00:00'
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) >= 570
AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60
+ toMinute(toTimeZone(window_start, 'America/New_York'))) < 960
),
stepped AS
(
SELECT
ticker,
et,
px,
lagInFrame(px) OVER (PARTITION BY ticker, session_date ORDER BY et
ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prev_px
FROM regular_bars
)
SELECT
ticker,
round(100 * countIf(px != prev_px) / count(), 1) AS minutes_price_moved_pct,
round(quantileDeterministic(0.5)(abs(px / prev_px - 1) * 10000, toUInt64(toUnixTimestamp(et))), 1) AS median_move_bps
FROM stepped
WHERE prev_px > 0
GROUP BY ticker
HAVING count() > 0
ORDER BY minutes_price_moved_pct DESCTot en met juni 2026 liet AMD in 99.8% van de minuten tijdens de reguliere handelssessie een koers zien die verschilde van de voorgaande minuut, met een mediane minuut-op-minuut beweging van 9.6 basis points, waarbij een basis point gelijkstaat aan één honderdste van een procent. KO ververste het minst vaak van de zes, met 94.1%. Bij namen met deze activiteit is een laatste koers die gedurende het midden van een sessie enkele minuten niet is veranderd, een duidelijke aanwijzing dat u naar een vertraagd of gecachet getal kijkt. Bij een thinly traded aandeel is diezelfde stilstand normaal, en daarom blijft de tijdstempel de doorslaggevende test.
Welke gratis aandelenkoersen zijn daadwerkelijk real-time
Twee bronnen bieden betrouwbaar livekoersen voor particulieren, en één veelvoorkomend label verdient een nadere blik.
- Een gefinancierde effectenrekening. Brokers beschikken over de non-professional licentie voor hun klanten en tonen livekoersen via de app; dit is de reden waarom in het aanvraagformulier naar uw werkgever werd gevraagd.
- De website van een beursuitbater zelf, voor de namen die op die beurs genoteerd staan. Dit is real-time en betreft één enkele handelsplaats, waardoor het één orderboek is in plaats van de geconsolideerde NBBO.
- Alles wat adverteert met gratis real-time koersen zonder inloggen en zonder zelfcertificering. Controleer de tijdstempel op de koers voordat u erop vertrouwt.
Wanneer de bestemming een programma is in plaats van een scherm, verandert de classificatie opnieuw: machineconsumptie wordt gelicentieerd onder non-display voorwaarden, een apart tariefschema ten opzichte van het tarief per gebruiker. Onze artikelen over gratis aandelenmarktdata-API's en marktdata opvragen met SQL behandelen deze categorieën.
Veelgestelde vragen
Waarom zijn aandelenkoersen precies vijftien minuten vertraagd?
Vijftien minuten is de termijn waarna Amerikaanse aandelenkoersen volgens de dataovereenkomsten van beurzen niet langer als een vergoedingplichtig real-time product gelden. Een distributeur mag data die ten minste zo oud is publiceren zonder het aantal gebruikers te hoeven rapporteren.
Wanneer wordt iemand als professionele marktdata-abonnee beschouwd?
Bij registratie bij een toezichthouder voor effecten of termijncontracten, werkzaamheden in een beleggingsfunctie, het afnemen van data namens een entiteit, of elk zakelijk gebruik van de koersen. Het vermogen en de omvang van de rekening spelen hierbij geen rol.
Hoe kan ik zien of een aandelenkoers vertraagd is?
Controleer de tijdstempel van de koers ten opzichte van de huidige ET-klok en zoek naar het label voor vertraagde data dat aanbieders verplicht moeten tonen. Bij een actief aandeel tijdens reguliere handelsuren is een koers die minutenlang stilstaat een verdere aanwijzing.
Zijn gratis real-time koersen hetzelfde als de NBBO?
Vaak niet. De gratis koers van één beurs toont enkel het orderboek van die specifieke handelsplaats. De NBBO is de beste bied- en laatprijs over alle handelsplaatsen heen, berekend op basis van de geconsolideerde tape.
Maakt de vertraging van vijftien minuten uit voor data aan het einde van de dag?
Nee. Zodra een handelssessie is gesloten, zijn de vertraagde en de real-time versie van een slotkoers of een dagelijks volumecijfer identiek. De vertraging is alleen van invloed tijdens de lopende sessie.
Elk paneel hier wordt geleverd met de SQL die het heeft gegenereerd, zodat elk bovenstaand cijfer kan worden nagerekend voor een andere ticker of een andere maand. Om te meten wat vijftien minuten waard zijn voor een aandeel dat u volgt, kunt u hierom vragen in begrijpelijke taal op de Strasmore-terminal.