Strasmore Research
Edukacja Matt ConnorAutor: Matt Connor · Zaktualizowano 2026-07-24 · data as of July 24, 2026 · refreshed weekly

Czym jest NBBO National Best Bid and Offer

NBBO to skonsolidowana oferta rynkowa dla akcji w USA. Dowiedz się, jak broker musi realizować zlecenia względem najlepszych cen kupna i sprzedaży.

NBBO, czyli national best bid and offer, to skonsolidowana oferta dla amerykańskich akcji: najwyższa cena, jaką oferuje kupujący, oraz najniższa cena, jakiej żąda sprzedający, obejmująca wszystkie giełdy jednocześnie. Jest to cena wyświetlana w aplikacji oraz punkt odniesienia, który broker musi spełnić lub pominąć przy realizacji zlecenia. Wszystkie poniższe dane pochodzą z rzeczywistych zapisów ofertowych, do których dołączono zapytanie.

Czym jest NBBO? Prosta definicja

Akcje spółek z USA nie są przedmiotem obrotu w jednym miejscu. NYSE, Nasdaq oraz ponad kilkanaście innych giełd prowadzi własne arkusze zleceń dla tego samego tickera, z których każda posiada własną najlepszą ofertę kupna i sprzedaży. NBBO łączy te dane: zestawienie najwyższej oferty kupna oraz najniższej oferty sprzedaży z informacją o dostępnej liczbie akcji w każdym z tych poziomów. Proces ten realizowane jest przez procesory informacji o papierach wartościowych, czyli SIPs — usługi rynkowe zarządzane wspólnie przez giełdy.

Kluczowe są dwa aspekty. Oferta kupna i oferta sprzedaży mogą znajdować się jednocześnie na dwóch różnych giełdach. Aktualizacja danych nie wymaga zmiany ceny: zmiana wielkości zlecenia przy tej samej najlepszej cenie również generuje nowy wpis. Traderzy nazywają dwie najlepsze ceny the touch; różnica między nimi to spread bid-ask.

Jak odczytywać kwotowania NBBO: ceny, wolumeny i tempo

Poniżej przedstawiono dziesięć kolejnych zapisów NBBO dla Coca-Cola (KO) z godziny 13:30 czasu wschodniego z niedawnej pełnej sesji — krajowe kwotowanie w formie rzeczywistej.

ZapytanieKO — 10 kolejnych aktualizacji NBBO od 13:30 ET z ostatniej sesji
Dokładny kod SQL dla każdej liczby
WITH (
    SELECT max(session_date)
    FROM (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
               countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS regular_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime(today() - 10)
          AND window_start < toDateTime(today() - 3)
        GROUP BY session_date
        HAVING regular_bars = 390
    )
) AS last_session
SELECT substring(toString(toTimeZone(sip_timestamp, 'America/New_York')), 12, 12) AS et_time,
       round((toUnixTimestamp64Nano(sip_timestamp) - min(toUnixTimestamp64Nano(sip_timestamp)) OVER ()) / 1e6, 2) AS elapsed_ms,
       bid_size AS bid_shares,
       toFloat64(bid_price) AS best_bid,
       toFloat64(ask_price) AS best_ask,
       ask_size AS ask_shares,
       round((toFloat64(ask_price) - toFloat64(bid_price)) * 100, 1) AS spread_cents
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'KO'
  AND sip_timestamp >= toDateTime(last_session, 'America/New_York') + INTERVAL 13 HOUR + INTERVAL 30 MINUTE
  AND sip_timestamp < toDateTime(last_session, 'America/New_York') + INTERVAL 14 HOUR
  AND bid_price > 0
  AND ask_price > bid_price
ORDER BY sip_timestamp, sequence_number
LIMIT 10

Pierwszy wiersz należy odczytywać jako dwie obowiązujące oferty, oznaczone godziną 13:30:02.886 ET. Najlepsza oferta kupna: $83.3 za 200 akcji. Najlepsza oferta sprzedaży: $83.31 za 200 akcji. Spread między nimi wynosił 1¢.

