Page History
...
The MarketFactory FIX Drop Copy Server works as per the standard FIX Spec (4.4) with regards to the following messages:
| MsgType (tag 35) | Message | Description |
|---|---|---|
| A | Logon | Initiates a FIX session. Heartbeat interval must be between 2 and 60, inclusive or the Logon attempt will be rejected. |
| 0 | Heartbeat | Monitors the status of the connection. |
| 1 | Test Request | Requests a Heartbeat from receiver. |
| 2 | Resend Request | Requests re-transmission of messages. |
| 3 | Reject | Session level message rejection. |
| 4 | Sequence Reset (Gap Fill) | Reset receiver’s sequence number. |
| 5 | Logout | Terminates a FIX session. |
Logon
| Tag | Field | Description | Req | Format | Notes |
|---|
Standard FIX Header |
| Y |
| 35 |
MsgType
| ='A' | ||
| 108 | HeartBtInt | Used to determine the heartbeat interval. |
(Seconds)
| Y | Int | >=2 AND <= |
60 (Seconds) | ||||
| 554 | Password | Password provided by MF | Y | String |
...
Heartbeat
| Tag | Field | Description | Req | Format | Notes |
|---|
Standard FIX Header |
| Y |
MsgType
571MF Unique Identifier of TradeCapture Report
Does not identify the underlying execution. A replayed TradeCapture Report will have a different TradeReportID than one you might have seen earlier for the same underlying trade. Use the ExecID to identify the actual execution.
60
Trade date and time including milliseconds
UTC
Timestamp
PreviouslyReported
A flag that indicates whether this execution might have been previously reported
Symbol
LastPx
The price of the fill
LastQty
TradeDate
552
NoSides
The number of sides in the transaction.
Y
Int
‘1’ = Buy, ‘2’ = Sell
ClOrdID
The ID assigned by Trader to the order
OrderID
The ID assigned by the executing venue
SettlCurrency
The contra currency of the trade
Will be 1 of the 2 currencies in the Symbol(55) field. For example, if the Symbol(55) is 'EUR/USD', this field will either be 'EUR' or 'USD'.
NoPartyIDs
Number of parties in this trade capture report
PartyID
PartyIDSource
| 35='0' | |||||
| 112 | TestReqID | Conditionally populated if the Heartbeat is sent in response to a TestRequest. | C | String | Free-form text string as populated in the TestRequest. e.g. UTC/Epoch Timestamp |
Test Request
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | 35='1' | |||
| 112 | TestReqID | Free-form text string to be returned in resulting Heartbeat. | Y | String | E.g. UTC/Epoch Timestamp. |
Resend Request
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | 35='2' | |||
| 7 | BeginSeqNo | Message sequence number of first message in range to be resent. | Y | Int | - |
| 16 | EndSeqNo | Message sequence number of last message in range to be resent. | Y | Int | If request is for a single message BeginSeqNo (7) = EndSeqNo. If request is for all messages subsequent to a particular message, EndSeqNo = "0" (representing infinity). |
Reject
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | 35='3' | |||
| 45 | RefSeqNum | FIX sequence number of the rejected message. | Y | SeqNum | - |
| 58 | Text | Human-friendly string providing reason for rejection. | Y | String | - |
Sequence Reset (Gap Fill)
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | 35='4' | |||
| 23 | GapFillFlag | - | Y | String | Always 'Y'. |
| 36 | NewSeqNo | The sequence number of the next message which will be transmitted by the sender | Y | SeqNum | - |
Logout
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | 35='5' | |||
| 58 | Text | Human-friendly string providing reason for logout. | Y | String | - |