Market Data Incremental Refresh (35=X)

Sent in response to a MarketDataRequest. This message provides incremental updates for quote changes in a single security.

In the FIX (Financial Information eXchange) protocol, the Market Data Incremental Refresh message (MsgType = X) is used to provide incremental updates to a subscriber in response to a Market Data Request (35=V) message. This message is typically used in real-time market data feeds to relay changes in market prices, trade volumes, and other relevant information for subscribed financial instruments.

The Zero Hash Gateway sends Market Data Incremental Refresh messages continuously or periodically as new market data becomes available. Subscribers use these updates to maintain an accurate view of the market and make informed trading decisions.

Message Fields

TagField NameRequiredNote
StandardHeader
MsgType = X
262MDReqID
Unique identifier for Market Data Request
268NoMDEntries
Number of entries in Market Data message.
279MDUpdateAction
Type of Market Data update action.
0 = NEW
1 = CHANGE
2 = DELETE
269MDEntryType
Type of market data entry.
0 = Bid
1 = Offer
2 = Trade
4 = Opening Price
5 = Closing Price
6 = Settlement Price
7 = Trading Session High Price
8 = Trading Session Low Price
B = Trade Volume
278MDEntryID
Unique Market Data Entry identifier.
55Symbol
Symbol of the instrument being traded.
BTC/USD
ETH/USD
48SecurityID
Symbol of the instrument being traded.
BTC/USD
ETH/USD
22IDSource
Identifies class or source of the SecurityID (48) value. Required if SecurityID is specified.
167SecurityType
Indicates type of security.
1151SecurityGroup
An exchange specific name assigned to a group of related securities.
270MDEntryPxPrice of the Market Data Entry.
271MDEntrySize
Quantity or volume represented by the Market Data Entry.
272MDEntryDate
Date of Market Data Entry.
273MDEntryTime
Time of Market Data Entry.
59TimeInForce
Specifies how long the order remains in effect. Absence of this field is interpreted as DAY.
126ExpireTime
Time/Date of order expiration, always expressed in UTC.
37OrderID
Unique identifier for Order
40OrdType
Order type.
K= Market With Left Over as Limit
2 = Limit
3 = Stop
4 = Stop Limit
336TradingSessionID

CLOSED
HALTED
SUSPENDED
PREOPEN
OPEN
TERMINATED
EXPIRED

These field will be sent when 269=B and will return the market status

1003TradeID
Populated on messages with MDEntryType as Trade, 269=2.
2446AggressorSide
Indicates the side of the trade the aggressor was on.
1 = BUY
2 = SELL
10StandardTrailer

Example Message

# Market Data Response (X)
8    =    FIXT.1.1
9    =    256
35   =    X
34   =    12781
49   =    ZERO
52   =    20220915-12:55:24.957686955
56   =    YOURSENDERCOMP
262  =    ZERO
268  =    1
279  =    0
269  =    0
278  =    1570395862859935744
55   =    BTC/USD
48   =    BTC/USD
22   =    8
167  =    NONE
1151 =    BTC
270  =    19609.77
271  =    0.05425000
272  =    20220915
273  =    12:55:24.937078681
59   =    1
37   =    1570395862859935744
40   =    2
10   =    049

# Example FIX Message
8=FIXT.1.1 | 9=800 | 35=X | 34=20833 | 49=ZERO | 52=20230908-15:38:59.455059283 | 56=YOURSENDERCOMP | 262=2631724e-4e57-11ee-84c4-5fc020c07bf9 | 268=4 | 279=0 | 269=0 | 278=1F4TNV0V3ZM05 | 55=BTC/USD | 48=BTC/USD | 22=8 | 167=FXSPOT | 1151=BTC | 270=25881.91 | 271=0.00019318 | 272=20230908 | 273=15:14:06.329687828 | 59=3 | 37=1F4TNV0V3ZM05 | 40=K | 279=2 | 269=0 | 278=1F4TNV0V3ZM05 | 55=BTC/USD | 48=BTC/USD | 22=8 | 167=FXSPOT | 1151=BTC | 270=25881.91 | 271=0.00000000 | 272=20230908 | 273=15:14:06.329687828 | 59=3 | 37=1F4TNV0V3ZM05 | 40=K | 279=1 | 269=1 | 278=1F4TNSNQK63KB | 55=BTC/USD | 48=BTC/USD | 22=8 | 167=FXSPOT | 1151=BTC | 270=25881.91 | 271=1.49980682 | 272=20230908 | 273=15:14:06.329687828 | 59=0 | 37=1F4TNSNQK63KB | 40=2 | 279=0 | 269=2 | 278=1F52GW8731G00 | 55=BTC/USD | 48=BTC/USD | 22=8 | 167=FXSPOT | 1151=BTC | 270=25881.91 | 271=0.00019318 | 272=20230908 | 273=15:14:06.329687828 | 59=0 | 40=2 | 828=0 | 1003=1F52GW8731G00 | 2446=1 | 10=223 |