מיקרו-מבנה לעומק: 29 ביוני 2026
צלילה אל מאחורי הקלעים של יום המסחר: סרט העסקאות והציטוטים המלא, תיקון נפח שמקורו במילון הקודים של הטייפ, חותמות זמן בננו-שניות וקובץ FINRA קטוע.
זהו המלווה שמאחורי הקלעים של סיכום השוק מ-29 ביוני 2026: הזרם הגולמי שמתחת לעמודות הדקות — 156.1 מיליון עסקאות בודדות ו-505.38 מיליון עדכוני ציטוט NBBO בסשן רגיל אחד של יום שני. כל מספר הוא תוצאה של שאילתה שמורה (ניתן להרחיב כל פאנל ל-SQL המדויק), ושתי התגליות הפורנזיות של היום זוכות לניתוח מלא: תיקון נפח שמילון הקודים של הטייפ עצמו דורש, וקובץ ספק שנעצר בשקט באות S.
סרט המסחר, הדפסה אחר הדפסה
בדיקת המושב קודמת לכל, לעולם אינה מונחת: בלוח חגי הבורסה רשומות 0 שורות עבור 29 ביוני 2026, ו-SPY הדפיס בדיוק 390 עמודות דקות בתוך חלון המסחר הרגיל — מושב מלא, 9:30 בבוקר עד 4:00 אחר הצהריים לפי שעון ניו יורק. במהלך היום המורחב, רשמה הטייפ המאוחד 156.1 מיליון עסקאות בודדות.
ה-SQL המדויק מאחורי כל מספר
WITH
(SELECT count() FROM global_markets.stocks_market_holidays WHERE date = '2026-06-29') AS holiday_rows,
(
SELECT countIf(window_start >= '2026-06-29 13:30:00' AND window_start < '2026-06-29 20:00:00')
FROM global_markets.delayed_stocks_minute_aggs
WHERE ticker = 'SPY' AND window_start >= '2026-06-29 00:00:00' AND window_start < '2026-06-30 00:00:00'
) AS spy_bars
SELECT
holiday_rows AS holiday_rows_jun29,
spy_bars AS spy_regular_session_bars,
round(count() / 1e6, 1) AS trades_m,
round(100.0 * countIf(size < 100) / count(), 2) AS odd_lot_pct_of_trades,
round(100.0 * toFloat64(sumIf(size, size < 100)) / toFloat64(sum(size)), 2) AS odd_lot_pct_of_shares,
multiIf(
countIf(size <= 19) >= 0.5 * count(), 19,
countIf(size <= 20) >= 0.5 * count(), 20,
countIf(size <= 21) >= 0.5 * count(), 21,
countIf(size <= 22) >= 0.5 * count(), 22,
countIf(size <= 23) >= 0.5 * count(), 23,
0) AS median_print_shares,
round(countIf(size = 1) / 1e6, 1) AS one_share_trades_m,
round(100.0 * countIf(size != round(size)) / count(), 2) AS fractional_pct_of_trades
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'72.61% מכלל ההדפסות היו מנות אי-זוגיות — עסקאות של פחות מ-100 מניות — אך הן הניעו רק 8.79% מהמניות הגולמיות — הסכום הלא-מתוקנן שסעיף ניתוח הנפח להלן מקצץ. ההדפסה החציונית הייתה 21 מניות, נמדדה בגשוש טווח המאמת את עצמו — ספירות מצטברות בטווח 19 עד 23 מניות — שמחזיר 0 אם הטווח מחטיא, ומוגבל כך שהחטאה מחזיקה את העמדה. 17.9 מיליון הדפסות היו של מניה אחת בדיוק ו-4.73% נשאו גדלים שבריים — דפוס העולה בקנה אחד עם אפליקציות קמעונאיות הפוגעות בטייפ פרוסה אחר פרוסה, כאשר עושי השוק נוטלים את הצד השני.
ניתוח פורנזי של נפח מסחר: גזירת "נפח מתואם" מתוך המילון
אם נסכם את שדה הגודל בכל הדפסה, 29 ביוני מראה 24.79 מיליארד מניות שנסחרו. הנתון הזה שגוי, והטייפ עצמו אומר זאת. כל הדפסה נושאת קודי תנאי, וה-SIP — מעבד המידע לניירות ערך שמאחד את כל הזירות לזרם אחד — מפרסם מילון המציין, קוד אחר קוד, האם הדפסה מעדכנת את הנפח המאוחד. חלק מההודעות הן שידורים חוזרים אדמיניסטרטיביים של נפח שכבר נספר פעם אחת. במקום לקודד רשימה של קודים "ידועים", פוסט זה גוזר את קבוצת ההחרגה מתוך המילון עצמו:
ה-SQL המדויק מאחורי כל מספר
SELECT
count() AS excluded_codes,
sum(id) AS excluded_id_checksum,
arrayStringConcat(arraySort(groupArray(concat(toString(id), ' ', name))), ' · ') AS codes
FROM global_markets.stocks_condition_codes
WHERE asset_class = 'stocks'
AND type = 'sale_condition'
AND JSONExtractBool(update_rules, 'consolidated', 'updates_volume') = 03 תנאי מכירה נושאים updates_volume = false בהזנה המאוחדת: 15 Market Center Official Close · 16 Market Center Official Open · 38 Corrected Consolidated Close (per listing market). הנה הלקח המעשי: טיוטה מוקדמת של הסיכום היומי קודדה את קודים 15 ו-16 — שתי הודעות הפתיחה/סגירה הרשמיות שכל מדריך נתונים מזכיר — והחמיצה לחלוטין את קוד 38. המילון, לא רשימת קודים זכורה, הוא מקור האמת.
שני בלוקים זה מכוון: תת-שאילתה סקלרית על המילון בתוך סריקה של 156.1 מיליון שורות חורגת ממגבלת 30 השניות שלנו. לכן הבלוק למעלה גוזר את הקבוצה כשורה אחת — עם חסם שפיות על מספר הקודים וסכום ביקורת מזהה (69) — והבלוק למטה מיישם את הערכים המילוליים הנגזרים. אם המילון אי פעם ישתנה, חסם סכום הביקורת מחזיק את הפוסט הזה לבדיקה; הערכים המילוליים לעולם לא יכולים להתיישן בשקט.
ה-SQL המדויק מאחורי כל מספר
SELECT
round(toFloat64(sum(size)) / 1e9, 2) AS raw_shares_bn,
round(toFloat64(sumIf(size, NOT hasAny(conditions, [15, 16, 38]))) / 1e9, 2) AS matched_shares_bn,
round(toFloat64(sumIf(size, hasAny(conditions, [15, 16, 38]))) / 1e9, 2) AS excluded_shares_bn,
countIf(hasAny(conditions, [15, 16, 38])) AS excluded_prints
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'החשבונאות המתוקנת: 24.79 מיליארד מניות גולמיות, 20.66 מיליארד נספרו על ידי ה-SIP, 4.13 מיליארד הוחרגו על פני 91175 הדפסות אדמיניסטרטיביות. הגדרה אחת, מנוסחת במדויק: "נפח מתואם" פירושו הנפח שכללי התנאים של ה-SIP עצמו סופרים כלפי הסכום המאוחד — לא יותר. איננו שופטים אילו עסקאות היו משמעותיות כלכלית; אנו מיישמים את החשבונאות של הטייפ עצמו.
ההדפסות הגדולות ביותר, מפוענחות
ההדפסות הגדולות של היום הן המקום שבו קודי המצב מפסיקים להיות טריוויה:
ה-SQL המדויק מאחורי כל מספר
SELECT
ticker,
formatDateTime(toTimeZone(sip_timestamp, 'America/New_York'), '%H:%i:%S') AS et_time,
round(toFloat64(size) / 1e6, 2) AS shares_m,
toFloat64(price) AS price,
round(toFloat64(size) * toFloat64(price) / 1e6, 1) AS notional_usd_m,
round(100 * (toFloat64(size) * toFloat64(price)) / max(toFloat64(size) * toFloat64(price)) OVER (), 1) AS pct_of_biggest_dollar_print,
arrayStringConcat(arrayMap(c -> toString(c), conditions), ', ') AS condition_id
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
AND size >= 10000000
AND NOT hasAny(conditions, [15, 16, 38])
ORDER BY size DESC
LIMIT 10קרא את השורות העליונות כדוגמה מודרכת. ההדפסה הגדולה ביותר של היום — 61.69 מיליון מניות CAG (Conagra) במחיר $13.98, שווי של כ-$862.5 מיליון, עם חותמת זמן 16:04:53 ET תחת הקודים 8, 41 (8 Closing Prints, 41 Trade Thru Exempt) — היא תוצאת סגירת המכרז של NYSE שפורסמה אחרי 16:00. היא נספרת למחזור בדיוק פעם אחת. אותן 61.69 מיליון מניות מופיעות שוב תחת קוד 15, Market Center Official Close: דיווח חוזר שהמילון מוציא מהחישוב, חלק מ-4.13 מיליארד שהופשטו למעלה. שורת קוד-15 הזו מוסרת מהטבלה למעלה בכוונה תחילה, כך שקבלתה מקבלת פאנל זול משלה בן שורה אחת:
ה-SQL המדויק מאחורי כל מספר
SELECT
round(toFloat64(maxIf(size, has(conditions, 8))) / 1e6, 2) AS auction_print_shares_m,
round(toFloat64(maxIf(size, has(conditions, 15))) / 1e6, 2) AS official_close_reprint_shares_m,
round(toFloat64(maxIf(size, has(conditions, 8))) - toFloat64(maxIf(size, has(conditions, 15))), 2) AS share_difference,
formatDateTime(toTimeZone(argMaxIf(sip_timestamp, size, has(conditions, 15)), 'America/New_York'), '%H:%i:%S') AS reprint_et,
argMaxIf(exchange, size, has(conditions, 15)) AS reprint_exchange_id,
countIf(has(conditions, 15)) AS cag_code15_prints
FROM global_markets.stocks_trades
WHERE ticker = 'CAG'
AND sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'הגדולה מבין 6 הודעות הסגירה הרשמית על CAG נושאת 61.69 מיליון מניות — בדיוק 61.69 מיליון מניות המכרז (הפרש: 0) — עם חותמת 16:04:53 ET ממזהה בורסה 10, NYSE בספריית המניות: שוק הרישום מציין מחדש את המכרז של עצמו.
CAG השורות האחרות הן חיה שונה — ההדפסה של 15.17 מיליון מניות תחת קודים 12, 2 (12 Form T / extended hours, 2 Average Price Trade) ושתיים נוספות תחת קוד 12 הן הדפסות שלאחר המכרז המדווחות דרך FINRA, שתנאיהן נושאים updates_volume = true. ה-SIP סופר אותן כהדפסות אמיתיות, וכך גם הנתון התואם שלנו.
במקום אחר, קוד 9 מסמן את סגירות הצלבה של Nasdaq — הצלבה של NVDA בשווי $3389.5 מיליון היא ההדפסה הגדולה בטבלה במונחי דולרים — והקודים על ההדפסה של SNAP (53, 41) כוללים את 53, Qualified Contingent Trade.
השעון: עשר דקות שמכתיבות את היום
ברזולוציה של דקות, רצף העסקאות מתרכז כמעט כולו בקצוות יום המסחר:
ה-SQL המדויק מאחורי כל מספר
SELECT
formatDateTime(toTimeZone(toStartOfMinute(sip_timestamp), 'America/New_York'), '%H:%i') AS et_minute,
round(count() / 1e6, 2) AS trades_m
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
GROUP BY et_minute
ORDER BY trades_m DESC
LIMIT 10הדקה של 15:59 שעון החוף המזרחי הדפיסה 3.98 מיליון עסקאות — למעלה משישים אלף בשנייה. האם שאר העשירייה הראשונה צמודה לפתיחה ולסגירה זו כשלעצמה מדידה בת שורה אחת:
ה-SQL המדויק מאחורי כל מספר
SELECT
countIf(NOT (et_minute BETWEEN '09:30' AND '09:39' OR et_minute BETWEEN '15:50' AND '16:00')) AS entries_outside_open_close,
countIf(et_minute BETWEEN '09:30' AND '09:39' OR et_minute BETWEEN '15:50' AND '16:00') AS entries_in_open_close,
maxIf(et_minute, NOT (et_minute BETWEEN '09:30' AND '09:39' OR et_minute BETWEEN '15:50' AND '16:00')) AS outside_entry_minute,
maxIf(trades_m, NOT (et_minute BETWEEN '09:30' AND '09:39' OR et_minute BETWEEN '15:50' AND '16:00')) AS outside_entry_trades_m
FROM (
SELECT
formatDateTime(toTimeZone(toStartOfMinute(sip_timestamp), 'America/New_York'), '%H:%i') AS et_minute,
round(count() / 1e6, 2) AS trades_m
FROM global_markets.stocks_trades
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
GROUP BY et_minute
ORDER BY trades_m DESC
LIMIT 10
)9 מתוך העשר יושבות בתוך עשר דקות הפתיחה או עשר הדקות האחרונות לפני הסגירה. החריגה היחידה — 10:15 שעון החוף המזרחי, התפרצות של 0.88 מיליון הדפסות — היא אנומליה של אמצע הבוקר; הסיבה לה אינה ידועה מנתונים אלה, ולא נמציא אחת. אותה שעת שעון חוזרת בהמשך.
זרם הציטוטים: חצי מיליארד עדכונים
המחיר הלאומי הטוב ביותר לקנייה ולמכירה — מחיר הקנייה והמכירה הטובים ביותר בכל בורסה, המתפרסם מחדש בכל פעם שאחד מהם משתנה — עודכן 505.38 מיליון פעמים ב-29 ביוני, לעומת 156.1 מיליון עסקאות.
ה-SQL המדויק מאחורי כל מספר
WITH
(
SELECT (round(countIf(ticker = 'QQQ') / 1e6, 2), round(countIf(ticker = 'NVDA') / 1e6, 2),
round(countIf(ticker = 'AAPL') / 1e6, 2), round(countIf(ticker = 'TSLA') / 1e6, 2))
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('QQQ', 'NVDA', 'AAPL', 'TSLA')
AND sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
) AS pinned
SELECT
round(count() / 1e6, 2) AS updates_m,
pinned.1 AS qqq_updates_m,
pinned.2 AS nvda_updates_m,
round(pinned.1 - pinned.2, 2) AS qqq_minus_nvda_updates_m,
round(pinned.2 - greatest(pinned.3, pinned.4), 2) AS nvda_minus_next_single_m
FROM global_markets.cache_stocks_quotes
WHERE sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'מוצרי מדד שולטים בציטוטים: QQQ לבדו רשם 5.23 מיליון עדכונים לעומת 1.8 מיליון עבור NVDA, המניה הבודדת המצוטטת ביותר שבדקנו — פער של 0.67 מיליון עדכונים מהמניה הבודדת הבאה. ספירה מלאה לפי טיקר של כל מניה רשומה אינה מתאפשרת תחת מגבלת 30 השניות, כך שטבלת המובילים להלן היא קבוצה שנבדקה, לא דירוג ממצה:
ה-SQL המדויק מאחורי כל מספר
SELECT ticker, round(count() / 1e6, 2) AS updates_m
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('QQQ', 'SPY', 'TQQQ', 'IWM', 'SQQQ', 'NVDA', 'AAPL', 'TSLA')
AND sip_timestamp >= '2026-06-29 00:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
GROUP BY ticker
ORDER BY updates_m DESCQQQ הוביל את הקבוצה שנבדקה עם 5.23 מיליון עדכונים; בראש הטבלה נמצאות קרנות מדד וקרוביהן הממונפים, לא מניות מוכרות.
SPY תחת זכוכית מגדלת: קבלות בננו-שניות, והמרווח בשתי דרכים
ה-SQL המדויק מאחורי כל מספר
WITH
(
SELECT (formatDateTime(toTimeZone(toStartOfSecond(sip_timestamp), 'America/New_York'), '%H:%i:%S'), count())
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY' AND sip_timestamp >= '2026-06-29 13:30:00' AND sip_timestamp < '2026-06-29 20:00:00'
GROUP BY toStartOfSecond(sip_timestamp)
ORDER BY count() DESC, toStartOfSecond(sip_timestamp) ASC
LIMIT 1
) AS busiest_sec,
ordered AS (
SELECT
toFloat64(ask_price - bid_price) AS spread,
bid_price,
ask_price,
toFloat64(sip_timestamp - lagInFrame(sip_timestamp) OVER (ORDER BY sip_timestamp, sequence_number)) AS gap_s,
greatest(toFloat64(least(leadInFrame(sip_timestamp, 1, toDateTime64('2026-06-29 20:00:00', 9)) OVER (ORDER BY sip_timestamp, sequence_number ROWS BETWEEN CURRENT ROW AND 1 FOLLOWING), toDateTime64('2026-06-29 20:00:00', 9)) - sip_timestamp), 0) AS dwell_s,
rowNumberInAllBlocks() AS rn
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY' AND sip_timestamp >= '2026-06-29 13:30:00' AND sip_timestamp < '2026-06-29 20:00:00'
)
SELECT
round(count() / 1e6, 2) AS spy_updates_m,
busiest_sec.1 AS busiest_second_et,
toUInt8(startsWith(busiest_sec.1, '10:15')) AS busiest_second_in_1015,
busiest_sec.2 AS busiest_second_updates,
round(minIf(gap_s, rn > 0 AND gap_s > 0) * 1e9) AS min_gap_between_updates_ns,
round(quantileExactIf(0.5)(gap_s, rn > 0) * 1e6, 1) AS median_gap_us,
countIf(rn > 0 AND gap_s = 0) AS identical_timestamp_pairs,
round(sumIf(spread * dwell_s, bid_price > 0 AND ask_price >= bid_price) / sumIf(dwell_s, bid_price > 0 AND ask_price >= bid_price) * 100, 2) AS time_weighted_avg_spread_cents,
round(avgIf(spread, bid_price > 0 AND ask_price >= bid_price) * 100, 2) AS per_update_avg_spread_cents,
round((avgIf(spread, bid_price > 0 AND ask_price >= bid_price) - sumIf(spread * dwell_s, bid_price > 0 AND ask_price >= bid_price) / sumIf(dwell_s, bid_price > 0 AND ask_price >= bid_price)) * 100, 2) AS per_update_premium_cents,
countIf(bid_price > 0 AND ask_price > 0 AND ask_price < bid_price) AS crossed_updates,
countIf(bid_price <= 0 OR ask_price <= 0) AS zero_bid_or_ask_updates
FROM orderedהציטוט של SPY השתנה 3.98 מיליון פעמים בשעות הרגילות בלבד. השנייה העמוסה ביותר שלו — 10:15:43 שעון החוף המזרחי, בתוך הדקה 10:15 שסומנה למעלה — נשאה 1461 עדכונים. הפער הקטן ביותר בין עדכונים עוקבים היה 1375 ננו-שניות, החציון 245.6 מיקרו-שניות, ו-75138 זוגות עוקבים נשאו חותמת ננו-שנייה זהה — אפילו רזולוציה של ננו-שנייה אינה יכולה לסדר במלואו את סרט הנתונים המודרני.
הננו-שניות האלה מרוויחות את מקומן במדידת מרווח הקנייה-מכירה. כשסופרים כל עדכון באופן שווה, המרווח הממוצע של SPY היה 2.72 סנט; כשמשקללים כל ציטוט לפי משך הזמן שעמד, 2.34 סנט. הנתון לפי עדכון נקרא 0.38 סנט רחב יותר באופן מכני: עדכונים מתקבצים דווקא ברגעים שבהם המרווח רחב ונע, בעוד שהוראה נחה חיה בזמן שעון. בכל פעם שאתה רואה סטטיסטיקת מרווח, שאל איזה שעון מדד אותה. המפקד גלוי, לא מוסתר: 1544 עדכונים בשעות הרגילות היו חצויים לרגע (מחיר מכירה מתחת למחיר קנייה, שזירה של ציטוטים מזירות שונות) ו-0 נשאו הצעת קנייה או מכירה אפסית; סטטיסטיקות המרווח מוציאות את שניהם מהחישוב וסופרות את מה שהן מוציאות.
המרווח הוא שעון
חלוקת המרווח המצוטט של SPY לחצאי שעה הופכת את המיקרו-מבנה לעקומה שכל סוחר יכול להשתמש בה:
ה-SQL המדויק מאחורי כל מספר
SELECT
formatDateTime(toTimeZone(toStartOfInterval(sip_timestamp, INTERVAL 30 MINUTE), 'America/New_York'), '%H:%i') AS et_time,
round(quantileExactIf(0.5)(toFloat64(ask_price - bid_price), bid_price > 0 AND ask_price >= bid_price) * 100, 1) AS median_spread_cents,
count() AS quote_updates
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'SPY' AND sip_timestamp >= '2026-06-29 08:00:00' AND sip_timestamp < '2026-06-30 00:00:00'
GROUP BY et_time
ORDER BY et_timeחציון של 8 סנט בדלי טרום-המסחר של 04:00 שעון ET, 3 סנט בדלי הפתיחה של 09:30, ו-2 סנט עד 14:00 — מסחר באותה מניה בפתיחת טרום-המסחר עולה בערך פי ארבעה מהמרווח של הוראה בשעות הצהריים המוקדמות. המרווח אינו קבוע; הוא לוח זמנים.
מוצג פורנזי: הקובץ שעצר ב־S
כל קובץ יומי של ספק עובר בדיקת שלמות לפני שאנחנו מפרסמים ממנו מספר: ספירת הטיקרים, בדיקת הטווח האלפביתי, השוואת שכנים. קובץ הנפח הקצר מחוץ לבורסה של FINRA מ־29 ביוני הוא המוצג שמסביר מדוע:
ה-SQL המדויק מאחורי כל מספר
SELECT
date,
uniqExact(ticker) AS tickers,
min(ticker) AS first_ticker,
max(ticker) AS last_ticker,
countIf(ticker = 'TSLA') AS tsla_rows,
round(100 * sum(short_volume) / sum(total_volume), 2) AS short_pct_of_reported
FROM global_markets.stocks_short_volume
WHERE date BETWEEN '2026-06-26' AND '2026-06-30'
GROUP BY date
ORDER BY dateהקובץ מ־26 ביוני מכסה 15052 טיקרים, A עד ZYME. הקובץ מ־29 ביוני מכסה 5489, A עד SSUS — הוא פשוט נעצר באמצע שמות ה־S. כל טיקר בסדר אלפביתי אחרי נקודה זו — כולל TSLA, עם 0 שורות ב־29 ביוני לעומת 1 ב־26 ביוני — חסר; עד 30 ביוני הקובץ חוזר ל־15362 טיקרים. בדיקת שלמות אינה דבר מתוחכם יותר מקבלה זו של שורה אחת ליום — ההבדל בין פרסום נתון סטטיסטי לבין פרסום ממצא חלקי.
עם גילוי נאות זה בגוף הטקסט — ורק איתו — הנה היחס: נפח שורט מסומן מהווה 45.85% מהנפח המדווח מחוץ לבורסה ב־29 ביוני, לצד 46.89% ב־26 ביוני ו־48.82% ב־30 ביוני. הנתון מ־29 ביוני מכסה רק את החלק מ־A עד S, לכן יש להתייחס אליו כקריאה חלקית. שיעור שורט של קרוב לחצי הוא הרמה השגרתית שכל ישיבה סמוכה מראה — ונפח שורט יומי אינו יתרת שורט.
הערות על הנתונים
הערות מלאות על הנתונים
- ההאטה בציטוטים בין 5 ל-6 בערב. זרם הציטוטים של SPY כמעט נעצר בחצי השעה 17:00 לפי שעון החוף המזרחי (233 עדכונים) ומתאושש עד 18:00 (40608) — דפוס של פיד/סשן חוצה-טיקר, לא נתונים חסרים.
- מניות חלקיות נמצאות בכל מקום. 4.73% מהעסקאות נושאות גדלים לא שלמים; יש לסכם נפח כשברים עשרוניים.
- מילון הקודים עושה שימוש חוזר במזהים בין סוגים. מזהה 15 הוא גם תנאי מכירה (שער סגירה רשמי של מרכז השוק) וגם תנאי ציטוט (סגור); כל שאילתת מילון כאן מסננת asset_class = 'stocks' AND type = 'sale_condition'. חיפוש ישיר לפי מזהה מתייג קודים באופן שגוי.
- החרגות איכות ציטוט נספרות בתוך השורה. ספירות הציטוטים המוצלבים וחסרי הביקוש או ההיצע נמצאות בלוח המיקרוסקופ של SPY למעלה; אף נתון מרווח לא מסתיר את ההשמטות שלו.
- סריקות טייפ מלא הן לוחות אצווה בלבד. הבלוקים כלל-השוקיים כאן נמדדו עד לכ-30 שניות כל אחד במטמון קר (בלוק שפג תוקפו מנוסה פעם נוספת; המעבר המחומם מנקה את התקרה); הם רצים פעם אחת בזמן הכתיבה דרך נתיב הקריאה המוגבל, לעולם לא בשידור חי עבור הקוראים, והתוצאות השמורות הן הרשומה.
מתודולוגיה
- חותמות הזמן נשמרות ב-UTC ומסוננות בגבולות UTC גולמיים (שעות רגילות ב-29 ביוני הן 13:30 עד 20:00 UTC);
toTimeZoneמופיעה רק ברשימות SELECT. - סוג הסשן מאומת מול לוח החגים וחלון 390 הברים הרגיל שנצפה — לעולם אינו מונח מראש.
- "נפח שנספר על ידי ה-SIP (תואם)" הוא הנפח שכללי התנאים של ה-SIP עצמו מונים לסך המאוחד; קבוצת ההחרגה נגזרת מהמילון, תחומה בסכום ביקורת, ולעולם אינה מקודדת בקשיחות.
- סטטיסטיקות מרווח לפי עדכון מקנות משקל שווה לכל עדכון NBBO; סטטיסטיקות משוקללות זמן מקנות משקל לכל ציטוט לפי משך הזמן שעמד. שתיהן מפרטות את ההחרגות שלהן.
- עמודות מחיר/גודל עשרוניות מסוכמות באופן טבעי ומומרות למספרי נקודה צפה של 64 סיביות לפני כל פעולת יחס או מכפלת מחיר בגודל.
- טבלאות טיק שומרות היסטוריה מלאה ללא תפוגה מתגלגלת; תוצאות מאוחסנות ומתועדות גרסא אלו הן הרשומה הקבועה בכל מקרה. מצב המחסן נכון ל-3 ביולי 2026.
כל לוח למעלה הוא אובייקט מאוחסן אחד — תרשים, טבלה ו-SQL יחד. פתח כל אחד מהם, העתק את השאילתה, והמשך הלאה במסוף Strasmore.