GaiaExGaiaEx
API

ادارہ جاتی FIX API (4.2 / 4.4 / 5.0 / 5.2)

ادارہ جاتی FIX 4.2، 4.4، 5.0، اور 5.2 کنیکٹیویٹی: آرڈر کا اندراج (:9878)، ریئل ٹائم ڈراپ کاپی (797=Y / 9406=Y)، مارکیٹ ڈیٹا (:9879)، اور QuickFIX XML اسکیمہ۔

AI ایجنٹ کے لیے تیارClaude Code، OpenAI Codex اور Antigravity (`agy`) کو سرکاری GaiaEx مہارتوں سے لیس کریں
CLAUDE CODESKILL.md
Claude SKILL.md

HMAC-SHA256 دستخط، /fapi/v1 اور /fapi/v2 اسکیموں، اور خفیہ ڈیٹا چھپانے کی حدود کے ساتھ فوری قابل استعمال Claude Code مہارت۔

خام ↗
OPENAI CODEXAGENTS.md
Codex AGENTS.md

OpenAI Codex CLI کے لیے فوری قابل استعمال ریپوزٹری AGENTS.md — ٹک سائز کے اصول، ریٹ لمٹ بجٹ، اور سیلف کسٹڈی حدود۔

خام ↗
ANTIGRAVITYAGY.md
Antigravity AGY.md

تصدیق شدہ غیر مطابقت پذیر (async) Python WebSocket + REST ایگزیکیوشن ٹیمپلیٹس کے ساتھ Google Antigravity (agy) اور Gemini ایجنٹ کی تفصیلات۔

خام ↗
UNIVERSAL LLMllms.txt
/llms.txt Index

تمام GaiaEx دستاویزاتی صفحات، OpenAPI 3.0 اسکیمہ، اور Postman مجموعہ کا سنگل-URL مشین ریڈ ایبل انڈیکس۔

خام ↗

1. آرکیٹیکچر اور ملٹی ورژن کا جائزہ

GaiaEx کا نیٹیو C++26 ادارہ جاتی FIX گیٹ وے مستقل TCP/TLS سیشنز پر ڈیٹرمنسٹک، انتہائی کم تاخیر والا Order Entry، ریئل ٹائم Drop Copy، پوزیشن اور آرڈر انکوائری، اور L1/L2 مارکیٹ ڈیٹا سٹریمنگ فراہم کرتا ہے۔

QuickFIX / OnixS XML سکیما ڈاؤن لوڈ کریں: /fix-dictionary.xml — QuickFIX (C++/Python/Go)، QuickFIX/J، OnixS، OneZero، اور ادارہ جاتی OMS پلیٹ فارمز کے ساتھ مطابقت رکھتا ہے۔ مستقبل کی مطابقت کے لیے اپنے کلائنٹ انجن کو ValidateUserDefinedFields=N اور ValidateFieldsOutOfOrder=N کے ساتھ کنفیگر کریں۔

گیٹ وے سیشن کی قسمپورٹمعاونت یافتہ ورژنزصلاحیتیںرسائی کی پالیسی
Order Management (OE)9878FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2Order entry (35=D), Cancel (35=F), Amend (35=G), Mass Cancel (35=q), Order Status (35=H), Positions (35=AN), Rate Limits (35=XLQ), Instruments (35=x)Read + Trade API Key
Drop Copy (DC)9878FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2تمام FIX اور REST/HTTP آرڈرز پر 797=Y اور 9406=Y کے ساتھ ٹیگ شدہ ریئل ٹائم یکجا شدہ ExecutionReport (35=8) اسٹریمRead-Only لاگو ہے (35=j آرڈرز مسترد کرتا ہے)
Market Data (MD)9879FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2ریئل ٹائم L1/L2 Snapshot (35=W), IncrementalRefresh (35=X), اور MarketDataRequestReject (35=Y)Read-Only لاگو ہے (35=j آرڈرز مسترد کرتا ہے)

ورژن نیگوشیئشن اور وائر رولز

