Definition
Used to submit a cross order into a market. The cross order contains two order sides (a buy and a sell). The cross order is identified by its CrossID.
Message structure 464 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.
StandardHeaderComponentRequired
MsgType = s (lowercase S)
StandardHeader definition & usage →
FIXT.1.1 (Always unencrypted, must be first field in message)
(Always unencrypted, must be second field in message)
(Always unencrypted, must be third field in message)
Indicates application version using a service pack identifier. The ApplVerID applies to a specific message occurrence.
Used to support bilaterally agreed custom functionality
(Always unencrypted)
(Always unencrypted)
Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)
Trading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)
Required to identify length of encrypted section of message. (Always unencrypted)
Required when message body is encrypted. Always immediately follows SecureDataLen field.
(Can be embedded within encrypted data section.)
(Can be embedded within encrypted data section.)
Sender's LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)
"ADMIN" reserved for administrative messages not intended for a specific user. (Can be embedded within encrypted data section.)
Trading partner LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)
Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)
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.)
Trading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)
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.)
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.)
Required when message may be duplicate of another message sent under a different sequence number. (Can be embedded within encrypted data section.)
(Can be embedded within encrypted data section.)
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.)
Required when specifying XmlData to identify the length of a XmlData message block. (Can be embedded within encrypted data section.)
Can contain a XML formatted message block (e.g. FIXML). Always immediately follows XmlDataLen field. (Can be embedded within encrypted data section.) See Volume 1: FIXML Support
Type of message encoding (non-ASCII characters) used in a message's "Encoded" fields. Required if any "Encoding" fields are used.
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.
HopGrpRepeating 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.
RootPartiesRepeating groupCount tag 1116—
Used for acting parties that applies to the whole message, not individual sides.
RootParties definition & usage →
Repeating group below should contain unique combinations of RootPartyID, RootPartyIDSource, and RootPartyRole
Used to identify source of RootPartyID. Required if RootPartyIDSource is specified. Required if NoRootPartyIDs > 0.
Used to identify class source of RootPartyID value (e.g. BIC). Required if RootPartyID is specified. Required if NoRootPartyIDs > 0.
Identifies the type of RootPartyID (e.g. Executing Broker). Required if NoRootPartyIDs > 0.
RootSubPartiesRepeating groupCount tag 1120—
Repeating group of RootParty sub-identifiers.
RootSubParties definition & usage →
Repeating group of RootParty sub-identifiers.
Sub-identifier (e.g. Clearing Acct for PartyID=Clearing Firm) if applicable. Required if NoRootPartySubIDs > 0.
Type of Sub-identifier. Required if NoRootPartySubIDs > 0.
SideCrossOrdModGrpRepeating groupCount tag 552Required
Must be 1 or 2 1 or 2 if CrossType=1 2 otherwise
SideCrossOrdModGrp definition & usage →
Must be 1 or 2 1 or 2 if CrossType=1 2 otherwise
Required when referring to orders that were electronically submitted over FIX or otherwise assigned a ClOrdID(11)
Unique identifier of the order as assigned by institution or by the intermediary with closest association with the investor.
PartiesRepeating groupCount tag 453—
Repeating group below should contain unique combinations of PartyID, PartyIDSource, and PartyRole
Used to identify source of PartyID. Required if PartyIDSource is specified. Required if NoPartyIDs > 0.
Used to identify class source of PartyID value (e.g. BIC). Required if PartyID is specified. Required if NoPartyIDs > 0.
Identifies the type of PartyID (e.g. Executing Broker). Required if NoPartyIDs > 0.
PtysSubGrpRepeating groupCount tag 802—
Repeating group of Party sub-identifiers.
PtysSubGrp definition & usage →
Use to assign an identifier to the block of preallocations
PreAllocGrpRepeating groupCount tag 78—
PreAllocGrp definition & usage →
Number of repeating groups for pre-trade allocation
Required if NoAllocs > 0. Must be first field in repeating group.
NestedPartiesRepeating groupCount tag 539—
Used for NestedPartyRole=Clearing Firm
NestedParties definition & usage →
Repeating group below should contain unique combinations of NestedPartyID, NestedPartyIDSource, and NestedPartyRole
Used to identify source of NestedPartyID. Required if NestedPartyIDSource is specified. Required if NoNestedPartyIDs > 0.
Used to identify class source of NestedPartyID value (e.g. BIC). Required if NestedPartyID is specified. Required if NoNestedPartyIDs > 0.
Identifies the type of NestedPartyID (e.g. Executing Broker). Required if NoNestedPartyIDs > 0.
NstdPtysSubGrpRepeating groupCount tag 804—
Repeating group of NestedParty sub-identifiers.
NstdPtysSubGrp definition & usage →
OrderQtyDataComponentRequired here
OrderQtyData definition & usage →
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.
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.
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.
For CIV - Optional
For CIV - Optional
Indicates that broker is requested to execute a Forex accommodation trade in conjunction with the security trade.
Required if ForexReq = Y.
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.
Must be set if EncodedText field is specified and must immediately precede it.
Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.
For use in derivatives omnibus accounting
For use with derivatives, such as options
Specifies how long the order as specified in the side stays in effect. Absence of this field indicates Day order.
InstrumentComponentRequired
Instrument definition & usage →
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.
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.
Takes precedence in identifying security to counterparty over SecurityAltID block. Requires SecurityIDSource if specified.
Required if SecurityID is specified.
SecAltIDGrpRepeating groupCount tag 454—
Number of alternate Security Identifiers
SecAltIDGrp definition & usage →
Indicates the type of product the security is associated with (high-level category)
Identifies an entire suite of products for a given market. In Futures this may be "interest rates", "agricultural", "equity indexes", etc
An exchange specific name assigned to a group of related securities which may be concurrently affected by market events and actions.
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.
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.)
Sub-type qualification/identification of the SecurityType (e.g. for SecurityType="MLEG"). If specified, SecurityType is required.
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.
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. For NDFs this represents the fixing date of the contract.
For NDFs this represents the fixing time of the contract. It is optional to specify the fixing time.
Indicator to determine if Instrument is Settle on Open.
Gives the current state of the instrument
Date interest is to be paid. Used in identifying Corporate Bond issues.
Date instrument was issued. For Fixed Income IOIs for new issues, specifies the issue date.
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
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.
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.
A two-character state or province abbreviation.
The three-character IATA code for a locale (e.g. airport code for Municipal Bonds).
Used for derivatives, such as options and covered warrants
Used for derivatives
Used for derivatives. Multiplier applied to the strike price for the purpose of calculating the settlement value.
Used for derivatives. The number of shares/units for the financial instrument involved in the option trade.
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.
For Fixed Income, Convertible Bonds, Derivatives, etc. Note: If used, quantities should be expressed in the "nominal" (e.g. contracts vs. shares) amount.
Minimum price increment for the instrument. Could also be used to represent tick value.
Minimum price increment amount associated with the MinPriceIncrement [969]. For listed derivatives, the value can be calculated by multiplying MinPriceIncrement by ContractValueFactor [231]
0
Settlement method for a contract. Can be used as an alternative to CFI Code value
Type of exercise of a derivatives security
Cash amount indicating the pay out associated with an option. For binary options this is a fixed amount
Method for price quotation
Indicates type of valuation method used.
Indicates whether the instruments are pre-listed only or can also be defined via user request
Used to express the ceiling price of a capped call
Used to express the floor price of a capped put
Used to express option right
Used to indicate if a security has been defined as flexible according to "non-standard" means. Analog to CFICode Standard/Non-standard indicator
Used to indicate if a product or group of product supports the creation of flexible securities
Used to indicate a time unit for the contract (e.g., days, weeks, months, etc.)
For Fixed Income.
Can be used to identify the security.
Position Limit for the instrument.
Near-term Position Limit for the instrument.
Must be set if EncodedIssuer field is specified and must immediately precede it.
Encoded (non-ASCII characters) representation of the Issuer field in the encoded format specified via the MessageEncoding field.
Must be set if EncodedSecurityDesc field is specified and must immediately precede it.
Encoded (non-ASCII characters) representation of the SecurityDesc field in the encoded format specified via the MessageEncoding field.
SecurityXMLComponent—
Embedded XML document describing security.
SecurityXML definition & usage →
Must be set if SecurityXML field is specified and must immediately precede it.
XML payload or content describing the Security information.
XML Schema used to validate the XML used to describe the Security.
Identifies MBS / ABS pool
Must be present for MBS/TBA
The program under which a commercial paper is issued
The registration type of a commercial paper issuance
EvntGrpRepeating groupCount tag 864—
Number of repeating EventType group entries.
Specific time of event. To be used in combination with EventDate [866]
If different from IssueDate
If different from IssueDate and DatedDate
InstrumentPartiesRepeating groupCount tag 1018—
Used to identify the parties listing a specific instrument
InstrumentParties definition & usage →
Repeating group below should contain unique combinations of InstrumentPartyID, InstrumentPartyIDSource, and InstrumentPartyRole
Used to identify party id related to instrument
Used to identify source of instrument party id
Used to identify the role of instrument party id
InstrumentPtysSubGrpRepeating groupCount tag 1052—
Repeating group of InstrumentParty sub-identifiers.
InstrumentPtysSubGrp definition & usage →
ComplexEventsRepeating groupCount tag 1483—
ComplexEvents definition & usage →
Number of complex events
Identifies the type of complex event. Required if NoComplexEvents > 0.
ComplexEventCondition is conditionally required when there are more than one ComplexEvent occurrences. A chain of ComplexEvents must be linked together through use of the ComplexEventCondition in which the relationship between any two events is described. For any two ComplexEvents the first occurrence will specify the ComplexEventCondition which links it with the second event.
ComplexEventDatesRepeating groupCount tag 1491—
Used to specify the dates and time ranges when a complex event is in effect.
ComplexEventDates definition & usage →
Number of complex event date occurrences for a given complex event.
Required if NoComplexEventDates(1491) > 0.
Required if NoComplexEventDates(1491) > 0.
ComplexEventTimesRepeating groupCount tag 1494—
ComplexEventTimes definition & usage →
Required if NoComplexEventTimes(1494) > 0.
Required if NoComplexEventTimes(1494) > 0.
UndInstrmtGrpRepeating groupCount tag 711—
Number of underlyings
UndInstrmtGrp definition & usage →
Number of underlyings
UnderlyingInstrumentComponent—
Must be provided if Number of underlyings > 0
UnderlyingInstrument definition & usage →
Used to indicate a time unit for the contract (e.g., days, weeks, months, etc.)
Specific to the < UnderlyingInstrument > Percent of the Strike Price that this underlying represents. Necessary for derivatives that deliver into more than one underlying instrument.
Specific to the <UnderlyingInstrument> (not in <Instrument>)
Specific to the <UnderlyingInstrument> (not in <Instrument>) Unit amount of the underlying security (par, shares, currency, etc.)
Specific to the < UnderlyingInstrument > Indicates order settlement period for the underlying deliverable component.
Specific to the < UnderlyingInstrument > Cash amount associated with the underlying component. Necessary for derivatives that deliver into more than one underlying instrument and one of the underlying's is a fixed cash value.
Specific to the < UnderlyingInstrument > Used for derivatives that deliver into cash underlying. Indicates that the cash is either fixed or difference value (difference between strike and current underlying price)
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.
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
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.
Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value attributed to this collateral at the start of the agreement
Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value currently attributed to this collateral
Specific to the <UnderlyingInstrument> (not in <Instrument>) Currency value attributed to this collateral at the end of the agreement
UnderlyingStipulationsRepeating groupCount tag 887—
Specific to the <UnderlyingInstrument> (not in <Instrument>)
UnderlyingStipulations definition & usage →
Required if NoUnderlyingStips >0
Specific to the <UnderlyingInstrument> (not in <Instrument>). For listed derivatives margin management, this is the number of shares adjusted for upcoming corporate action. Used only for securities which are optionable and are between ex-date and settlement date (4 days).
Specific to the <UnderlyingInstrument> (not in <Instrument>). Foreign exchange rate used to compute UnderlyingCurrentValue (885) (or market value) from UnderlyingCurrency (318) to Currency (15).
Specific to the <UnderlyingInstrument> (not in <Instrument>). Specified whether UnderlyingFxRate (1045) should be multiplied or divided to derive UnderlyingCurrentValue (885).
UndlyInstrumentPartiesRepeating groupCount tag 1058—
UndlyInstrumentParties definition & usage →
Repeating group below should contain unique combinations of InstrumentPartyID, InstrumentPartyIDSource, and InstrumentPartyRole
Used to identify party id related to instrument
Used to identify source of instrument party id
Used to identify the role of instrument party id
UndlyInstrumentPtysSubGrpRepeating groupCount tag 1062—
Repeating group of InstrumentParty sub-identifiers.
UndlyInstrumentPtysSubGrp definition & usage →
Used to express option right
InstrmtLegGrpRepeating groupCount tag 555—
Number of Legs
InstrmtLegGrp definition & usage →
Number of legs
InstrumentLegComponent—
Must be provided if Number of legs > 0
InstrumentLeg definition & usage →
Used to indicate a time unit for the contract (e.g., days, weeks, months, etc.)
Specific to the <InstrumentLeg> (not in <Instrument>)
Specific to the <InstrumentLeg> (not in <Instrument>)
Specific to the <InstrumentLeg> (not in <Instrument>)
Identifies MBS / ABS pool
Used to express option right
LegOptionRatio is provided on covering leg to create a delta neutral spread. In Listed Derivatives, the delta of the leg is multiplied by LegOptionRatio and OrderQty to determine the covering quantity.
Used to specify an anchor price for a leg as part of the definition or creation of the strategy - not used for execution price.
Takes precedence over SettlType value and conditionally required/omitted for specific SettlType values.
Can contain multiple instructions, space delimited. If OrdType=P, exactly one of the following values (ExecInst = L, R, M, P, O, T, or W) must be specified.
DisplayInstructionComponent—
DisplayInstruction definition & usage →
Required when DisplayMethod = 3
Required when DisplayMethod = 3
Can be used to specify larger increments than the standard increment provided by the market. Optionally used when DisplayMethod = 3
Required when DisplayMethod = 2
TrdgSesGrpRepeating groupCount tag 386—
Specifies the number of repeating TradingSessionIDs
TrdgSesGrp definition & usage →
Specifies the number of repeating TradingSessionIDs
Required if NoTradingSessions is > 0.
Used to identify soft trades at order entry.
Useful for verifying security identification
Required for short sell orders
Time this order request was initiated/released by the trader, trading system, or intermediary.
A date and time stamp to indicate when this order was booked with the agent prior to submission to the VMU
StipulationsRepeating groupCount tag 232—
Stipulations definition & usage →
Required if NoStipulations >0
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.
Required for OrdType = "Stop" or OrdType = "Stop limit".
TriggeringInstructionComponent—
TriggeringInstruction definition & usage →
Required if any other Triggering tags are specified.
Only relevant and required for TriggerAction = 1
Only relevant and required for TriggerAction = 1
Requires TriggerSecurityIDSource if specified. Only relevant and required for TriggerAction = 1
Requires TriggerSecurityIDSource if specified. Only relevant and required for TriggerAction = 1
Only relevant for TriggerAction = 1
Only relevant for TriggerAction = 1
Only relevant for TriggerAction = 1
Should be specified if the order changes Price.
Should be specified if the order changes type.
Required if the order should change quantity
Only relevant and required for TriggerType = 2.
Requires TriggerTradingSessionID if specified. Relevant for TriggerType = 2 only.
SpreadOrBenchmarkCurveDataComponent—
SpreadOrBenchmarkCurveData definition & usage →
For Fixed Income
Must be present if BenchmarkPrice is used.
The identifier of the benchmark security, e.g. Treasury against Corporate bond.
Source of BenchmarkSecurityID. If not specified, then ID Source is understood to be the same as that in the Instrument block.
Required for Previously Indicated Orders (OrdType=E)
Required for Previously Quoted Orders (OrdType=D)
Absence of this field indicates Day order
Can specify the time at which the order should be considered valid
Conditionally required if TimeInForce = GTD and ExpireTime is not specified.
Conditionally required if TimeInForce = GTD and ExpireDate is not specified.
States whether executions are booked out or accumulated on a partially filled GT order
PegInstructionsComponent—
PegInstructions definition & usage →
Amount (signed) added to the peg for a pegged order in the context of the PegOffsetType
Defines the type of peg.
Describes whether peg is static/fixed or floats
Type of Peg Offset (e.g. price offset, tick offset etc)
Specifies nature of resulting pegged price (e.g. or better limit, strict limit etc)
If the calculated peg price is not a valid tick price, specifies how to round the price (e.g. be more or less aggressive)
The scope of the "related to" price of the peg (e.g. local, global etc)
Required if PegSecurityID is specified.
Requires PegSecurityIDSource if specified.
DiscretionInstructionsComponent—
DiscretionInstructions definition & usage →
What the discretionary price is related to (e.g. primary price, display price etc)
Amount (signed) added to the "related to" price specified via DiscretionInst, in the context of DiscretionOffsetType
Describes whether discretion price is static/fixed or floats
Type of Discretion Offset (e.g. price offset, tick offset etc)
Specifies the nature of the resulting discretion price (e.g. or better limit, strict limit etc)
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)
The scope of "related to" price of the discretion (e.g. local, global etc)
The target strategy of the order
StrategyParametersGrpRepeating groupCount tag 957—
Strategy parameter block
StrategyParametersGrp definition & usage →
Indicates number of strategy parameters
Name of parameter
Datatype of the parameter.
Value of the parameter
For further specification of the TargetStrategy
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)
For CIV - Optional
Reference to Registration Instructions message for this Order.
Supplementary registration information for this Order
StandardTrailerComponentRequired
StandardTrailer definition & usage →
Required when trailer contains signature. Note: Not to be included within SecureData field
Note: Not to be included within SecureData field
(Always unencrypted, always last field in message)