Liczba akcji to wolumen na poziomie ceny (size at the touch) — płynność dostępna przy dwóch najlepszych cenach. Zlecenie większe od tej wartości wyczerpuje dostępną płynność, a pozostała część zostaje zrealizowana po kolejnych cenach w arkuszu zleceń. Wyświetlany wolumen stanowi minimum, a nie pełny stan zapasów: dodatkowe zainteresowanie często pozostaje niewidoczne przy lub pomiędzy obiema cenami, w tym w dark pools.

Następnie należy przeanalizować kolejne wiersze. Wszystkie 10 zapisów wystąpiło w odstępie 484.95 milisekund od pierwszego. Harmonogram nie istnieje — SIP publikuje dane w momencie zmiany oferty, a każdy z czterech zdarzeń generuje nowy wiersz: lepsza cena kupna, lepsza cena sprzedaży, zmiana wolumenu przy którejś z najlepszych cen lub zastąpienie jednej giełdy przez inną na szczycie arkusza. Aby uzyskać wgląd w strukturę rynku, zapoznaj się z szczegółową analizą mikrostruktury.

Czy NBBO obejmuje mniejsze pakiety?

Zazwyczaj nie. Kwotacja krajowa jest budowana wyłącznie na podstawie zainteresowania w ramach pełnych pakietów (round-lot). Zlecenie na mniejszą liczbę akcji niż pełny pakiet to mniejszy pakiet (odd lot): może on znajdować się w arkuszu giełdowym po lepszej cenie niż krajowa najlepsza oferta kupna (NBBO), zostać zrealizowane, a mimo to nigdy nie pojawić się w NBBO.

Pełny pakiet nie wynosi już sztywno 100 akcji. Zgodnie ze zmienionymi przez SEC zasadami kwotowania Reg NMS, jest on podzielony na progi zależnie od ceny akcji: 100 akcji do 250 USD, 40 akcji od 250,01 USD do 1 000 USD, 10 akcji od 1 000,01 USD do 10 000 USD, a powyżej tej kwoty jedna akcja. Progi te są widoczne w zapisie transakcji — panel przyjmuje najmniejszą wielkość oferty kupna, która kiedykolwiek pojawiła się w skonsolidowanej kwotacji dla sześciu spółek w poszczególnych przedziałach cenowych.

ZapytanieMinimalny rozmiar w NBBO — sześć spółek w różnych przedziałach cenowych
Dokładny kod SQL dla każdej liczby
WITH (
    SELECT max(session_date)
    FROM (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
               countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS regular_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime(today() - 10)
          AND window_start < toDateTime(today() - 3)
        GROUP BY session_date
        HAVING regular_bars = 390
    )
) AS last_session
SELECT ticker,
       round(quantileDeterministic(0.5)(toFloat64(bid_price), toUInt64(sequence_number)), 2) AS share_price,
       min(bid_size) AS smallest_quoted_size,
       round(quantileDeterministic(0.5)(toFloat64(bid_size), toUInt64(sequence_number)), 0) AS median_bid_size
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('F', 'KO', 'NVDA', 'AAPL', 'SPY', 'AZO')
  AND sip_timestamp >= toDateTime(last_session, 'America/New_York') + INTERVAL 10 HOUR
  AND sip_timestamp < toDateTime(last_session, 'America/New_York') + INTERVAL 11 HOUR
  AND bid_price > 0
  AND bid_size > 0
GROUP BY ticker
ORDER BY share_price

Ford, kwotowany w okolicach 13.9 USD, nie wykazuje w tej godzinie oferty kupna mniejszej niż 100 akcji; podobnie jak Coca-Cola przy 84.18 USD. Apple, przy 314.36 USD, spada do 40; AutoZone, przy 3030.52 USD za akcję, spada do 10, przy medianie wyświetlanej oferty kupna wynoszącej 10. Podłoga śledzi próg cenowy. Lepiej wycenione zainteresowanie w ramach mniejszych pakietów może znajdować się wewnątrz publikowanego spreadu bez wyświetlania, zatem rzeczywista najlepsza dostępna cena bywa czasem korzystniejsza, niż sugeruje NBBO.