FIX ورژنBeginString (8)لاگ آن ٹیگ (35=A)ایپ ہیڈر ٹیگٹریڈ ExecType (150)ExecTransType (20) قاعدہ
FIX 4.28=FIX.4.2کوئی نہیںکوئی نہیں150=1 (جزوی), 150=2 (Fill)لازمی (20=0 نیا, 20=3 اسٹیٹس)
FIX 4.48=FIX.4.4کوئی نہیںکوئی نہیں150=F (Trade) بمع 39=1/2ممنوع (35=3, 371=20, 373=2 کے ذریعے مسترد)
FIX 5.08=FIXT.1.11137=71128=7150=F (Trade) بمع 39=1/2ممنوع (35=3, 371=20, 373=2 کے ذریعے مسترد)
FIX 5.2 (5.0 SP2)8=FIXT.1.11137=91128=9150=F (Trade) بمع 39=1/2ممنوع (35=3, 371=20, 373=2 کے ذریعے مسترد)

2. سیشن مینجمنٹ اور HMAC-SHA256 لاگ آن (35=A)

ہر FIX سیشن کا آغاز ایک Logon (35=A) فریم سے ہوتا ہے جس کی تصدیق آپ کی GaiaEx API Key (Tag 553)، API Secret (Tag 554)، اور RawData (Tag 96) میں ایک لوئرکیس ہیکس HMAC-SHA256 دستخط کے ذریعے کی جاتی ہے۔

import hmac, hashlib

def sign_fix_logon(api_secret: str, sending_time: str, seq_num: int, sender_comp_id: str, target_comp_id: str) -> str:
    # Canonical prehash string: SendingTime(52) | MsgType(35) | MsgSeqNum(34) | SenderCompID(49) | TargetCompID(56)
    payload = f"{sending_time}|A|{seq_num}|{sender_comp_id}|{target_comp_id}"
    return hmac.new(api_secret.encode("utf-8"), payload.encode("utf-8"), hashlib.sha256).hexdigest()
ٹیگفیلڈ کا نامضروریتفصیل
98EncryptMethodY0 = کوئی نہیں / TLS ٹرانسپورٹ انکرپشن
108HeartBtIntYہارٹ بیٹ کا وقفہ سیکنڈوں میں (تجویز کردہ: 30)
141ResetSeqNumFlagNY = سیکوئنس نمبرز کو دوبارہ 1 پر سیٹ کریں؛ N = انٹرا ڈے سیکوئنس کی حالت بحال کریں
553UsernameYGaiaEx API Key
554PasswordYGaiaEx API Secret
96RawDataY52|A|34|49|56 پر 64-حروف پر مشتمل ہیکس HMAC-SHA256 دستخط
797 / 9406CopyMsgIndicator / DropCopyFlagNصرف پڑھنے کے لیے (read-only) Drop Copy سیشن رجسٹر کرنے کے لیے 797=Y، 9406=Y، یا 50=DROPCOPY سیٹ کریں
1409SessionStatusOut35=A / 35=5 میں واپس کیا گیا: 0=فعال، 4=لاگ آؤٹ مکمل، 5=غلط توثیق، 6=سیکوئنس بہت کم ہے، 101=100M سیکوئنس کی حد

گیپ ریکوری (35=2 اور 35=4) اور منقطع ہونے پر منسوخی (CoD)

  • ان باؤنڈ گیپ کا پتہ لگانا: اگر آنے والے میسج میں MsgSeqNum (34) > ExpectedSeqNum ہو، تو گیٹ وے فوری طور پر ResendRequest (35=2, 7=ExpectedSeqNum, 16=0) جاری کرتا ہے۔ اگر PossDupFlag (43=Y) کے بغیر MsgSeqNum (34) < ExpectedSeqNum ہو، تو گیٹ وے Logout (35=5, 1409=6) جاری کرتا ہے اور ساکٹ بند کر دیتا ہے۔
  • آؤٹ باؤنڈ ری پلے: جب کلائنٹ ResendRequest (35=2) بھیجتا ہے، تو گیٹ وے تمام ایپلیکیشن پیغامات (بشمول Drop Copy 35=8 رپورٹس) کو 43=Y اور 122=OrigSendingTime کے ساتھ دوبارہ چلاتا ہے، اور ایڈمنسٹریٹو فریمز کو SequenceReset-GapFill (35=4, 123=Y) میں یکجا کر دیتا ہے۔
  • منقطع ہونے پر خودکار منسوخی (CoD): جب کوئی Order Management سیشن منقطع ہوتا ہے، تو اس سیشن پر لگائے گئے تمام اوپن ریسٹنگ آرڈرز (OrdStatus 39=0) خود بخود منسوخ (150=4, 39=4, 103=3020) ہو جاتے ہیں اور کسی بھی فعال Drop Copy سیشن پر ریئل ٹائم میں براڈکاسٹ کر دیے جاتے ہیں۔

