Skip to content

FIX MESSAGE 35=J

AllocationInstruction

MsgType (35) = JAllocationAdded FIX.2.7

Definition

The Allocation Instruction message provides the ability to specify how an order or set of orders should be subdivided amongst one or more accounts. In versions of FIX prior to version 4.4, this same message was known as the Allocation message. Note in versions of FIX prior to version 4.4, the allocation message was also used to communicate fee and expense details from the Sellside to the Buyside. This role has now been removed from the Allocation Instruction and is now performed by the new (to version 4.4) Allocation Report and Confirmation messages.,The Allocation Report message should be used for the Sell-side Initiated Allocation role as defined in previous versions of the protocol.

Message structure 347 distinct fields

Source order, including nested components and groups. Group counts precede the repeated entries. “Required here” is relative to the enclosing component or group, not unconditional in the message. A dash means not marked required; conditional requirements remain in the source notes. This is a reference, not a counterparty-specific validator.

  1. StandardHeaderComponentRequired

    MsgType = J

    1. 8 BeginStringStringRequired here

      FIX.4.4 (Always unencrypted, must be first field in message)

    2. 9 BodyLengthLengthRequired here

      (Always unencrypted, must be second field in message)

    3. 35 MsgTypeStringRequired here

      (Always unencrypted, must be third field in message)

    4. 49 SenderCompIDStringRequired here

      (Always unencrypted)

    5. 56 TargetCompIDStringRequired here

      (Always unencrypted)

    6. Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)

    7. Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)

    8. Required to identify length of encrypted section of message. (Always unencrypted)

    9. Required when message body is encrypted. Always immediately follows SecureDataLen field.

    10. 34 MsgSeqNumSeqNumRequired here

      (Can be embedded within encrypted data section.)

    11. (Can be embedded within encrypted data section.)

    12. Sender's LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)

    13. "ADMIN" reserved for administrative messages not intended for a specific user. (Can be embedded within encrypted data section.)

    14. Trading partner LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)

    15. Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)

    16. Trading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.)

    17. Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)

    18. Trading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.)

    19. 43 PossDupFlagBoolean

      Always required for retransmitted messages, whether prompted by the sending system or as the result of a resend request. (Can be embedded within encrypted data section.)

    20. 97 PossResendBoolean

      Required when message may be duplicate of another message sent under a different sequence number. (Can be embedded within encrypted data section.)

    21. 52 SendingTimeUTCTimestampRequired here

      (Can be embedded within encrypted data section.)

    22. 122 OrigSendingTimeUTCTimestamp

      Required for message resent as a result of a ResendRequest. If data is not available set to same value as SendingTime (Can be embedded within encrypted data section.)

    23. Required when specifying XmlData to identify the length of a XmlData message block. (Can be embedded within encrypted data section.)

    24. Can contain an XML formatted message block (e.g. FIXML). Always immediately follows XmlDataLen field. (Can be embedded within encrypted data section.) See Volume 1: FIXML Support

    25. Type of message encoding (non-ASCII characters) used in a message’s "Encoded" fields. Required if any "Encoding" fields are used.

    26. The last MsgSeqNum value received by the FIX engine and processed by downstream application, such as trading system or order routing system. Can be specified on every message sent. Useful for detecting a backlog with a counterparty.

    27. HopRepeating groupCount tag 627

      Number of repeating groups of historical "hop" information. Only applicable if OnBehalfOfCompID is used, however, its use is optional. Note that some market regulations or counterparties may require tracking of message hops.

      1. 627 NoHopsGroup count
      2. 628 HopCompIDString
      3. 629 HopSendingTimeUTCTimestamp
      4. 630 HopRefIDSeqNum
  2. 70 AllocIDStringRequired

    Unique identifier for this allocation instruction message

  3. 71 AllocTransTypecharRequired

    i.e. New, Cancel, Replace

  4. 626 AllocTypeintRequired

    Specifies the purpose or type of Allocation message

  5. Optional second identifier for this allocation instruction (need not be unique)

  6. 72 RefAllocIDString

    Required for AllocTransType = Replace or Cancel

  7. Required for AllocTransType = Replace or Cancel Gives the reason for replacing or cancelling the allocation instruction

  8. Required if AllocType = 8 (Request to Intermediary) Indicates status that is requested to be transmitted to counterparty by the intermediary (i.e. clearing house)

  9. Can be used to link two different Allocation messages (each with unique AllocID) together, i.e. for F/X "Netting" or "Swaps"

  10. Can be used to link two different Allocation messages and identifies the type of link. Required if AllocLinkID is specified.

  11. Can be used with AllocType=" Ready-To-Book "

  12. Indicates how the orders being booked and allocated by this message are identified, i.e. by explicit definition in the NoOrders group or not.

  13. OrdAllocGrpRepeating groupCount tag 73

    Indicates number of orders to be combined for allocation. If order(s) were manually delivered set to 1 (one).Required when AllocNoOrdersType = 1

    1. 73 NoOrdersGroup count
    2. 11 ClOrdIDString
    3. 37 OrderIDString
    4. 66 ListIDString
    5. NestedParties2Repeating groupCount tag 756
      1. 756 NoNested2PartyIDsGroup count

        Repeating group below should contain unique combinations of Nested2PartyID, Nested2PartyIDSource, and Nested2PartyRole

      2. Used to identify source of Nested2PartyID. Required if Nested2PartyIDSource is specified. Required if NoNested2PartyIDs > 0.

      3. Used to identify class source of Nested2PartyID value (e.g. BIC). Required if Nested2PartyID is specified. Required if NoNested2PartyIDs > 0.

      4. Identifies the type of Nested2PartyID (e.g. Executing Broker). Required if NoNested2PartyIDs > 0.

      5. NstdPtys2SubGrpRepeating groupCount tag 806

        Repeating group of Nested2Party sub-identifiers.

  14. ExecAllocGrpRepeating groupCount tag 124

    Indicates number of individual execution repeating group entries to follow. Absence of this field indicates that no individual execution entries are included. Primarily used to support step-outs.

    1. 124 NoExecsGroup count
    2. 17 ExecIDString
    3. 31 LastPxPrice
  15. 574 MatchTypeString
  16. 54 SidecharRequired
  17. InstrumentComponentRequired
    1. 55 SymbolString

      Common, "human understood" representation of the security. SecurityID value can be specified if no symbol exists (e.g. non-exchange traded Collective Investment Vehicles) Use "[N/A]" for products which do not have a symbol.

    2. 65 SymbolSfxString

      Used in Fixed Income with a value of "WI" to indicate "When Issued" for a security to be reissued under an old CUSIP or ISIN or with a value of "CD" to indicate a EUCP with lump-sum interest rather than discount price.

    3. 48 SecurityIDString

      Takes precedence in identifying security to counterparty over SecurityAltID block. Requires SecurityIDSource if specified.

    4. Required if SecurityID is specified.

    5. SecAltIDGrpRepeating groupCount tag 454

      Number of alternate Security Identifiers

      1. 454 NoSecurityAltIDGroup count
    6. Indicates the type of product the security is associated with (high-level category)

    7. 461 CFICodeString

      Indicates the type of security using ISO 10962 standard, Classification of Financial Instruments (CFI code) values. It is recommended that CFICode be used instead of SecurityType for non-Fixed Income instruments.

    8. It is recommended that CFICode be used instead of SecurityType for non-Fixed Income instruments. Required for Fixed Income. Refer to Volume 7 - Fixed Income Futures and Options should be specified using the CFICode[461] field instead of SecurityType[167] (Refer to Volume 7 - Recommendations and Guidelines for Futures and Options Markets.)

    9. Sub-type qualification/identification of the SecurityType (e.g. for SecurityType="MLEG"). If specified, SecurityType is required.

    10. Specifies the month and year of maturity. Applicable for standardized derivatives which are typically only referenced by month and year (e.g. S&P futures). Note MaturityDate (a full date) can also be specified.

    11. 541 MaturityDateLocalMktDate

      Specifies date of maturity (a full date). Note that standardized derivatives which are typically only referenced by month and year (e.g. S&P futures).may use MaturityMonthYear and/or this field. When using MaturityMonthYear, it is recommended that markets and sell sides report the MaturityDate on all outbound messages as a means of data enrichment.

    12. For Options.

    13. 224 CouponPaymentDateLocalMktDate

      Date interest is to be paid. Used in identifying Corporate Bond issues.

    14. 225 IssueDateLocalMktDate

      Date instrument was issued. For Fixed Income IOIs for new issues, specifies the issue date.

    15. 239 RepoCollateralSecurityTypeDeprecated FIX.4.4String

      (Deprecated, use UnderlyingSecurityType (310) )

    16. (Deprecated, use TerminationType (788) )

    17. 227 RepurchaseRatePercentage

      (Deprecated, use Price (44) )

    18. 228 Factorfloat

      For Fixed Income: Amortization Factor for deriving Current face from Original face for ABS or MBS securities, note the fraction may be greater than, equal to or less than 1. In TIPS securities this is the Inflation index. Qty * Factor * Price = Gross Trade Amount For Derivatives: Contract Value Factor by which price must be adjusted to determine the true nominal value of one futures/options contract. (Qty * Price) * Factor = Nominal Value

    19. The location at which records of ownership are maintained for this instrument, and at which ownership changes must be recorded. Can be used in conjunction with ISIN to address ISIN uniqueness issues.

    20. ISO Country code of instrument issue (e.g. the country portion typically used in ISIN). Can be used in conjunction with non-ISIN SecurityID (e.g. CUSIP for Municipal Bonds without ISIN) to provide uniqueness.

    21. A two-character state or province abbreviation.

    22. The three-character IATA code for a locale (e.g. airport code for Municipal Bonds).

    23. 240 RedemptionDateLocalMktDate

      (Deprecated, use YieldRedemptionDate (696) in <YieldData> component block)

    24. Used for derivatives, such as options and covered warrants

    25. Used for derivatives

    26. Used for derivatives, such as options and covered warrants to indicate a versioning of the contract when required due to corporate actions to the underlying. Should not be used to indicate type of option - use the CFICode[461] for this purpose.

    27. For Fixed Income, Convertible Bonds, Derivatives, etc. Note: If used, quantities should be expressed in the "nominal" (e.g. contracts vs. shares) amount.

    28. 223 CouponRatePercentage

      For Fixed Income.

    29. Can be used to identify the security.

    30. 106 IssuerString
    31. Must be set if EncodedIssuer field is specified and must immediately precede it.

    32. Encoded (non-ASCII characters) representation of the Issuer field in the encoded format specified via the MessageEncoding field.

    33. Must be set if EncodedSecurityDesc field is specified and must immediately precede it.

    34. Encoded (non-ASCII characters) representation of the SecurityDesc field in the encoded format specified via the MessageEncoding field.

    35. 691 PoolString

      Identifies MBS / ABS pool

    36. Must be present for MBS/TBA

    37. The program under which a commercial paper is issued

    38. 876 CPRegTypeString

      The registration type of a commercial paper issuance

    39. EvntGrpRepeating groupCount tag 864

      Number of repeating EventType group entries.

      1. 864 NoEventsGroup count
      2. 866 EventDateLocalMktDate
      3. 867 EventPxPrice
      4. 868 EventTextString
    40. 873 DatedDateLocalMktDate

      If different from IssueDate

    41. If different from IssueDate and DatedDate

  18. InstrumentExtensionComponent
    1. Identifies the form of delivery.

    2. 869 PctAtRiskPercentage

      Percent at risk due to lowest possible call.

    3. AttrbGrpRepeating groupCount tag 870

      Number of repeating InstrAttrib group entries.

      1. 870 NoInstrAttribGroup count
  19. FinancingDetailsComponent
    1. The full name of the base standard agreement, annexes and amendments in place between the principals and applicable to this deal

    2. A common reference to the applicable standing agreement between the principals

    3. 915 AgreementDateLocalMktDate

      A reference to the date the underlying agreement was executed.

    4. Currency of the underlying agreement.

    5. For Repos the timing or method for terminating the agreement.

    6. 916 StartDateLocalMktDate

      Settlement date of the beginning of the deal

    7. 917 EndDateLocalMktDate

      Repayment / repurchase date

    8. Delivery or custody arrangement for the underlying securities

    9. 898 MarginRatioPercentage

      Percentage of cash value that underlying security collateral must meet.

  20. UndInstrmtGrpRepeating groupCount tag 711
    1. 711 NoUnderlyingsGroup count
    2. UnderlyingInstrumentComponent
      1. UndSecAltIDGrpRepeating groupCount tag 457
      2. 243 UnderlyingRepoCollateralSecurityTypeDeprecated FIX.4.4String

        (Deprecated, not applicable/used for Repos)

      3. (Deprecated, not applicable/used for Repos)

      4. (Deprecated, not applicable/used for Repos)

      5. (Deprecated, use YieldRedemptionDate (696) in <YieldData> component block)

      6. Specific to the <UnderlyingInstrument> (not in <Instrument>)

      7. Specific to the <UnderlyingInstrument> (not in <Instrument>) Unit amount of the underlying security (par, shares, currency, etc.)

      8. Specific to the <UnderlyingInstrument> (not in <Instrument>) In a financing deal clean price (percent-of-par or per unit) of the underlying security or basket.

      9. Specific to the <UnderlyingInstrument> (not in <Instrument>) In a financing deal price (percent-of-par or per unit) of the underlying security or basket. "Dirty" means it includes accrued interest

      10. Specific to the <UnderlyingInstrument> (not in <Instrument>) In a financing deal price (percent-of-par or per unit) of the underlying security or basket at the end of the agreement.

      11. Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value attributed to this collateral at the start of the agreement

      12. Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value currently attributed to this collateral

      13. Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value attributed to this collateral at the end of the agreement

      14. UnderlyingStipulationsRepeating groupCount tag 887

        Specific to the <UnderlyingInstrument> (not in <Instrument>)

        1. 887 NoUnderlyingStipsGroup count
        2. Required if NoUnderlyingStips >0

  21. InstrmtLegGrpRepeating groupCount tag 555
    1. 555 NoLegsGroup count
    2. InstrumentLegComponent
      1. 600 LegSymbolString
      2. LegSecAltIDGrpRepeating groupCount tag 604
      3. 611 LegMaturityDateLocalMktDate
      4. 249 LegIssueDateLocalMktDate
      5. 250 LegRepoCollateralSecurityTypeDeprecated FIX.4.4String

        (Deprecated, not applicable/used for Repos)

      6. (Deprecated, not applicable/used for Repos)

      7. (Deprecated, not applicable/used for Repos)

      8. 254 LegRedemptionDateLocalMktDate

        (Deprecated, use YieldRedemptionDate (696) in <YieldData> component block)

      9. 615 LegCouponRatePercentage
      10. 617 LegIssuerString
      11. Specific to the <InstrumentLeg> (not in <Instrument>)

      12. Specific to the <InstrumentLeg> (not in <Instrument>)

      13. 556 LegCurrencyCurrency

        Specific to the <InstrumentLeg> (not in <Instrument>)

      14. 740 LegPoolString

        Identifies MBS / ABS pool

      15. 739 LegDatedDateLocalMktDate
  22. 53 QuantityQtyRequired

    Total quantity (e.g. number of shares) allocated to all accounts, or that is Ready-To-Book

  23. 30 LastMktExchange

    Market of the executions.

  24. 6 AvgPxPriceRequired

    For F/X orders, should be the "all-in" rate (spot rate adjusted for forward points).

  25. 860 AvgParPxPrice
  26. SpreadOrBenchmarkCurveDataComponent
    1. 218 SpreadPriceOffset

      For Fixed Income

    2. Must be present if BenchmarkPrice is used.

    3. The identifier of the benchmark security, e.g. Treasury against Corporate bond.

    4. Source of BenchmarkSecurityID. If not specified, then ID Source is understood to be the same as that in the Instrument block.

  27. 15 CurrencyCurrency

    Currency of AvgPx. Should be the currency of the local market or exchange where the trade was conducted.

  28. Absence of this field indicates that default precision arranged by the broker/institution is to be used

  29. PartiesRepeating groupCount tag 453
    1. 453 NoPartyIDsGroup count

      Repeating group below should contain unique combinations of PartyID, PartyIDSource, and PartyRole

    2. 448 PartyIDString

      Used to identify source of PartyID. Required if PartyIDSource is specified. Required if NoPartyIDs > 0.

    3. Used to identify class source of PartyID value (e.g. BIC). Required if PartyID is specified. Required if NoPartyIDs > 0.

    4. Identifies the type of PartyID (e.g. Executing Broker). Required if NoPartyIDs > 0.

    5. PtysSubGrpRepeating groupCount tag 802

      Repeating group of Party sub-identifiers.

      1. 802 NoPartySubIDsGroup count
  30. 75 TradeDateLocalMktDateRequired
  31. 60 TransactTimeUTCTimestamp

    Date/time when allocation is generated

  32. 64 SettlDateLocalMktDate

    Takes precedence over SettlType value and conditionally required/omitted for specific SettlType values.

  33. Method for booking. Used to provide notification that this is to be booked out as an OTC derivative (e.g. CFD or similar). Absence of this field implies regular booking.

  34. Expressed in same currency as AvgPx. Sum of (AllocQty * AllocAvgPx or AllocPrice).

  35. Expressed in same currency as AvgPx. Sum of AllocNetMoney.

  36. Indicates if Allocation has been automatically accepted on behalf of the Carry Firm by the Clearing House

  37. 58 TextString
  38. Must be set if EncodedText field is specified and must immediately precede it.

  39. Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.

  40. Applicable for Convertible Bonds and fixed income

  41. Applicable for Convertible Bonds and fixed income

  42. Applicable for Convertible Bonds and fixed income (REMOVED FROM THIS LOCATION AS OF FIX 4.4, REPLACED BY AllocAccruedInterest)

  43. (Deprecated) use AccruedInterestAmt Sum of AccruedInterestAmt within repeating group.

  44. For repurchase agreements the accrued interest on termination.

  45. For repurchase agreements the start (dirty) cash consideration

  46. For repurchase agreements the end (dirty) cash consideration

  47. StipulationsRepeating groupCount tag 232
    1. 232 NoStipulationsGroup count
    2. Required if NoStipulations >0

  48. YieldDataComponent
    1. 235 YieldTypeString
    2. 236 YieldPercentage
    3. 701 YieldCalcDateLocalMktDate
  49. Indicates total number of allocation groups (used to support fragmentation). Must equal the sum of all NoAllocs values across all message fragments making up this allocation instruction. Only required where message has been fragmented.

  50. Indicates whether this is the last fragment in a sequence of message fragments. Only required where message has been fragmented.

  51. AllocGrpRepeating groupCount tag 78

    Indicates number of allocation groups to follow. Not required for AllocTransType=Cancel Not required for AllocType=" Ready-To-Book " or "Warehouse instruction".

    1. 78 NoAllocsGroup count
    2. NestedPartiesRepeating groupCount tag 539
      1. 539 NoNestedPartyIDsGroup count

        Repeating group below should contain unique combinations of NestedPartyID, NestedPartyIDSource, and NestedPartyRole

      2. Used to identify source of NestedPartyID. Required if NestedPartyIDSource is specified. Required if NoNestedPartyIDs > 0.

      3. Used to identify class source of NestedPartyID value (e.g. BIC). Required if NestedPartyID is specified. Required if NoNestedPartyIDs > 0.

      4. Identifies the type of NestedPartyID (e.g. Executing Broker). Required if NoNestedPartyIDs > 0.

      5. NstdPtysSubGrpRepeating groupCount tag 804

        Repeating group of NestedParty sub-identifiers.

    3. 161 AllocTextString
    4. CommissionDataComponent
      1. 479 CommCurrencyCurrency

        For CIV - Optional

      2. For CIV - Optional

    5. 119 SettlCurrAmtDeprecated FIX.4.4Amt

      (Deprecated) Replaced by AllocSettlCurrAmt.

    6. 120 SettlCurrencyDeprecated FIX.4.4Currency

      (Deprecated) Replaced by AllocSettlCurrency.

    7. MiscFeesGrpRepeating groupCount tag 136
      1. 136 NoMiscFeesGroup count
      2. 138 MiscFeeCurrCurrency
    8. ClrInstGrpRepeating groupCount tag 576
    9. SettlInstructionsDataComponent
      1. Required if AllocSettlInstType = 1 or 2

      2. Required if AllocSettlInstType = 3 (should not be populated otherwise)

      3. Required if AllocSettlInstType = 3 (should not be populated otherwise)

      4. Identifier used within the StandInstDbType Required if AllocSettlInstType = 3 (should not be populated otherwise)

      5. DlvyInstGrpRepeating groupCount tag 85

        Required (and must be > 0) if AllocSettlInstType = 2 (should not be populated otherwise)

        1. 85 NoDlvyInstGroup count
        2. SettlPartiesRepeating groupCount tag 781
          1. 781 NoSettlPartyIDsGroup count

            Repeating group below should contain unique combinations of SettlPartyID, SettlPartyIDSource, and SettlPartyRole

          2. Used to identify source of SettlPartyID. Required if SettlPartyIDSource is specified. Required if NoSettlPartyIDs > 0.

          3. Used to identify class source of SettlPartyID value (e.g. BIC). Required if SettlPartyID is specified. Required if NoSettlPartyIDs > 0.

          4. Identifies the type of SettlPartyID (e.g. Executing Broker). Required if NoSettlPartyIDs > 0.

          5. SettlPtysSubGrpRepeating groupCount tag 801

            Repeating group of SettlParty sub-identifiers.

  52. StandardTrailerComponentRequired
    1. Required when trailer contains signature. Note: Not to be included within SecureData field

    2. Note: Not to be included within SecureData field

    3. 10 CheckSumStringRequired here

      (Always unencrypted, always last field in message)