The MarketFactory FIX Drop Copy Server works as per the standard FIX Spec (4.4) with regards to the following messages:
| MsgType (tag 35) | Description |
|---|---|
| A | Logon |
| 0 | Heartbeat |
| 1 | Resend Request |
| 2 | Session Reject |
| 3 | Sequence Reset |
| 4 | Sequence Reset |
| 5 | Logout |
Logon
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | ||||
| 35 | MsgType | Logon Message | Y | 'A' | |
| 108 | HeartBtInt | Used to determine the heartbeat interval (Seconds) | Y | Int | >=2 AND <=60 |
| 554 | Password | Password provided by MF | Y | String |
Trade Capture Report
| Tag | Field | Description | Req | Format | Notes |
|---|---|---|---|---|---|
Standard FIX Header | Y | ||||
| 35 | MsgType | TradeCapture Report | Y | 'AE' | |
571 | TradeReportID | MF Unique Identifier of TradeCapture Report | Y | String | 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. |
| 75 | TradeDate | Trade Date | Y | Date | YYYYMMDD |
60
| TransactTime | Trade date and time including milliseconds | Y | UTC Timestamp | YYYYMMDD-HH:MM:SS.000 |
| 570 | PreviouslyReported | A flag that indicates whether this execution might have been previously reported | Y | Boolean | 'Y' or 'N' |
| 17 | ExecID | Unique Identifier of the the underlying execution | Y | String | Unique identifier of the underlying execution. |
| 55 | Symbol | Symbol of the trade | Y | String | EUR/USD, XAU/USD, etc |
| 31 | LastPx | The price of the fill | Y | Price | Decimal price |
| 32 | LastQty | The quantity of the fill | Y | Qty | Decimal quantity |
| 64 | SettlDate | Trade Settlement Date | Y | Date | YYYYMMDD |
| 75 | TradeDate | The date this execution occurred on | Y | YYYYMMDD | |
552 | NoSides | The number of sides in the transaction. | Y | Int | The only supported value is 1. Repeating Group. |
| >54 | Side | The side of the execution - Buy or Sell | Y | Char | ‘1’ = Buy, ‘2’ = Sell |
| >1 | Account | Account ID | Y | String | |
| >11 | ClOrdID | The ID assigned by Trader to the order | Y | String | |
| >37 | OrderID | The ID assigned by the executing venue | Y | String | |
| >120 | SettlCurrency | The contra currency of the trade | Y | Currency | Will be 1 of the 2 currencies in the Symbol(55) field - specifically the one not specified in the Currency(15) field |
| >15 | Currency | Base Currency of the trade. Quantities like LastQty(32) will be in this currency | Y | Currency | 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'. |
| >453 | NoPartyIDs | Number of parties in this trade capture report | Y | Int | Usually 2. Repeating Group. |
| >>448 | PartyID | Party identifier/code | Y | String | |
| >>447 | PartyIDSource | Identifies class or source of PartyID | Y | Char | D = PropCode |
| >>452 | PartyRole | Identifies the type or role of the PartyID | Y | Int |