3. آرڈر انٹری، ترمیم، منسوخی اور انکوائری (35=D, G, F, q, H, AN, XLQ)

NewOrderSingle (35=D)

ٹیگفیلڈ کا نامضروریمعاونت یافتہ اقدار اور نوٹس
11ClOrdIDYکلائنٹ کی طرف سے تفویض کردہ منفرد آرڈر شناخت کنندہ (زیادہ سے زیادہ 31 حروف)
1AccountNسیلف کسٹڈی والٹ ایڈریس (0x...) یا ذیلی اکاؤنٹ شناخت کنندہ
50SenderSubIDNٹریڈر یا اسٹریٹجی ID؛ 35=8 پر TargetSubID (57) میں واپس بھیجی جاتی ہے
55SymbolYUSDC پرپس (BTCUSDC, ETHUSDC, SOLUSDC), USDT پرپس (BTCUSDT, ETHUSDT), RWA پرپس (xyz:GOLD / GOLDUSDC, xyz:NVDA, xyz:TSLA)
54SideY1 = خریدیں (Buy), 2 = فروخت کریں (Sell)
38OrderQtyYبنیادی اثاثے میں آرڈر کی مقدار (4 اعشاریائی فریکشنل درستگی کو سپورٹ کرتا ہے، جیسے 0.0050)
40OrdTypeY1 = Market, 2 = Limit, 4 = Stop Limit (99=StopPx درکار ہے), p = Post-Only (یا 18=6)
44PriceCلمٹ کی قیمت (40=2, 40=4, 40=p کے لیے درکار ہے)
59TimeInForceN1 = GTC (ڈیفالٹ), 3 = IOC, 4 = FOK, 5 = GTX
544CashMarginN1 = کیش (ڈیفالٹ), 2 = مارجن اوپن, 3 = مارجن کلوز

ترمیم (35=G)، منسوخی (35=F)، بڑے پیمانے پر منسوخی (35=q)، اسٹیٹس (35=H)، پوزیشنز (35=AN) اور حدود (35=XLQ)

MsgTypeمیسج کا ناماہم درخواست کے ٹیگزگیٹ وے کا جواب
35=GOrderCancelReplaceRequest11=ClOrdID, 41=OrigClOrdID, 55=Symbol, 54=Side, 38=OrderQty, 44=Price150=5, 39=5 (تبدیل شدہ) یا 35=9 (434=2) کے ساتھ 35=8
35=FOrderCancelRequest11=ClOrdID, 41=OrigClOrdID, 55=Symbol, 54=Sideدو مرحلہ 35=8: 150=6, 39=6 (زیر التواء منسوخی) → 150=4, 39=4 (منسوخ شدہ)، یا 35=9 (434=1)
35=qOrderMassCancelRequest11=ClOrdID, 530=7 (تمام آرڈرز منسوخ کریں)35=r (1369=MassActionReportID, 531=7) + فی منسوخ شدہ آرڈر ایک 35=8 (150=4, 39=4)
35=HOrderStatusRequest11=ClOrdID (یا 37=OrderID), 790=OrdStatusReqID150=I (آرڈر اسٹیٹس) یا 150=8, 103=5 (نامعلوم آرڈر) کے ساتھ 35=8
35=ANRequestForPositions710=PosReqID, 724=0 (پوزیشنز), 1=Account, 55=Symbol721=PosMaintRptID, 728=0, 704=LongQty, 705=ShortQty, 730=SettlePrice کے ساتھ PositionReport (35=AP)
35=XLQLimitQuery25003=ReqID25005=ORDERS (500/s) اور 25005=CONNECTIONS (20/اکاؤنٹ) کے ساتھ LimitResponse (35=XLR)

4. ریئل ٹائم ڈراپ کاپی اور مطابقت پذیری (797=Y / 9406=Y)

