Skip to content

FIX MESSAGE 35=J

Allocation

MsgType (35) = JAllocationAdded FIX.2.7

Definition

The Allocation message provides the ability to specify how an order or set of orders should be subdivided amongst one or more accounts.

FIX 4.2 group names/IDs were assigned during the official Orchestra translation; some mappings to later versions are approximate. This layout stays within the 4.2 source.

Message structure 111 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.2 (Always unencrypted, must be first field in message)

    2. 9 BodyLengthintRequired 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 MsgSeqNumintRequired 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 Appendix M – 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 and processed. Can be specified on every message sent. Useful for detecting a backlog with a counterparty.

    27. Used when a message is sent via a "hub" or "service bureau". If A sends to Q (the hub) who then sends to B via a separate FIX session, then when Q sends to B the value of this field should represent the SendingTime on the message A sent to Q. (always expressed in UTC (Universal Time Coordinated, also known as "GMT")

  2. 70 AllocIDStringRequired
  3. 71 AllocTransTypecharRequired
  4. 72 RefAllocIDString

    Required for AllocTransType = Calculated, Replace, or Cancel

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

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

  7. OrdAllocGrpRepeating groupCount tag 73

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

    1. 73 NoOrdersGroup count
    2. 11 ClOrdIDString

      Order ID assigned by client if order(s) were electronically delivered and executed. If order(s) were manually delivered this field should contain string "MANUAL".

    3. 37 OrderIDString
    4. Can be used to provide order id used by exchange or executing system.

    5. 66 ListIDString

      Required for List Orders.

    6. 105 WaveNoString
  8. 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. Number of shares in individual execution. Required if NoExecs > 0

    3. 17 ExecIDString
    4. 31 LastPxPrice

      Price of individual execution. Required if NoExecs > 0

    5. Can be specified by broker for AllocTransTyp=Calculated

  9. 54 SidecharRequired
  10. 55 SymbolStringRequired
  11. 65 SymbolSfxString
  12. 48 SecurityIDString
  13. 22 IDSourceString
  14. Must be specified if a Future or Option. If a Future: Symbol, SecurityType, and MaturityMonthYear are required. If an Option: Symbol, SecurityType, MaturityMonthYear, PutOrCall, and StrikePrice are required.

  15. Specifies the month and year of maturity. Required if MaturityDay is specified.

  16. 205 MaturityDayDayOfMonth

    Can be used in conjunction with MaturityMonthYear to specify a particular maturity date.

  17. For Options.

  18. For Options.

  19. For Options.

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

  21. For Fixed Income.

  22. Can be used to identify the security.

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

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

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

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

  28. 53 SharesQtyRequired

    Total number of shares allocated to all accounts

  29. 30 LastMktExchange

    Market of the executions.

  30. 6 AvgPxPriceRequired

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

  31. 15 CurrencyCurrency

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

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

  33. 75 TradeDateLocalMktDateRequired
  34. 60 TransactTimeUTCTimestamp

    Date/time when allocation is generated

  35. Absence of this field is interpreted as Regular

  36. 64 FutSettDateLocalMktDate

    "Settlement Date". Required with SettlmntTyp other than regular

  37. Expressed in same currency as AvgPx. Sum of (AllocShares * AllocAvgPx or AllocPrice).

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

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

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

  42. Applicable for Convertible Bonds and fixed income

  43. Applicable for Convertible Bonds and fixed income

  44. AllocGrpRepeating groupCount tag 78

    Indicates number of allocation groups to follow.

    1. 78 NoAllocsGroup count
    2. May be the same value as BrokerOfCredit if ProcessCode is step-out or soft-dollar step-out and Institution does not wish to disclose individual account breakdowns to the ExecBroker. Required if NoAllocs > 0. Must be first field in repeating group.

    3. Used when performing "executed price" vs. "average price" allocations (e.g. Japan). AllocAccount plus AllocPrice form a unique Allocs entry. Used in lieu of AllocAvgPx.

    4. 80 AllocSharesQtyRequired here
    5. Required if ProcessCode is step-out or soft-dollar step-out

    6. 161 AllocTextString

      Free format text field related to this AllocAccount

    7. Must be set if EncodedAllocText field is specified and must immediately precede it.

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

    9. 76 ExecBrokerString

      Required for step-in and step-out trades

    10. 109 ClientIDString

      Used for firm identification in third-party transactions (should not be a substitute for OnBehalfOfCompID/DeliverToCompID).

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

    12. NetMoney for this AllocAccount ((AllocShares * AllocAvgPx) - Commission - sum of MiscFeeAmt + AccruedInterestAmt) if a Sell ((AllocShares * AllocAvgPx) + Commission + sum of MiscFeeAmt + AccruedInterestAmt) if a Buy

    13. AllocNetMoney in SettlCurrency for this AllocAccount if SettlCurrency is different from "overall" Currency

    14. SettlCurrency for this AllocAccount if different from "overall" Currency. Required if SettlCurrAmt is specified.

    15. Foreign exchange rate used to compute SettlCurrAmt from Currency to SettlCurrency

    16. Specifies whether the SettlCurrFxRate should be multiplied or divided

    17. Applicable for Convertible Bonds and fixed income

    18. Type of Settlement Instructions which will be provided via Settlement Instructions message (0=Default, 1=Standing Instructions, 2=Specific Allocation Account Overriding, 3=Specific Allocation Account Standing)

    19. MiscFeesGrpRepeating groupCount tag 136

      Required if any miscellaneous fees are reported. Indicates number of repeating entries. Repeating group within Alloc repeating group. ** Nested Repeating Group follows **

      1. 136 NoMiscFeesGroup count
      2. Required if NoMiscFees > 0

      3. 138 MiscFeeCurrCurrency

        Required if NoMiscFees > 0

      4. Required if NoMiscFees > 0

  45. 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)