Dlaczego kurs w Twojej aplikacji nie jest identyczny z aktualnym NBBO

Kurs odczytany w telefonie przechodzi przez następujący proces: silnik dopasowujący giełdy → SIP → dostawca danych → broker → ekran. Każdy rekord zawiera dwa znaczniki czasu — własną pieczęć giełdy oraz pieczęć SIP z momentu publikacji — a różnica między nimi stanowi etap konsolidacji.

ZapytanieOpóźnienie między znacznikiem giełdy a SIP — etap konsolidacji w mikrosekundach
Dokładny kod SQL dla każdej liczby
WITH (
    SELECT max(session_date)
    FROM (
        SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date,
               countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) AS regular_bars
        FROM global_markets.delayed_stocks_minute_aggs
        WHERE ticker = 'SPY'
          AND window_start >= toDateTime(today() - 10)
          AND window_start < toDateTime(today() - 3)
        GROUP BY session_date
        HAVING regular_bars = 390
    )
) AS last_session
SELECT ticker,
       round(quantileDeterministic(0.5)((toUnixTimestamp64Nano(sip_timestamp) - toUnixTimestamp64Nano(participant_timestamp)) / 1000.0, toUInt64(sequence_number)), 1) AS median_micros,
       round(quantileDeterministic(0.99)((toUnixTimestamp64Nano(sip_timestamp) - toUnixTimestamp64Nano(participant_timestamp)) / 1000.0, toUInt64(sequence_number)), 1) AS p99_micros
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'NVDA', 'AAPL', 'KO')
  AND sip_timestamp >= toDateTime(last_session, 'America/New_York')
  AND sip_timestamp < toDateTime(last_session + 1, 'America/New_York')
  AND participant_timestamp > toDateTime64('2020-01-01 00:00:00', 9)
GROUP BY ticker
ORDER BY indexOf(['SPY', 'NVDA', 'AAPL', 'KO'], ticker)

Mediana opóźnienia dla SPY wynosiła 229.1 mikrosekund — milionowych części sekundy — a dla Apple wynosiła 203.4. Rozkład danych ma gruby ogon: 99. percentyl dla Nvidia wyniósł 536.9 mikrosekund. SIP nie jest wolny w ludzkim znaczeniu tego słowa. Istnieją jednak dwa inne czynniki.

Po pierwsze, dane mogą być celowo opóźnione. Bezpłatne kanały kursów w aplikacjach detalicznych i serwisach analitycznych są zazwyczaj opóźnione o 15 minut zgodnie z warunkami licencyjnymi giełd; przesyłanie danych w czasie rzeczywistym jest usługą płatną.

Po drugie, podmioty profesjonalne nie czekają na SIP. Każda giełda sprzedaje również bezpośredni kanał danych ze swojego własnego silnika dopasowującego. Firmy z usługą colocated odczytują te dane i obliczają własną najlepszą ofertę kupna i sprzedaży (best bid and offer) zanim dotrze wersja tego zdarzenia z SIP — daje to przewagę rzędu mikrosekund, co jest decydujące dla market maker podającego oferty po obu stronach rynku przez cały dzień.

Jak często aktualizuje się NBBO? Akcje płynne vs mało płynne

Każda spółka notowana posiada NBBO, a częstotliwość jego aktualizacji stanowi wskaźnik płynności. Tabela przedstawia średnie wartości z ostatnich pełnych sesji dla czterech wysoko obrotowanych podmiotów oraz dwóch mało płynnych spółek typu small cap — Nathan's Famous (NATH) i Seneca Foods (SENEA).

