LMESelect 9 FIX Specification Dec16
LMESelect 9 FIX Specification Dec16
0 FIX Specification
December 2016
Contents
1 Document Overview ........................................................................................................................ 5
1.1 Intended Audience ........................................................................................................................ 5
1.2 Related Documents ...................................................................................................................... 5
2 About This Document ...................................................................................................................... 6
2.1 Revision History ............................................................................................................................ 6
2.2 Terms & Acronyms ....................................................................................................................... 6
3 Introduction ...................................................................................................................................... 6
3.1 Reading Instructions ..................................................................................................................... 6
4 FIX Session Layer ........................................................................................................................... 7
4.1 FIX Session Establishment ........................................................................................................... 7
4.2 Start of Day/End of Day Procedures ............................................................................................ 7
4.3 Reject Handling............................................................................................................................. 7
4.4 Authorization ................................................................................................................................. 8
4.5 Message Details ........................................................................................................................... 8
4.5.1 Logon .................................................................................................................................. 9
4.5.2 Logon after failover and reconnect ..................................................................................... 11
4.5.3 Heartbeat ............................................................................................................................ 13
4.5.4 Test Request ...................................................................................................................... 14
4.5.5 Resend Request ................................................................................................................. 14
4.5.6 Reject.................................................................................................................................. 15
4.5.7 Sequence Reset ................................................................................................................. 16
4.5.8 Logout ................................................................................................................................. 16
4.5.9 Disable Users ..................................................................................................................... 17
5 Business Layer Introduction ............................................................................................................ 17
5.1 User Interaction............................................................................................................................. 17
6 Order Management ......................................................................................................................... 20
6.1 Business Message Types ............................................................................................................. 20
6.1.1 Price Units .......................................................................................................................... 21
6.1.2 CFI Code ............................................................................................................................ 21
6.1.3 Maturity Dates .................................................................................................................... 22
6.1.4 Execution Reports for Multi-Leg Contracts......................................................................... 24
6.1.5 ExecID ................................................................................................................................ 24
6.1.6 OrderID ............................................................................................................................... 25
6.1.7 Stop Loss Order ................................................................................................................. 25
Page 2
Cinnober Financial Technology AB
Page 3
Cinnober Financial Technology AB
Page 4
Cinnober Financial Technology AB
1 Document Overview
This document describes the new functionality in FIX for LMEselect 9, as well as the existing
messages in FIX.
The purpose of this document is to clearly describe the functionality in FIX for LMEselect 9 regarding
syntax and semantics.
Page 5
Cinnober Financial Technology AB
Revision History
Term/Acronym Description
3 Introduction
• FIX Session layer: A section describing the FIX session layer and supported session level
messages.
• Business Layer Introduction: A section describing the user interaction and the main
workflows.
Page 6
Cinnober Financial Technology AB
• Drop Copy: A section describing the different messages that are used for Drop Copy.
• Market Data: A section describing how to use the Market Data functionality. Subsections
include:
1) Market Data Request
2) Market Data Message Price Depth
3) Market Data Messages # of Messages
4) Trade replay
• LME Specific Tags: A list of the LME Specific Tags used in Select 7.
A FIX session is established by sending a Logon message. The FIX session is established between
two parties; (a) the sender and (b) the target. These are represented by the following tags in the
Standard Message Header:
• The FIX session is always initiated by the FIX client and accepted by the FIX server.
• A login message that specifies the sequence numbers should be reset, using
ResetSeqNumFlag=Y (tag 141)
Page 7
Cinnober Financial Technology AB
The Reject message (MsgType = 3) is used when a message is received but cannot be properly
1
processed due to a session level rule violation. Some examples :
• In the event a business message is received and fulfills the session-level rules, the message
cannot be communicated to the business-level processing system. In this situation a
Business Message Reject with BusinessRejectReason = “Application not available at this
time” can be issued.
• In the event a valid business message is received and fulfills session-level rules, the
message type is not supported by the recipient. In this situation a Business Message Reject
message with BusinessRejectReason= “Unsupported Message Type” can be issued.
• In the event a business message is received and fulfills session level-rules, but lacks a field
conditionally required by the FIX specification. However, a Business Message Reject
message must NOT be used to enforce proprietary rules more restrictive than those explicit
in the FIX specification. For example, requiring a Trade Capture Report to contain a
TradeRequestID which the FIX specification considers to be optional.
4.4 Authorization
All FIX Sessions are subject to authorisation. When the FIX server receives a Logon message at
connection start-up, the session is authorised using:
• SenderCompID (tag 49). This is the session identifier together with the TargetCompID (tag
56).
• Username (tag 553). Must contain the user ID assigned by the LME.
• Password (tag 554). Must contain the password assigned by the LME.
1
All supported FIX Session level reject reasons are presented in section 4.5.6
Page 8
Cinnober Financial Technology AB
Logon A In/Out
Heartbeat
0 In/Out
Reject 3 Out
Logout 5 In/Out
4.5.1 Logon
The first messages exchanged in a FIX session are the Logon request and the Logon response. The
main purposes of the Logon request and response are:
Page 9
Cinnober Financial Technology AB
Password Encryption
Page 10
Cinnober Financial Technology AB
2. The 32-byte fax key, a field from the user’s LMEselect account that is copied beside the
protocol, probably by fax or email.
3. The "HmacSHA1" encryption algorithm.
4. An 8-byte increasing number generated by the client.0.
Java and C/C++ source codes to create the hash pattern can be found on LME’s member site,
http://www.lme.com/login/. The LME may assist third-party developers in finding the required source
code in Java and C that implements the “HmacSHA1” encryption algorithm.
When logging on after a failover or reconnect, the field NextExpectedMsgSeqNum (tag 789) must be
provided in the Logon message (this does not apply to the Market Data server since this is a
concurrent server). By receiving this next expected sequence number we can compare it to the last
replicated sequence number and calculate the difference from the last replicated messages -
LastMsgSeqNumProcessed (tag 369) field to the NextExpectedMsgSeqNum (tag 789) provided by
the client. The sequence number which the FIX server last processed will be used to populate the
NextExpectedMsgSeqNum (tag 789) in the Logon response.
After logging on after a failover or reconnect the client will be expected to resend the messages
which were not replicated to the secondary server as specified by the NextExpectedMsgSeqNum
(tag 789). These resent messages will be used to synchronize the cache in the FIX server. This
Logon behaviour is documented in the FIX protocol specification under the heading of “Logon
Message NextExpectedMsgSeqNum Processing” as an optional method introduced in FIX 4.4.
Once the FIX server has synchronized with the back-end, any outgoing messages resulting from the
synchronization will be sent to the client with the PossResend (tag 97) field set to ‘true’. In this
manner the client will receive messages that may have been received previously when the secondary
server synchronizes its caches, but no message will be lost.
If the client should ask for a resend of messages not replicated in a fail over, these will be replied to
with a gap fill message (SequenceReset (4) with the GapFillFlag (tag 123) set to ‘true’). By
responding with a gap fill we do not break protocol. Additionally, sending all messages that could
possibly have been lost with the PossResend (tag 97) field set we can guarantee that all messages
are sent to the client.
Workflow for logging-on after a failover
<- 1
- Reply from server.
Logon
Page 11
Cinnober Financial Technology AB
<- 2 - -
Execution
Report
-> 3 - -
Sequence
Reset
Page 12
Cinnober Financial Technology AB
2 Server
8 Ack
3 Client D -
3 Server 8 -
4 Client D -
4 Server 8 -
5 Client D -
5 Server 8 -
6 Client D -
6 Server 8 -
7 Client A 789=7
8 Server 8 97=Y
4.5.3 Heartbeat
During periods of message inactivity, FIX applications will generate Heartbeat messages at regular
time intervals. The heartbeat monitors the status of the communication link and identifies incoming
sequence number gaps.
When logging on, the client requests a heartbeat interval, using the HeartBtInt tag (see the logon
message). Heartbeats must be sent in both directions:
• The FIX server will send Heartbeat requests at the requested interval, unless other
messages are sent.
Page 13
Cinnober Financial Technology AB
• The FIX Client must send Heartbeat requests at the requested interval, unless other
messages are sent.
112 TestReqID
N Required when the heartbeat is a result of a Test
Request (MsgType = 1) message.
The FIX server supports Test Requests in both directions. Client Test Requests are responded to
with Heartbeats conveying the test request ID. The FIX server may send Test Requests in order to
verify the reception of a sequence of outbound messages, confirming that the FIX client has captured
the messages sent.
The grace period after the FIX server has sent a Test Request is 1.2 heartbeats. For example, if the
heartbeat interval is 30 seconds, the grace period will be 36 seconds before the server disconnects
the client if the client does not reply to the Test Request message.
112 TestReqID
Y The value will be returned in the resulting Heartbeat.
The FIX server supports client Resend Requests and may issue a Resend Request as a
consequence of the Logon sequence number negotiation. After the initial negotiation, there should be
no reason for requesting retransmissions because the underlying protocol, TCP/IP, manages
retransmissions. It is recommended that clients use an EndSeqNo value of 0, indicating all messages
during retransmission are to be resent.
7 BeginSeqNo
Y Message sequence number of the first message in the
range to be resent.
Page 14
Cinnober Financial Technology AB
4.5.6 Reject
45 RefSeqNum
Y MsgSeqNum of rejected message.
371 RefTagID N The tag number of the FIX field being referenced.
Page 15
Cinnober Financial Technology AB
The FIX server supports both Gap Fill mode and Reset mode.
Gap Fill mode is used in response to a Resent Request when one or more messages must be
skipped over.
Reset mode involves specifying an arbitrary higher new sequence number to be expected by the
receiver of the Sequence Reset. It is used to re-establish a FIX session after an unrecoverable
application failure.
4.5.8 Logout
The Logout message initiates or confirms the termination of a FIX session. FIX clients should
terminate their sessions gracefully by logging out.
When a user logs out from LMEselect then all orders will be inactivated except for GTC orders. If the
user disconnects from LMEselect without logging out, all orders will be inactivated. The orders need
to be activated after a reconnect.
Page 16
Cinnober Financial Technology AB
58 Text
N Additional description of message.
If a FIX user is disabled by LME Helpdesk while logged in then a Logout message will be sent to the
user and the session will be disconnected.
• FIX Traders (FIX OE) are allowed to enter orders and receive execution reports.
• FIX Market Data users (FIX MD) are allowed to issue market data requests, i.e. subscribe to
market data.
• FIX Drop Copy users (FIX DC) are allowed to connect to FIX Drop Copy server and receive
Trade Capture Reports and Execution Reports from both the FIX side as well as from the
GUI, and send Trade Capture Report Requests.
FIX Traders are allowed to enter orders, receive execution reports and query for a Security List. FIX
Market Data users are allowed to issue market data requests, i.e. subscribe to market data, query for
a Security List and use the Security Status functionality. FIX Drop Copy users are able to connect to
FIX Drop Copy server and receive Trade Capture Reports and Execution Reports, and send Trade
Capture Report Requests to query for trade.
The scenarios shown in Figure 1 and Figure 2 assume that member B has a FIX Market Data user
with an active subscription on bid and ask orders, i.e. have issued a Market Data Request for bid and
ask.
Order events are handled as below:
Page 17
Cinnober Financial Technology AB
Figure 1
Scenario 1:
Scenario 2:
3. Member B FIX-MD receives market data (order book) via FIX Market Data message.•
Page 18
Cinnober Financial Technology AB
Figure 2
Scenario 1:
Scenario 2:
1. Member A places an order via FIX.
2. Member A GUI and Member B GUI receives the order via broadcast, Member A FIX-Trader
receives the order via FIX Execution Report message.
3. Member B FIX-MD receives order via FIX Market Data message.
4. Member B GUI enters an order that match the Member A Order.
5. Member A GUI and Member B GUI receive the trade via broadcast.
6. Member B FIX-MD receives the current order book via FIX Market Data message.
Page 19
Cinnober Financial Technology AB
6 Order Management
The FIX server supports the message types described in the following table.
Order G In
Used to change the parameters of T
Cancel/Replace
Request an existing order.
• Confirm changes to an
existing order.
• Reject orders.
Page 20
Cinnober Financial Technology AB
Metal average
Outright price USD
outright
• Contango prices – when the price of the leg far away in time is higher than the price of the
leg nearer in time. In FIX, this type of price is represented by a negative price.
• Backwardation prices - when the price of the leg far away in time is lower than the price of
the leg nearer in time. In FIX, this type of price is represented by a positive price.
• Level – when the price of both legs should be equal. This is represented by a price of zero.
Page 21
Cinnober Financial Technology AB
OPAFPS Option, Put, American, Future, Physical, Metal future put options.
Standardized
OCAFPS Option, Call, American, Future, Physical, Metal future call options.
Standardized
FCECS Future, Commodity, Extraction, Cash, LMEmini, Steel Scrap and Steel
Standardized Rebar
Page 22
Cinnober Financial Technology AB
* Single prompt dates (MaturityDate, tag 541) – these prompt dates are calendar dates, written in
the format YYYYMMDD, where YYYY is the year, MM is the month (01-12) and DD is the day
(01-31). The LME uses the concept of “Monthly”, “Weekly” and “Daily” contracts, but all these
contract types represent one single prompt date and no difference is being made between them
rd
in this FIX specification. (For “Monthly” contracts, the prompt date is the 3 Wednesday in the
month, for “Weekly” contracts, the prompt is the Wednesday in the week.)
* Average prompt dates (MaturityAveragePrompt, tag 10001) – these prompt dates represent
several calendar dates. There are three types of average prompts:
1) Quarterly prompts – These are written NQYY, where N is 1, 2, 3 or 4, and YY are the two last
figures in the year. A quarterly prompt represents three calendar dates, namely the monthly
rd
contracts (i.e. the 3 Wednesdays in the months) in the quarter.
2) Half-year prompts – These are written NHYY where N is 1 or 2, and YY are the two last
figures in the year. A half-year prompt represents six calendar dates, namely the monthly
rd
contracts (i.e. the 3 Wednesdays in the months) in the half-year.
3) Full-year prompts – These are written 1YY’Y’ where Y’Y’ are the two last figures in the year.
A full-year prompt represents twelve calendar dates, namely the monthly contracts (i.e. the
rd
3 Wednesdays in the months) in the year.
To know what prompt dates that are available, it is necessary to have access to an LME trading
calendar. A quick and incomplete summary of the trading calendar is:
For a metal and steel 3M and C always exist and TOM almost always exists. There exists one
prompt day per business day between the TOM and the 3M contract, thereafter a prompt day every
rd
Wednesday for 3 months, and then prompt days the 3 Wednesday in the month for a number of
months, depending on the underlying commodity. There exist average contracts that span the
months after the 3M contract.
nd
For the index, there exists one prompt day every 2 Wednesday in the month for 12 months. There
are no rolling prompts and no average prompts.
rd
For LMEMini, there exist one prompt every 3 Wednesday in the month for 12 months. There are no
rolling prompts.
For LMEswaps, there is one prompt on the last working day of each month. (This is actually the last
tradable day rather than the LME Rulebook definition of the settlement date.)
Options
An option is defined by a symbol, an option type, a strike price and an expiration date. There are two
types of expiration dates:
• Single expiration dates (MaturityDate, tag 541) – these are calendar dates, written in the
format YYYYMMDD, where YYYY is the year, mm is the month (01-12) and DD is the day
(01-31). For metals, there is one expiration date per month: the first Wednesday in the
month. For the index, the expiration date is the second Wednesday in the month. For both
symbols, the expiration date is rolled forward one day if the expiration date is a non-business
day. Consult an LME trading calendar for exact rules for expiration dates.
Page 23
Cinnober Financial Technology AB
1) Quarterly expiration dates – These are written NQYY, where N is 1, 2, 3 or 4, and YY are the
st
two last figures in the year. A quarterly date represents three calendar dates, namely the 1
Wednesdays in the months in the quarter.
2) Half-year expiration dates – These are written NHYY where N is 1 or 2, and YY are the two
st
last figures in the year. A half-year date represents six calendar dates, namely the 1
Wednesdays in the months in the half-year.
3) Full-year expiration dates – These are written 1YY’Y’ where Y’Y’ are the two last figures in
st
the year. A full-year date represents twelve calendar dates, namely the 1 Wednesdays in
the months in the year.
TAPOS
A TAPO is defined by a symbol (only metals), an option type, a strike price and an expiration date.
For TAPOS, the only allowed expiration date is the single expiration date in format YYYYMMDD.
There is one expiration date per month: the last trading day of the month.
For some instruments, an execution report representing a trade will contain several trade legs,
although the order insert transaction only contained one instrument leg. The LastPx (tag 31) and
LastQty (tag 32) fields are still well-defined, but the trade legs contain additional information, e.g. on
how a carry net price was converted into trade prices in the contracts spanned by the carry. This
situation occurs for:
• Carry contracts. The legs in the execution report represent the contracts spanned by the
carry. The LastPx represents the net price for the entire carry; the leg prices represent the
trade prices in the contracts.
• Average contracts. The legs in the execution report represent the monthly contracts that the
average contract (quarters, half-year or whole-year) defines.
• Metal options. The order entry transaction contains a price expressed in volatility. The
trading system will convert this into a price expressed in dollars and possibly create a hedge
trade in the future that the option is based on. The execution report will contain one or two
legs: leg 1 defines the price in dollars, leg 2 the price and quantity of the hedge trade.
• Metal option strips. As for the metal options, the legs in the execution report represent the
dollar price and hedge trades for all legs in the option strip. Since the strip represents a
number of monthly contracts (cf. average contracts), the number of legs may become twice
the number of legs in the strip. In the case of a yearly strip, e.g. 1Y05 that was hedged by the
system, the execution report will contain 24 legs. If no hedge trades were made, the report
will contain 12 legs.
6.1.5 ExecID
The ExecID (tag 17) is a unique identifier of Execution Report messages. In LMEselect 9 it will have
the following format when representing a trade:
TA-<underlying>-<tradeDate>-<sequence number>-<char>
Page 24
Cinnober Financial Technology AB
The sequence number is defined as data type long and could theoretically be up to 19 characters.
For example, a trade in underlying ‘AA’ on 9 Feb 2010 will have an ExecID that looks something like
this:
TA-AA-20100209-000049-A for one side and
TA-AA-20100209-000049-B for the other side
Example of ExecID for a carry order:
ON-AA-20091015-000001-11708
6.1.6 OrderID
The OrderID (tag 37) is a unique identifier for an order assigned by the Select system.
Example of OrderID for a carry trade:
ON-AA-20091015-000001
4 = StopLimit
40 Order type Y
It defines the order type to be a stop
loss, rather than 40=2 (Limit) as for
ordinary limit orders.
Page 25
Cinnober Financial Technology AB
Valid values:
18 ExecInst N
S = Suspend (order is inactivated,
removed from public view and not
available for matching. It is, however,
retained by the trading system and
may be activated later).
2 = Work (order is active, viewable
and available for matching).
Absence of this field indicates Work.
An inactive order can be reactivated
again by sending an
OrderCancelReplaceRequest
message with ExecInst (tag 18) =
Work (2).
Valid values:
54 Side Y
1 = Buy
2 = Sell
Page 26
Cinnober Financial Technology AB
Valid values:
59 TimeInForce N
0 = Day
1 = Good ‘til Cancel
3 = Immediate or Cancel
6 = Good ‘til Date
Good ‘til Cancel and Good ‘til Date
are only available for Cash and 3M
outright contracts.
Absence of this field indicates Day.
Page 27
Cinnober Financial Technology AB
E = Algorithmic (algo)
If the order is accepted by the trading system, an Execution Report message with ExecType = 0
(New) will be sent. Note that no Pending New message will be sent.
If the order is rejected by the trading system, an Execution Report message with ExecType = 8
(rejected) will be sent.
Page 28
Cinnober Financial Technology AB
Valid values:
18 ExecInst N
S = Suspend (order is inactivated, removed from
public view and not available for matching. It is
however retained by the trading system and
may be activated later).
2 = Work (order is activate, viewable and
available for matching).
Absence of this field indicates Work.
An inactive order can be activated again by
sending an OrderCancelReplaceRequest
message with ExecInst (tag18) = Work (2).
Page 29
Cinnober Financial Technology AB
Valid values:
59 TimeInForce N
0 = Day
1 = Good ‘til Cancel
3 = Immediate or Cancel
6 = Good ‘til Date
Good ‘til Cancel and Good ‘til Date are only
available for Cash and 3M outright contracts.
Absence of this field indicates Day.
Page 30
Cinnober Financial Technology AB
Page 31
Cinnober Financial Technology AB
Valid values:
54 Side Y
1 = Buy
2 = Sell
The Order Cancel Reject message is issued by LMEselect upon receipt of an Order Cancel Request
or Order Cancel/Replace Request message which cannot be honoured. When rejecting a
Cancel/Replace Request (or Cancel Request), the Order Cancel Reject message will provide the
ClOrdID which was specified on the Cancel/Replace Request (or Cancel Request) message for
identification, and the OrigClOrdID will be that of the last accepted order (except in the case of
CxlRejReason = “Unknown Order”). Tag 39 (OrdStatus)
If the Order Cancel Reject message is the response to an Order Cancel/Replace Request (434=2),
tag 39 (OrdStatus) is set to 0 (New).
Page 32
Cinnober Financial Technology AB
13.1
Valid values:
102 CxlRejReason N
0 = Too late to cancel
1 = Unknown order
2 = Broker Option
3 = Order already in Pending Cancel or Pending
Replace Status
6 = Duplicate ClOrderID (11) received
99 = Other
Page 33
Cinnober Financial Technology AB
Valid values:
54 Side Y
1 = Buy
2 = Sell
Trades are anonymous, i.e. trades are disseminated without information regarding counter parties of
the trade. According to that requirement the FIX Execution Report will also be made anonymous.
Anonymity means that the tag 382 (NoContraBrokers) will not be present within the message.
Page 34
Cinnober Financial Technology AB
Valid values:
39 OrderStatus Y
0 = New
1 = Partially Filled
2 = Filled
3 = Done for day
4 = Cancelled
5 = Replaced
6 = Pending Cancel
8 = Rejected
C = Expired
E = Pending Replace
Page 35
Cinnober Financial Technology AB
15 = Unknown Account(s)
Valid values:
378 ExecRestatementReason N
1 = GT renewal / restatement
Valid values:
54 Side Y
1 = Buy
2 = Sell
Valid values:
59 TimeInForce N
0 = Day
1 = Good ‘til cancel
3 = Immediate or cancel
6 = Good ‘til Date
8 = Good ‘til ring 1. Note that this value can only
be set via GUI on new orders.
Valid values:
18 ExecInst N
S = Suspend (order is inactivated, removed from
public view and not available for matching. It is,
however, retained by the trading system and
Page 36
Cinnober Financial Technology AB
Page 37
Cinnober Financial Technology AB
0.
Required if LegPromptType=‘R’.
LegMaturityRollingPrompt N
Valid values:
10002
TOM = Tomorrow
C = Cash
3M = 3 Months
Page 38
Cinnober Financial Technology AB
Transaction Reporting.
In LMEselect, busted trades will be sent out. Two messages are affected - the Execution Report and
Market Data Message. In the Execution Report a busted trade will have the tag 150 (ExecType) set
to H (Trade Cancel).
6.3 Workflows
Page 39
Cinnober Financial Technology AB
OrdStatus
ExecType
ClOrdID
OrdID
Msg
-> 1 - 001 - -
New Order - Single
OrdStatus
ExecType
ClOrdID
OrdID
Msg
-> 1 - 002 - -
New Order - Single
Page 40
Cinnober Financial Technology AB
OrigClOrdID
ExecType
ClOrdID
OrdStatus
OrdID
Msg
-> 1 - - 003 - -
New Order - Single
Page 41
Cinnober Financial Technology AB
OrigClOrdID
OrdStatus
ExecType
ClOrdID
OrdID
Msg
-> 1 - - 005 - -
New Order - Single
Page 42
Cinnober Financial Technology AB
7 News
Page 43
Cinnober Financial Technology AB
8 Security List
- 27M - the monthly contract that falls in the month 27 months from the current month.
- 63M - The monthly contract that falls in the month 63 months from the current month.
- 123M - The monthly contract that falls in the month 123 months from the current month.
- D – Day.
- W – Week.
- M – Month.
- Q – Average.
- N1 (Near 1) - The earliest monthly prompt that falls between the CASH and 3M dates.
- N2 (Near 2) - The second earliest monthly prompt that falls between the CASH and 3M
dates.
- N3 (Near 3) - The third earliest monthly prompt that falls between the CASH and 3M dates.
- F1 (Far 1) - The earliest monthly prompt that fall after the 3M date.
- F2 (Far 2) - The second earliest monthly prompt that fall after the 3M date.
Page 44
Cinnober Financial Technology AB
- F3 (Far 3) - The third earliest monthly prompt that fall after the 3M date.
Security list can be requested for a specific symbol or for all symbols. With a successful Security List
Request, LMEselect will send one Security List message per symbol.
320 SecurityReqID
Y Unique identifier will be returned in Security
List message.
320 SecurityReqId
Y Identifier supplied by the requestor in the
Security List Request.
Page 45
Cinnober Financial Technology AB
Status of request.
560 SecurityRequestResult Y
Valid values:
0 = Valid request
1 = Invalid request
2 = No instruments found
Page 46
Cinnober Financial Technology AB
C = Cash
3M = 3 Months
15M = 15 Months
27M = 27 Months
63M = 63 Months
123M = 123 Months
D = Day
W = Week
M = Month
Q = Average
N1 = Near 1
N2 = Near 2
N3 = Near 3
F1 = Far 1
F2 = Far 2
F3 = Far 3
Valid values:
SecurityStrikeType N
S = Single
10006
T = Table
Page 47
Cinnober Financial Technology AB
9 Security Status
Security F
Out Sent as a reply to a Security Status MD + MDV
Status
Request. A Security Status message gives
the current trading state.
Page 48
Cinnober Financial Technology AB
55 Symbol
Y The symbol: e.g. CA
Standard Trailer
Y Component block, see section 13.2
A Security Status message gives the trading state. The following states constitute the complete set of
trading states at LME:
Pre-Open
Ready (17) Pre-Open
Page 49
Cinnober Financial Technology AB
Security Status messages are sent per contract from LMEselect. Messages are not sent out for
contracts that have not yet been created by the system. When a snapshot is requested, one Security
Status message will be sent out for each created contract for the given underlying commodity.
If the subscription request type is set to 1 (Snapshot + Subscribe), a Security Status message is sent
out when a new contract is created for the underlying.
At the LME, most contracts within the same underlying are usually in the same trading state. The
exceptions are for contracts that are running on their last trading day schedule and for contracts that
are running on a temporary trading schedule, i.e. when a state transition to a new trading state has
been manually initiated by a Service Desk user for either an underlying commodity or a contract
group within a commodity.
It is notable that Security Status messages are sent per underlying from MOIC and that only Symbol
(tag 55) is used in the Instrument component block.
For example, at 15:00 the AA future with prompt date TOM is in the CLOSED state, while the other
contracts in that underlying are in the state OPEN.
324 SecurityStatusReqID
N Unique ID, taken from the request.
Instrument
N Component block, see section 13.3
58 Text
N Contains the name of the trading state.
Page 50
Cinnober Financial Technology AB
Standard Trailer
Y Component block, see section 13.2
10 Drop Copy
Page 51
Cinnober Financial Technology AB
Trade AQ
Out Sent as a reply to Trade Capture Report DC
Capture
Report Request if no trades matched the provided
Request Ack search criteria.
Trade AE
Out Sent as a reply to a Trade Capture Report DC
Capture
Report Request
Valid values:
569 TradeRequestType Y
0 = All Trades
1 = Matches Trades
All Trades (0) and Matched Trades (1) will
generate the same result since all trades in
LMEselect 9 are matched.
Page 52
Cinnober Financial Technology AB
A user can only have one outstanding trade capture request in the system at the time.
Valid values:
749 TradeRequestResult Y
0 = Successful
1 = Invalid or unknown instrument
8 = TradeRequestType not supported
9 = Unauthorized for Trade Capture Report
Request
99 = Other
Valid values:
750 TradeRequestStatus Y
0 = Accepted
1 = Completed
2 = Rejected
Page 53
Cinnober Financial Technology AB
Valid values:
150 ExecType N
F = Trade
H = Trade Cancel
Page 54
Cinnober Financial Technology AB
Required if LegPromptType=“R”.
LegMaturityRollingPrompt N
Valid values:
10002
TOM = Tomorrow
C = Cash
3M = 3 Months
Page 55
Cinnober Financial Technology AB
Text N Free format text string. Info field from the Trading
58 Application.
Page 56
Cinnober Financial Technology AB
10.3 Workflows
Page 57
Cinnober Financial Technology AB
Note that Trade Capture Reports and Execution Reports could also be received by users logged on
to FIX Drop Copy server without requesting them. A logged on FIX Drop Copy user will receive
Execution Reports for own member (and member unit) trades and order updates. Also, it will receive
Trade Capture Reports for trades that the own member serves as a clearer for.
11 Market Data
Market Data Request Y Out The Market Data Request Reject is MD + MDV
Reject used when the exchange cannot
honour the Market Data Request
due to business or technical
reasons.
Page 58
Cinnober Financial Technology AB
contract.
FIX Market Data users are authorized to receive market data from LMEselect, i.e. MDSource = EL
(Electronic Trading).
FIX Market Data Vendors are authorized to receive market data from all sources, i.e. MDSource = EL
(Electronic Trading), RK (Ring & Kerb), MI (Member Indicative Quotes), MT (Matched Trades), CH
(Clearing House) and EX (any other LME published data which falls outside the other categories).
A Market Data Request is a general request for market data on specific securities. A successful
Market Data Request returns one or more Market Data messages containing one or more Market
Data Entries. Each Market Data Entry is a Bid, an Ask, a Trade etc. Market Data Entries usually have
a price and a quantity associated with them.
Note that the Opening, Closing, Trading High/Low prices will only be published at the end of the
trading day in Select. The Trading High/Low is also published at the end of each trading session from
the Trading Ring.
You subscribe to market messages by a Market Data Request. A subscription request is either a
request for a snapshot, a snapshot + updates or a request to withdraw the subscription. A Market
Data Request can either be for Full Refresh or Incremental Refresh:
• Full Refresh - This mode is optimized to trade off increased bandwidth for simplicity in
processing and is intended for requests on only a few instruments. Each FIX Market Data
message in response to the request will contain the complete data requested for one
contract. If more than just the top of book is requested, this means that both sides, and all
price tiers, must be reported in that Market Data message. If for example, the CAD3M order
book is modified, the Market Data will contain the complete price depth up to 15 levels for
CAD3M.
• Incremental Refresh - This mode is optimized for handling requests for many instruments
while conserving bandwidth. For example, the system sends a new market data message
with updated information whenever an order is entered, modified or cancelled and the order
Page 59
Cinnober Financial Technology AB
affects the accumulated quantity of any of the top 15 price levels. Several incremental
updates of entries for different instruments can be included in one FIX Market Data message.
Snapshot
A snapshot regarding bid, ask or both is quite simple to define. It’s the complete order book for a
security at a specific moment in time.
When Market Data Request is issued and trades are requested the snapshot will be defined as all
public trades for current date (unless Trade Replay is used, see section 11.1.5).
The snapshot will be represented by either MD Full Refresh or MD Incremental refresh, depending
on the value of MDUpdateType in the MD Request.
1 = Incremental refresh
MD Incremental refresh
The price depth in Select can be derived from Market Data Messages. However, remember that
Market Data Message is a snapshot. For example, when the FIX client gets a Market Data Message
the order book for the contract should be scratched and rebuilt with the information in the Market
Data Message received.
The Market Data messages containing Order information (MDEntryType=0 or MDEntryType=1) will
contain the price depth for the bids and offers respectively.
It is notable that Select is sending a delete MDentry for the bottom row (i.e. last Bid or Offer price
from the price level depth specified) from the order book in case of a new order being entered in the
middle of order book. This happens in case of Incremental Refresh only.
When subscribing for Full Refresh Market Data messages on Bid and/or Offer you may get an update
Market Data message with NoMDEntries (tag 268) = 0 indicating that the order book was emptied.
An empty order book message does not contain MDSource (tag 10035), as MDSource is part of an
MDEntry. In order to receive empty order book message updates, do not specify the MDSource tag
when subscribing for FullRefresh. If MDSource = ‘EL’ is used, empty order book messages will not be
received.
A snapshot for an empty order book will not return an MDMessage. When orders are entered to the
order book, updates will be sent out.
A Market Data Request is a request for Market Data information for one or more symbols. The
immediate reply is one message (containing order book) per contract for the requested symbol if
requesting Full Refresh. For Incremental Refresh, a message will be sent out only if the contract
contains any of the requested information (e.g. bid, offer, trade). The updates thereafter contain the
order book for modified contracts, NOT all order books for the subscribed symbol(s).
Page 60
Cinnober Financial Technology AB
E.g. a request for Snapshot (bid and offer) in CA where there are three contracts (X, Y, Z) that have
prices will look as below:
Sequence:
1. A correct Market Data Request is sent.
2. A snapshot for contract X is sent to the client.
3. A snapshot for contract Y is sent to the client.
4. A snapshot for contract Z is sent to the client.
5. The sequence ends.
Page 61
Cinnober Financial Technology AB
1 – Ask
TOM, C, 3M TOM, C, 3M, 15M, 27M, 63M,
123M
Page 62
Cinnober Financial Technology AB
The following rolling prompts exist for the Market Data messages.
Page 63
Cinnober Financial Technology AB
3. The client keeps track of the highest seen TradeSeqNo for each TradeSeqNoSeries. The
highest numbers seen are:
- TradeSeqNoSeries 1: Highest TradeSeqNo is 43
- TradeSeqNoSeries 3: Highest TradeSeqNo is 22
There is also a gap; no trade was numbered 1-42.
4. The FIX connection is suddenly lost.
5. When the client has reconnected, it should set up a subscription with the following starting
points:
- TradeSeqNoSeries 1: Last seen TradeSeqNo 43
- TradeSeqNoSeries 3: Last seen TradeSeqNo 22
6. The client will receive new trades with the following numbers:
3-23
2-1
1-44
Since no TradeSeqNo was specified for TradeSeqNoSeries 2, all trades for
TradeSeqNoSeries 2 will be received.
When requesting Indicative Quotes in a Market Data Request with any or both of MDEntryType bid
(0) and offer (1) specified, all today’s bids and offers are disseminated for all contracts that quotes
are entered for. There are no specific tags in the Market Data Request for replay of Indicative
Quotes, it is always performed.
The following details apply to both MD Snapshot/Full Refresh and MD Incremental Refresh.
• Generic
• Snapshot
- All quotes, quote updates and cancels of the current day are sent out.
- All quotes, quote updates and cancels for the same contract are sent out in one single
message, ordered by time - the oldest first.
• Update
- All new quotes, quote updates and cancels are sent out.
When requesting MOIC prices in a Market Data Request with any or both of MDEntryType bid (0)
and offer (1) specified, all today’s bids and offers are disseminated for all contracts that prices are
Page 64
Cinnober Financial Technology AB
entered for. There are no specific tags in the Market Data Request for replay of MOIC prices, it is
always performed.
The following details apply to both MD Snapshot/Full Refresh and MD Incremental Refresh.
• Generic
- All new, withdrawn and deleted session prices in MOIC are sent out in time order.
- Original price and timestamp are sent out at withdrawal and delete.
• For Snapshot; all events of the current day are sent out in original time order. This means
that for a withdrawn price both the original price and the withdrawn are sent out. All events –
entered, cancel or withdrawn for the same contract are sent out in one single message,
ordered by time – the oldest first. (Note: There is a separate FIX message sent for Bid and
Offer prices).
• For Update; the prices are sent out when they occur.
Withdrawal and deletion are distinguished as follows:
IncrementalRefresh FullRefresh
Deleted (new
Action MDUpdateAction Withdrawn Withdrawn
tag)
Withdrawn Delete Y - Y
Delete Delete - Y -
When requesting for reports using any of the MDEntryTypes v, x, y and z, all today’s versions of the
reports and notifications embraced by the MDRequest are disseminated. There are no specific tags
in the Market Data Request for replay of reports.
• It is possible to have several MDEntryTypes (tag 269) specified in the market data request.
• It is possible to have several Symbols (tag 55) specified in the market data request.
• All MDEntryType values specified must be available for all underlyings specified in Symbol.
Otherwise the user receives a Market Data Request Reject message.
Page 65
Cinnober Financial Technology AB
• Market data requests that should not contain Symbol (tag 55) are:
- Official Index Value (MDEntryType = 3)
- Exchange Rate (MDEntryType = r)
- Report (MDEntryType = v)
- Bullion Report (MDEntryType = y)
- Prompt Calendar Report Delayed (MDEntryType = x)
- Report Notification (MDEntryType = z)
- Symbol is optional for Evening Evaluations for FX rates (MDEntryType = e), which is
further declared in this section.
• For Evening Evaluation rates (MDEntryType = e) the following applies with regards to
Symbol (tag 55):
- Provisional and Final Evening Evaluation FX Rates are always received in Market Data
Message regardless symbol being included or not in Market Data request.
- The following Evening Evaluation rates require Symbol (tag 55) to be included in the
Market Data request.
(1) Provisional Futures & Carries Evening Evaluation
(2) Final Futures & Carries Evening Evaluation
(3) Indicative Futures & Carries Evening Evaluation
• For the MDEntryTypes allowing or requiring Symbol (tag 55), it is possible to set
NoRelatedSym (tag 146) to zero and not specifying a symbol. This will result in no returning
messages because effectively the request indicates that no symbols are of interest.
• It is not possible to have several MDEntryTypes for MDEntryType = v, x, y and z. These must
be subscribed in separate market data requests.
Page 66
Cinnober Financial Technology AB
Valid values:
263 SubscriptionRequestType Y
0 = Snapshot
1 = Snapshot + Updates (Subscribe)
2 = Unsubscribe
Valid values:
265 MDUpdateType N*
0 = Full refresh
1 = Incremental refresh
Valid values:
MDEntryType Y
0 = Bid
269
1 = Offer
2 = Trade
3 = Index Value
4 = Opening Price
5 = Closing Price
6 = Settlement Price
7 = Trading High
8 = Trading Low
E = Evening Evaluation
F = Floor Closing Price
M = Mean
P = Official Price
Q = Sterling Equivalent
R = Exchange Rate
Page 67
Cinnober Financial Technology AB
MD Report Code N The 3 character short code for the report. Example:
10030 WSM, WHL, MOI, PRC, WHC, WHT.
Page 68
Cinnober Financial Technology AB
• Bid (0) – All bid orders from LMEselect and Trading Ring. Official and unofficial bid
prices from Trading Ring and Member Indicative Quotes.
• Offer (1) – All ask orders in LMEselect and Trading Ring. Official and unofficial ask
prices from Trading Ring and Member Indicative Quotes.
• Trade (2) – All trades in LMEselect, Trading Ring, Telephone Trades and Inter-Office
Trades. If not all previous trades are wanted in a snapshot, use the functionality of Trade
Replay.
• Opening (4) – Opening is the LMEselect Opening price, i.e. the price of the first trade in
LMEselect in the contract during that trading day. This is part of the end of day
information sent out at the end of the trading day.
• Closing (5) – Closing is the LMEselect Closing price, i.e. the price of the last trade in
Select in the contract during that trading day. This is part of the end of day information
sent out at the end of the trading day.
• Settlement (6) – Settlement prices are established in LMEselect and Trading Ring only
for particular commodities. They are sent out once they have been confirmed.
• Trading High (7) – In LMEselect the Trading High is the highest trade price for the
contract during that trading day. This is part of the end of day information sent out at the
end of the trading day. In Trading Ring the Trading High is the highest bid price for the
contract during a trading period. It is sent out at the end of each trading period.
• Trading Low (8) – In LMEselect the Trading Low is the lowest trade price for the
contract for that trading day. This is part of the end of day information sent out at the end
of the trading day. In Trading Ring the Trading Low is the lowest ask price for the
contract during a trading period. It is sent out at the end of each trading period.
• Evening Evaluation (e) – Evening evaluations for FX rates, futures and TAPOs from
clearing.
Page 69
Cinnober Financial Technology AB
• Floor Closing Price (f) – Floor Closing Price refers to yesterday’s floor closing prices
from LMEselect. It is not possible to subscribe to Floor Closing Prices, only snapshot is
supported.
• Mean (m) – From Trading Ring Mean is the monthly average official mean. From
Clearing Mean is monthly moving average price and the monthly average settlement
price for TAPOs.
• Official Price (p) – Official Prices are available from LMEselect only for particular
commodities.
• Sterling Equivalent (q) – Sterling Equivalent prices are available from Trading Ring for
cash and 3M contracts for particular commodities.
• Exchange Rate (r) – Exchange Rate is available from Trading Ring for daily, monthly
and daily moving monthly average FX rates.
• Asian Benchmark Price (s) – Asian Benchmark is used as reference price and is only
available for 3M contracts for particular commodities.
• Report (v) – All other reports available from the Exchange that are not of type bullion or
prompt calendar delayed.
• Report – Prompt Calendar Delayed (x) – A report containing the prompt calendar
delayed data from the Exchange.
• Report – Bullion (y) – A report containing bullion data from the Exchange.
• Report Notification (z) – Notifications that reports are available from the Exchange.
FIX Market Data users and Market Data Vendors are allowed to subscribe for the following market
data:
0 – Bid MD + MDV
1 – Ask MD + MDV
2 – Trade MD + MDV
Page 70
Cinnober Financial Technology AB
M – Mean MDV
V – Report MDV
Valid values:
281 MDReqRejReason N
0 = Unknown symbol
1 = Duplicate request ID
4 = Unsupported subscription request type
5 = Unsupported market depth
6 = Unsupported market update type
7 = Unsupported aggregated book
8 = Unsupported entry type
A = Unsupported scope
B = Unsupported open, close or settle flag
C = Unsupported implicit delete
Page 71
Cinnober Financial Technology AB
Valid values:
MDEntryType Y
0 = Bid
269
1 = Offer
2 = Trade
3 = Index Value
4 = Opening Price
5 = Closing Price
6 = Settlement Price
7 = Trading High
8 = Trading Low
E = Evening Evaluation
F = Floor Closing Price
M = Mean
P = Official Price
Q = Sterling Equivalent
R = Exchange Rate
S = Asian Benchmark Price
Page 72
Cinnober Financial Technology AB
V = Report
X = Report – Prompt Calendar Delayed
Y = Report – Bullion
Z = Report Notification
Valid values:
MDEntryPxType N
0 = Real-Time
10013
1 = Provisional
2 = Confirmed
3 = Official
4 = Unofficial
5 = Daily
6 = Monthly Average
7 = Monthly Moving Average
8 = Indicative
9 = Reconfirmed
Page 73
Cinnober Financial Technology AB
273
Page 74
Cinnober Financial Technology AB
10033 MDReportFragmentNo N For large report that are fragmented into multiple
messages, this is the fragment number (1..n).
10034 MDReportLastFragment N This indicates that this is the last fragment of the
report.
Busted trades will also be sent out as Market Data Message. A busted trade will be represented with
tag 277 (TradeCondition) that will have value 0 (Cancel).
Page 75
Cinnober Financial Technology AB
Valid values:
MDEntryType N
0 = Bid
269
1 = Offer
2 = Trade
3 = Index Value
4 = Opening Price
5 = Closing Price
6 = Settlement Price
7 = Trading High
8 = Trading Low
E = Evening Evaluation
F = Floor Closing Price
M = Mean
P = Official Price
Q = Sterling Equivalent
R = Exchange Rate
S = Asian Benchmark Price
V = Report
X = Report – Prompt Calendar Delayed
Y = Report – Bullion
Z = Report Notification
Valid values:
MDEntryPxType N
0 = Real-Time
10013
Page 76
Cinnober Financial Technology AB
1 = Provisional
2 = Confirmed
3 = Official
4 = Unofficial
5 = Daily
6 = Monthly Average
7 = Monthly Moving Average
8 = Indicative
9 = Reconfirmed
Page 77
Cinnober Financial Technology AB
7554
Valid values:
MDEntrySession N
R1 = First morning ring
10037
R2 = Second morning ring
R3 = First afternoon ring
R4 = Second afternoon ring
K1 – Morning kerb session
K2 = Afternoon kerb session
N = No session
Page 78
Cinnober Financial Technology AB
10034 MDReportLastFragment N This indicates that this is the last fragment of the
report.
Busted trades will also be sent out as Market Data Messages. A busted trade will be represented
with tag 277 (TradeCondition) that will have value 0 (Cancel).
11.3 Workflows
Scenario 1:
Table name: Market Data Request (Message type = “V”)
262 001
Page 79
Cinnober Financial Technology AB
263
0 Snapshot
1 Offer requested
269
CA Symbol CA
55
Sequence:
Scenario 2:
Table name: Market Data Request (Message type = “V”)
262 001
263
1 Snapshot + Subscribe
Page 80
Cinnober Financial Technology AB
1 Offer requested
269
CA Symbol CA
55
Sequence:
Requesting Snapshot + Subscribe for Offer and Floor Closing Prices. A request for Snapshot +
Subscribe with Floor Closing Prices is illegal.
Table name: Market Data Request (Message type = “V”)
262 001
Page 81
Cinnober Financial Technology AB
263
1 Snapshot + Subscribe
1 Offer
269
CA Symbol CA
55
Sequence:
Scenario 4:
Requesting Snapshot + Subscribe for TWAP Official Prices.
Table name: Market Data Request (Message type = “V”)
Page 82
Cinnober Financial Technology AB
262 001
263
1 Snapshot + Subscribe
P Official Prices
269
Sequence:
Page 83
Cinnober Financial Technology AB
12 General Messages
Page 84
Cinnober Financial Technology AB
Page 85
Cinnober Financial Technology AB
369 LastMsgSeqNumProcessed N The last MsgSeqNum (tage 34) value received by the
FIX server.
10 CheckSum Y A three byte simple checksum. See FIX 4.4 Specification for a
detailed description. Always the last field in the message.
Required if PromptType=‘R’.
MaturityRollingPrompt N
Page 86
Cinnober Financial Technology AB
Valid values:
10000
TOM = Tomorrow
C = Cash
3M = 3 Months
15M = 15 Months
27M = 27 Months
63M = 63 Months
123M = 123 Months
D = Day
W = Week
M = Month
Q = Average
N1 = Near 1
N2 = Near 2
N3 = Near 3
F1 = Far 1
F2 = Far 2
F3 = Far 3
DEC1 = December 1
DEC2 = December 2
DEC3 = December 3
If NoOfInstrumentLegs = 2, the instrument block describes a carry contract. The first entry in the
repeating group then describes the buy leg, and the second entry describes the sell leg. (This means
that a buy order in the contract buys the first leg and sells the second. A sell order performs the
opposite.) The maturity date for the buy leg must always be earlier in time than the maturity date for
the sell leg.
The Strike price (tag 202) field is only applicable if the CFICode (tag 461) describes an option or
TAPO, otherwise the message is considered invalid.
Page 87
Cinnober Financial Technology AB
The following Party roles are not validated by the system, but are the user’s responsibility to set
correctly on the New Single Order and Order Cancel/Replace requests:
• 3 = Client ID (For all Client orders the Client ID should be a LEI or Client identifier. If that is not
available, the field should be populated with the value AGGR or PNAL.)
• 35 = Liquidity Provider (This should be set if the trader qualifies for Liquidity Provider initiative.)
• 66 = Market Maker (This should be set if the trader qualifies for a Market Maker initiative.)
Page 88
Cinnober Financial Technology AB
Valid values:
10000 MaturityRollingPrompt String
C = Cash
3M = 3 Months
15M = 15 Months
27M = 27 Months
63M = 63 Months
123M = 123 Months
D = Day
W = Week
M = Month
N1 = Near 1
N2 = Near 2
N3 = Near 3
F1 = Far 1
F2 = Far 2
F3 = Far 3
Page 89
Cinnober Financial Technology AB
R = Rolling Prompt
Page 90
Cinnober Financial Technology AB
10030 MDReportCode String The 3 character short code for the report.
Example: WSM, WHL, MOI, PRC, WHC,
WHT.
10033 MDReportVersion Int For large reports that are fragmented into
multiple messages, this is the fragment
number (1..n).
Page 91
Cinnober Financial Technology AB
10043 MaturityExchangeRateDate String Prompt date for Exchange Rate. UTC date in
Page 92
Cinnober Financial Technology AB
format YYYYMMDD.
Page 93
Cinnober Financial Technology AB
55 Symbol AA
461
CFICode FCEPS
10010 NoOfInstrumentLegs 1
10004 PromptType R
10000 MaturityRollingPrompt C
CADDEC10
December 2010 contract for Copper. Note that the monthly contract DEC10 means the third
Wednesday in December 2010, i.e. 2010-12-15:
55 Symbol CA
10010 NoOfInstrumentLegs 1
10004 PromptType S
MXDJUN11
June 2011 future on the LME Index:
55 Symbol MX
Page 94
Cinnober Financial Technology AB
10010 NoOfInstrumentLegs 1
10004 PromptType S
NID1Q11
First quarter 2011 average contract for Nickel:
55 Symbol NI
10010 NoOfInstrumentLegs 1
10004 PromptType A
AAD1H11
55 Symbol AA
10010 NoOfInstrumentLegs 1
10004 PromptType A
Page 95
Cinnober Financial Technology AB
AADTOMNEXT
Carry contract between TOM and C in Aluminium Alloy:
55 Symbol AA
10010 NoOfInstrumentLegs 2
10004 PromptType R
10004 PromptType R
10000 MaturityRollingPrompt C
AADDEC10-DEC11
Carry contract between DEC10 and DEC11 in Aluminium Alloy:
55 Symbol AA
10010 NoOfInstrumentLegs 2
10004 PromptType S
10004 PromptType S
Page 96
Cinnober Financial Technology AB
AADJUN11_1400C
Call option on the June 2011 AA future with strike 1400 in Aluminium Alloy:
55 Symbol AA
10010 NoOfInstrumentLegs 1
10004 PromptType S
AADOCT11_1500TP
55 Symbol AA
10010 NoOfInstrumentLegs 1
10004 PromptType S
Page 97