Preamble and Header Formats

Preamble

A preamble is sent before any FAST encoded message. It consists of 5 non-FAST encoded bytes in Big Endian format, of which the first 4 bytes represent the sequence number, followed by the 1-byte sub-channel identifier, which is always 0x00 at the moment.

For FAST messages sent over TCP, a FAST encoded message length (1-3 bytes) precedes the preamble. Processing of the Preamble is optional and FAST messages will not be impacted by it.

 

TCP specific header

Packet length = size of (UDP packet content)

FAST encoded (1-3 bytes)

UDP packet content

Packet preamble

Sequence number

Uint32_t

Unused

Uint8_t

Packet data

FAST encoded data

Header

Tag

FIX Name

Format

Valid Values

Description

35

MsgType

String (2)

35 = 0

35 = 4

35 = 5

35 = A

35 = c

35 = d

35 = V

35 = X

35 = R

Defines the type of the message.

35 = 0 - Heartbeat

35 = 4 - Sequence reset

35 = 5 - Logout

35 = A - Logon

35 = c - Security Definition Request

35 = d - Security Definition

35 = V – Market Data Request

35 = W - Market Data Snapshot Full Refresh

35 = X - Market Data Incremental Refresh

35 = R – Quote Request

1128

ApplVerID

String (1)

8

8= FIX.5.0.SP1. Specifies the service pack release being applied at message level.

49

SenderCompID

String (7)

CQG

Assigned value used to identify firm sending message.

34

MsgSeqNum

SeqNum (9)

 

Integer message sequence number.

52

SendingTime

UTCTimestamp (21)

 

Time of message transmission (always expressed in UTC: Coordinated Universal Time)