ZapytanieAktualizacje NBBO na sesję — cztery spółki o wysokiej płynności vs. dwie mało płynne spółki small cap
Dokładny kod SQL dla każdej liczby
SELECT ticker,
       uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York'))) AS sessions,
       round(count() / uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York')))) AS avg_updates_per_session,
       round(count() / uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York'))) / 1e6, 3) AS avg_updates_per_session_m,
       round((count() / uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York')))) / min(count() / uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York')))) OVER (), 0) AS multiple_of_quietest
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'NVDA', 'AAPL', 'KO', 'SENEA', 'NATH')
  AND sip_timestamp >= toDateTime(today() - 10)
  AND sip_timestamp < toDateTime(today() - 3)
  AND toDate(toTimeZone(sip_timestamp, 'America/New_York')) IN (
      SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date
      FROM global_markets.delayed_stocks_minute_aggs
      WHERE ticker = 'SPY'
        AND window_start >= toDateTime(today() - 10)
        AND window_start < toDateTime(today() - 3)
      GROUP BY session_date
      HAVING countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) = 390
  )
GROUP BY ticker
ORDER BY indexOf(['SPY', 'NVDA', 'AAPL', 'KO', 'SENEA', 'NATH'], ticker)

SPY, ETF na S&P 500, odnotował średnio 3.428 milion aktualizacji NBBO na sesję — 2031 razy więcej niż najmniej obrotowy podmiot w zestawieniu. Nvidia odnotowała średnio 1.85 milion, Apple 1.336 milion. Następnie następuje gwałtowny spadek: Seneca Foods wygenerowała 8097 aktualizacji w średniej sesji, a Nathan's Famous 1688. Żaden człowiek nie jest w stanie odczytywać danych z częstotliwością SPY: NBBO to strumień danych stworzony dla oprogramowania.

Kiedy NBBO aktualizuje się najszybciej: otwarcie vs. środek dnia

Częstotliwość aktualizacji wykazuje również rytm dobowy. Wykres przedstawia średnią liczbę aktualizacji NBBO dla spółki Apple na minutę w półgodzinnych przedziałach czasowych (czas wschodnioamerykański); ostatnia kolumna przedstawia każdy przedział jako procent wartości z godziny 9:30.

ZapytanieAAPL — średnia liczba aktualizacji NBBO na minutę w półgodzinnych przedziałach (ET, 4:00–20:00)
Dokładny kod SQL dla każdej liczby
SELECT et_time,
       avg_updates_per_minute,
       round(100 * avg_updates_per_minute / maxIf(avg_updates_per_minute, et_time = '09:30') OVER (), 1) AS pct_of_opening_bucket
FROM (
    SELECT formatDateTime(toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE), '%H:%i') AS et_time,
           round(count() / (uniqExact(toDate(toTimeZone(sip_timestamp, 'America/New_York'))) * 30)) AS avg_updates_per_minute
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'AAPL'
      AND sip_timestamp >= toDateTime(today() - 10)
      AND sip_timestamp < toDateTime(today() - 3)
      AND toDate(toTimeZone(sip_timestamp, 'America/New_York')) IN (
      SELECT toDate(toTimeZone(window_start, 'America/New_York')) AS session_date
      FROM global_markets.delayed_stocks_minute_aggs
      WHERE ticker = 'SPY'
        AND window_start >= toDateTime(today() - 10)
        AND window_start < toDateTime(today() - 3)
      GROUP BY session_date
      HAVING countIf((toHour(toTimeZone(window_start, 'America/New_York')) * 60 + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959) = 390
  )
    GROUP BY et_time
    HAVING et_time >= '04:00' AND et_time < '20:00'
)
ORDER BY et_time

W półgodzinie po aukcji otwarcia krajowa wycena Apple aktualizowała się średnio 5657 razy na minutę, a przedział o godzinie 10:00 utrzymywał tempo równe 89.5% wartości początkowej. Następnie aktywność spada w ciągu dnia: przedział o godzinie 14:30 odnotował 1973 aktualizacji na minutę, co stanowi 34.9% tempa z otwarcia. Wzrost aktywności przed zamknięciem rynku następuje jedynie częściowo — 3345 na minutę, czyli 59.1% tempa z otwarcia — zatem największa liczba wycen wystąpiła w pierwszej godzinie, a nie w ostatniej. Po godzinach regulaminowych aktywność jest minimalna, spadając do 17 aktualizacji na minutę po sygnale o godzinie 16:00.

Co dzieje się z NBBO podczas wstrzymania handlu?

