Trade Capture Report (MsgType = AE, FIXML = TrdCaptRpt)

The Trade Capture Report (AE) message can be:

Used to report trades between counterparties.

Used to report trades to a trade matching system

Can be sent unsolicited between counterparties.

Sent as a reply to a Trade Capture Report Request (AD) .

Can be used to report unmatched and matched trades.

Tag Field Name FIXML Req'd Comments
<Standard Message Header> Y MsgType = AE
<ApplicationSequenceControl> N
571 TradeReportID @RptID N TradeReportID is conditionally required in a message-chaining model in which a subsequent message may refer to a prior message via TradeReportRefID. The alternative to a message-chain model is an entity-based model in which TradeID (1003) is used to identify a trade. In this case, TradeID (1003) is required and TradeReportID (571) can be optionally specified.
1003 TradeID @TrdID N
1040 SecondaryTradeID @TrdID2 N
1041 FirmTradeID @FirmTrdID N
1042 SecondaryFirmTradeID @FirmTrdID2 N
487 TradeReportTransType @TransTyp N Identifies Trade Capture Report (AE) message transaction type.
856 TradeReportType @RptTyp N
939 TrdRptStatus @TrdRptStat N Status of Trade Report. In 3 party listed derivatives model used to convey status of a trade to a counterparty. Used specifically in a "claim" model.
568 TradeRequestID @ReqID N Request ID if the Trade Capture Report (AE) is in response to a Trade Capture Report Request (AD)
828 TrdType @TrdTyp N
829 TrdSubType @TrdSubTyp N
855 SecondaryTrdType @TrdTyp2 N
1123 TradeHandlingInstr @TrdHandlInst N
1124 OrigTradeHandlingInstr @OrigTrdHandlInst N
1125 OrigTradeDate @OrigTrdDt N Used to preserve original trade date when original trade is being referenced in a subsequent trade transaction such as a transfer
1126 OrigTradeID @OrigTrdID N Used to preserve original trade id when original trade is being referenced in a subsequent trade transaction such as a transfer
1127 OrigSecondaryTradeID @OrignTrdID2 N Used to preserve original secondary trade id when original trade is being referenced in a subsequent trade transaction such as a transfer
830 TransferReason @TrnsfrRsn N
150 ExecType @ExecTyp N Type of Execution being reported: Uses subset of ExecType (150) for Trade Capture Reports
748 TotNumTradeReports @TotNumTrdRpts N Number of trade reports returned - if this report is part of a response to a Trade Capture Report Request (AD)
912 LastRptRequested @LastRptReqed N Indicates if this is the last report in the response to a Trade Capture Report Request (AD)
325 UnsolicitedIndicator @Unsol N Set to 'Y' if message is sent as a result of a subscription request or out of band configuration as opposed to a Position Request.
263 SubscriptionRequestType @SubReqTyp N Used to subscribe / unsubscribe for trade capture reports. If the field is absent, the value 0 will be the default
572 TradeReportRefID @RptRefID N The TradeReportID (571) that is being referenced for some action, such as correction or cancelation
881 SecondaryTradeReportRefID @TrdRptRefID2 N (Deprecated in FIX.5.0)
818 SecondaryTradeReportID @TrdRptID2 N (Deprecated in FIX.5.0)
820 TradeLinkID @LinkID N Used to associate a group of trades together. Useful for average price calculations.
880 TrdMatchID @MtchID N
17 ExecID @ExecID N Exchanged assigned Execution ID (Trade Identifier)
39 OrdStatus @OrdStat N Status of order as of this trade report
527 SecondaryExecID @ExecID2 N
378 ExecRestatementReason @ExecRstmtRsn N Reason for restatement
570 PreviouslyReported @PrevlyRpted N Indicates if the trade capture report was previously reported to the counterparty
423 PriceType @PxTyp N Can be used to indicate cabinet trade pricing
<RootParties> N Insert here the set of "Root Parties" fields defined in "common components of application messages" Used for acting parties that applies to the whole message, not individual legs, sides, etc.
1015 AsOfIndicator @AsOfInd N Indicates if the trade is an outtrade from a previous day.
716 SettlSessID @SetSesID N Intraday(ITD), Regular Trading Hours(EOD),
717 SettlSessSubID @SetSesSub N
<Instrument> Y Insert here the set of "Instrument" fields defined in "Common Components of Application Messages".
<FinancingDetails> N Insert here the set of "FinancingDetails" fields defined in "Common Components of Application Messages".
<OrderQtyData> N Insert here the set of "OrderQtyData" fields defined in "Common Components of Application Messages". Note: OrderQty (38) field is required unless rejecting or an order ack for a CashOrderQty (152) or PercentOrder.
854 QtyType @QtyTyp N
<YieldData> N Insert here the set of "YieldData" 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
822 UnderlyingTradingSessionID @UndSesID N
823 UnderlyingTradingSessionSubID @UndSesSub N
32 LastQty @LastQty Y Trade Quantity.
31 LastPx @LastPx Y Trade Price.
1056 CalculatedCcyLastQty @CalcCcyLastQty N
15 Currency @Ccy N
120 SettlCurrency @SettlCcy N Used to report results of forex accommodation trade
669 LastParPx @LastParPx C Last price expressed in percent-of-par. Conditionally required for Fixed Income trades when LastPx (31) is expressed in Yield, Spread, Discount or any other price type that is not percent-of-par.
194 LastSpotRate @LastSpotRt N Applicable for F/X orders
195 LastForwardPoints @LastFwdPnts N Applicable for F/X orders
1071 LastSwapPoints @LastSwapPnts N
30 LastMkt @LastMkt N
75 TradeDate @TrdDt N Used when reporting other than current day trades.
715 ClearingBusinessDate @BizDt N
6 AvgPx @AvgPx N Average Price (44) - if present then the LastPx (31) will contain the original price on the execution
<SpreadOrBenchmarkCurveData> N Insert here the set of "SpreadOrBenchmarkCurveData" fields defined in "Common Components of Application Messages".
819 AvgPxIndicator @AvgPxInd N Average Pricing indicator
<PositionAmountData> N Insert here here the set of "Position Amount Data" fields defined in "Common Components of Application Messages".
442 MultiLegReportingType @MLegRptTyp N Type of report if multileg instrument. Provided to support a scenario for trades of multileg instruments between two parties.
824 TradeLegRefID @TrdLegRefID N Reference to the leg of a multileg instrument to which this trade refers Used when MultiLegReportingType (442) = 2 (Single Leg of a Multileg security)
555 NoLegs TrdLeg N Number of legs Identifies a Multi-leg Execution if present and non-zero.
=> <InstrumentLeg> C Must be provided if Number of legs > 0
=> 687 LegQty @Qty N Deprecated in FIX.5.0 SP1. LegLastQty (1418) should be used.
=> 690 LegSwapType @SwapTyp N Instead of LegQty (687) requests that the sellside calculate LegQty (687) based on opposite Leg
=> 990 LegReportID @RptID N Additional attribute to store the Trade ID of the Leg.
=> 1152 LegNumber @LegNo N Allow sequencing of Legs for a Strategy to be captured
=> <LegStipulations> N
=> 564 LegPositionEffect @PosEfct N Provide if the PositionEffect (77) for the leg is different from that specified for the overall multileg security
=> 565 LegCoveredOrUncovered @Cover N Provide if the CoveredOrUncovered (203) for the leg is different from that specified for the overall multileg security.
=> <NestedParties> N Insert here the set of "Nested Parties" (firm identification "nested" within additional repeating group) fields defined in "Common Components of Application Messages". Used for NestedPartyRole=Leg Clearing Firm/Account, Leg Account/Account Type
=> 654 LegRefID @RefID N Used to identify a specific leg.
=> 587 LegSettlType @SettlTyp N
=> 588 LegSettlDate @SettlDt C Takes precedence over LegSettlmntTyp value and conditionally required/omitted for specific LegSettlType (587) values.
=> 637 LegLastPx @LastPx N Used to report the execution price assigned to the leg of the multileg instrument
=> 675 LegSettlCurrency @SettlCcy N
=> 1073 LegLastForwardPoints @LegLastFwdPnts N
=> 1074 LegCalculatedCcyLastQty @LegCalcCcyLastQty N
=> 1075 LegGrossTradeAmt @LegGrossTrdAmt N For FX Futures can be used to express the notional value of a trade when LegLastQty and other quantity fields are expressed in terms of number of contracts - LegContractMultiplier (614) (231) is required in this case.
=> 1379 LegVolatility @LegVolatility N
=> 1381 LegDividendYield @LegDividendYield N
=> 1383 LegCurrencyRatio @LegCurrencyRatio N
=> 1384 LegExecInst @LegExecInst N
=> 1418 LegLastQty @LastQty N
=> 1342 NoOfLegUnderlyings TradeCapLegUndlyGrp N Number of legs for the underlying instrument
=> => 1330 UnderlyingLegSymbol @Sym C
=> => 1331 UnderlyingLegSymbolSfx @Sfx N
=> => 1332 UnderlyingLegSecurityID @ID N
=> => 1333 UnderlyingLegSecurityIDSource @Src N
=> => 1334 NoUnderlyingLegSecurityAltID AID N
=> => => 1335 UnderlyingLegSecurityAltID @AltID C
=> => => 1336 UnderlyingLegSecurityAltIDSource @AltIDSrc N
=> => 1344 UnderlyingLegCFICode @CFI C
=> => 1337 UnderlyingLegSecurityType @SecType N
=> => 1338 UnderlyingLegSecuritySubType @SubType N
=> => 1339 UnderlyingLegMaturityMonthYear @MMY N
=> => 1345 UnderlyingLegMaturityDate @MatDt N
=> => 1405 UnderlyingLegMaturityTime @MatTm C
=> => 1340 UnderlyingLegStrikePrice @StrkPx N
=> => 1391 UnderlyingLegOptAttribute @OptAt N
=> => 1343 UnderlyingLegPutOrCall @PutCall N
=> => 1341 UnderlyingLegSecurityExchange @Exch N
=> => 1392 UnderlyingLegSecurityDesc @Desc N
60 TransactTime @TxnTm N Time the transaction represented by this Trade Capture Report (AE) occurred
<TrdRegTimestamps> N
63 SettlType @SettlTyp N
64 SettlDate @SettlDt C Takes precedence over SettlType (63) value and conditionally required/omitted for specific SettlType (63) values.
987 UnderlyingSettlementDate @StlDt N The settlement date for the underlying instrument of a derivatives security.
573 MatchStatus @MtchStat N
574 MatchType @MtchTyp N
1115 OrderCategory @OrdCat N
552 NoSides RptSide Y Number of sides
=> 54 Side @Side Y
=> 37 OrderID @OrdID N OrderID should be conditionally required when Trade Capture Report (AE) is used for back office processing.
=> 198 SecondaryOrderID @OrdID2 N Can be used to provide order id used by exchange or executing system.
=> 11 ClOrdID @ClOrdID N Required for executions against electronically submitted orders which were assigned an ID by the institution or intermediary. In the case of quotes can be mapped to: QuoteMsgID (1166) of a single Quote, QuoteID (117) of a Mass Quote
=> 19 ExecRefID @ExecRefID N
=> 526 SecondaryClOrdID @ClOrdID2 N Can be used to provide secondary client order identifiers associated with this trade. In the case of quotes can be mapped to: QuoteID (117) of a single Quote, QuoteEntryID (299) of a Mass Quote
=> 66 ListID @ListID N
=> 1009 SideQty @SideQty N Used to indicate the quantity on one side of a multi-sided Trade Capture Report
=> 1005 SideTradeReportID @RptID N Used to indicate the report ID on one side of a multi-sided Trade Capture Report
=> 1006 SideFillStationCd @FillStationCd N Used for order routing to indicate the Fill Station Code on one side of a multi-sided Trade Capture Report
=> 1007 SideReasonCd @RsnCD N Used to indicate the reason of a multi-sided Trade Capture Report
=> 83 RptSeq @RptSeq N Used for order routing to indicate the fill sequence on one side of a multi-sided Trade Capture Report
=> 1008 SideTrdSubTyp @TrdSubTyp N Used to support multi-sided orders of different trade types
=> 430 NetGrossInd @NetGrossInd N Code to represent whether value is net (inclusive of tax) or gross.
=> 1154 SideCurrency @Ccy N Used to Identify the Currency of the Trade Report Side.
=> 1155 SideSettlCurrency @SettlCcy N Used to Identify the Settlement Currency of the Trade Report Side.
=> <Parties> N Insert here the set of "Parties" (firm identification) fields defined in "Common Components of Application Messages". Range of values on report:
=> 1 Account @Acct N Required for executions against electronically submitted orders which were assigned an account by the institution or intermediary
=> 660 AcctIDSource @AcctIDSrc N
=> 581 AccountType @AcctTyp N Specifies type of account
=> 81 ProcessCode @ProcCode N Used to specify Step-out trades
=> 1093 LotType @LotTyp N
=> 575 OddLot @OddLot N
=> 576 NoClearingInstructions ClrInst N ** Nested Repeating Group follows **
=> => 577 ClearingInstruction @ClrngInstrctn C Required if NoClearingInstructions (576) > 0
=> 578 TradeInputSource @InptSrc N
=> 579 TradeInputDevice @InptDev N
=> 821 OrderInputDevice @OrdInptDev N
=> 376 ComplianceID @ComplianceID N
=> 377 SolicitedFlag @SolFlag N
=> 528 OrderCapacity @Cpcty N The capacity of the participant for this trade ( principal or agent for example).
=> 529 OrderRestrictions @Rstctions N Restrictions associated with the participant and their capacity for this trade.
=> 582 CustOrderCapacity @CustCpcty N The customer capacity for this trade
=> 40 OrdType @OrdTyp N Order type from the order associated with the trade
=> 18 ExecInst @ExecInst N Execution Instruction from the order associated with the trade
=> 483 TransBkdTime @TransBkdTm N A date and time stamp to indicate when this order was booked. For Equities, this is the time at which an order was received by an Exchange or Marketplace. For CIV, this is the time that a Fund Manager booked an order for execution at the next valuation point.
=> 336 TradingSessionID @SesID N
=> 625 TradingSessionSubID @SesSub N
=> 943 TimeBracket @TmBkt N
=> <CommissionData> N Insert here the set of "CommissionData" fields defined in "Common Components of Application Messages". Note: On a fill/partial fill messages, it represents value for that fill/partial fill, on ExecType=Calculated, it represents cumulative value for the order. Monetary commission values are expressed in the currency reflected by the Currency (15) field.
=> 157 NumDaysInterest @NumDaysInt N
=> 230 ExDate @ExDt N
=> 158 AccruedInterestRate @AcrdIntRt N
=> 159 AccruedInterestAmt @AcrdIntAmt N
=> 738 InterestAtMaturity @IntAtMat N
=> 920 EndAccruedInterestAmt @EndAcrdIntAmt N For repurchase agreements the accrued interest on termination.
=> 921 StartCash @StartCsh N For repurchase agreements the start (dirty) cash consideration
=> 922 EndCash @EndCsh N For repurchase agreements the end (dirty) cash consideration
=> 238 Concession @Concession N
=> 237 TotalTakedown @TotTakedown N
=> 118 NetMoney @NetMny N Note: On a fill/partial fill messages, it represents value for that fill/partial fill, on ExecType=Calculated, it represents cumulative value for the order. Value expressed in the currency reflected by the Currency (15) field.
=> 119 SettlCurrAmt @SettlCurrAmt N Used to report results of forex accommodation trade
=> 155 SettlCurrFxRate @SettlCurrFxRt N Foreign exchange rate used to compute SettlCurrAmt (119) from Currency (15) to SettlCurrency
=> 156 SettlCurrFxRateCalc @SettlCurrFxRtCalc N Specifies whether the SettlCurrFxRate (155) should be multiplied or divided
=> 77 PositionEffect @PosEfct N For use in derivatives omnibus accounting
=> 58 Text @Txt N May be used by the executing market to record any execution Details that are particular to that market
=> 354 EncodedTextLen @EncTxtLen C Must be set if EncodedText (355) field is specified and must immediately precede it.
=> 355 EncodedText @EncTxt C Encoded (non-ASCII characters) representation of the Text (58) field in the encoded format specified via the MessageEncoding (347) field.
=> 752 SideMultiLegReportingType @MLegRptTyp N Default is a single security if not specified. Provided to support the scenario where a single leg instrument trades against an individual leg of a multileg instrument.
=> 518 NoContAmts ContAmt N Number of contract details in this message (number of repeating groups to follow)
=> => 519 ContAmtType @ContAmtTyp C Must be first field in the repeating group.
=> => 520 ContAmtValue @ContAmtValu N
=> => 521 ContAmtCurr @ContAmtCurr N
=> <Stipulations> N
=> 136 NoMiscFees MiscFees N Required if any miscellaneous fees are reported. Indicates number of repeating entries. Repeating group. ** Nested Repeating Group follows **
=> => 137 MiscFeeAmt @Amt C Required if NoMiscFees (136) > 0
=> => 138 MiscFeeCurr @Curr N
=> => 139 MiscFeeType @Typ C Required if NoMiscFees (136) > 0
=> => 891 MiscFeeBasis @Basis N
=> 825 ExchangeRule @ExchRule N Used to report any exchange rules that apply to this trade.
=> 826 TradeAllocIndicator @AllocInd N Identifies if the trade is to be allocated
=> 591 PreallocMethod @PreallocMeth N
=> 70 AllocID @AllocID N Used to assign an ID to the block of preallocations
=> 78 NoAllocs Alloc N Number of repeating groups for trade allocation
=> => 79 AllocAccount @Acct C Required if NoAllocs (78) > 0. Must be first field in repeating group.
=> => 661 AllocAcctIDSource @ActIDSrc N
=> => 736 AllocSettlCurrency @AllocSettlCcy N
=> => 467 IndividualAllocID @IndAllocID N
=> => <NestedParties2> N Insert here the set of "NestedParties2" (firm identification "nested" within additional repeating group) fields defined in "Common Components of Application Messages".
=> => 80 AllocQty @Qty N
=> => 993 AllocCustomerCapacity @CustCpcty N Can be used for granular reporting of separate allocation detail within a single trade report or allocation message.
=> => 1002 AllocMethod @Meth N Specifies the method under which a trade quantity was allocated.
=> => 989 SecondaryIndividualAllocID @IndAllocID2 N Provides support for an intermediary assigned allocation ID
=> => 1136 AllocClearingFeeIndicator @ClrFeeInd N
=> <SideTrdRegTS> N Used to indicate the regulatory time stamp on one side of a multi-sided Trade Capture Report.
=> 1158 NoSettlDetails SettlDetails N
=> => 1164 SettlObligSource @SettlSrc C
=> => <SettlParties> N Carries settlement account information
=> 1072 SideGrossTradeAmt @SideGrossTradeAmt N
=> 1057 AggressorIndicator @AgrsrInd N
=> 1139 ExchangeSpecialInstructions @ExchSpeclInstr N
1188 Volatility @Vol N
1380 DividendYield @DividendYield N
1190 RiskFreeRate @RFR N
1382 CurrencyRatio @CurrencyRatio N
797 CopyMsgIndicator @CopyMsgInd N Indicates drop copy.
1387 NoTrdRepIndicators TrdRepIndicatorsGrp N Number of trade publication indicators following
=> 1388 TrdRepPartyRole @PtyRole C
=> 1389 TrdRepIndicator @TrdRepInd N
852 PublishTrdIndicator @PubTrdInd N Deprecated in FIX 5.0 SP1
1390 TradePublishIndicator @TrdPubInd N
853 ShortSaleReason @ShrtSaleRsn N
994 TierCode @TierCD N Indicates the algorithm (tier) used to match a trade
1011 MessageEventSource @MsgEvtSrc N Used to identify the event or source which gave rise to a message
779 LastUpdateTime @LastUpdateTm N Used to indicate reports after a specific time
991 RndPx @RndPx N Specifies the rounded price to quoted precision.
1132 TZTransactTime @TZTransactTime N
1134 ReportedPxDiff @ReportedPxDiff N The reason(s) for the price difference should be stated by using field TrdType (828) and, if required, field TrdSubType (829) as well
381 GrossTradeAmt @GrossTrdAmt N
1328 RejectText @RejTxt N
1329 FeeMultiplier @FeeMult N
<Standard Message Trailer> Y