FIX Message AllocationReport (MsgType=AS)
|MsgType||FIX Specification||First introduced|
|MsgType=AS||PostTrade messages - Allocation||FIX.4.4|
Sent from sell-side to buy-side, sell-side to 3rd-party or 3rd-party to buy-side, the Allocation Report (Claim) provides account breakdown of an order or set of orders plus any additional follow-up front-office information developed post-trade during the trade allocation, matching and calculation phase. In versions of FIX prior to version 4.4, this functionality was provided through the Allocation message. Depending on the needs of the market and the timing of "confirmed" status, the role of Allocation Report can be taken over in whole or in part by the Confirmation message.
Note the response to the Allocation Report message is the Allocation Report Ack message. In versions of FIX prior to version 4.4, the Allocation ACK served this purpose.
An Allocation Report message can be submitted with AllocReportType of
- Sellside Calculated Using Preliminary (includes Misc Fees, Accrued Interest and Net Money)
- Sellside Calculated Without Preliminary (includes Misc Fees, Accrued Interest and Net Money). (AllocType=" Sellside Initiated"), i.e. where the allocations have been provided via some other mechanism or agreed earlier in the order process.
- Warehouse recap - sent unsolicited by sellside, used to communicate confirmation and current status of any warehoused position in a particular stock (see Volume 7 - PRODUCT: EQUITIES for specific usage guidance on this topic)
Settlement instructions are supported on the Allocation Report message to allow the Respondent (sell-side party or carry firm) to send an override of its own instructions to the Initiator.
General guidelines applicable to this message:
- AllocReportID should be unique for all Allocation Report messages.
- To reject an Allocation Report message, an Allocation Report Ack with AllocStatus 'Block level reject' or 'Account level reject' should be used. Use of 'Block level reject' means the entire message has been rejected (e.g. net money mismatch). 'Account level reject' is used when the block level matches successfully but one or more (or all) of the constituent account level details fails validation (e.g. account not found, incorrect MiscFees). In the latter case, the rejecting party can (optionally) notify the instructing party of those allocation details that are being rejected by listing the offending account numbers in the Allocation Instruction Ack message.
- A rejected Allocation Report must be resolved out-of-band.
- Where settling in markets where multiple alternative settlement locations exist, it is recommended that the settlement location (equivalent to ISO15022 'PSET' field) be identified on each allocation detail within the NoAllocs repeating group. A nested parties component block is provided which can be used for this purpose.
The allocation message contains repeating fields for each order, sub-account and individual execution. The repeating fields are shown in the message definition below in typeface Bold-Italic and indented with the -> symbol. The field"s relative position within the repeating group in the message is important. For example, each instance of allocation must be in the order as shown in the message definition below.
- The number of sub-account instances is indicated in NoAllocs.
- Multiple orders can be combined for allocation or for AllocType=" Ready-To-Book" or AllocType = "Warehouse instruction". Note that combined orders must refer to the same instrument and have the same trade date, settlement date and side. The identification of the orders to be combined can be achieved in one of two ways:
- By identifying the number of orders in the NoOrders field and each individual order in the OrderID fields. The AllocNoOrdersType field is used to denote that this is happening and takes value "1=Explicit list provided". If any orders were handled outside FIX, the ClOrdID must be set to 'MANUAL'. Regardless of whether the orders were handled within or outside FIX, the order quantity and average price must also be specified for each order. This is to assist in validating the message and, for manual orders, to help identify the correct orders to book.
- By stating that an unspecified group of orders is to be combined. The NoOrders field in this case is left blank. The AllocNoOrdersType field is set to "0=Not specified" to specify that this is happening. Note use of this approach is only recommended where either the number of orders being booked is extremely large or some kind of aggregation rule is being used.
- Multiple executions can be combined for allocation by identifying the number of executions in the NoExecs field and each individual execution in the ExecID fields. Combined executions must refer to the same instrument, trade date, settlement date and side.
Message Contents By FIX Version
Please post comments, clarifications, examples here. Click on the edit button on the right and away you go!
Don't forget to refer to the FPL Discussion Groups to back up anything you write. You will often find the authoritative statements on matters of FIX specification interpretation there. Links from FIXwiki pages to relevant discussions on the FPL site are very valuable.
For example if you were writing a clarification on how to specify the "quantity" of an order in FIX, you might add the following relevant link, http://www.fixprotocol.org/discuss/read/f5014573, to back up your points.