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

सत्यापित अतुल्यकालिक 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 सेशन्स पर डिटर्मिनिस्टिक, अल्ट्रा-लो-लेटेंसी ऑर्डर एंट्री, रियल-टाइम ड्रॉप कॉपी, पोज़ीशन और ऑर्डर इन्क्वायरी, और L1/L2 मार्केट डेटा स्ट्रीमिंग प्रदान करता है।

QuickFIX / OnixS XML स्कीमा डाउनलोड करें: /fix-dictionary.xml — QuickFIX (C++/Python/Go), QuickFIX/J, OnixS, OneZero, और इंस्टीट्यूशनल OMS प्लेटफॉर्म्स के साथ संगत। भविष्य की संगतता (फॉरवर्ड कम्पैटिबिलिटी) के लिए अपने क्लाइंट इंजन को ValidateUserDefinedFields=N और ValidateFieldsOutOfOrder=N के साथ कॉन्फ़िगर करें।

गेटवे सेशन का प्रकारपोर्टसमर्थित वर्जन्सक्षमताएंएक्सेस नीति
ऑर्डर मैनेजमेंट (OE)9878FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2ऑर्डर एंट्री (35=D), कैंसल (35=F), संशोधन (35=G), मास कैंसल (35=q), ऑर्डर स्टेटस (35=H), पोज़ीशन्स (35=AN), रेट लिमिट्स (35=XLQ), इंस्ट्रूमेंट्स (35=x)Read + Trade API Key
ड्रॉप कॉपी (DC)9878FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2सभी FIX और REST/HTTP ऑर्डर्स पर 797=Y और 9406=Y के साथ टैग की गई रियल-टाइम समेकित ExecutionReport (35=8) स्ट्रीमरीड-ओनली अनिवार्य (35=j ऑर्डर्स को अस्वीकार करता है)
मार्केट डेटा (MD)9879FIX.4.2, FIX.4.4, FIX.5.0, FIX.5.2रियल-टाइम L1/L2 Snapshot (35=W), IncrementalRefresh (35=X), और MarketDataRequestReject (35=Y)रीड-ओनली अनिवार्य (35=j ऑर्डर्स को अस्वीकार करता है)

वर्जन नेगोशिएशन और वायर नियम

FIX वर्जनBeginString (8)लॉगऑन टैग (35=A)ऐप हेडर टैगट्रेड ExecType (150)ExecTransType (20) नियम
FIX 4.28=FIX.4.2कोई नहींकोई नहीं150=1 (आंशिक), 150=2 (पूर्ण भरण)अनिवार्य (20=0 नया, 20=3 स्टेटस)
FIX 4.48=FIX.4.4कोई नहींकोई नहीं150=F (ट्रेड) साथ में 39=1/2प्रतिबंधित (35=3, 371=20, 373=2 के माध्यम से अस्वीकृत)
FIX 5.08=FIXT.1.11137=71128=7150=F (ट्रेड) साथ में 39=1/2प्रतिबंधित (35=3, 371=20, 373=2 के माध्यम से अस्वीकृत)
FIX 5.2 (5.0 SP2)8=FIXT.1.11137=91128=9150=F (ट्रेड) साथ में 39=1/2प्रतिबंधित (35=3, 371=20, 373=2 के माध्यम से अस्वीकृत)

2. सेशन मैनेजमेंट और HMAC-SHA256 लॉगऑन (35=A)

प्रत्येक FIX सेशन आपकी GaiaEx API Key (Tag 553), API Secret (Tag 554), और RawData (Tag 96) में लोअरकेस हेक्स HMAC-SHA256 सिग्नेचर के माध्यम से प्रमाणित Logon (35=A) फ्रेम के साथ शुरू होता है।

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रीड-ओनली ड्रॉप कॉपी सेशन पंजीकृत करने के लिए 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) भेजता है, तो गेटवे सभी एप्लिकेशन संदेशों को (ड्रॉप कॉपी 35=8 रिपोर्ट्स सहित) 43=Y और 122=OrigSendingTime के साथ रीप्ले करता है, और प्रशासनिक फ्रेम्स को SequenceReset-GapFill (35=4, 123=Y) में संयोजित करता है।
  • स्वचालित कैंसिल-ऑन-डिस्कनेक्ट (CoD): जब कोई ऑर्डर मैनेजमेंट सेशन डिस्कनेक्ट होता है, तो उस सेशन पर रखे गए सभी खुले रेस्टिंग ऑर्डर्स (OrdStatus 39=0) स्वचालित रूप से रद्द कर दिए जाते हैं (150=4, 39=4, 103=3020) और किसी भी सक्रिय ड्रॉप कॉपी सेशन में रियल टाइम में प्रसारित किए जाते हैं।