Gdy kurs akcji zmienia się zbyt gwałtownie, zasady limit-up/limit-down powodują pięciominutową przerwę w obrocie. Notowania nie znikają ani nie pozostają aktywne: proces ich odświeżania zostaje zatrzymany, a ostatni zapis sprzed przerwy pozostaje widoczny na ekranie. Akcje GameStop (GME) wywołały taką przerwę tuż po godzinie 11:00 czasu wschodniego dnia 14 maja 2024 r.; panel monitoruje aktualizacje notowań oraz transakcje minuta po minucie.

ZapytanieGME, 2024-05-14 — aktualizacje NBBO i transakcje na minutę podczas 5-minutowej pauzy LULD
Dokładny kod SQL dla każdej liczby
WITH spine AS (
    SELECT toStartOfMinute(toTimeZone(window_start, 'America/New_York')) AS et_min
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'SPY'
      AND window_start >= toDateTime('2024-05-14 10:57:00', 'America/New_York')
      AND window_start < toDateTime('2024-05-14 11:12:00', 'America/New_York')
),
gme_trades AS (
    SELECT toStartOfMinute(toTimeZone(window_start, 'America/New_York')) AS et_min,
           sum(transactions) AS trades
    FROM global_markets.delayed_stocks_minute_aggs
    WHERE ticker = 'GME'
      AND window_start >= toDateTime('2024-05-14 10:57:00', 'America/New_York')
      AND window_start < toDateTime('2024-05-14 11:12:00', 'America/New_York')
    GROUP BY et_min
),
gme_quotes AS (
    SELECT toStartOfMinute(toTimeZone(sip_timestamp, 'America/New_York')) AS et_min,
           count() AS nbbo_updates
    FROM global_markets.cache_stocks_quotes
    WHERE ticker = 'GME'
      AND sip_timestamp >= toDateTime('2024-05-14 10:57:00', 'America/New_York')
      AND sip_timestamp < toDateTime('2024-05-14 11:12:00', 'America/New_York')
    GROUP BY et_min
)
SELECT formatDateTime(spine.et_min, '%H:%i') AS et_time,
       ifNull(gme_quotes.nbbo_updates, 0) AS nbbo_updates,
       toUInt64(ifNull(gme_trades.trades, 0)) AS trades
FROM spine
LEFT JOIN gme_quotes ON gme_quotes.et_min = spine.et_min
LEFT JOIN gme_trades ON gme_trades.et_min = spine.et_min
ORDER BY spine.et_min

W minucie poprzedzającej przerwę, 11:00, skonsolidowane notowania GameStop zostały zaktualizowane 4511 razy przy 12419 transakcjach. Następnie obie kolumny tracą dane: 0 zapisów notowań przy 11:02 i 0 przy 11:03, przy czym liczba transakcji wynosi 0 — jest to notowanie, które przestało się zmieniać, w akcjach, których handel został wstrzymany. Notowania powracają w 11:06, czyli w minucie ponownego otwarcia, przy 4155 aktualizacjach i 14007 transakcjach, co stanowi najbardziej intensywną minutę handlową w zestawieniu. Ostatnie NBBO wstrzymanego waloru jest jedynie zapisem historycznym, a nie ceną możliwą do realizacji; sesja GameStop z stycznia 2021 r. pokazuje, jak seria takich przerw wpływa na przebieg transakcji.

Dlaczego broker musi realizować zlecenia po kursie NBBO lub lepszym

NBBO stanowi benchmark regulacyjny. Regulation NMS — zbiór zasad struktury rynku przyjęty przez SEC w 2005 roku — zawiera zasadę ochrony zleceń (Rule 611): giełda nie może zrealizować zlecenia po kursie gorszym niż chroniona oferta wyświetlana na innej giełdzie. Brokerzy są również zobowiązani do zapewnienia klientom najlepszej egzekucji (best execution), mierzonej względem NBBO: zlecenie kupna typu market powinno zostać zrealizowane po krajowej najlepszej ofercie sprzedaży (ask) lub niżej, a zlecenie sprzedaży typu market po krajowej najlepszej ofercie kupna (bid) lub wyżej.

