NBBO అంటే ఏమిటి? నేషనల్ బెస్ట్ బిడ్ అండ్ ఆఫర్
NBBO అంటే నేషనల్ బెస్ట్ బిడ్ అండ్ ఆఫర్, ఒక US స్టాక్కి సమగ్ర కోట్; మీ బ్రోకర్ తప్పనిసరిగా సమానం లేదా మెరుగైన ధర ఇవ్వాలి. SIPలు దీన్ని ఎలా అప్డేట్ చేస్తాయో చూడండి.
NBBO అంటే నేషనల్ బెస్ట్ బిడ్ అండ్ ఆఫర్, ఇది ఒక US స్టాక్కి సమగ్ర కోట్: ప్రతి ఎక్స్ఛేంజీలో ఒకే సమయంలో కొనేవారు ఇస్తున్న అత్యధిక ధర (బిడ్) మరియు అమ్మేవారు అడుగుతున్న అత్యల్ప ధర (ఆఫర్). మీ యాప్ చూపించేది ఇదే, మరియు మీ ఆర్డర్పై మీ బ్రోకర్ తప్పనిసరిగా సమానం లేదా అంతకంటే మెరుగైన ధరను అందించాల్సిన బెంచ్మార్క్ కూడా ఇదే. క్రింది ప్రతి సంఖ్య నిజమైన కోట్ రికార్డుల నుండి వచ్చింది, ప్రశ్న జోడించబడింది.
NBBO అంటే ఏమిటి? సరళమైన నిర్వచనం
ఒక యూఎస్ స్టాక్ ఒకే చోట ట్రేడ్ కాదు. NYSE, Nasdaq, మరియు పది కంటే ఎక్కువ ఇతర ఎక్స్ఛేంజీలు ఒకే టికర్ కోసం ఒక్కొక్కటి తమ స్వంత ఆర్డర్ బుక్ నడుపుతాయి, ప్రతి దానికి దాని స్వంత ఉత్తమ బిడ్ మరియు ఆస్క్ ఉంటాయి. NBBO ఆ టాప్లను కలిపి కుట్టుతుంది: ఎక్కడైనా అత్యధిక బిడ్, ఎక్కడైనా అత్యల్ప ఆస్క్, ప్రతి దానిలో అందుబాటులో ఉన్న షేర్లతో పాటు. ఈ కుట్టడాన్ని సెక్యూరిటీస్ ఇన్ఫర్మేషన్ ప్రాసెసర్లు, లేదా SIPలు చేస్తాయి — ఎక్స్ఛేంజీలు కలిసి నడిపే మార్కెట్ యుటిలిటీలు.
రెండు వివరాలు ముందుగా ప్రాముఖ్యం కలిగి ఉంటాయి. బిడ్ మరియు ఆస్క్ ఒకేసారి రెండు వేర్వేరు ఎక్స్ఛేంజీలలో ఉండవచ్చు. మరియు అప్డేట్ కోసం ధర మార్పు తప్పనిసరి కాదు: అదే ఉత్తమ ధర వద్ద సైజ్ మార్పు కూడా కొత్త రికార్డ్ను ప్రింట్ చేస్తుంది. ట్రేడర్లు ఆ రెండు ఉత్తమ ధరలను ది టచ్ అని పిలుస్తారు; వాటి మధ్య ఉన్న అంతరాన్ని బిడ్-ఆస్క్ స్ప్రెడ్ అంటారు.
NBBO కోట్ను ఎలా చదవాలి: ధరలు, పరిమాణాలు, వేగం
కోకా-కోలా (KO) కోసం ఒక ఇటీవలి పూర్తి సెషన్లో ఈస్టర్న్ టైమ్ (ET) మధ్యాహ్నం 1:30 గంటలకు చెందిన పది వరుస NBBO రికార్డులు ఇక్కడ ఉన్నాయి — నేషనల్ కోట్ అది నిజంగా వచ్చిన విధంగా.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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మొదటి వరుసను 13:30:02.886 ET స్టాంప్తో రెండు నిలబడే ఆఫర్లుగా చదవండి. కొనుగోలుదారుల అత్యుత్తమం: $83.3కి 200 షేర్లు. అమ్మకందారుల అత్యుత్తమం: $83.31కి 200 షేర్లు. వాటి మధ్య ఉన్న అంతరం 1¢.
షేర్ లెక్కలు టచ్ వద్ద పరిమాణం — రెండు అత్యుత్తమ ధరల వద్ద ప్రదర్శించబడిన లిక్విడిటీ. ఆ పరిమాణం కంటే పెద్ద ఆర్డర్ దాన్ని పూర్తిగా వినియోగించి, మిగిలినది బుక్లోని తదుపరి ధరల వద్ద నెరవేరుతుంది. ప్రదర్శించబడిన పరిమాణం అనేది ఒక కనిష్ఠ మాత్రమే, పూర్తి ఇన్వెంటరీ కాదు: రెండు ధరల వద్ద లేదా మధ్య డార్క్ పూల్స్తో సహా మరింత ఆసక్తి తరచూ ప్రదర్శించబడకుండా ఉంటుంది.
ఇప్పుడు వరుసలను కిందికి చదవండి. మొదటి రికార్డ్ తర్వాత అన్ని 10 రికార్డులు 484.95 మిల్లీసెకన్లలో ల్యాండ్ అయ్యాయి. ఏ షెడ్యూల్ లేదు — విజేత మారినప్పుడు SIP ప్రచురిస్తుంది, మరియు నాలుగు ఈవెంట్లలో ఏదైనా ఒక వరుసను ప్రింట్ చేస్తుంది: మెరుగైన బిడ్, మెరుగైన ఆస్క్, రెండు అత్యుత్తమ ధరలలో ఏదైనా వద్ద షేర్లలో మార్పు, లేదా టాప్ వద్ద ఒక ఎక్స్ఛేంజ్ మరొకదాన్ని భర్తీ చేయడం. సెషన్-పొడవు వీక్షణ కోసం, మైక్రోస్ట్రక్చర్ డీప్-డైవ్ చూడండి.
NBBOలో అడ్డలాట్లు ఉంటాయా?
ఎక్కువగా, ఉండవు. నేషనల్ కోట్ అనేది రౌండ్-లాట్ ఆసక్తి నుండి మాత్రమే నిర్మించబడుతుంది. రౌండ్ లాట్ కంటే తక్కువ షేర్ల కోసం ఇచ్చిన ఆర్డర్ అనేది అడ్డలాట్: అది నేషనల్ బెస్ట్ బిడ్ కంటే మెరుగైన ధర వద్ద ఎక్స్ఛేంజ్ బుక్ మీద ఉండవచ్చు, అక్కడే ట్రేడ్ అవ్వవచ్చు, మరియు NBBOలో ఎప్పుడూ కనిపించదు.
రౌండ్ లాట్ ఇకపై స్థిరంగా 100 షేర్లు కాదు. SEC సవరించిన Reg NMS కోటింగ్ నియమాల ప్రకారం ఇది షేర్ ధర ఆధారంగా టైర్డ్గా ఉంటుంది: $250 వరకు 100 షేర్లు, $250.01 నుండి $1,000 వరకు 40, $1,000.01 నుండి $10,000 వరకు 10, దాని పైన ఒకటి. ఈ టైర్లు టేప్లో కనిపిస్తాయి — ప్యానెల్ బ్యాండ్లలో ఆరు పేర్ల కోసం కన్సాలిడేటెడ్ కోట్లో ఎప్పుడైనా కనిపించే అతి చిన్న బిడ్ సైజును తీసుకుంటుంది.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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దాదాపు $13.9 వద్ద కోట్ చేస్తున్న Ford ఆ గంటలో 100 షేర్ల కంటే చిన్న బిడ్ను ఎప్పుడూ చూపించదు; $84.18 వద్ద Coca-Cola కూడా అలాగే. $314.36 వద్ద ఉన్న Apple 40కు పడిపోతుంది; షేరుకు $3030.52 వద్ద ఉన్న AutoZone 10కు పడిపోతుంది, మధ్యస్థ ప్రదర్శిత బిడ్ 10. ఫ్లోర్ ధర టైర్ను ట్రాక్ చేస్తుంది. మెరుగైన ధర ఉన్న అడ్డలాట్ ఆసక్తి పబ్లిష్ అయిన స్ప్రెడ్ లోపల కనిపించకుండా కూర్చోవచ్చు, కాబట్టి నిజమైన ఉత్తమ లభ్య ధర NBBO సూచించే దానికంటే కొన్నిసార్లు మెరుగ్గా ఉంటుంది.
మీ యాప్ యొక్క కోట్ పూర్తి స్థాయి ప్రత్యక్ష NBBO కాదు ఎందుకు
ఫోన్లో మీరు చదివే కోట్ ఒక ప్రయాణం చేసింది: ఎక్స్ఛేంజ్ మ్యాచింగ్ ఇంజిన్ → SIP → డేటా విక్రేత → బ్రోకర్ → స్క్రీన్. ప్రతి రికార్డులో రెండు గడియారాలు ఉంటాయి — ఎక్స్ఛేంజీ స్వంత ముద్ర మరియు ప్రచురణ సమయంలో SIP ముద్ర — వాటి మధ్య ఉన్న అంతరమే కన్సాలిడేషన్ దశ.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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)SPYపై మధ్యస్థ అంతరం 229.1 మైక్రోసెకన్లు — సెకనులో మిలియనవ భాగాలు — మరియు ఆపిల్ యొక్కది 203.4. తోక మధ్యలో కంటే మందంగా ఉంది: Nvidia యొక్క 99వ పర్సంటైల్ 536.9 మైక్రోసెకన్లుగా నమోదైంది. SIP మానవీయ అర్థంలో నెమ్మదిగా లేదు. రెండు ఇతర విషయాలు ఉన్నాయి.
మొదట, మీ డేటా ఉద్దేశపూర్వకంగా ఆలస్యం కావచ్చు. రిటైల్ యాప్లు మరియు చార్టింగ్ సైట్లలో ఉచిత కోట్ ఫీడ్లు సాధారణంగా ఎక్స్ఛేంజ్ లైసెన్సింగ్ నిబంధనల ప్రకారం 15 నిమిషాలు ఆలస్యం అవుతాయి; ప్రత్యక్ష స్ట్రీమింగ్ ఒక చెల్లింపు హక్కు.
రెండవది, వృత్తిపరమైన సంస్థలు SIP కోసం వేచి ఉండవు. ప్రతి ఎక్స్ఛేంజ్ కూడా తన స్వంత మ్యాచింగ్ ఇంజిన్ నుండి ప్రత్యక్ష ఫీడ్ను విక్రయిస్తుంది. కోలొకేటెడ్ సంస్థ దానిని చదివి, ఆ సంఘటన యొక్క SIP సంస్కరణ చేరే ముందు తన స్వంత ఉత్తమ బిడ్ మరియు ఆఫర్ను లెక్కిస్తుంది — మైక్రోసెకన్ల పొడవు ఒక అంచు, రోజంతా రెండు వైపులా కోట్ చేసే మార్కెట్ మేకర్ కోసం నిర్ణయాధికారం కలిగించేది.
NBBO ఎంత తరచుగా అప్డేట్ అవుతుంది? లిక్విడ్ vs తక్కువ వాల్యూమ్ స్టాక్లు
ప్రతి లిస్టెడ్ స్టాక్కు NBBO ఉంటుంది, దాని అప్డేట్ రేటు ఒక లిక్విడిటీ కొలమానం. ఈ పట్టిక బాగా ట్రేడ్ అయే నాలుగు పేర్లకు, రెండు తక్కువ వాల్యూమ్ ఉన్న స్మాల్ క్యాప్లకు — Nathan's Famous (NATH) మరియు Seneca Foods (SENEA) — ఇటీవలి పూర్తి సెషన్ల సరాసరిని చూపిస్తుంది.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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)S&P 500 ETF అయిన SPY, ఒక సెషన్కు సరాసరి 3.428 మిలియన్ల NBBO అప్డేట్లను నమోదు చేసింది — పట్టికలో అత్యంత నిశ్శబ్ద పేరు కంటే 2031 రెట్లు ఎక్కువ. Nvidia సరాసరి 1.85 మిలియన్లు, Apple 1.336 మిలియన్లు. ఆ తర్వాత ఒక పెద్ద పడిపోవడం: Seneca Foods సరాసరి సెషన్లో 8097 అప్డేట్లను ముద్రించింది, Nathan's Famous 1688. SPY రేటుతో ఎవరూ స్క్రీన్ చూడరు: NBBO అనేది సాఫ్ట్వేర్ కోసం నిర్మించిన ఫీడ్.
NBBO అత్యంత వేగంగా అప్డేట్ అయ్యే సమయం: ఓపెనింగ్ vs. మధ్యాహ్నం
అప్డేట్ రేటు కూడా రోజువారీ లయను కలిగి ఉంటుంది. చార్ట్ ఆపిల్ NBBO అప్డేట్లను నిమిషానికి సరాసరిగా అరగంట గడియార బకెట్లలో (ఈస్టర్న్ టైమ్) సగటు చూపిస్తుంది; చివరి నిలువు వరుస ప్రతి బకెట్ను 9:30 బకె్లో శాతంగా చదువుతుంది.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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ఓపెనింగ్ వేలం తర్వాతి అరగంటలో, ఆపిల్ జాతీయ కోట్ సరాసరి నిమిషానికి 5657 సార్లు అప్డేట్ అయింది, మరియు 10:00 బకెట్ ఆ వేగాన్ని దానిలో 89.5% వద్ద నిలబెట్టింది. ఆ తర్వాత రోజు మధ్యలో టేప్ పల్చబడుతుంది: 2:30 బకెట్ నిమిషానికి 1973 అప్డేట్లను నడిపింది, ఓపెనింగ్ వేగంలో 34.9%. క్లోజ్కు 3:30 రన్-ఇన్ తిరిగి కొంత భాగాన్ని మాత్రమే పునరుద్ధరిస్తుంది — నిమిషానికి 3345, ఓపెన్లో 59.1% — కాబట్టి అత్యధిక కోటింగ్ చివరి గంటలో కాకుండా మొదటి గంటలో ఉంది. రెగ్యులర్ గంటల వెలుపల టేప్ దాదాపు నిశ్శబ్దంగా ఉంటుంది, మధ్యాహ్నం 4:00 గంటల బెల్ తర్వాత నిమిషానికి 17 అప్డేట్లకు పడిపోతుంది.
ట్రేడింగ్ హాల్ట్ సమయంలో NBBO కి ఏమవుతుంది?
ఒక స్టాక్ చాలా వేగంగా, చాలా దూరం కదిలినప్పుడు, లిమిట్-అప్/లిమిట్-డౌన్ నియమాలు దానిని ఐదు నిమిషాల పాటు పాజ్ చేస్తాయి. కోట్ అదృశ్యం కాదు, లైవ్గా ఉండదు: అది రిఫ్రెష్ కావడం ఆగిపోతుంది, పాజ్కు ముందు చివరి రికార్డు మీ స్క్రీన్పై మిగిలిపోయిన ఫ్రేమ్ అవుతుంది. GameStop (GME) 2024 మే 14న ఉదయం 11:00 గంటలకు Eastern తర్వాత ఇలాంటి పాజ్ను ట్రిగ్గర్ చేసింది; ప్యానెల్ దాని కోట్ అప్డేట్లను, ట్రేడ్లను, నిమిషం నిమిషానికి, ఆ పాజ్ అంతటా ట్రాక్ చేస్తుంది.
ప్రతి సంఖ్య వెనుక ఉన్న ఖచ్చితమైన SQL
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పాజ్కు ముందు నిమిషంలో, 11:00, GameStop యొక్క కన్సాలిడేటెడ్ కోట్ 12419 ట్రేడ్లకు వ్యతిరేకంగా 4511 సార్లు అప్డేట్ అయింది. ఆ తర్వాత రెండు కాలమ్లు షెల్ఫ్ నుండి పడిపోతాయి: 11:02 మరియు 0 వద్ద 0 కోట్ రికార్డ్లు, 11:03 వద్ద, తోడు 0 ట్రేడ్లు — కదలడం ఆగిపోయిన కోట్, ట్రేడ్ అవడం ఆగిపోయిన స్టాక్లో. కోటింగ్ 11:06 వద్ద, రీఓపెనింగ్ నిమిషంలో తిరిగి వస్తుంది, 4155 అప్డేట్లు మరియు 14007 ట్రేడ్లతో, టేబుల్లో అత్యధిక ట్రేడ్ నిమిషం. హాల్ట్ చేయబడిన స్టాక్ యొక్క చివరి NBBO ఒక శిలాజం, ట్రేడ్ చేయదగిన ధర కాదు; జనవరి 2021 GameStop సెషన్ అటువంటి పాజ్ల శ్రేణి టేప్కు ఏమి చేస్తుందో చూపిస్తుంది.
మీ బ్రోకర్ మిమ్మల్ని NBBO వద్ద లేదా అంతకంటే మెరుగైన ధర వద్ద ఎందుకు నింపాలి
NBBO ఒక నియంత్రణ ప్రమాణం. రెగ్యులేషన్ NMS — SEC యొక్క మార్కెట్-నిర్మాణ నియమావళి, 2005లో ఆమోదించబడింది — ఒక ఆర్డర్-రక్షణ నియమాన్ని కలిగి ఉంది, రూల్ 611: ఒక వేదిక మరొక ఎక్స్ఛేంజీపై ప్రదర్శించబడిన రక్షిత కోట్ కంటే చెడ్డ ధర వద్ద అమలు చేయకూడదు. బ్రోకర్లు కస్టమర్లకు ఉత్తమ అమలు బాధ్యత కూడా కలిగి ఉంటారు, ఇది NBBOతో కొలుస్తారు: మార్కెట్ కొనుగోలు జాతీయ ఉత్తమ అస్క్ లేదా అంతకంటే తక్కువ వద్ద నిండాలి, మార్కెట్ అమ్మకం జాతీయ ఉత్తమ బిడ్ లేదా అంతకంటే ఎక్కువ వద్ద నిండాలి.
చాలా మంది రిటైల్ పాఠకులు దీనిని తప్పవేస్తారు: మీ మార్కెట్ ఆర్డర్ సాధారణంగా ఎక్స్ఛేంజీని ఎప్పుడూ చేరదు. చాలా మంది రిటైల్ మార్కెటబుల్ ఫ్లో హోల్సేలర్లకు — దానిని నింపే హక్కు కోసం చెల్లించే ఎక్స్ఛేంజీ వెలుపలి మార్కెట్ మేకర్లకు — రూట్ చేయబడుతుంది — మరియు అంతర్గతంగా అమలు చేయబడుతుంది, ఎక్స్ఛేంజీ వెలుపలి రిపోర్టింగ్ సౌకర్యానికి ముద్రించబడుతుంది. NBBO ఇప్పటికీ వారిని నియంత్రిస్తుంది: హోల్సేలర్ అమలు సమయంలో జాతీయ కోట్ను సరిపోల్చాలి లేదా అధిగమించాలి, మరియు దానిని అధిగమించడం ద్వారా ఫ్లో కోసం పోటీ చేస్తుంది — స్ప్రెడ్ లోపల సెంట్ యొక్క భాగంలో నింపుతుంది, దీనిని ధర మెరుగుదల అంటారు. NBBO వేదిక కాదు, రిఫరెన్స్ ధర; మీరు ఎంచుకునే ఆర్డర్ రకం మీరు స్ప్రెడ్ను అసలు దాటుతారా లేదా అనేది నిర్ణయిస్తుంది.
తరచూ అడిగే ప్రశ్నలు
NBBOలో అసాధారణ లాట్లు ఉంటాయా?
లేదు. జాతీయ కోట్ రౌండ్-లాట్ కోట్ల నుండి మాత్రమే రూపొందించబడుతుంది, మరియు Reg NMS రౌండ్ లాట్ను ధర ప్రకారం టైర్ చేస్తుంది — $250 కంటే తక్కువకు 100 షేర్లు, $10,000 కంటే ఎక్కువకు ఒక షేర్. పైన ఫోర్డ్ కోసం టేప్ చూపిన అతి చిన్న బిడ్ 100 షేర్లు, ఆటోజోన్ కోసం 10, దీని షేర్లు చాలా ఎక్కువ ఖర్చు. మెరుగైన ధరల అసాధారణ లాట్లు ప్రచురించబడిన స్ప్రెడ్ లోపల కనిపించకుండా ఉంటాయి.
నా బ్రోకరేజ్ యాప్లోని కోట్ లైవ్ NBBO నుండి ఎందుకు భిన్నంగా ఉంది?
రెండు కారణాలు, వాటిలో ఏదీ SIP కాదు. రియల్-టైమ్ కోసం చెల్లించకపోతే ఉచిత రిటైల్ ఫీడ్లు సాధారణంగా ఎక్స్ఛేంజ్ లైసెన్సింగ్ నిబంధనల కింద 15 నిమిషాలు ఆలస్యం అవుతాయి. మరియు కన్సాలిడేటెడ్ డేటా ఒక ప్రచురించబడిన స్నాప్షాట్: కన్సాలిడేషన్ దశ SPYపై మధ్యస్థంగా 229.1 మైక్రోసెకన్లను కొలిచింది, అయితే ఎక్స్ఛేంజ్ డైరెక్ట్ ఫీడ్లపై ఉన్న సంస్థలు ఈవెంట్ను ముందుగానే చూస్తాయి.
స్టాక్ నిలిచిపోయినప్పుడు NBBOకి ఏమవుతుంది?
ఇది గడ్డకట్టుతుంది. పైన GameStop యొక్క ఐదు నిమిషాల లిమిట్-అప్/లిమిట్-డౌన్ పాజ్ సమయంలో, టేప్ 0 కోట్ అప్డేట్లను 11:03 మరియు 0 ట్రేడ్ల వద్ద మోసుకెళ్లింది. చివరి కోట్ స్క్రీన్పై ఉంటుంది కానీ వ్యాపారం చేయదగినది కాదు; తిరిగి తెరిచే వేలం తదుపరి దాన్ని సెట్ చేస్తుంది.
గంటల తర్వాత NBBO ఉంటుందా?
అవును. కన్సాలిడేటెడ్ కోట్లు ET 4:00 గంటల నుండి 8:00 గంటల వరకు ప్రవహిస్తాయి, కాబట్టి జాతీయ కోట్ ప్రీమార్కెట్ మరియు ఆఫ్టర్-అవర్స్ ట్రేడింగ్ ద్వారా ఉంటుంది — పగటి వేగంలో ఒక భాగం వద్ద: చివరి ప్రీమార్కెట్ బకెట్లో నిమిషానికి 65 Apple అప్డేట్లు, ఓపెన్ తర్వాత 5657.
డేటా నోట్లు: విండోలు మరియు ఫిల్టర్లు
రోలింగ్ విండోలు జనరేషన్ ముందు మూడు రోజులు ముగుస్తాయి (ఒక చిన్న ఇన్జెస్ట్ లాగ్ ఫీడ్ యొక్క ముందు అంచున కూర్చుంటుంది) మరియు పూర్తి సెషన్లను మాత్రమే లెక్కిస్తాయి — SPY అన్ని 390 రెగ్యులర్-అవర్స్ నిమిష బార్లను ప్రింట్ చేసే రోజులు. Coca-Cola ప్యానెల్ ఒక-వైపు మరియు క్రాస్డ్ రికార్డ్లను మినహాయిస్తుంది; లెక్కింపు ప్యానెల్లు ప్రతి రికార్డ్ను అలాగే తీసుకుంటాయి (లాక్ చేయబడిన మరియు క్రాస్డ్ మార్కెట్లు మినహాయించబడిన వాటిని కవర్ చేస్తుంది). GameStop ప్యానెల్ ఒక స్థిర తేదీకి పిన్ చేయబడింది, SPY యొక్క నిమిష బార్లను క్లాక్ స్పైన్గా కలిగి ఉంది, కాబట్టి పాజ్ చేయబడిన నిమిషాలు సున్నాలుగా చూపబడతాయి.
ప్రతి ప్యానెల్ దాన్ని ఉత్పత్తి చేసిన SQLతో వస్తుంది — ఒకదాన్ని తెరవండి, మీ స్వంత టిక్కర్ను మార్చుకోండి, Strasmore టెర్మినల్లో దాని NBBO అప్డేట్లను లెక్కించండి.