3. ऑर्डर प्रविष्टि, संशोधन, रद्दीकरण और पूछताछ (35=D, G, F, q, H, AN, XLQ)

NewOrderSingle (35=D)

टैगफ़ील्ड नामआवश्यकसमर्थित मान और नोट्स
11ClOrdIDYक्लाइंट द्वारा असाइन किया गया विशिष्ट ऑर्डर पहचानकर्ता (31 वर्णों तक)
1AccountNसेल्फ-कस्टडी वॉल्ट एड्रेस (0x...) या सब-अकाउंट पहचानकर्ता
50SenderSubIDNट्रेडर या रणनीति आईडी; 35=8 पर TargetSubID (57) में वापस प्रतिध्वनित (echoed)
55SymbolYUSDC पर्प्स (BTCUSDC, ETHUSDC, SOLUSDC), USDT पर्प्स (BTCUSDT, ETHUSDT), RWA पर्प्स (xyz:GOLD / GOLDUSDC, xyz:NVDA, xyz:TSLA)
54SideY1 = खरीदें, 2 = बेचें
38OrderQtyYबेस एसेट में ऑर्डर की मात्रा (4-दशमलव भिन्नात्मक परिशुद्धता का समर्थन करता है, जैसे 0.0050)
40OrdTypeY1 = मार्केट, 2 = लिमिट, 4 = स्टॉप लिमिट (99=StopPx की आवश्यकता है), p = पोस्ट-ओनली (या 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=8 या 35=9 (434=2)
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 (ऑर्डर स्थिति) के साथ 35=8 या 150=8, 103=5 (अज्ञात ऑर्डर)
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/सेकंड) और 25005=CONNECTIONS (20/अकाउंट) के साथ LimitResponse (35=XLR)

4. रियल-टाइम ड्रॉप कॉपी और समाधान (797=Y / 9406=Y)

ड्रॉप कॉपी प्राइम ब्रोकर्स, रिस्क इंजनों और बैक-ऑफिस समाधान (रिकॉन्सिलिएशन) प्रणालियों को FIX ऑर्डर एंट्री सेशन्स और REST/HTTP API ऑर्डर्स दोनों में सभी ExecutionReport (35=8) इवेंट्स की रियल-टाइम, रीड-ओनली स्ट्रीम प्रदान करता है।

  • सार्वभौमिक सदस्यता फ़्लैग: पोर्ट 9878 से कनेक्ट करें और 797=Y (CopyMsgIndicator), 9406=Y (DropCopyFlag), या 50=DROPCOPY (SenderSubID) के साथ Logon (35=A) भेजें।
  • डुअल-टैग आउटबाउंड स्टैम्पिंग: प्रत्येक ड्रॉप कॉपी 35=8 फ्रेम में 57=DROPCOPY, 797=Y, और 9406=Y, साथ ही पूर्ण शुल्क/छूट का विवरण (381=GrossTradeAmt, 1057=AggressorIndicator, 136=1|137=MiscFeeAmt|138=MiscFeeCurr|139=4, 20000=TradeFeeRebateAmt) शामिल होता है।
  • सख्त रीड-ओनली सुरक्षा: ड्रॉप कॉपी सेशन पर 35=D, 35=F, 35=G, या 35=q सबमिट करने का कोई भी प्रयास BusinessMessageReject (35=j, 380=4) के माध्यम से तुरंत अस्वीकार कर दिया जाता है।
  • सीक्वेंस गैप रिकवरी: आउटबाउंड ड्रॉप कॉपी रिपोर्ट्स सेशन सीक्वेंस स्टोर में सुरक्षित रहती हैं और इन्हें 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