Level 1، Level 2 اور Level 3 Market Data کیا ہے؟
Level 1 میں top of book، Level 2 میں price depth اور Level 3 میں ہر order دکھتا ہے۔ حقیقی quote panels سے جانیں retail feeds کیا چھوڑتی ہیں۔
Level 1 بمقابلہ Level 2 market data کا تعلق اس بات سے ہے کہ آپ کو order book کا کتنا حصہ دکھائی دیتا ہے۔ Level 1 book کی اوپری سطح ہے: best bid، best offer، ہر ایک پر quoted size، اور last trade۔ Level 2 اس اوپری سطح کے پیچھے موجود depth دکھاتا ہے، یعنی ہر displayed price level اور اس پر موجود total size۔ Level 3 ہر individual order کو الگ دکھاتا ہے، اور ہر order کا اپنا identifier ہوتا ہے۔ ہر tier اپنے سے نچلے tier کی تمام معلومات پر مشتمل ہوتا ہے، اور اس میں مزید معلومات شامل ہوتی ہیں۔
Level 1 market data کیا ہے؟
Level 1، جسے top of book بھی کہا جاتا ہے، ایک سوال کا جواب دیتا ہے: اس وقت دستیاب بہترین price کیا ہے، اور اس price پر کتنا size quoted ہے؟ US equities میں اس لائن کا consolidated version national best bid and offer ہے، جس کی مکمل وضاحت ہماری NBBO کیا ہے، اس بارے میں guide میں موجود ہے۔ Level 1 record میں best bid، best offer، دونوں طرف displayed size، اور trade side پر size کے ساتھ last print شامل ہوتا ہے۔ اس میں second-best price کے بارے میں کوئی معلومات نہیں ہوتیں، اور یہ بھی معلوم نہیں ہوتا کہ quoting کون کر رہا ہے۔
اس tier میں دو اعداد زیادہ تر کام کرتے ہیں: cents میں spread، اور یہی spread basis points میں، جہاں ایک basis point، percent کا سوواں حصہ ہوتا ہے۔ ذیل کا panel ایک بڑی market-cap والی stock کے لیے ایک ہی مخصوص session کے دوران دونوں اعداد دکھاتا ہے۔ یہ سلسلہ 4:00 a.m. ET کے premarket open سے شروع ہو کر 8:00 p.m. ET پر after-hours trading کے اختتام تک جاری رہتا ہے۔
ہر عدد کے پیچھے موجود درست SQL
SELECT
formatDateTime(
toStartOfInterval(toTimeZone(sip_timestamp, 'America/New_York'), INTERVAL 30 MINUTE),
'%H:%i'
) AS et_time,
round(avg(toFloat64(ask_price) - toFloat64(bid_price)) * 100, 2) AS spread_cents,
round(avg((toFloat64(ask_price) - toFloat64(bid_price))
/ ((toFloat64(ask_price) + toFloat64(bid_price)) / 2)) * 10000, 2) AS spread_bps
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'AAPL'
AND sip_timestamp >= '2026-06-17 08:00:00'
AND sip_timestamp < '2026-06-18 00:00:00'
AND bid_price > 0
AND ask_price > bid_price
AND (toFloat64(ask_price) - toFloat64(bid_price)) / toFloat64(bid_price) < 0.05
GROUP BY et_time
ORDER BY et_time04:00 ET پر average quoted spread 37.38 cents تھا، یا 12.51 basis points۔ Panel کا آخری bucket، 19:30 ET، اوسطاً 16.85 cents یا 5.67 basis points تھا۔ 32 half-hour buckets پورے دن کا نقشہ پیش کرتے ہیں۔ Chart کا ہر point Level 1 ہے: book کی ایک لائن، جسے بار بار measure کیا گیا ہے۔
Level 2 market data کیا ہے؟
Level 2، جسے market by price یا depth of book بھی کہا جاتا ہے، top line کے نیچے موجود price ladder دکھاتا ہے۔ ہر price پر وہاں موجود total displayed size کو aggregate کیا جاتا ہے: $49.98 پر bid میں 4,000 shares، $49.97 پر 1,200، $49.96 پر 900، اور $49.95 پر 2,500 shares؛ offer side پر اس کی mirror image ہوتی ہے۔ Traders depth سے اسی ساخت کو مراد لیتے ہیں۔
Level 2 جس چیز کو ظاہر نہیں کرتا وہ اس size کی composition ہے۔ $49.98 پر موجود 4,000 shares کسی ایک institutional order کا حصہ ہو سکتے ہیں، یا چالیس retail orders کا۔ دونوں صورتوں میں ladder ایک جیسی دکھائی دے گی۔
Public trade data سے ایک متعلقہ ساخت بھی measure کی جا سکتی ہے: shares نے مختلف price levels پر حقیقتاً کہاں ہاتھ بدلے۔ Quoted ladder resting interest ہوتی ہے۔ ذیل کا panel اسی session کے نصف گھنٹے میں executed volume دکھاتا ہے۔
ہر عدد کے پیچھے موجود درست SQL
SELECT
toString(px) AS price_level,
round(sum(sz) / 1000, 1) AS shares_thousands,
count() AS prints
FROM
(
SELECT
round(toFloat64(price), 2) AS px,
toFloat64(size) AS sz
FROM global_markets.stocks_trades
WHERE ticker = 'KO'
AND sip_timestamp >= '2026-06-17 14:30:00'
AND sip_timestamp < '2026-06-17 15:00:00'
AND price > 0
AND size > 0
)
GROUP BY px
ORDER BY pxاس نصف گھنٹے میں trading 63 الگ price levels پر ہوئی۔ سب سے کم price $79.42 اور سب سے زیادہ $80.04 تھی۔ دونوں extreme levels پر volume کم تھا: نچلی سطح پر 0.1 ہزار shares اور اوپری سطح پر 0.8 ہزار shares۔ زیادہ تر volume ان دونوں کے درمیان print ہوا۔ Level 1 feed اس پورے عمل میں ایک وقت میں صرف ایک price دکھاتا ہے۔ Level 2 feed ladder پہلے سے دکھاتا ہے، یعنی resting orders کی صورت میں، نہ کہ بعد میں ہونے والے prints کی صورت میں۔
Level 3 market data کیا ہے؟
Level 3، یا market by order، مکمل تصویر پیش کرتا ہے: ہر resting order الگ، اپنے identifier، price، size اور اس price پر queue میں اپنی position کے ساتھ۔ Level 3 feed کو price کے حساب سے aggregate کریں تو Level 2 دوبارہ بن جاتا ہے۔ دونوں sides پر best price لے لیں تو Level 1 حاصل ہو جاتا ہے۔
Level 3 دو ایسے سوالوں کا جواب دیتا ہے جن کا جواب aggregated tiers نہیں دیتے۔ کسی price پر order queue میں کہاں موجود ہے، جس سے یہ طے ہوتا ہے کہ اس price پر trading ہونے کے وقت order fill ہوگا یا نہیں۔ اور کسی مخصوص order کے پورے lifecycle میں کیا ہوا، یعنی placement سے cancellation تک۔ Nasdaq TotalView-ITCH جیسے exchange proprietary feeds یہ depth فراہم کرتے ہیں۔ Consolidated tape یہ معلومات نہیں دیتا۔
Retail Level 2 subscription حقیقت میں کیا فراہم کرتی ہے؟
یہاں Level 2 کا label خاصا غیر واضح ہو جاتا ہے۔ Retail platform پر "Level 2" عموماً مکمل national depth of book نہیں ہوتا۔ عام طور پر کسی ایک venue کا book فراہم کیا جاتا ہے، اکثر وہ venue جہاں broker آپ کا order route کرتا ہے، یا پھر merged book دیا جاتا ہے جو ہر side پر پانچ یا دس price levels تک محدود ہوتا ہے۔ Pennies میں quote ہونے والی stock پر ten-level book دس cents کی range دکھاتا ہے، اور active name میں یہ range مسلسل refresh ہوتی رہتی ہے۔
Message volume اس بڑی وجہ کا حصہ ہے جس کے باعث مختلف tiers کی pricing میں اتنا فرق ہوتا ہے۔ ذیل کا panel اسی session کے ایک گھنٹے کے دوران پانچ معروف names کے top-of-book quote records کی تعداد دکھاتا ہے، اور ساتھ ہر ایک کا average spread بھی پیش کرتا ہے۔
ہر عدد کے پیچھے موجود درست SQL
SELECT
ticker AS symbol,
round(avg((toFloat64(ask_price) - toFloat64(bid_price))
/ ((toFloat64(ask_price) + toFloat64(bid_price)) / 2)) * 10000, 2) AS spread_bps,
count() AS quote_update_count
FROM global_markets.cache_stocks_quotes
WHERE ticker IN ('SPY', 'AAPL', 'MSFT', 'NVDA', 'KO')
AND sip_timestamp >= '2026-06-17 14:00:00'
AND sip_timestamp < '2026-06-17 15:00:00'
AND bid_price > 0
AND ask_price > bid_price
AND (toFloat64(ask_price) - toFloat64(bid_price)) / toFloat64(bid_price) < 0.05
GROUP BY symbol
ORDER BY spread_bpsSPY نے پانچوں میں سب سے کم average spread دکھایا، جو 0.32 basis points تھا، جبکہ KO کا average 1.95 تھا۔ یہ update counts صرف book کی اوپری سطح تک محدود ہیں۔ Depth feed ہر price level پر ہونے والی ہر تبدیلی لے کر آتا ہے، جبکہ order-by-order feed ان سب کے پیچھے موجود ہر message بھی فراہم کرتا ہے۔ Options اسی arithmetic کی انتہائی مثال ہیں: options quote feed کتنا بڑا ہے اس کی مقدار بیان کرتی ہے۔
Visible book حقیقی liquidity کو کم کیوں دکھاتا ہے؟
Displayed ladder دستیاب liquidity کی کم از کم سطح دکھاتی ہے، اس کا مکمل پیمانہ نہیں۔ دو بڑی اقسام کی liquidity اس تصویر سے باہر رہتی ہیں۔
Hidden اور reserve orders۔ Iceberg order کا صرف ایک چھوٹا حصہ display ہوتا ہے، جبکہ باقی quantity reserve میں رہتی ہے۔ Visible حصہ fill ہونے پر order اسے دوبارہ refresh کرتا ہے۔ Book میں 200 shares دکھائی دے سکتی ہیں، جبکہ ان کے پیچھے بیس ہزار shares موجود ہوں۔ Iceberg orders کیسے کام کرتے ہیں میں اس mechanism کی وضاحت کی گئی ہے۔
Off-exchange execution۔ US equity volume کا ایک بڑا حصہ lit exchanges سے باہر print ہوتا ہے۔ یہ volume broker internalizers اور alternative trading systems پر execute ہوتا ہے، جو pre-trade quote شائع نہیں کرتے۔ Dark pool trading کی وضاحت بتاتا ہے کہ یہ volume کہاں جاتا ہے۔
Market data feed میں conflation سے کیا مراد ہے؟
Conflated feed ہر update نہیں بھیجتا۔ یہ کسی مقررہ interval پر، مثلاً ہر 250 milliseconds یا ہر second، book کا snapshot لیتا ہے اور اس لمحے کی حالت بھیج دیتا ہے۔ دو snapshots کے درمیان جو کچھ ہوا وہ feed میں نہیں آتا۔ دو مختلف intervals پر data لینے والے subscribers کو دو مختلف books دکھائی دیتی ہیں، اور ہر book صرف اپنی clock کے مطابق درست ہوتی ہے۔
یہ فرق feed پر system بنانے والوں کے لیے سب سے اہم ہے۔ Un-conflated data میں ہر message sequence کے ساتھ آتا ہے۔ Matching-engine simulation یا queue-position model اسی data پر چلتا ہے۔ Conflated feed پر یہ calculations محض approximations رہ جاتی ہیں۔ جو شخص اپنی آنکھوں سے ladder دیکھ رہا ہو، اس کے لیے interval تقریباً غیر اہم ہے۔
ہر عدد کے پیچھے موجود درست SQL
SELECT
et_time,
round(avg(sec_updates), 1) AS avg_updates_per_second,
max(sec_updates) AS peak_updates_in_one_second
FROM
(
SELECT
formatDateTime(toStartOfMinute(toTimeZone(sip_timestamp, 'America/New_York')), '%H:%i') AS et_time,
toDateTime(sip_timestamp) AS et_second,
count() AS sec_updates
FROM global_markets.cache_stocks_quotes
WHERE ticker = 'NVDA'
AND sip_timestamp >= '2026-06-17 14:00:00'
AND sip_timestamp < '2026-06-17 15:00:00'
GROUP BY et_time, et_second
)
GROUP BY et_time
ORDER BY et_timeاس گھنٹے کے پہلے منٹ، 10:00 ET، میں top-of-book records اوسطاً فی second 163.8 کی رفتار سے آئے۔ اس minute کے اندر سب سے مصروف single second میں 371 records آئے۔ ہر second ایک snapshot لینے والا feed اس stream میں سے صرف ایک book state آگے بھیجتا ہے۔ یہ ایک stock کی top of the book ہے۔ Depth اور order-by-order feeds میں records کی تعداد کئی گنا بڑھ جاتی ہے۔
کیا Level 2 data کے لیے ادائیگی کرنا فائدہ مند ہے؟
اس کی value holding period کے ساتھ بدلتی ہے۔ جو trader spread کے اندر orders execute کرتا ہے اور seconds میں entries کا وقت طے کرتا ہے، وہ depth سے ایسی معلومات حاصل کرتا ہے جو top line میں موجود نہیں ہوتیں: size کہاں جمع ہے اور کون سی side کمزور ہو رہی ہے۔ Hidden liquidity کی وجوہات کے باعث یہ reading مکمل طور پر قابلِ اعتماد نہیں ہوتی، لیکن پھر بھی کسی ladder کے نہ ہونے سے بہتر ہے۔
دنوں یا ہفتوں پر مشتمل holding period میں ten-level book کی اضافی معلومات عموماً اس کی cost کے مقابلے میں معمولی ہوتی ہے۔ Level 1 سے نچلا tier بھی یہاں اہم ہے: delayed quotes، جو عموماً پندرہ منٹ پیچھے ہوتی ہیں، زیادہ تر platforms پر مفت دستیاب ہوتی ہیں اور دنوں میں ناپے جانے والے فیصلوں کے لیے کافی ہیں۔ Stock quotes پندرہ منٹ delayed کیوں ہوتی ہیں میں اس convention کی وجہ بیان کی گئی ہے۔ ایک آخری بات delivery کے بارے میں واضح رہنی چاہیے: ایک venue سے آنے والی اور ایسے interval پر conflated ladder، جسے vendor شائع نہیں کرتا، محدود view کا بھی ایک محدود view ہوتی ہے۔
اکثر پوچھے جانے والے سوالات
Level 1 اور Level 2 market data میں کیا فرق ہے؟
Level 1 best bid اور best offer، ہر ایک پر موجود size، اور last trade فراہم کرتا ہے۔ Level 2 اس کے نیچے موجود displayed price levels اور ہر level پر resting total size بھی دکھاتا ہے۔ اس لیے Level 2 میں Level 1 کی تمام معلومات شامل ہوتی ہیں، اور اس کے علاوہ مزید depth بھی ملتی ہے۔
کیا Level 2 market data real time ہوتا ہے؟
یہ subscription پر منحصر ہے۔ Exchange depth feeds real time ہوتی ہیں اور ان کی fee ہوتی ہے، جبکہ بہت سے retail platforms conflated version فراہم کرتے ہیں جو مقررہ interval پر snapshot لیتا ہے۔ Product page میں عموماً یہ واضح نہیں ہوتا۔ Broker کا support desk اس کی تصدیق کر سکتا ہے۔
کیا Level 2 hidden orders دکھاتا ہے؟
نہیں۔ Depth-of-book feed صرف displayed size دکھاتا ہے۔ Iceberg کی reserve quantity اور مکمل طور پر hidden orders ladder میں اس وقت تک نظر نہیں آتے جب تک وہ trades کی صورت میں print نہ ہوں۔
Level 3 market data کس مقصد کے لیے استعمال ہوتا ہے؟
Level 3، یا market by order، ہر individual resting order کو اس کے اپنے identifier، price، size اور queue position کے ساتھ فراہم کرتا ہے۔ یہ بنیادی طور پر ان firms کو فروخت کیا جاتا ہے جو execution اور order-routing models چلاتی ہیں، کیونکہ queue position fill کی economics بدل دیتی ہے۔
کیا trading کے لیے Level 2 data ضروری ہے؟
نہیں۔ کسی بھی retail platform پر orders place اور manage کرنے کے لیے Level 1 quotes اور trade tape کافی ہیں۔ Depth اس وقت مفید ہوتی ہے جب فیصلہ اس بات پر منحصر ہو کہ execution کے لمحے liquidity کتنی ہے، نہ کہ price کہاں close ہوتی ہے۔
یہاں موجود ہر panel اپنے پیچھے موجود SQL کے ساتھ فراہم کیا جاتا ہے۔ آپ panel کھول کر دیکھ سکتے ہیں کہ ہر number کس طرح count کیا گیا۔ یہی سوالات Strasmore terminal پر کسی بھی ticker اور کسی بھی session کے خلاف چلائے جا سکتے ہیں۔