MarketDefinition

← MarketDataSnapshotFullRefresh→ MarketDefinitionRequest
MsgTypeBU
CategoryMarketStructureReferenceData
SectionPreTrade
AddedFIX.5.0
Fields81
Components11
The Market Definition message is used to respond to Market Definition Request. In a subscription, it will be used to provide the initial snapshot of the information requested. Subsequent updates are provided by the Market Definition Update Report.

Message Structure

81 fields, 11 components/groups — click any tag or field name for details
TagNameTypeReq DescriptionAdded
StandardHeader [Component]YMsgType = BUFIX.5.0
8BeginStringStringYFIXT.1.1 (Always unencrypted, must be first field in message)FIX.4.0
9BodyLengthLengthY(Always unencrypted, must be second field in message)FIX.4.0
35MsgTypeStringY(Always unencrypted, must be third field in message)
116 enum values
ValueNameDescription
0HeartbeatHeartbeat
1TestRequestTestRequest
2ResendRequestResendRequest
3RejectReject
4SequenceResetSequenceReset
5LogoutLogout
6IOIIOI
7AdvertisementAdvertisement
8ExecutionReportExecutionReport
9OrderCancelRejectOrderCancelReject
ALogonLogon
AADerivativeSecurityListDerivativeSecurityList
ABNewOrderMultilegNewOrderMultileg
ACMultilegOrderCancelReplaceMultilegOrderCancelReplace
ADTradeCaptureReportRequestTradeCaptureReportRequest
AETradeCaptureReportTradeCaptureReport
AFOrderMassStatusRequestOrderMassStatusRequest
AGQuoteRequestRejectQuoteRequestReject
AHRFQRequestRFQRequest
AIQuoteStatusReportQuoteStatusReport
AJQuoteResponseQuoteResponse
AKConfirmationConfirmation
ALPositionMaintenanceRequestPositionMaintenanceRequest
AMPositionMaintenanceReportPositionMaintenanceReport
ANRequestForPositionsRequestForPositions
AORequestForPositionsAckRequestForPositionsAck
APPositionReportPositionReport
AQTradeCaptureReportRequestAckTradeCaptureReportRequestAck
ARTradeCaptureReportAckTradeCaptureReportAck
ASAllocationReportAllocationReport
ATAllocationReportAckAllocationReportAck
AUConfirmationAckConfirmationAck
AVSettlementInstructionRequestSettlementInstructionRequest
AWAssignmentReportAssignmentReport
AXCollateralRequestCollateralRequest
AYCollateralAssignmentCollateralAssignment
AZCollateralResponseCollateralResponse
BNewsNews
BACollateralReportCollateralReport
BBCollateralInquiryCollateralInquiry
BCNetworkCounterpartySystemStatusRequestNetworkCounterpartySystemStatusRequest
BDNetworkCounterpartySystemStatusResponseNetworkCounterpartySystemStatusResponse
BEUserRequestUserRequest
BFUserResponseUserResponse
BGCollateralInquiryAckCollateralInquiryAck
BHConfirmationRequestConfirmationRequest
BITradingSessionListRequestTradingSessionListRequest
BJTradingSessionListTradingSessionList
BKSecurityListUpdateReportSecurityListUpdateReport
BLAdjustedPositionReportAdjustedPositionReport
BMAllocationInstructionAlertAllocationInstructionAlert
BNExecutionAcknowledgementExecutionAcknowledgement
BOContraryIntentionReportContraryIntentionReport
BPSecurityDefinitionUpdateReportSecurityDefinitionUpdateReport
BQSettlementObligationReportSettlementObligationReport
BRDerivativeSecurityListUpdateReportDerivativeSecurityListUpdateReport
BSTradingSessionListUpdateReportTradingSessionListUpdateReport
BTMarketDefinitionRequestMarketDefinitionRequest
BUMarketDefinitionMarketDefinition
BVMarketDefinitionUpdateReportMarketDefinitionUpdateReport
BWApplicationMessageRequestApplicationMessageRequest
BXApplicationMessageRequestAckApplicationMessageRequestAck
BYApplicationMessageReportApplicationMessageReport
BZOrderMassActionReportOrderMassActionReport
CEmailEmail
CAOrderMassActionRequestOrderMassActionRequest
CBUserNotificationUserNotification
CCStreamAssignmentRequestStreamAssignmentRequest
CDStreamAssignmentReportStreamAssignmentReport
CEStreamAssignmentReportACKStreamAssignmentReportACK
DNewOrderSingleNewOrderSingle
ENewOrderListNewOrderList
FOrderCancelRequestOrderCancelRequest
GOrderCancelReplaceRequestOrderCancelReplaceRequest
HOrderStatusRequestOrderStatusRequest
JAllocationInstructionAllocationInstruction
KListCancelRequestListCancelRequest
LListExecuteListExecute
MListStatusRequestListStatusRequest
NListStatusListStatus
PAllocationInstructionAckAllocationInstructionAck
QDontKnowTradeDontKnowTrade
RQuoteRequestQuoteRequest
SQuoteQuote
TSettlementInstructionsSettlementInstructions
VMarketDataRequestMarketDataRequest
WMarketDataSnapshotFullRefreshMarketDataSnapshotFullRefresh
XMarketDataIncrementalRefreshMarketDataIncrementalRefresh
YMarketDataRequestRejectMarketDataRequestReject
ZQuoteCancelQuoteCancel
aQuoteStatusRequestQuoteStatusRequest
bMassQuoteAcknowledgementMassQuoteAcknowledgement
cSecurityDefinitionRequestSecurityDefinitionRequest
dSecurityDefinitionSecurityDefinition
eSecurityStatusRequestSecurityStatusRequest
fSecurityStatusSecurityStatus
gTradingSessionStatusRequestTradingSessionStatusRequest
hTradingSessionStatusTradingSessionStatus
iMassQuoteMassQuote
jBusinessMessageRejectBusinessMessageReject
kBidRequestBidRequest
lBidResponseBidResponse
mListStrikePriceListStrikePrice
nXMLnonFIXXMLnonFIX
oRegistrationInstructionsRegistrationInstructions
pRegistrationInstructionsResponseRegistrationInstructionsResponse
qOrderMassCancelRequestOrderMassCancelRequest
rOrderMassCancelReportOrderMassCancelReport
sNewOrderCrossNewOrderCross
tCrossOrderCancelReplaceRequestCrossOrderCancelReplaceRequest
uCrossOrderCancelRequestCrossOrderCancelRequest
vSecurityTypeRequestSecurityTypeRequest
wSecurityTypesSecurityTypes
xSecurityListRequestSecurityListRequest
ySecurityListSecurityList
zDerivativeSecurityListRequestDerivativeSecurityListRequest
FIX.4.0
1128ApplVerIDStringNIndicates application version using a service pack identifier. The ApplVerID applies to a specific message occurrence.
10 enum values
ValueNameDescription
0FIX27FIX27
1FIX30FIX30
2FIX40FIX40
3FIX41FIX41
4FIX42FIX42
5FIX43FIX43
6FIX44FIX44
7FIX50FIX50
8FIX50SP1FIX50SP1
9FIX50SP2FIX50SP2
FIX.4.4
1156ApplExtIDintNThe extension pack number associated with an application message.FIX.5.0
1129CstmApplVerIDStringNUsed to support bilaterally agreed custom functionalityFIX.4.4
49SenderCompIDStringY(Always unencrypted)FIX.4.0
56TargetCompIDStringY(Always unencrypted)FIX.4.0
115OnBehalfOfCompIDStringNTrading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)FIX.4.0
128DeliverToCompIDStringNTrading partner company ID used when sending messages via a third party (Can be embedded within encrypted data section.)FIX.4.0
90SecureDataLenLengthNRequired to identify length of encrypted section of message. (Always unencrypted)FIX.4.0
91SecureDatadataNRequired when message body is encrypted. Always immediately follows SecureDataLen field.FIX.4.0
34MsgSeqNumSeqNumY(Can be embedded within encrypted data section.)FIX.4.0
50SenderSubIDStringN(Can be embedded within encrypted data section.)FIX.4.0
142SenderLocationIDStringNSender's LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)FIX.4.1
57TargetSubIDStringN"ADMIN" reserved for administrative messages not intended for a specific user. (Can be embedded within encrypted data section.)FIX.4.0
143TargetLocationIDStringNTrading partner LocationID (i.e. geographic location and/or desk) (Can be embedded within encrypted data section.)FIX.4.1
116OnBehalfOfSubIDStringNTrading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)FIX.4.0
144OnBehalfOfLocationIDStringNTrading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.)FIX.4.1
129DeliverToSubIDStringNTrading partner SubID used when delivering messages via a third party. (Can be embedded within encrypted data section.)FIX.4.0
145DeliverToLocationIDStringNTrading partner LocationID (i.e. geographic location and/or desk) used when delivering messages via a third party. (Can be embedded within encrypted data section.)FIX.4.1
43PossDupFlagBooleanNAlways 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.)
2 enum values
ValueNameDescription
NOriginalTransmissionOriginal transmission
YPossibleDuplicatePossible duplicate
FIX.4.0
97PossResendBooleanNRequired when message may be duplicate of another message sent under a different sequence number. (Can be embedded within encrypted data section.)
2 enum values
ValueNameDescription
NOriginalTransmissionOriginal Transmission
YPossibleResendPossible Resend
FIX.4.0
52SendingTimeUTCTimestampY(Can be embedded within encrypted data section.)FIX.4.0
122OrigSendingTimeUTCTimestampNRequired 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.)FIX.4.0
212XmlDataLenLengthNRequired when specifying XmlData to identify the length of a XmlData message block. (Can be embedded within encrypted data section.)FIX.4.2
213XmlDatadataNCan 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 SupportFIX.4.2
347MessageEncodingStringNType of message encoding (non-ASCII characters) used in a message's "Encoded" fields. Required if any "Encoding" fields are used.FIX.4.2
369LastMsgSeqNumProcessedSeqNumNThe 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.FIX.4.2
HopGrp [Repeating Group]NNumber 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.FIX.4.4
627NoHopsNumInGroupNNumber of HopCompID entries in repeating group.FIX.4.4
628HopCompIDStringNAssigned value used to identify the third party firm which delivered a specific message either from the firm which originated the message or from another third party (if multiple "hops" are performed). It is recommended that this value be the SenderCompID (49) of the third party. Applicable when messages are communicated/re-distributed via third parties which function as service bureaus or "hubs". Only applicable if OnBehalfOfCompID (115) is being used.FIX.4.4
629HopSendingTimeUTCTimestampNTime that HopCompID (628) sent the message. It is recommended that this value be the SendingTime (52) of the message sent by the third party. Applicable when messages are communicated/re-distributed via third parties which function as service bureaus or "hubs". Only applicable if OnBehalfOfCompID (115) is being used.FIX.4.4
630HopRefIDSeqNumNReference identifier assigned by HopCompID (628) associated with the message sent. It is recommended that this value be the MsgSeqNum (34) of the message sent by the third party. Applicable when messages are communicated/re-distributed via third parties which function as service bureaus or "hubs". Only applicable if OnBehalfOfCompID (115) is being used.FIX.4.4
end HopGrp
ApplicationSequenceControl [Component]NThe ApplicationSequenceControl is used for application sequencing and recovery. Consisting of ApplSeqNum (1181), ApplID (1180), ApplLastSeqNum (1350), and ApplResendFlag (1352), FIX application messages that carries this component block will be able to use application level sequencing. ApplID, ApplSeqNum and ApplLastSeqNum fields identify the application id, application sequence number and the previous application sequence number (in case of intentional gaps) on each application message that carries this block.FIX.5.0
1180ApplIDStringNIdentifies the application with which a message is associated. Used only if application sequencing is in effect.FIX.5.0
1181ApplSeqNumSeqNumNApplication sequence number assigned to the message by the application generating the message. Used only if application sequencing is in effect. Conditionally required if ApplID has been specified.FIX.5.0
1350ApplLastSeqNumSeqNumNThe previous sequence number in the application sequence stream. Permits an application to publish messages with sequence gaps where it cannot be avoided. Used only if application sequencing is in effect. Conditionally required if ApplID has been specifiedFIX.5.0
1352ApplResendFlagBooleanNUsed to indicate that a message is being sent in response to an Application Message Request. Used only if application sequencing is in effect. It is possible for both ApplResendFlag and PossDupFlag to be set on the same message if the Sender's cache size is greater than zero and the message is being resent due to a session level resend request.FIX.5.0
1394MarketReportIDStringYUnique identifier for each Market Definition messageFIX.5.0
1393MarketReqIDStringNUnique ID of a Market Definition Request message.FIX.5.0
1301MarketIDExchangeYIdentifies the MarketFIX.5.0
1300MarketSegmentIDStringNIdentifies the market segmentFIX.5.0
1396MarketSegmentDescStringNDescription or name of Market SegmentFIX.5.0
1397EncodedMktSegmDescLenLengthNMust be set if EncodedMktSegmDesc field is specified and must immediately precede it.FIX.5.0
1398EncodedMktSegmDescdataNEncoded (non-ASCII characters) representation of the MarketSegmDesc field in the encoded format specified via the MessageEncoding field.FIX.5.0
1325ParentMktSegmIDStringNSpecifies that the Market Segment is a sub segment of the Market Segment defined in this field.FIX.5.0
15CurrencyCurrencyNThe default trading currencyFIX.5.0
BaseTradingRules [Component]NInsert here the set of "BaseTradingRules" fields defined in "common components of application messages"FIX.5.0
TickRules [Repeating Group]NThis block specifies the rules for determining how a security ticks, i.e. the price increments at which it can be quoted and traded, depending on the current price of the securityFIX.5.0
1205NoTickRulesNumInGroupNNumber of tick rules. This block specifies the rules for determining how a security ticks, i.e. the price increments at which it can be quoted and traded, depending on the current price of the security.FIX.5.0
1206StartTickPriceRangePriceNStarting price range for specified tick incrementFIX.5.0
1207EndTickPriceRangePriceNEnding price range for the specified tick incrementFIX.5.0
1208TickIncrementPriceNTick increment for stated price range. Specifies the valid price increments at which a security can be quoted and tradedFIX.5.0
1209TickRuleTypeintNSpecifies the type of tick rule which is being described
5 enum values
ValueNameDescription
0RegularRegular
1VariableVariable
2FixedFixed
3TradedAsASpreadLegTraded as a spread leg
4SettledAsASpreadLegSettled as a spread leg
FIX.5.0
end TickRules
LotTypeRules [Repeating Group]NSpecifies the lot types that are valid for trading.FIX.5.0
1234NoLotTypeRulesNumInGroupNNumber of Lot TypesFIX.5.0
1093LotTypecharNDefines the lot type assigned to the order. Use as an alternate to RoundLot(561). To be used with MinLotSize(1231). LotType + MinLotSize ( max is next level minus 1)
4 enum values
ValueNameDescription
1OddLotOdd Lot
2RoundLotRound Lot
3BlockLotBlock Lot
4RoundLotBasedUponRound lot based upon UnitOfMeasure(996)
FIX.5.0
1231MinLotSizeQtyNMinimum lot size allowed based on lot type specified in LotType(1093)FIX.5.0
end LotTypeRules
PriceLimits [Component]NSpecifies the price limits that are valid for trading.FIX.5.0
1306PriceLimitTypeintNDescribes the how the price limits are expressed
3 enum values
ValueNameDescription
0PricePrice
1TicksTicks
2PercentagePercentage
FIX.5.0
1148LowLimitPricePriceNAllowable low limit price for the trading day. A key parameter in validating order price. Used as the lower band for validating order prices. Orders submitted with prices below the lower limit will be rejectedFIX.5.0
1149HighLimitPricePriceNAllowable high limit price for the trading day. A key parameter in validating order price. Used as the upper band for validating order prices. Orders submitted with prices above the upper limit will be rejectedFIX.5.0
1150TradingReferencePricePriceNReference price for the current trading price range usually representing the mid price between the HighLimitPrice and LowLimitPrice. The value may be the settlement price or closing price of the prior trading day.FIX.5.0
827ExpirationCycleintNPart of trading cycle when an instrument expires. Field is applicable for derivatives.
3 enum values
ValueNameDescription
0ExpireOnTradingSessionCloseExpire on trading session close (default)
1ExpireOnTradingSessionOpenExpire on trading session open
2SpecifiedExpirationTrading eligibility expiration specified in the date and time fields [EventDate(866) and EventTime(1145)] associated with EventType(865)=7(Last Eligible Trade Date)
FIX.5.0
562MinTradeVolQtyNThe minimum order quantity that can be submitted for an order.FIX.5.0
1140MaxTradeVolQtyNThe maximum order quantity that can be submitted for a security. For listed derivatives this indicates the minimum quantity necessary for an order or trade to qualify as a block tradeFIX.5.0
1143MaxPriceVariationfloatNThe maximum price variation of an execution from one event to the next for a given security. Expressed in absolute price terms.FIX.5.0
1144ImpliedMarketIndicatorintNIndicates that an implied market should be created for either the legs of a multi-leg instrument (Implied-in) or for the multi-leg instrument based on the existence of the legs (Implied-out). Determination as to whether implied markets should be created is generally done at the level of the multi-leg instrument. Commonly used in listed derivatives.
4 enum values
ValueNameDescription
0NotImpliedNot implied
1ImpliedInImplied-in - The existence of a multi-leg instrument is implied by the legs of that instrument
2ImpliedOutImplied-out - The existence of the underlying legs are implied by the multi-leg instrument
3BothImpliedInAndImpliedOutBoth Implied-in and Implied-out
FIX.5.0
1245TradingCurrencyCurrencyNUsed when the trading currency can differ from the price currencyFIX.5.0
561RoundLotQtyNTrading lot size of securityFIX.5.0
1377MultilegModelintNUsed for multileg security only. Defines whether the security is pre-defined or user-defined. Not that value = 2 (User-defined, Non-Securitized, Multileg) does not apply for Securities.
3 enum values
ValueNameDescription
0PredefinedMultilegSecurityPredefined Multileg Security
1UserDefinedMultilegSecurityUser-defined Multleg Security
2UserDefinedUser-defined, Non-Securitized, Multileg
FIX.5.0
1378MultilegPriceMethodintNUsed for multileg security only. Defines the method used when applying the multileg price to the legs.
6 enum values
ValueNameDescription
0NetPriceNet Price
1ReversedNetPriceReversed Net Price
2YieldDifferenceYield Difference
3IndividualIndividual
4ContractWeightedAveragePriceContract Weighted Average Price
5MultipliedPriceMultiplied Price
FIX.5.0
423PriceTypeintNDefines the default Price Type used for trading.
18 enum values
ValueNameDescription
1PercentagePercentage (i.e. percent of par) (often called "dollar price" for fixed income)
2PerUnitPer unit (i.e. per share or contract)
3FixedAmountFixed amount (absolute value)
4DiscountDiscount - percentage points below par
5PremiumPremium - percentage points over par
6SpreadSpread (basis points spread)
7TEDPriceTED Price
8TEDYieldTED Yield
9YieldYield
10FixedCabinetTradePriceFixed cabinet trade price (primarily for listed futures and options)
11VariableCabinetTradePriceVariable cabinet trade price (primarily for listed futures and options)
13ProductTicksInHalfsProduct ticks in halfs
14ProductTicksInFourthsProduct ticks in fourths
15ProductTicksInEightsProduct ticks in eights
16ProductTicksInSixteenthsProduct ticks in sixteenths
17ProductTicksInThirtySecondsProduct ticks in thirty-seconds
18ProductTicksInSixtyForthsProduct ticks in sixty-forths
19ProductTicksInOneTwentyEightsProduct ticks in one-twenty-eights
FIX.5.0
OrdTypeRules [Repeating Group]NInsert here the set of "OrdTypeRules" fields defined in "common components of application messages"FIX.5.0
1237NoOrdTypeRulesNumInGroupNNumber of order typesFIX.5.0
40OrdTypecharNIndicates order types that are valid for the specified market segment.
24 enum values
ValueNameDescription
1MarketMarket
2LimitLimit
3StopStop / Stop Loss
4StopLimitStop Limit
5MarketOnCloseMarket On Close (No longer used)
6WithOrWithoutWith Or Without
7LimitOrBetterLimit Or Better
8LimitWithOrWithoutLimit With Or Without
9OnBasisOn Basis
AOnCloseOn Close (No longer used)
BLimitOnCloseLimit On Close (No longer used)
CForexMarketForex Market (No longer used)
DPreviouslyQuotedPreviously Quoted
EPreviouslyIndicatedPreviously Indicated
FForexLimitForex Limit (No longer used)
GForexSwapForex Swap
HForexPreviouslyQuotedForex Previously Quoted (No longer used)
IFunariFunari (Limit day order with unexecuted portion handles as Market On Close. E.g. Japan)
JMarketIfTouchedMarket If Touched (MIT)
KMarketWithLeftOverAsLimitMarket With Left Over as Limit (market order with unexecuted quantity becoming limit order at last price)
LPreviousFundValuationPointPrevious Fund Valuation Point (Historic pricing; for CIV)
MNextFundValuationPointNext Fund Valuation Point (Forward pricing; for CIV)
PPeggedPegged
QCounterOrderSelectionCounter-order selection
FIX.5.0
end OrdTypeRules
TimeInForceRules [Repeating Group]NInsert here the set of "TimeInForceRules" fields defined in "common components of application messages"FIX.5.0
1239NoTimeInForceRulesNumInGroupNNumber of time in force techniquesFIX.5.0
59TimeInForcecharNIndicates time in force techniques that are valid for the specified market segment
10 enum values
ValueNameDescription
0DayDay (or session)
1GoodTillCancelGood Till Cancel (GTC)
2AtTheOpeningAt the Opening (OPG)
3ImmediateOrCancelImmediate Or Cancel (IOC)
4FillOrKillFill Or Kill (FOK)
5GoodTillCrossingGood Till Crossing (GTX)
6GoodTillDateGood Till Date (GTD)
7AtTheCloseAt the Close
8GoodThroughCrossingGood Through Crossing
9AtCrossingAt Crossing
FIX.5.0
end TimeInForceRules
ExecInstRules [Repeating Group]NInsert here the set of "ExecInstRules" fields defined in "common components of application messages"FIX.5.0
1232NoExecInstRulesNumInGroupNNumber of execution instructionsFIX.5.0
1308ExecInstValuecharNIndicates execution instructions that are valid for the specified market segmentFIX.5.0
end ExecInstRules
60TransactTimeUTCTimestampNTimestamp when the business transaction represented by the message occurred.FIX.5.0
58TextStringNComment, instructions, or other identifying information.FIX.5.0
354EncodedTextLenLengthNMust be set if EncodedText field is specified and must immediately precede it.FIX.5.0
355EncodedTextdataNEncoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.FIX.5.0
StandardTrailer [Component]YThe standard FIX message trailerFIX.5.0
93SignatureLengthLengthNRequired when trailer contains signature. Note: Not to be included within SecureData fieldFIX.4.0
89SignaturedataNNote: Not to be included within SecureData fieldFIX.4.0
10CheckSumStringY(Always unencrypted, always last field in message)FIX.4.0