FIX API / FIX 5.0/Market Data
Market Data
Subscribe to streaming quotes via FIX 5.0 with FIXT 1.1 transport.
Market Data in FIX 5.0
Market data messages in FIX 5.0 are functionally identical to FIX 4.4. The only difference is the transport layer — all messages use BeginString=FIXT.1.1 instead of FIX.4.4.
Market data is received on the Price Session (default port 5011).
MarketDataRequest (MsgType = V)
Subscribe or unsubscribe to market data for one or more symbols.
| Tag | Field | Required | Description |
|---|---|---|---|
| 8 | BeginString | Yes | FIXT.1.1 |
| 35 | MsgType | Yes | V |
| 262 | MDReqID | Yes | Unique request identifier |
| 263 | SubscriptionRequestType | Yes | 0 = Snapshot, 1 = Subscribe, 2 = Unsubscribe |
| 264 | MarketDepth | Yes | 0 = Full book, 1 = Top of book |
| 265 | MDUpdateType | Conditional | 0 = Full refresh, 1 = Incremental (required for Subscribe) |
| 267 | NoMDEntryTypes | Yes | Number of entry types requested |
| 269 | MDEntryType | Yes | Repeating: 0 = Bid, 1 = Offer, 2 = Trade |
| 146 | NoRelatedSym | Yes | Number of symbols |
| 55 | Symbol | Yes | Repeating: Instrument symbol (e.g. EURUSD) |
Subscribe to Top-of-Book Bid/Offer
8=FIXT.1.1|9=154|35=V|49=CLIENT1|56=BROKERET|34=2|52=20260312-14:31:00.000|262=MD001|263=1|264=1|265=1|267=2|269=0|269=1|146=2|55=EURUSD|55=GBPUSD|10=112|
Unsubscribe
8=FIXT.1.1|9=100|35=V|49=CLIENT1|56=BROKERET|34=10|52=20260312-14:45:00.000|262=MD001|263=2|267=2|269=0|269=1|146=2|55=EURUSD|55=GBPUSD|10=126|
MarketDataSnapshotFullRefresh (MsgType = W)
Initial snapshot upon subscription.
| Tag | Field | Description |
|---|---|---|
| 8 | BeginString | FIXT.1.1 |
| 35 | MsgType | W |
| 262 | MDReqID | Request ID this snapshot responds to |
| 55 | Symbol | Instrument symbol |
| 268 | NoMDEntries | Number of entries |
| 269 | MDEntryType | 0 = Bid, 1 = Offer |
| 270 | MDEntryPx | Price |
| 271 | MDEntrySize | Volume / size |
| 272 | MDEntryDate | Date of the entry |
| 273 | MDEntryTime | Time of the entry |
Example — EURUSD Snapshot
8=FIXT.1.1|9=200|35=W|49=BROKERET|56=CLIENT1|34=3|52=20260312-14:31:00.100|262=MD001|55=EURUSD|268=2|269=0|270=1.08452|271=1000000|272=20260312|273=14:31:00.100|269=1|270=1.08455|271=1000000|272=20260312|273=14:31:00.100|10=159|
MarketDataIncrementalRefresh (MsgType = X)
Incremental updates as prices change.
| Tag | Field | Description |
|---|---|---|
| 8 | BeginString | FIXT.1.1 |
| 35 | MsgType | X |
| 262 | MDReqID | Original request ID |
| 268 | NoMDEntries | Number of updated entries |
| 279 | MDUpdateAction | 0 = New, 1 = Change, 2 = Delete |
| 269 | MDEntryType | 0 = Bid, 1 = Offer |
| 55 | Symbol | Instrument symbol |
| 270 | MDEntryPx | Updated price |
| 271 | MDEntrySize | Updated volume |
Example — Bid Price Update
8=FIXT.1.1|9=158|35=X|49=BROKERET|56=CLIENT1|34=45|52=20260312-14:31:05.250|262=MD001|268=1|279=1|269=0|55=EURUSD|270=1.08460|271=1000000|10=215|
MarketDataRequestReject (MsgType = Y)
Sent when a subscription request cannot be processed.
| Tag | Field | Description |
|---|---|---|
| 8 | BeginString | FIXT.1.1 |
| 35 | MsgType | Y |
| 262 | MDReqID | Request ID being rejected |
| 281 | MDReqRejReason | Rejection reason code |
| 58 | Text | Human-readable reason |
Rejection Reason Codes
| Code | Meaning |
|---|---|
| 0 | Unknown symbol |
| 1 | Duplicate MDReqID |
| 4 | Unsupported SubscriptionRequestType |
| 5 | Unsupported MarketDepth |
| 8 | Unsupported MDEntryType |
Available Symbols
Same as FIX 4.4 — all symbols configured on your trading server are available:
| Category | Examples |
|---|---|
| Forex Majors | EURUSD, GBPUSD, USDJPY, USDCHF, AUDUSD, USDCAD, NZDUSD |
| Forex Crosses | EURGBP, EURJPY, GBPJPY, AUDNZD, EURCHF, GBPCAD |
| Metals | XAUUSD, XAGUSD, XPTUSD |
| Indices | US30, US500, NAS100, GER40, UK100 |
| Energies | USOIL, UKOIL, NGAS |
| Crypto | BTCUSD, ETHUSD (if enabled) |
📧
NoteThe exact symbol list depends on your account configuration. Contact Brokeret for the full list of available instruments.
Differences from FIX 4.4 Market Data
The only differences are at the transport level:
| Aspect | FIX 4.4 | FIX 5.0 |
|---|---|---|
| BeginString (Tag 8) | FIX.4.4 | FIXT.1.1 |
| Default port (Price) | 5001 | 5011 |
| Application version | Implicit | Set via Tag 1137 during Logon |
| Per-message version | Not supported | Override with Tag 1128 |
All market data tags, semantics, subscription types, and update mechanisms are identical.
Next Steps
- Order Execution — Submit and manage orders
- Session Management — FIXT 1.1 logon and session handling