Drop Copy پرائم بروکرز، رسک انجنوں، اور بیک آفس مفاہمتی نظاموں کو FIX Order Entry سیشنز اور REST/HTTP API آرڈرز دونوں کے تمام ExecutionReport (35=8) ایونٹس کی ایک ریئل ٹائم، صرف پڑھنے کے لیے (read-only) اسٹریم فراہم کرتا ہے۔

  • عالمگیر سبسکرپشن فلیگز: پورٹ 9878 سے جڑیں اور 797=Y (CopyMsgIndicator)، 9406=Y (DropCopyFlag)، یا 50=DROPCOPY (SenderSubID) کے ساتھ Logon (35=A) بھیجیں۔
  • ڈوئل ٹیگ آؤٹ باؤنڈ اسٹیمپنگ: ہر Drop Copy 35=8 فریم پر 57=DROPCOPY، 797=Y، اور 9406=Y کے ساتھ مکمل فیس/ریبیٹ بریک ڈاؤن (381=GrossTradeAmt، 1057=AggressorIndicator، 136=1|137=MiscFeeAmt|138=MiscFeeCurr|139=4، 20000=TradeFeeRebateAmt) درج ہوتا ہے۔
  • سخت Read-Only تحفظ: Drop Copy سیشن پر 35=D، 35=F، 35=G، یا 35=q جمع کرانے کی کوئی بھی کوشش فوری طور پر BusinessMessageReject (35=j, 380=4) کے ذریعے مسترد کر دی جاتی ہے۔
  • سیکوئنس گیپ ریکوری: آؤٹ باؤنڈ Drop Copy رپورٹس سیشن کے سیکوئنس اسٹور میں محفوظ رہتی ہیں اور انہیں PossDupFlag (43=Y) کے ساتھ ResendRequest (35=2) کے ذریعے دوبارہ چلایا جا سکتا ہے۔

5. مارکیٹ ڈیٹا (35=V, W, X, Y) اور حوالہ جاتی ڈیٹا (35=x, y, h)

مخصوص مارکیٹ ڈیٹا سٹریمنگ کے لیے پورٹ 9879 سے جڑیں یا SecurityListRequest (35=x) کے ذریعے انسٹرومنٹ کی تفصیلات دریافت کریں۔

  • MarketDataRequest (35=V): 262=MDReqID، 263=1 (سنیپ شاٹ + اپ ڈیٹس) یا 0 (سنیپ شاٹ)، 264=1 (ٹاپ آف بک) یا 20 (مکمل ڈیپتھ)، اور 55=Symbol بھیجیں۔ یہ MarketDataSnapshotFullRefresh (35=W) کے بعد MarketDataIncrementalRefresh (35=X) واپس کرتا ہے۔ نامعلوم علامات MarketDataRequestReject (35=Y, 281=0) واپس کرتی ہیں۔
  • SecurityListRequest (35=x): 320=SecurityReqID اور 559=0 (55 میں سنگل علامت) یا 559=4 (تمام انسٹرومنٹس) بھیجیں۔ ٹک سائز (969=MinPriceIncrement)، کم از کم/زیادہ سے زیادہ آرڈر کی مقدار (8000/8001)، اور اعشاریائی درستگی (8002/8003) کے ساتھ SecurityList (35=y) واپس کرتا ہے۔
  • TradingSessionStatus (35=h): 340=2 (کھلا ہے 24x7x365) یا 340=1 (معطل) واپس کرتا ہے۔

QuickFIX کلائنٹ کنفیگریشن ٹیمپلیٹ (gaiaex_fix.cfg)

[DEFAULT]
ConnectionType=initiator
ReconnectInterval=5
FileStorePath=./store
FileLogPath=./log
StartTime=00:00:00
EndTime=00:00:00
UseDataDictionary=Y
DataDictionary=./fix-dictionary.xml
ValidateUserDefinedFields=N
ValidateFieldsOutOfOrder=N
HeartBtInt=30

[SESSION]
BeginString=FIX.4.4
SenderCompID=INST_CLIENT_OE
TargetCompID=GAIAEX_PROD
SocketConnectHost=10.10.0.51
SocketConnectPort=9878
ResetOnLogon=N

[SESSION]
BeginString=FIX.4.4
SenderCompID=INST_CLIENT_DC
TargetCompID=GAIAEX_PROD
SenderSubID=DROPCOPY
SocketConnectHost=10.10.0.51
SocketConnectPort=9878
ResetOnLogon=N