The Trade Capture Report Request (AD) can be used to:
Request one or more trade capture reports based upon selection criteria provided on the trade capture report request
Subscribe for trade capture reports based upon selection criteria provided on the trade capture report request.
The following criteria can be specified on the Trade Capture Report (AE) Request:
All trades matching specified trade identification: TradeReportID, SecondaryTradeReportID
All trades matching specified trade types: TrdType, TrdSubType, TransferReason, SecondaryTrdType, TradeLinkID
All trades matching the order identification information: OrderId, ClOrdID, ExecID
Trades that have specified MatchStatus
All trades for the party defined in the component block <Parties>
o This can be a trader id, firm, broker id, clearing firm
All trades for a specific instrument, specified using the component block <Instrument>, the component block <UnderlyingInstrument>, and/or the component block <InstrumentLeg>.
All unreported trades Executions that have not been sent
All unmatched trades Trades that have not been matched
All trades matching specific date and trading session criteria
Trades entered via a specific TradeInputSource
Trades entered via a specific TradeInputDevice
All Advisories
Each field in the Trade Capture Report Request (AD) (other than TradeRequestID (568) and SubscriptionRequestType) identify filters - trade reports that satisfy all Specified filters will be returned. Note that the filters are combined using an implied "and" - a trade report must satisfy every specified filter to be returned.
The optional date or time range-specific filter criteria (within NoDates (580) repeating group) can be used in one of two modes:
"Since" a time period. NoDates=1 with first TradeDate (75) (and optional TransactTime) indicating the "since" (greater than or equal to operation) point in time.
"Between" time periods. NoDates=2 with first TradeDate (75) (and optional TransactTime) indicating the "beginning" (greater than or equal to operation) point in time and the second TradeDate (75) (and optional TransactTime) indicating the "ending" (less than or equal to operation) point in time.
Trade Capture Report messages are the normal return type to a Trade Capture Report (AE) Request.
The response to a Trade Capture Report Request (AD) can be:
One or more Trade Capture Reports
A Trade Capture Report Request Ack (AQ) followed by one or more Trade Capture Reports in two specific cases:
o When the Trade Capture Reports are being delivered out of band (such as a file transfer),
o When there is a processing delay between the time of the request and when the reports will be sent (for instance in a distributed trading environment where trades are distributed across multiple trading systems).
A Trade Capture Report Ack (AR) only
When no trades are found that match the selection criteria specified on the Trade Capture Report (AE) Request
When the Trade Capture Report Request (AD) was deemed invalid for business reasons by the counterparty
| Tag | Field Name | FIXML | Req'd | Comments | |||
|---|---|---|---|---|---|---|---|
| <Standard Message Header> | Y | MsgType = AD | |||||
| 568 | TradeRequestID | @ReqID | Y | Identifier for the trade request | |||
| 1003 | TradeID | @TrdID | N | ||||
| 1040 | SecondaryTradeID | @TrdID2 | N | ||||
| 1041 | FirmTradeID | @FirmTrdID | N | ||||
| 1042 | SecondaryFirmTradeID | @FirmTrdID2 | N | ||||
| 569 | TradeRequestType | @ReqTyp | Y | ||||
| 263 | SubscriptionRequestType | @SubReqTyp | N | Used to subscribe / unsubscribe for trade capture reports If the field is absent, the value 0 will be the default (snapshot only - no subscription) | |||
| 571 | TradeReportID | @RptID | N | To request a specific trade report | |||
| 818 | SecondaryTradeReportID | @TrdRptID2 | N | (Deprecated in FIX.5.0)To request a specific trade report | |||
| 17 | ExecID | @ExecID | N | ||||
| 150 | ExecType | @ExecTyp | N | To requst all trades of a specific execution type | |||
| 37 | OrderID | @OrdID | N | ||||
| 11 | ClOrdID | @ClOrdID | N | ||||
| 573 | MatchStatus | @MtchStat | N | ||||
| 828 | TrdType | @TrdTyp | N | To request all trades of a specific trade type | |||
| 829 | TrdSubType | @TrdSubTyp | N | To request all trades of a specific trade sub type | |||
| 1123 | TradeHandlingInstr | @TrdHandlInst | N | ||||
| 830 | TransferReason | @TrnsfrRsn | N | To request all trades for a specific transfer reason | |||
| 855 | SecondaryTrdType | @TrdTyp2 | N | To request all trades of a specific trade sub type | |||
| 820 | TradeLinkID | @LinkID | N | To request all trades of a specific trade link id | |||
| 880 | TrdMatchID | @MtchID | N | To request a trade matching a specific TrdMatchID | |||
| <Parties> | N | Used to specify the parties for the trades to be returned (clearing firm, execution broker, trader id, etc.): ExecutingBroker; ClearingFirm; ContraBroker; ContraClearingFirm; SettlementLocation - depository, CSD, or other settlement party; ExecutingTrader; InitiatingTrader; OrderOriginator. | |||||
| <Instrument> | N | Insert here the set of "Instrument" fields defined in "Common Components of Application Messages". | |||||
| <InstrumentExtension> | N | Insert here the set of "InstrumentExtension" fields defined in "Common Components of Application Messages". | |||||
| <FinancingDetails> | N | Insert here the set of "FinancingDetails" fields defined in "Common Components of Application Messages". | |||||
| 711 | NoUnderlyings | Undly | N | Number of underlyings | |||
| => | <UnderlyingInstrument> | C | Must be provided if Number of underlyings > 0 | ||||
| 555 | NoLegs | Leg | N | Number of legs Identifies a Multi-leg Execution if present and non-zero. | |||
| => | <InstrumentLeg> | C | Must be provided if Number of legs > 0 | ||||
| 580 | NoDates | TrdCapDt | C | Number of date ranges provided (must be 1 or 2 if specified) | |||
| => | 75 | TradeDate | @TrdDt | C | Used when reporting other than current day trades. Conditionally required if NoDates (580) > 0 | ||
| => | 779 | LastUpdateTime | @LastUpdateTm | N | |||
| => | 60 | TransactTime | @TxnTm | N | To request trades for a specific time. | ||
| 715 | ClearingBusinessDate | @BizDt | N | To request trades for a specific clearing business date. | |||
| 336 | TradingSessionID | @SesID | N | To request trades for a specific trading session. | |||
| 625 | TradingSessionSubID | @SesSub | N | To request trades for a specific trading session. | |||
| 943 | TimeBracket | @TmBkt | N | To request trades within a specific time bracket. | |||
| 54 | Side | @Side | N | To request trades for a specific side of a trade. | |||
| 442 | MultiLegReportingType | @MLegRptTyp | N | Used to indicate if trades are to be returned for the individual legs of a multileg instrument or for the overall instrument. | |||
| 578 | TradeInputSource | @InptSrc | N | To requests trades that were submitted from a specific trade input source. | |||
| 579 | TradeInputDevice | @InptDev | N | To request trades that were submitted from a specific trade input device. | |||
| 725 | ResponseTransportType | @RspTransportTyp | N | Ability to specify whether the response to the request should be delivered inband or via pre-arranged out-of-band transport. | |||
| 726 | ResponseDestination | @RspDest | N | URI destination name. Used if ResponseTransportType (725) is out-of-band. | |||
| 58 | Text | @Txt | N | Used to match specific values within Text (58) fields | |||
| 354 | EncodedTextLen | @EncTxtLen | C | ||||
| 355 | EncodedText | @EncTxt | C | ||||
| 1011 | MessageEventSource | @MsgEvtSrc | N | Used to identify the event or source which gave rise to a message | |||
| <Standard Message Trailer> | Y | ||||||
© 2026.
EPAM Systems. All Rights Reserved.
All material contained within the website is copyright of EPAM Systems, Inc. No material contained herein can be copied or otherwise used without the express permission of the copyright holder.