Większość inwestorów indywidualnych tego nie dostrzega: zlecenie typu market zazwyczaj nigdy nie trafia na giełdę. Większość zleceń typu marketable od klientów detalicznych jest kierowana do hurtowników (wholesalers) — pozagiełdowych animatorów rynku, którzy płacą za prawo do ich realizacji — i realizowana wewnętrznie, a następnie raportowana do pozagiełdowego systemu raportowania. NBBO nadal obowiązuje również ich: hurtownik musi dopasować lub poprawić krajową ofertę w momencie realizacji zlecenia. Konkuruje o przepływ zleceń poprzez oferowanie lepszych warunków — realizuje zlecenia wewnątrz spreadu o ułamek centa, co określa się jako poprawę ceny (price improvement). NBGB jest ceną referencyjną, a nie miejscem transakcji; wybrany przez Ciebie typ zlecenia decyduje o tym, czy w ogóle przekroczysz spread.

FAQ

Czy NBBO obejmuje niepełne pakiety (odd lots)?

Nie. Kwota krajowa jest zestawiana wyłącznie z ofertami pełnych pakietów, a zgodnie z Reg NMS wielkość pełnego pakietu zależy od ceny — od 100 akcji poniżej 250 USD do jednej akcji powyżej 10 000 USD. Najmniejsza oferta kupna dla Forda widoczna w rejestrze wynosiła 100 akcji, w porównaniu do 10 dla AutoZone, którego akcje są znacznie droższe. Lepiej wycenione niepełne pakiety znajdują się wewnątrz publikowanego spreadu i nie są wyświetlane.

Dlaczego cena w mojej aplikacji maklerskiej różni się od bieżącej NBBO?

Istnieją dwa powody, żaden z nich nie wynika z działania SIP. Bezpłatne kanały detaliczne są zazwyczaj opóźnione o 15 minut zgodnie z zasadami licencjonowania giełd, chyba że opłaci się dostęp w czasie rzeczywistym. Dane skonsolidowane stanowią publikowany zrzut danych: mediana czasu konsolidacji dla SPY wyniosła 229.1 mikrosekund, podczas gdy firmy korzystające z bezpośrednich kanałów giełdowych widzą zdarzenie wcześniej.

Co dzieje się z NBBO, gdy następuje wstrzymanie handlu akcjami?

Następuje zamrożenie danych. Podczas pięciominutowej przerwy typu limit-up/limit-down dla GameStop, rejestr odnotował 0 aktualizacji ofert oraz 11:03 i 0 transakcji. Ostatnia oferta pozostaje na ekranie, ale nie można na niej dokonać transakcji; kolejną ofertę wyznacza aukcja ponownego otwarcia.

Czy NBBO obowiązuje po sesji głównych handlowych?

Tak. Kwoty skonsolidowane są przesyłane od 4:00 do 20:00 czasu ET, zatem kwota krajowa istnieje również podczas handlu przedsesyjnego i pozagiełdowego — jednak przy znacznie mniejszej częstotliwości niż w ciągu dnia: Apple odnotowało 65 aktualizacji w ostatniej minucie przed sesją w porównaniu do 5657 po otwarciu.

Uwagi do danych: okna i filtry

Okna kroczące kończą się trzy dni przed wygenerowaniem danych (na początku kanału występuje krótkie opóźnienie pobierania) i obejmują wyłącznie pełne sesje — dni, w których SPY generuje wszystkie 390 minutowych słupków z godzin regulaminowych. Panel Coca-Cola wyklucza rekordy jednostronne oraz krzyżujące się; panele liczące przyjmują każdy rekord w niezmienionej formie (rynki zablokowane i krzyżujące się obejmują te wykluczone). Panel GameStop jest przypisany do stałej daty, a bazą czasową są minutowe słupki SPY, dlatego minuty podczas wstrzymania handlu są wyświetlane jako zera.


Każdy panel zawiera zapytanie SQL, które go wygenerowało — otwórz je, podstaw własny ticker i sprawdź liczbę aktualizacji NBBO na terminalu Strasmore.