Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ===== Collateral Report ===== **Application Reports** The **Collateral Report** message (`MsgType=BA`) responds to the **Collateral Inquiry** message by listing detailed information about: * Account positions * Account updates * Account permissions * Account balances Reports are generated as a result of: * Listing Account Details for a connected user * Account Subscription Requests * Account Updates * Account Position Updates * Account and Exchange notifications * User/Trader Information Requests ---- === Responding to the Request to List User Accounts === A **Collateral Inquiry** (`MsgType=BB`, `Tag 263=0`) returns Collateral Reports for each account the user has access to: * **Account name** in `Account` (`Tag 1`) * **Account ID** in `PartyID` (`Tag 448`) * Basic balance info (`StartCash` = `Tag 921`) Differentiated by **Quantity Type** = Account-List (`Tag 854=1`). ---- === Responding to Account Subscription Requests === A subscription request (`MsgType=BB`, `Tag 263=1`) returns **Collateral Reports** and **Execution Reports** for: * Orders, fills, positions * Account details * Account updates * Account position updates **Collateral Report Categories:** 1. **Account Details** * Privileges, permissions, configurations * **Quantity Type** = Account-Details (`Tag 854=2`) 2. **Account Updates** * Instantaneous balances: Start Cash, Margin Requirements, etc. * **Quantity Type** = Account-Update (`Tag 854=3`) * Can be received asynchronously without an inquiry * Cash available = `StartCash` (`921`) + `Realized P&L` (`900`) - `Margin Requirements` (`899`) + `Premium` (`901`) 3. **Account Position Updates** * Open positions, working orders, fills by market * Includes `Buys` (`3002`), `Sells` (`3003`), `Short/Long` positions (`53`), `Open Volume` (`3011`) * **Quantity Type** = Account-Position-Update (`Tag 854=4`) * Can be received asynchronously ---- === Asynchronous Account Notifications === Unsolicited Collateral Reports may be received for: * **Account notifications** (`Tag 854=5`) * **Exchange notifications** (`Tag 854=6`) * **Market RFQ** (`Tag 854=7`) Enabled by default for all FIX connections. Can be suppressed with **Logon** `MsgType=CB` (`Tag 372=CB`). ---- === Message Dictionary === ^ Tag ^ Field Name ^ Req'd ^ Comments ^ | **Standard Header** | Y | MsgType = BA | | 909 | CollInquiryID | N | ID for the collateral inquiry that generated this report | | 908 | CollRptID | Y | Unique identifier for this report | | 910 | CollStatus | N | Status of the entity carried by this report | | 911 | TotNumReports | N | Total number of reports in this inquiry | | 912 | LastReportRequested | N | Indicates if this is the last in the series | | 1 | Account | N | Account code | | **Start Repeating Group** | | PartyIDs | | 453 | NoPartyIDs | N | Number of PartyIDs | | 448 | PartyID | Y | Depends on PartyRole | | 452 | PartyRole | N | 22=User Exchange, 24=Customer Account, 3=Order Id | | **End Repeating Group** | | | | **Start Repeating Group** | | Miscellaneous Fees | | 136 | NoMiscFees | N | Number of misc fee entries | | 137 | MiscFeeAmt | Y | Fee amount | | 138 | MiscFeeCurr | N | Fee currency | | 139 | MiscFeeType | N | C=Customer, M=Member, N=None | | 891 | MiscFeeBasis | N | 0=Absolute, 1=Per Unit, 2=Percentage | | **End Repeating Group** | | | | 58 | Text | N | Free text | | 899 | MarginExcess | N | Amount meaning depends on report type | | 900 | TotalNetValue | N | Value meaning depends on report type | | 901 | CashOutstanding | N | Option premium | | 921 | StartCash | N | Start of day balance | | 53 | Quantity | N | Total MP, Long MP, Short MP | | 854 | QuantityType | N | 1=Account List, 2=Account Details, 3=Account Update, 4=Account Position Update, 5=Account Notification, 6=Exchange Notification, 7=Market RFQ, 8=User/Trader Info | | 48 | SecurityID | N | T4 Market ID | | 55 | Symbol | N | T4 Contract ID | | 207 | SecurityExchange | N | T4 Exchange ID | | 167 | SecurityType | N | FUT=Futures, OPT=Options, STK=Stock, SYN=Synthetic, BIN=Binary Option | | 201 | PutOrCall | N | 0=Put, 1=Call | | 202 | StrikePrice | N | Option strike price | | 75 | TradeDate | N | Update date | | 3000 | Buys | N | Lots bought today | | 3001 | Sells | N | Lots sold today | | 3002 | WorkingBuys | N | Working buy orders | | 3003 | WorkingSells | N | Working sell orders | | 3004 | OvernightUPL | N | Overnight unrealized P&L | | 3005 | AverageOpenTicks | N | Avg price (ticks) of open positions | | 3006 | OvernightPosition | N | Overnight market lots | | 3007 | CurrencyRate | N | Conversion to USD | | 3008 | TotalBuyFillTicks | N | Total price (ticks) of buys | | 3009 | TotalSellFillTicks | N | Total price (ticks) of sells | | 3010 | TotalOpenTicks | N | Total ticks*volume open positions | | 3011 | TotalOpenVolume | N | Open position volume | | 3100 | AccountID | N | Unique account ID | | 3101 | AccountName | N | Account name | | 3102 | ActiveTimeStart | N | Trading start time | | 3103 | ActiveTimeStop | N | Trading stop time | | 3104 | BlockExpiring | N | Hours before last trade time to block | | 3105 | DayLossLimit | N | Max daily loss | | 3106 | Deleted | N | Y=Deleted, N=Not deleted | | 3107 | DisplayName | N | Display name prefix | | 3108 | EditMargin | N | Can child firm admins edit margin? | | 3109 | EMail | N | Fill notification email | | 3110 | Enabled | N | Y=Enabled, N=Disabled | | 3111 | Firm | N | Firm name | | 3112 | FirmID | N | Firm unique ID | | 3113 | LossLimit | N | Max daily cash loss | | 3114 | LossLimitPC | N | Max daily loss % | | 3115 | MarginPC | N | Margin % rate for day trading | | 3116 | MaxAccountPosition | N | Max total position | | 3117 | MaxClipSize | N | Max per-order quantity | | 3118 | MaxContractMargin | N | Max contract margin | | 3119 | MaxPosition | N | Max position in a single market | | 3120 | MinBalance | N | Minimum balance | | 3121 | Mode | N | M=By Market, C=By Contract, A=By Account | | 3122 | OrderRouting | N | Y=Yes, N=No | | 3123 | OvernightMarginPC | N | Margin % for overnight positions | | 3124 | ParentFirmID | N | Parent firm ID | | 3125 | PLRollover | N | Y=Yes, N=No | | 3126 | PositionRollover | N | Y=Yes, N=No | | 3127 | PreTradeDisabled | N | Y=Yes, N=No | | 3128 | RiskAlerts | N | Y=Yes, N=No | | 3131 | StrategyMaxClipSize | N | Max per-order in Strategy markets | | 3132 | StrategyMaxPosition | N | Max position in Strategy markets | | 3133 | StrategyTotalPitTrades | N | Pit trades in all Strategy markets | | 3134 | TotalPitTrades | N | Pit trades in this market | | 3135 | UsePLForMargin | N | Y=Yes, N=No | | 3136 | WarningThresholdLossLimit | N | Warning threshold % of Loss Limit | | 3137 | WarningThresholdMargin | N | Warning threshold % of Margin | | 3138 | WarningThresholdPL | N | Warning threshold % of P&L | | 3139 | WideMarket | N | Bid/offer spread $ threshold | | 3140 | UserID | N | Logged-in user ID | | 3141 | UsrName | N | Logged-in user name | | 3142 | UserFirm | N | Firm of logged-in user | | 3143 | UserParentFirm | N | Parent firm of logged-in user | | 3144 | UserIsMaster | N | True=Master User, False=Not Master | | 3145 | UserRoles | N | Roles (separated by ".") | | 3146 | UserType | N | ATS, ATSDisplay, Desk, Manual, NonProfessional, Professional, SubVendor, Wallboard | | 12 | Commission | N | Commission amount | | 13 | CommType | N | Commission type | | **Standard Trailer** | Y | | Sample Messages Account Details <code> [FIXCOLLATERALINQUIRY] 34=64|49=T4Example|56=T4|52=20121218-15:19:15.357|909=ci-12/18/2012 9:19:15 AM|263=2|725=0|453=1| 448=9A65B2FE-1D27-4230-A942-F60983CFB33B|452=24|938=1|896=0| [MsgSeqNum] 34 = 64 [SenderCompID] 49 = T4Example [TargetCompID] 56 = T4 [SendingTime] 52 = 20121218-15:19:15.357 [CollInquiryID] 909 = ci-12/18/2012 9:19:15 AM [SubscriptionRequestType] 263 = 2 (DISABLE_PREVIOUS_SNAPSHOT_PLUS_UPDATE_REQUEST) [ResponseTransportType] 725 = 0 (IN_BAND) [NoPartyIDs] 453 = 1 [PartyID] 448 = 9A65B2FE-1D27-4230-A942-F60983CFB33B [PartyRole] 452 = 24 (CUSTOMER_ACCOUNT) [NoCollInquiryQualifier] 938 = 1 [CollInquiryQualifier] 896 = 0 (CUSTOMER_ACCOUNTS) [fixcollateralreport] 34=1463|49=T4|56=T4Example|50=T4FIX|52=20121218-15:19:17.806|908=cr-634914191578066280|909=ci-12/18/2012 8:54:31 AM |910=3|911=1|912=Y|1=Account1|453=1|448=9A65B2FE-1D27-4230-A942-F60983CFB33B|136=1|137=-1|139=C|854=2 |3100=9A65B2FE-1D27-4230-A942-F60983CFB33B|3101=Account1|3104=-1|3105=0|3106=N|3108=N|3110=Y|3111=test |3112=2884B215-4A4B-4E9D-A40E-F8212D713E13|3113=0|3114=0|3115=100|3116=-1|3117=10|3118=-1|3119=-1|3120=0|3121=C |3122=N|3123=100|3124=2884B215-4A4B-4E9D-A40E-F8212D713E13|3125=Y|3126=Y|3127=Y|3128=Y|3131=1000 |3132=-1|3133=100|3134=100|3135=Y|3136=-1|3137=-1|3138=10|3139=-1|12=2.5| [MsgSeqNum] 34 = 1463 [SenderCompID] 49 = T4 [TargetCompID] 56 = T4Example [SenderSubID] 50 = T4FIX [SendingTime] 52 = 20121218-15:19:17.806 [CollRptID] 908 = cr-634914191578066280 [CollInquiryID] 909 = ci-12/18/2012 8:54:31 AM [CollStatus] 910 = 3 (ASSIGNED) [TotNumReports] 911 = 1 [LastRptRequested] 912 = Y (YES) [Account] 1 = Account1 [NoPartyIDs] 453 = 1 [PartyID] 448 = 9A65B2FE-1D27-4230-A942-F60983CFB33B [NoMiscFees] 136 = 1 [MiscFeeAmt] 137 = -1 [MiscFeeType] 139 = C [QtyType] 854 = 2 (ACCOUNT_DETAILS) [AccountID] 3100 = 9A65B2FE-1D27-4230-A942-F60983CFB33B [AccountName] 3101 = Account1 [BlockExpiring] 3104 = -1 [DayLossLimit] 3105 = 0 [Deleted] 3106 = N [EditMargin] 3108 = N [Enabled] 3110 = Y [Firm] 3111 = test [FirmID] 3112 = 2884B215-4A4B-4E9D-A40E-F8212D713E13 [LossLimit] 3113 = 0 [LossLimitPC] 3114 = 0 [MarginPC] 3115 = 100 [MaxAccountPosition] 3116 = -1 [MaxClipSize] 3117 = 10 [MaxContractMargin] 3118 = -1 [MaxPosition] 3119 = -1 [MinBalance] 3120 = 0 [Mode] 3121 = C [OrderRouting] 3122 = N [OvernightMarginPC] 3123 = 100 [ParentFirmID] 3124 = 2884B215-4A4B-4E9D-A40E-F8212D713E13 [PLRollover] 3125 = Y [PositionRollover] 3126 = Y [PreTradeDisabled] 3127 = Y [RiskAlerts] 3128 = Y [StrategyMaxClipSize] 3131 = 1000 [StrategyMaxPosition] 3132 = -1 [StrategyTotalPitTrades] 3133 = 100 [TotalPitTrades] 3134 = 100 [UsePLForMargin] 3135 = Y [WarningThresholdLossLimit] 3136 = -1 [WarningThresholdMargin] 3137 = -1 [WarningThresholdPL] 3138 = 10 [WideMarket] 3139 = -1 [Commission] 12 = 2.5 </code> Account Update <code> [fixcollateralreport] 34=1464|49=T4|56=T4Example|50=T4FIX|52=20121218-15:19:17.806|908=cr-634914191578066280 |909=ci-12/18/2012 8:54:31 AM|910=Unrestricted|911=1|912=Y|1=Account1|453=1|448=9A65B2FE-1D27-4230-A942-F60983CFB33B |136=1|137=5|899=50935|900=0|901=0|921=-3501094.9228|53=15 13 -2|854=3| [MsgSeqNum] 34 = 1464 [SenderCompID] 49 = T4 [TargetCompID] 56 = T4Example [SenderSubID] 50 = T4FIX [SendingTime] 52 = 20121218-15:19:17.806 [CollRptID] 908 = cr-634914191578066280 [CollInquiryID] 909 = ci-12/18/2012 8:54:31 AM [CollStatus] 910 = Unrestricted [TotNumReports] 911 = 1 [LastRptRequested] 912 = Y (YES) [Account] 1 = Account1 [NoPartyIDs] 453 = 1 [PartyID] 448 = 9A65B2FE-1D27-4230-A942-F60983CFB33B [NoMiscFees] 136 = 1 [MiscFeeAmt] 137 = 5 [MarginExcess] 899 = 50935 [TotalNetValue] 900 = 0 [CashOutstanding] 901 = 0 [StartCash] 921 = -3501094.9228 [Quantity] 53 = 15 13 -2 [QtyType] 854 = 3 (ACCOUNT_UPDATE) </code> Account Position Update <code> [fixcollateralreport] 34=1465|49=T4|56=T4Example|50=T4FIX|52=20121218-15:19:17.806|908=cr-634914191578066280 |909=ci-12/18/2012 8:54:31 AM|911=1|912=Y|1=Account1|453=1|448=9A65B2FE-1D27-4230-A942-F60983CFB33B|136=1|137=5|899=21875|900=0|901=0|53=5 5 0|854=4 |55=ES|48=CME_20121200_ESZ2|207=CME_Eq|200=201212|167=FUT|75=20121218|3000=4|3001=0|3002=1|3003=0|3004=287.5|3005=141575|3006=2 |3007=1|3008=566300|3009=0|3010=709150|3011=5| [MsgSeqNum] 34 = 1465 [SenderCompID] 49 = T4 [TargetCompID] 56 = T4Example [SenderSubID] 50 = T4FIX [SendingTime] 52 = 20121218-15:19:17.806 [CollRptID] 908 = cr-634914191578066280 [CollInquiryID] 909 = ci-12/18/2012 8:54:31 AM [TotNumReports] 911 = 1 [LastRptRequested] 912 = Y (YES) [Account] 1 = Account1 [NoPartyIDs] 453 = 1 [PartyID] 448 = 9A65B2FE-1D27-4230-A942-F60983CFB33B [NoMiscFees] 136 = 1 [MiscFeeAmt] 137 = 5 [MarginExcess] 899 = 21875 [TotalNetValue] 900 = 0 [CashOutstanding] 901 = 0 [Shares] 53 = 5 5 0 [QtyType] 854 = 4 (ACCOUNT_POSITION_UPDATE) [Symbol] 55 = ES [SecurityID] 48 = CME_20121200_ESZ2 [SecurityExchange] 207 = CME_Eq [MaturityMonthYear] 200 = 201212 [SecurityType] 167 = FUT (FUTURE) [TradeDate] 75 = 20121218 [Buys] 3000 = 4 [Sells] 3001 = 0 [WorkingBuys] 3002 = 1 [WorkingSells] 3003 = 0 [OvernightUPL] 3004 = 287.5 [AverageOpenTicks] 3005 = 141575 [OvernightPosition] 3006 = 2 [CurrencyRate] 3007 = 1 [TotalBuyFillTicks] 3008 = 566300 [TotalSellFillTicks] 3009 = 0 [TotalOpenTicks] 3010 = 709150 [TotalOpenVolume] 3011 = 5 </code> [[developers:legacy_fix_api|T4 FIX API Home]] developers/fixapi.collateralreport.txt Last modified: 2025/08/15 12:58by rob