Connect your OMS/EMS to our No Dealing Desk infrastructure over secure FIX 4.4/5.0. This generalized documentation includes non-secret examples, standard flows, and best practices.
Request Access
Get SenderCompID/TargetCompID, test/prod IPs, and TLS certificates via Request FIX API Access.
Configure FIX Initiator
Set up TLS, session times, and heartbeat intervals.
Establish Logon
Send Logon (35=A) with correct sequence numbers and HeartBtInt.
Subscribe to Market Data
Send MarketDataRequest (35=V) for snapshot plus incremental refresh.
Test Trading
Send test order (35=D) on UAT, receive ExecutionReports (35=8).
Validate Recovery
Test resend/sequence recovery and graceful Logout (35=5).
fix-uat.ndd.example.com
00000
fix.ndd.example.com
00000
Custom Tags: Reserved range 8000-8100 for NDD-specific fields.
Deliverables: Sanitized data dictionary (.xml) and message catalog PDF available on request.
8
- BeginString9
- BodyLength35=A
- MsgType34
- MsgSeqNum49
- SenderCompID56
- TargetCompID52
- SendingTime (UTC)98=0
- EncryptMethod108=30
- HeartBtInt141=Y
- ResetSeqNumFlag (when instructed)553
- Username (if enabled)554
- Password (if enabled)8=FIX.4.4|9=000|35=A|34=1|49=YOUR_SENDER|56=NDD_TARGET|52=20250101-12:00:00.000|108=30|553=USERNAME|554=PASSWORD|10=000
Note: Pipes '|' represent SOH (Start of Header) characters
Respond immediately to Test Request (1) with Heartbeat (0) including TestReqID (112).
On sequence gap, issue Resend Request (2) with BeginSeqNo/EndSeqNo. We may respond with Sequence Reset (4) GapFillFlag=Y.
Send reason in Text (58) field where possible. Complete bi-directional logout process.
Session Schedule: 24/5 operation. Daily maintenance windows announced via email/portal. Friday close per market hours.
35=V
- MsgType262
- MDReqID263
- SubscriptionRequestType (0=Snapshot, 1=Snapshot+Updates, 2=Disable)264
- MarketDepth (1=Top, N=Levels)265
- MDUpdateType (0=Full, 1=Incremental)267
- MDEntryTypes (0=Bid, 1=Offer, 2=Trade)146
- NoRelatedSym55
- Symbol (EURUSD, XAUUSD, etc.)8=FIX.4.4|9=000|35=V|34=2|49=YOUR_SENDER|56=NDD_MD|52=20250101-12:00:01.000|262=REQ-1|263=1|264=1|265=1|267=2|269=0|269=1|146=1|55=EURUSD|10=000
Provides complete market data snapshot including current bid/offer prices and sizes.
Incremental updates with MDEntryID (278), MDUpdateAction (279), MDEntryPx (270), MDEntrySize (271).
35=D
- MsgType11
- ClOrdID55
- Symbol54
- Side (1=Buy, 2=Sell)38
- OrderQty40
- OrdType (1=Market, 2=Limit)59
- TimeInForce (0=Day, 3=IOC, 4=FOK)60
- TransactTime (UTC)44
- Price (for Limit orders)1
- Account21
- HandlInst207
- SecurityExchange100
- ExDestination15
- Currency8=FIX.4.4|9=000|35=D|34=10|49=YOUR_SENDER|56=NDD_TRADE|52=20250101-12:00:10.000|11=CL-0001|55=EURUSD|54=1|38=1000000|40=1|59=3|60=20250101-12:00:10.000|10=000
35=F
- MsgType41
- OrigClOrdID11
- ClOrdID55
- Symbol54
- Side60
- TransactTime35=G
- MsgType41
- OrigClOrdID11
- ClOrdID44
- New Price38
- New OrderQty0
- New1
- Partial Fill2
- Fill4
- Cancelled5
- Replaced8
- Rejected0
- New1
- Partially Filled2
- Filled4
- Cancelled8
- Rejected37
- OrderID17
- ExecID11
- ClOrdID41
- OrigClOrdID14
- CumQty151
- LeavesQty32
- LastQty31
- LastPx6
- AvgPx58
- Text (reason)[session] BeginString=FIX.4.4 SenderCompID=YOUR_SENDER TargetCompID=NDD_TARGET SocketConnectHost=fix-uat.ndd.example.com SocketConnectPort=00000 StartTime=00:00:00 EndTime=23:59:59 HeartBtInt=30 UseDataDictionary=Y FileStorePath=store/ FileLogPath=log/ ValidateUserDefinedFields=N SocketUseSSL=Y SSLProtocols=TLSv1.2,TLSv1.3
NewOrderSingle order = new NewOrderSingle(); order.set(new ClOrdID("CL-0001")); order.set(new Symbol("EURUSD")); order.set(new Side(Side.BUY)); order.set(new OrderQty(1000000)); order.set(new OrdType(OrdType.MARKET)); order.set(new TimeInForce(TimeInForce.IMMEDIATE_OR_CANCEL)); order.set(new TransactTime(new Date())); Session.sendToTarget(order, sessionID);
Last update: 2025-01-22
Please include:
Sample code and endpoints in this documentation are illustrative and non-binding. Do not hardcode credentials or production endpoints in your applications.
Ensure compliance with your jurisdiction, internal controls, and our Terms of Service, Execution Policy, and Risk Disclosure documents.
No Dealing Desk Trading Ltd is authorized and regulated by the Financial Conduct Authority (FCA) under firm reference number 123456. Registered office: Room 2301, China World Trade Center, No. 1 Jianguomenwai Avenue, Chaoyang District, Beijing 100004, China.
Best Bid/Offer - Top of book pricing
SequenceReset(4) with GapFillFlag=Y
TimeInForce values for order duration
LP right to accept/decline within hold window
Short-horizon PnL drift post execution
Smart Order Router for optimal execution
User Acceptance Testing environment
No Dealing Desk - A-book execution model
Request access to our FIX API and start integrating with our No Dealing Desk infrastructure.