Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
developers:fixapi:collateralreport [2025/09/12 01:39] – removed - external edit (Unknown date) 127.0.0.1 | developers:fixapi:collateralreport [2025/09/12 01:39] (current) – ↷ Page moved and renamed from developers:fixapi.collateralreport to developers:fixapi:collateralreport chad | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== 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`, | ||
+ | * **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`, | ||
+ | * Orders, fills, positions | ||
+ | * Account details | ||
+ | * Account updates | ||
+ | * Account position updates | ||
+ | |||
+ | **Collateral Report Categories: | ||
+ | |||
+ | 1. **Account Details** | ||
+ | * Privileges, permissions, | ||
+ | * **Quantity Type** = Account-Details (`Tag 854=2`) | ||
+ | |||
+ | 2. **Account Updates** | ||
+ | * Instantaneous balances: Start Cash, Margin Requirements, | ||
+ | * **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/ | ||
+ | * **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 | ||
+ | | 908 | CollRptID | ||
+ | | 910 | CollStatus | ||
+ | | 911 | TotNumReports | ||
+ | | 912 | LastReportRequested | ||
+ | | 1 | Account | ||
+ | | **Start Repeating Group** | ||
+ | | 453 | NoPartyIDs | ||
+ | | 448 | PartyID | ||
+ | | 452 | PartyRole | ||
+ | | **End Repeating Group** | ||
+ | | **Start Repeating Group** | ||
+ | | 136 | NoMiscFees | ||
+ | | 137 | MiscFeeAmt | ||
+ | | 138 | MiscFeeCurr | ||
+ | | 139 | MiscFeeType | ||
+ | | 891 | MiscFeeBasis | ||
+ | | **End Repeating Group** | ||
+ | | 58 | Text | N | Free text | | ||
+ | | 899 | MarginExcess | ||
+ | | 900 | TotalNetValue | ||
+ | | 901 | CashOutstanding | ||
+ | | 921 | StartCash | ||
+ | | 53 | Quantity | ||
+ | | 854 | QuantityType | ||
+ | | 48 | SecurityID | ||
+ | | 55 | Symbol | ||
+ | | 207 | SecurityExchange | ||
+ | | 167 | SecurityType | ||
+ | | 201 | PutOrCall | ||
+ | | 202 | StrikePrice | ||
+ | | 75 | TradeDate | ||
+ | | 3000 | Buys | N | Lots bought today | | ||
+ | | 3001 | Sells | N | Lots sold today | | ||
+ | | 3002 | WorkingBuys | ||
+ | | 3003 | WorkingSells | ||
+ | | 3004 | OvernightUPL | ||
+ | | 3005 | AverageOpenTicks | ||
+ | | 3006 | OvernightPosition | ||
+ | | 3007 | CurrencyRate | ||
+ | | 3008 | TotalBuyFillTicks | ||
+ | | 3009 | TotalSellFillTicks | ||
+ | | 3010 | TotalOpenTicks | ||
+ | | 3011 | TotalOpenVolume | ||
+ | | 3100 | AccountID | ||
+ | | 3101 | AccountName | ||
+ | | 3102 | ActiveTimeStart | ||
+ | | 3103 | ActiveTimeStop | ||
+ | | 3104 | BlockExpiring | ||
+ | | 3105 | DayLossLimit | ||
+ | | 3106 | Deleted | ||
+ | | 3107 | DisplayName | ||
+ | | 3108 | EditMargin | ||
+ | | 3109 | EMail | N | Fill notification email | | ||
+ | | 3110 | Enabled | ||
+ | | 3111 | Firm | N | Firm name | | ||
+ | | 3112 | FirmID | ||
+ | | 3113 | LossLimit | ||
+ | | 3114 | LossLimitPC | ||
+ | | 3115 | MarginPC | ||
+ | | 3116 | MaxAccountPosition | ||
+ | | 3117 | MaxClipSize | ||
+ | | 3118 | MaxContractMargin | ||
+ | | 3119 | MaxPosition | ||
+ | | 3120 | MinBalance | ||
+ | | 3121 | Mode | N | M=By Market, C=By Contract, A=By Account | ||
+ | | 3122 | OrderRouting | ||
+ | | 3123 | OvernightMarginPC | ||
+ | | 3124 | ParentFirmID | ||
+ | | 3125 | PLRollover | ||
+ | | 3126 | PositionRollover | ||
+ | | 3127 | PreTradeDisabled | ||
+ | | 3128 | RiskAlerts | ||
+ | | 3131 | StrategyMaxClipSize | ||
+ | | 3132 | StrategyMaxPosition | ||
+ | | 3133 | StrategyTotalPitTrades | ||
+ | | 3134 | TotalPitTrades | ||
+ | | 3135 | UsePLForMargin | ||
+ | | 3136 | WarningThresholdLossLimit | N | Warning threshold % of Loss Limit | | ||
+ | | 3137 | WarningThresholdMargin | ||
+ | | 3138 | WarningThresholdPL | ||
+ | | 3139 | WideMarket | ||
+ | | 3140 | UserID | ||
+ | | 3141 | UsrName | ||
+ | | 3142 | UserFirm | ||
+ | | 3143 | UserParentFirm | ||
+ | | 3144 | UserIsMaster | ||
+ | | 3145 | UserRoles | ||
+ | | 3146 | UserType | ||
+ | | 12 | Commission | ||
+ | | 13 | CommType | ||
+ | | **Standard Trailer** | Y | ||
+ | |||
+ | |||
+ | Sample Messages | ||
+ | |||
+ | Account Details | ||
+ | |||
+ | < | ||
+ | [FIXCOLLATERALINQUIRY] 34=64|49=T4Example|56=T4|52=20121218-15: | ||
+ | 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: | ||
+ | [CollInquiryID] 909 = ci-12/ | ||
+ | [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: | ||
+ | |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: | ||
+ | [CollRptID] 908 = cr-634914191578066280 | ||
+ | [CollInquiryID] 909 = ci-12/ | ||
+ | [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 | ||
+ | |||
+ | </ | ||
+ | |||
+ | Account Update | ||
+ | |||
+ | < | ||
+ | [fixcollateralreport] 34=1464|49=T4|56=T4Example|50=T4FIX|52=20121218-15: | ||
+ | |909=ci-12/ | ||
+ | |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: | ||
+ | [CollRptID] 908 = cr-634914191578066280 | ||
+ | [CollInquiryID] 909 = ci-12/ | ||
+ | [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) | ||
+ | </ | ||
+ | |||
+ | Account Position Update | ||
+ | < | ||
+ | |||
+ | [fixcollateralreport] 34=1465|49=T4|56=T4Example|50=T4FIX|52=20121218-15: | ||
+ | |909=ci-12/ | ||
+ | |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: | ||
+ | [CollRptID] 908 = cr-634914191578066280 | ||
+ | [CollInquiryID] 909 = ci-12/ | ||
+ | [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 | ||
+ | </ | ||
+ | |||
+ | [[developers: | ||
+ | |||