For additional information about this component group, consult the documentation.
35=d (MsgType)
8
BeginString
STRING
Y
FIX protocol version
The tag indicates the beginning of a new message.
This tag must be the first tag in the message.
You must set the value to FIX.4.2 or FIX.4.4.
9
BodyLength
INT
Y
Message length (in characters)
The value represents number of characters in the message following this tag up to, and including, the delimiter immediately preceding Tag 10 (CheckSum). This tag must be the second field in a message.
35
MsgType
STRING
Y
Type of message contained in the message body
This tag must appear third in the list of header tags.
Possible values:
0: Heartbeat
1: Test Request
2: Resend Request
3: Reject
4: Sequence Reset
5: Logout
8: Execution Report
9: Order Cancel Reject
A: Logon
B: News
c: Security Definition Request
D: Order Single
d: Security Definition
e: Security Status Request
f: Security Status
F: Order Cancel Request
G: Order Cancel Replace Request
H: Order Status Request
Q: Don’t Know Trade (Inbound Drop Copy only)
R: Quote Request
V: Market Data Request
W: Market Data Snapshot Full Refresh
X: Market Data Incremental Refresh
Y: Market Data Request Reject
AD: Trade Capture Report Request
AE: Trade Capture Report
AQ: Trade Capture Report Request Ack
49
SenderCompID
STRING
Y
ID of the FIX session
The value will be the same value the FIX client sends in tag 56 (TargetCompID) in its requests to TT FIX.
56
TargetCompID
STRING
Y
FIX client ID, corresponding to the SenderCompID specified for the user in TT User Setup
The value is the same as sent in tag 49 (SenderCompID) in FIX client requests.
50
SenderSubID
STRING
C
Sent if TT User Setup specifies an exchange operator ID
Unique ID for the message sender
For CME, the value corresponds to the Operator ID.
142
SenderLocationID
STRING
N
Specific message originator’s location (i.e. geographic location and/or desk, trader)
116
OnBehalfOfSubID
STRING
N
Unique Trader ID (can also be provided in Tag 50 (SenderSubID))
The value maps to the Alias field configured for a user in Setup.
TT FIX uses this value to identify the exchange that offers the security.
Possible values:
AGGREGATOR
ALGO
ASE
ASX
B3
BitMEX
BrokerTec
Cboe
CboeFX_SW_NY
CBOT
CFE
CME
Coinbase
CoinFLEX
CurveGlobal
CZCE
DCE
DGCX
EEX
Eurex
Euronext
Fenics
FEX
HKEX
ICE
ICE_L
IDEM
INE
KCG
KRK
LME
LSE
MEFF
MEXDER
MX
NDAQ_EU
NFI
NFX
OSE
SGX
TFEX
TFX
TOCOM
100
ExDestination
EXCHANGE
C
Sent when available for FIX 4.2 sessions
Name of the sub-market where the instrument trades.
ISO 10383 defines a comprehensive list of MIC codes.
TT FIX uses this value to identify a security.
30
LastMkt
EXCHANGE
C
Sent when available for FIX 4.4 sessions
Market of execution for last fill, or an indication of the market where an order was routed.
ISO 10383 defines a comprehensive list of MIC codes.
461
CFICode
STRING
N
Type of security using ISO 10962 standard, Classification of Financial Instruments (CFI code) values. ISO 10962 is maintained by ANNA (Association of National Numbering Agencies) acting as Registration Authority.
Note: For SPOT and CUR products, you must also specify the corresponding tag 167 (SecurityType) value.
Exchange-provided product symbol for the tradable product.
200
MaturityMonthYear
MONTHYEAR
C
Sent when Tag 167 (SecurityType) is not MLEG or SPOT
Month and year the instrument reaches maturity in the format YYYYMM.
541
MaturityDate
LOCALMKTDATE
C
Sent when Tag 167 (SecurityType) is not MLEG or SPOT
Maturity date in format YYYYMMDD.
205
MaturityDay
DAYOFMONTH
C
Sent when multiple contracts exist for the same month
Day of expiration for the instrument.
Range: 1-31
18223
ContractYearMonth
STRING
N
Contract term in the form, YYYYMM
Condition: Sent when Tag 167 (SecurityType) is not MLEG
18211
DeliveryTerm
CHAR
C
Sent when the delivery term is not monthly
Term of delivery for the instrument.
TT FIX uses this value to identify contracts that do not have a monthly delivery term.
Note: When Tag 18211 DeliveryTerm equals any value except ‘M’, ‘Y’ or ‘Q’, then you must specify the delivery day/date in Tag 205 MaturityDay or Tag 541 MaturityDate.
Possible values:
A: Same day
B: Balance of month
C: End of Month
D: Day
E: Weekly
H: Hour
L: Balance of week
M: Month
N: Next day
P: Pack
Q: Quarterly
S: Seasonal
T: Weekend
U: Bundle
V: Variable
W: Week
X: Custom
Y: Year
Note: The following values are only available for EPEX and Nord Pool:
a: Quarter hour
b: Half hour
c: One hour
d: Two hour
e: Four hour
f: Eight hour
g: One plus two
h: Three plus four
i: Baseload
j: Peakload
k: Overnight
l: Extended peak
743
DeliveryDate
LOCALMKTDATE
C
Sent when available
Date for contract delivery
64
SettlDate
LOCALMKTDATE
C
Sent when tag 167 (SecurityType) = FOR or NDF
Settlement date
9020
FixingDate
LOCALMKTDATE
C
Sent when tag 167 (SecurityType) = NDF
Fixing date
9032
ReportingParty
BOOLEAN
C
Sent when tag 167 (SecurityType) = NDF
Indicates if the Execution Report recipient is the reporting party. Follows GFMA FX reporting rules.
ISO-standard symbol for the instrument’s trading currency.
70
AllocID
STRING
C
Identifier assigned to a leg of a leg fill for ASX clearing purposes (clearing deal number).
SecurityAltIDGrp
N
Instrument associated with this message. For additional information about this component group, consult the full documentation.
454
NoSecurityAltID
NUMINGROUP
C
Sent when there are one or more alternate security IDs
Number of alternate security IDs in this repeating group
455
SecurityAltID
STRING
Y
Alternate ID for an instrument or security, typically for display purposes.
456
SecurityAltIDSource
STRING
C
Sent when tag 455 (SecurityAltId) is sent
Identifies class or source of the SecurityAltID (455) value.
Notes:
99 (Other) is not valid for order routing requests.
At this time, TT does not support FIX order routing or FIX market data subscriptions using CUSIP numbers for BrokerTec Treasury securities on CME.
Note: The following markets support RIC codes (22=5) for identifying futures, spreads and options instruments in tag 455 (SecurityAltID):
ASX
DGCX
CFE
CME
EEX
EUREX
Euronext
Hkex
ICE
ICE_L
LME
MEFF
MX
OSE
SGX
TFX
TOCOM
Possible values:
1: CUSIP number (sent only when provided by the exchange)
4: ISIN number
5: RIC code
8: Exchange security ID
91: Ticker Symbol
92: TT product family ID (sent only for Security Definition (d) messages)
93: TT product ID (sent only for Security Definition (d) messages)
94: Alt Symbol (For ICE, the value is the “Cleared Alias” for the contract.)
95: Clearport
97: Alias
98: Name
99: Other (Set to instrument symbol if both product symbol and an instrument symbol are present in PDS and they are not the same.)
100: Energy Identifier Code (EIC). Currently only used for the EPEX and Nord Pool exchanges.
A: Bloomberg Code
H: Clearing House (Inbound Drop Copy only)
S: OpenFIGI ID
16207
BloombergSecurityExchange
STRING
C
Name of the market where the instrument of the SecurityAltID (455) value trades.
762
SecuritySubType
STRING
N
Sub-type qualification or identification of the SecurityType
For example, an instrument with SecurityType(167)=”MLEG” might use this tag to specify the name of the option or futures strategy, such as “Calendar”, “Vertical”, or “Butterfly”.
The leg instrument group component block uses the same structure as the instrument component block sent from TT FIX to FIX clients, except that all of its tags represent the legs of an exchange-traded strategy. For example, instead of Tag 55 (Symbol) this block contains Tag 600 (LegSymbol).
Note: This tag can be included in messages sent from TT FIX Drop Copy sessions when the Compliance Feed (Send original order/cancel/change messages and pending execution reports) setting is enabled in Setup.
555
NoLegs
STRING
Y
Number of legs in the repeating group
Can be zero (e.g. standardized multileg instrument such as an Option strategy). The value must be provided even if zero.
616
LegSecurityExchange
EXCHANGE
C
Required when both of the following are true.
The leg instrument trades on a different exchange that the parent instrument.
Both Tag 18100 (LegExtDestination) and Tag 602 (LegSecurityId) are absent.
Condition: Required when Tag 167 (SecurityType)=MLEG.
See Symbol (55) field for description.
Note: Users can map the value of Tag 600 to a different symbology using the Symbol Mapping feature in User Setup. Refer to the Fix Rules and Symbol Mappings section in the User Setup Help for more information.
The side of this individual leg (multi-leg security).
Possible values:
1: Buy
2: Sell
3: Buy minus
4: Sell plus
5: Sell short
6: Sell short exempt
7: Undisclosed
8: Cross
9: Cross short
623
LegRatioQty
FLOAT
N
Ratio of quantity for this individual leg relative to the entire multi-leg security
The value represents one of the following:
For a leg of a covered strategy (such as a volatility trade) on CME or NYSE_Liffe markets, the value represents the delta (expressed as an integer between 1 and 100).
In all other cases, the value represents the quantity of this leg in the strategy.
1420
LegExerciseStyle
INT
N
Type of exercise for a derivatives security.
Possible values:
0: European style: may be exercised only on the expiration date.
1: American style: may be exercised on any business day until the expiration date.
2: Bermuda style: Not available.
556
LegCurrency
CURRENCY
N
Currency associated with a particular leg’s price
561
RoundLot
QTY
N
The trading lot size of a security.
566
LegPrice
PRICE
N
Price of the leg for a multi-leg instrument
687
LegQty
QTY
N
Quantity of this leg.
654
LegRefID
STRING
N
Unique indicator for a specific leg.
Note: Sent only for FIX 4.4 sessions when the tag is included the corresponding New Order Multileg (AB) request. FIX 4.4 Drop Copy sessions will not send this tag for orders placed from the TT Trade application.
637
LegLastPx
PRICE
N
Execution price assigned to a leg of a multileg instrument.
18224
LegContractYearMonth
STRING
N
Contract term of the underlying instrument in the form, YYYYMMM
18212
LegDeliveryTerm
CHAR
C
Required when both of the following are true:
The Security Definition indicates it is required.
The delivery term is not monthly.
Term of delivery for the underlying instrument.
TT FIX uses this value to identify contracts that do not have a monthly delivery term.
Possible values:
A: Same day
B: Balance of month
C: End of Month
D: Day
E: Weekly
H: Hour
L: Balance of week
M: Month
N: Next day
P: Pack
Q: Quarterly
S: Seasonal
T: Weekend
V: Variable
W: Week
X: Custom
Y: Year
18213
LegDeliveryDate
LOCALMKTDATE
C
Sent when available
Date for contract delivery
1366
LegAllocID
STRING
C
Sent when provided by the exchange.
Identifier assigned to a leg of a multi-leg trade for ASX clearing purposes (clearing deal number).
16568
LegAvgPx
PRICE
C
The average (mean) price for the legs of a spread.
This value will be populated on Summary Spread Fill Execution Reports.
16615
LegTTRoutingAccount
STRING
N
TT Routing Account for the leg. Valid for routing synthetic spread orders only.
LegSecurityAltIDGrp
N
Repeating group of security alt IDs for legs in a multileg instrument. For additional information about this group, consult the full documentation.
604
NoLegSecurityAltID
NUMINGROUP
C
Sent when there are one or more alternate leg security IDs
Number of alternate leg security IDs contained in this repeating group
605
LegSecurityAltID
STRING
Y
Alternate ID for an instrument or security, typically for display purposes.
606
LegSecurityAltIDSource
STRING
Y
New tag for TT
Class or source of the LegSecurityAltID (605) value.
Possible values:
1: CUSIP number (sent only when provided by the exchange)
4: ISIN number
5: RIC code
8: Exchange security ID
94: Alt Symbol (For ICE, the value is the “Cleared Alias” for the contract.)
95: Clearport
97: Alias
98: Name
99: Other
91: Exchange Ticker
A: Bloomberg Code
H: Clearing House
S: OpenFIGI ID
16616
LegBloombergSecurityExchange
STRING
N
Name of the market where the instrument of the LegSecurityAltID (605) value trades.
LegFillsGrp
C
Only used in Execution Report (8) messages when the FIX client is connected to a TT FIX 4.4 session.
Repeating group of fills for this leg instrument.
16120
LegNoFills
NUMINGROUP
C
Sent for each leg when a multileg order is filled through multiple price levels in a single match transaction, i.e. “sweeping the market”. Can be sent when LegNoFills = 1 for some markets, such as Eurex/EEX.
Number of partial leg fills included in an Execution Report
Note: Only sent if the FIX client is connected to a TT FIX 4.4 session.
16121
LegFillExecID
STRING
C
Sent when tag 16120 > 0
Unique identifier of leg execution as assigned by sell-side (broker, exchange, ECN). The ID must not overlap tag 17 (ExecID).
16122
LegFillPx
PRICE
C
Sent when tag 16120 > 0
Price of this leg fill
16123
LegFillQty
QTY
C
Sent when tag 16120 > 0
Quantity of this leg fill
16124
LegFillTradingVenueRegulatoryTradeID
STRING
C
Sent if available when tag 16120 > 0
Trading Venue transaction identification code of this leg fill
16125
LegFillLastLiquidityIndicator
INT
N
Whether this leg fill was a result of a liquidity provider providing or a liquidity taker taking the liquidity in this LegFillsGrp repeating group.
Possible values:
1: Added liquidity
2: Removed liquidity
393
TotalNumSecurities
INT
Y
Number of securities that match the Security Definition Request (c) message
1194
ExerciseStyle
INT
C
This value only sent if supported by the exchange.
Type of exercise for a derivatives security.
Conditional: This value only sent if supported by the exchange.
Possible values:
0: European style: may be exercised only on the expiration date.
1: American style: may be exercised on any business day until the expiration date.
2: Bermuda style: Not available
16451
PriceDisplayType
INT
N
Price code for indicating how TT formats the price for display purposes in the Trade app.
The values in this tag are provided by the exchange. TT will not modify or normalize these values.
Note: Only Eurex products are currently supported.
16762
DefSecuritySubTypeID
INT
N
The values in this tag are provided by the exchange. TT will not modify or normalize these values. Note: Only Eurex products are currently supported.
Trailer
Y
For additional information about this component group, consult the full documentation.
10
CheckSum
STRING
Y
Unencrypted three-character checksum
This tag must always be the last field in a message (i.e. it serves, with the trailing <SOH>, as the end-of-message delimiter).
Message Notes
The Security Definition (d) message is used to send information about an exchange-listed instrument. TT FIX sends zero or more of these messages to a FIX client in response to a Security Definition Request (c). A security definition contains all standing data at the markets that matches the filter criteria sent in the Security Definition Request (c). After TT FIX delivers standing data to the FIX client, TT FIX sends unsolicited updates to that list of standing data (for instance, if a market lists a new product at midday).
Determining tick sizes and tick values
To determine the tick size and tick value of a given contract, the FIX client must:
With the resulting Security Definition (d) message, calculate the values using the following algorithm.
if tag 16456 (NumTickTblEntries) == 0
{
(The tick size (and tick value) are the same for all prices.)
Tick Size (for all prices) = Tag 16552 (ExchTickSize)
Tick Value (for all prices) = Tag 16552 (ExchTickSize) * Tag 16554 (ExchPointValue)
}
else
{
(The tick size and tick value vary by price level.)
Base Tick Size = Tag 16552 (ExchTickSize)
P = price in Points (decimal) for which the tick size is required
for (int i = 0; i < Tag 16456 (NumTickTblEntries); i++)
{
if ( P < (Tag 16458 (MaxPrice) for row i) )
{
Tick Size (for price P) = Base Tick Size * (Tag 16457 (NumTicks) for row i)
Tick Value (for price P) = Tick Size (for price P) * Tag 16554 (ExchPointValue)
exit loop
}
}
}
Working with spreads and strategies
When a FIX client requests a security definition for a spread or strategy, TT FIX responds by sending:
A Security Definition (d) for the spread itself. A leg repeating group exists for each leg of the spread. Tag 555 (NoLegs) is set to the total number of leg repeating groups (spread legs) associated with the spread.
One Security Definition (d) for each leg of the spread.