Skip to content

FIX MESSAGE 35=G

OrderCancelReplaceRequest

MsgType (35) = GSingleGeneralOrderHandlingAdded FIX.2.7

Definition

The order cancel/replace request is used to change the parameters of an existing order.

Message structure 265 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 = G

    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. 37 OrderIDString

    Unique identifier of most recent order as assigned by sell-side (broker, exchange, ECN).

  3. 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
  4. 75 TradeDateLocalMktDate
  5. 41 OrigClOrdIDStringRequired

    ClOrdID of the previous non rejected order (NOT the initial order of the day) when canceling or replacing an order.

  6. 11 ClOrdIDStringRequired

    Unique identifier of replacement order as assigned by institution or by the intermediary with the closest association with the investor. Note that this identifier will be used in ClOrdID field of the Cancel Reject message if the replacement request is rejected.

  7. 66 ListIDString

    Required for List Orders

  8. 586 OrigOrdModTimeUTCTimestamp

    TransactTime of the last state change that occurred to the original order

  9. 1 AccountString
  10. 70 AllocIDString

    Used to assign an overall allocation id to the block of preallocations

  11. PreAllocGrpRepeating groupCount tag 78

    Number of repeating groups for pre-trade allocation

    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.

  12. 64 SettlDateLocalMktDate

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

  13. 18 ExecInstMultipleValueString

    Can contain multiple instructions, space delimited. Replacement order must be created with new parameters (i.e. original order values will not be brought forward to replacement order unless redefined within this message).

  14. TrdgSesGrpRepeating groupCount tag 386

    Specifies the number of repeating TradingSessionIDs

    1. 386 NoTradingSessionsGroup count
  15. InstrumentComponentRequired

    Must match original order

    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

  16. FinancingDetailsComponent

    Must match original order

    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.

  17. UndInstrmtGrpRepeating groupCount tag 711

    Number of underlyings

    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

  18. 54 SidecharRequired

    Should match original order's side, however, if bilaterally agreed to the following groups could potentially be interchanged: Buy and Buy Minus Sell, Sell Plus, Sell Short, and Sell Short Exempt Cross, Cross Short, and Cross Short Exempt

  19. 60 TransactTimeUTCTimestampRequired

    Time this order request was initiated/released by the trader or trading system.

  20. OrderQtyDataComponentRequired

    Note: OrderQty value should be the "Total Intended Order Quantity" (including the amount already executed for this chain of orders)

    1. One of CashOrderQty, OrderQty, or (for CIV only) OrderPercent is required. Note that unless otherwise specified, only one of CashOrderQty, OrderQty, or OrderPercent should be specified.

    2. One of CashOrderQty, OrderQty, or (for CIV only) OrderPercent is required. Note that unless otherwise specified, only one of CashOrderQty, OrderQty, or OrderPercent should be specified. Specifies the approximate "monetary quantity" for the order. Broker is responsible for converting and calculating OrderQty in tradeable units (e.g. shares) for subsequent messages.

    3. 516 OrderPercentPercentage

      For CIV - Optional. One of CashOrderQty, OrderQty or (for CIV only) OrderPercent is required. Note that unless otherwise specified, only one of CashOrderQty, OrderQty, or OrderPercent should be specified.

    4. For CIV - Optional

    5. For CIV - Optional

  21. 40 OrdTypecharRequired
  22. 44 PricePrice

    Required for limit OrdTypes. For F/X orders, should be the "all-in" rate (spot rate adjusted for forward points). Can be used to specify a limit price for a pegged order, previously indicated, etc.

  23. 99 StopPxPrice

    Required for OrdType = "Stop" or OrdType = "Stop limit".

  24. 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.

  25. YieldDataComponent
    1. 235 YieldTypeString
    2. 236 YieldPercentage
    3. 701 YieldCalcDateLocalMktDate
  26. PegInstructionsComponent
    1. Amount (signed) added to the peg for a pegged order in the context of the PegOffsetType

    2. Describes whether peg is static/fixed or floats

    3. Type of Peg Offset (e.g. price offset, tick offset etc)

    4. Specifies nature of resulting pegged price (e.g. or better limit, strict limit etc)

    5. If the calculated peg price is not a valid tick price, specifies how to round the price (e.g. be more or less aggressive)

    6. The scope of the "related to" price of the peg (e.g. local, global etc)

  27. DiscretionInstructionsComponent
    1. What the discretionary price is related to (e.g. primary price, display price etc)

    2. Amount (signed) added to the "related to" price specified via DiscretionInst, in the context of DiscretionOffsetType

    3. Describes whether discretion price is static/fixed or floats

    4. Type of Discretion Offset (e.g. price offset, tick offset etc)

    5. Specifies the nature of the resulting discretion price (e.g. or better limit, strict limit etc)

    6. If the calculated discretion price is not a valid tick price, specifies how to round the price (e.g. to be more or less aggressive)

    7. The scope of "related to" price of the discretion (e.g. local, global etc)

  28. The target strategy of the order

  29. For further specification of the TargetStrategy

  30. Mandatory for a TargetStrategy=Participate order and specifies the target particpation rate. For other order types optionally specifies a volume limit (i.e. do not be more than this percent of the market volume)

  31. 15 CurrencyCurrency

    Must match original order.

  32. Absence of this field indicates Day order

  33. 168 EffectiveTimeUTCTimestamp

    Can specify the time at which the order should be considered valid

  34. 432 ExpireDateLocalMktDate

    Conditionally required if TimeInForce = GTD and ExpireTime is not specified.

  35. 126 ExpireTimeUTCTimestamp

    Conditionally required if TimeInForce = GTD and ExpireDate is not specified.

  36. States whether executions are booked out or accumulated on a partially filled GT order

  37. CommissionDataComponent
    1. 479 CommCurrencyCurrency

      For CIV - Optional

    2. For CIV - Optional

  38. 529 OrderRestrictionsMultipleValueString
  39. 121 ForexReqBoolean

    Indicates that broker is requested to execute a Forex accommodation trade in conjunction with the security trade.

  40. Required if ForexReq = Y.

  41. Method for booking out this order. Used when notifying a broker that an order to be settled by that broker is to be booked out as an OTC derivative (e.g. CFD or similar). Absence of this field implies regular booking.

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

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

  45. 193 SettlDate2LocalMktDate

    Can be used with OrdType = "Forex - Swap" to specify the "value date" for the future portion of an F/X swap.

  46. Can be used with OrdType = "Forex - Swap" to specify the order quantity for the future portion of an F/X swap.

  47. 640 Price2Price

    Can be used with OrdType = "Forex - Swap" to specify the price for the future portion of an F/X swap.

  48. For use in derivatives omnibus accounting

  49. For use with derivatives, such as options

  50. 114 LocateReqdBoolean

    Required for short sell orders

  51. For CIV - Optional

  52. 513 RegistIDString

    Reference to Registration Instructions message for this Order.

  53. Supplementary registration information for this Order

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