cointex fix api

Upload: skit54

Post on 02-Jun-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/10/2019 Cointex Fix API

    1/35

    Cointex API Specification

  • 8/10/2019 Cointex Fix API

    2/35

    2

    FIX 4.4 Message Reference .................................................................................................................4

    Standard Header and Trailer ................................................................................................................4

    Standard Header ...........................................................................................................................4

    Standard Trailer ............................................................................................................................5

    Session Level Messages .......................................................................................................................6

    Heartbeat .......................................................................................................................................6

    Test Request ..................................................................................................................................6

    Reset Request ...............................................................................................................................7

    Reject (Session) ............................................................................................................................7

    Sequence Reset .............................................................................................................................8

    Logout ...........................................................................................................................................9

    Logon ..........................................................................................................................................10

    Application Messages for Security Data ............................................................................................12

    Security Definition Request .......................................................................................................12

    Security Definition .....................................................................................................................13

    Application Messages for Routes Data ..............................................................................................15

    Route Status Request ..................................................................................................................15

    Route Status ................................................................................................................................15

    Application Messages for Market Data .............................................................................................17

    Market Data Request ..................................................................................................................17

    Market Data Incremental Refresh ..............................................................................................18

    Market Data SNAPSHOT/FULL Refresh ..................................................................................20

    News Messages ..................................................................................................................................21

    Account Status Messages ...................................................................................................................21

  • 8/10/2019 Cointex Fix API

    3/35

    3

    Application Messages for Trading .....................................................................................................23

    New Order Single .......................................................................................................................23

    Identifying the Traded Commodity ............................................................................................25

    Open and Close Indicator ...........................................................................................................25

    Order Cancel / Replace ..............................................................................................................25

    Order Cancel ..............................................................................................................................27

    Execution Report........................................................................................................................28

    Order Cancel Reject ...................................................................................................................31

    Order Status Request ..................................................................................................................32

    Request for Positions .................................................................................................................32

    Trade Capture Report .........................................................................................................................33

    Trade capture report request .......................................................................................................33

    Trader capture report ..................................................................................................................34

  • 8/10/2019 Cointex Fix API

    4/35

    4

    FIX 4.4 MESSAGE REFERENCEThis section lists the messages in detail and provides information on our use of these FIX 4.4messages. Tags marked Not supported are not used by our server, but may be required toconform to FIX protocol.

    All field values mustconform to FIX protocol definitions. For example, a date must not containalphabetical characters. Specifying invalid field values may cause unexpected behavior. The

    documentation atwww.fixprotocol.orgprovides information on field data types.

    STANDARD HEADER AND TRAILERThe Cointex FIX Trading Server expects and sends standard headers and trailers on eachmessage. Our FIX engine will reject messages not containing correct headers and trailers.

    Unsupported tags should not be specified but in general, if they are present, will be ignored.

    STANDARD HEADER

    Tag Field Name Required Comments

    8 BeginString Y FIX.4.4

    9 BodyLength Y

    35 MsgType Y

    49 SenderCompID YClient: id of your applicationShould be used Cointex user login

    56 TargetCompID YServer: id of your applicationCTPRICE for price connection and CTORDER for tradeconnection.

    115 OnBehalfOfCompID N Not supported

    128 DeliverToCompID N Not supported

    90 SecureDataLen N Not supported

    91 SecureData N Not supported

    34 MsgSeqNum Y

    http://www.fixprotocol.org/http://www.fixprotocol.org/http://www.fixprotocol.org/http://www.fixprotocol.org/
  • 8/10/2019 Cointex Fix API

    5/35

    5

    50 SenderSubID N Not supported

    142 SenderLocationID N Not supported

    57 TargetSubID N Not supported

    143 TargetLocationID N Not supported

    116 OnBehalfOfSubID N Not supported

    144 OnBehalfOfLocationID N Not supported

    129 DeliverToSubID N Not supported

    145 DeliverToLocationID N Not supported

    97 PossResend NSend when message may be duplicate of another messagesent under a different sequence number. (As example forExecution report .)

    52 SendingTime Y

    122 OrigSendingTime NRequired if message was resent as a result of aResendRequest. Can set to SendingTime.

    212 XmlDataLen N Only for xml messages

    213 XmlData N Only for xml messages

    347 MessageEncoding N Not supported

    369LastMsgSeqNumProcessed

    N Not supported

    370 OnBehalfOfSendingTime N Not supported

    STANDARD TRAILER

    Tag Field Name Required Comments

    93 SignatureLength N Not supported.

  • 8/10/2019 Cointex Fix API

    6/35

    6

    89 Signature N Not supported.

    10 CheckSum Y

    Checksum Calculation

    Please refer to the FIX documentation available atwww.fixprotocol.orgfor checksum calculationalgorithm specifications.

    SESSION LEVEL MESSAGES

    The following messages are session level messages and are processed by our server using theFIX engine. Some of these messages can be generated as well as accepted by our server, andsome messages are expected to be received only.

    HEARTBEAT

    Heartbeat messages can be initiated by either the client or the server.

    Tag Field Name Required Comments

    Standard Header Y MsgType = 0

    112 TestReqID N Set by the server when responding to a Test Requestmessage.

    Data type: stringStandard Trailer Y

    TEST REQUEST

    Test Request messages may be initiated by the client or the server. The server may initiate thismessage under the control of the FIX engine if it believes there is a problem with the socket.

    Upon receipt of this message, the server will respond with a Heartbeat message.

    http://www.fixprotocol.org/http://www.fixprotocol.org/http://www.fixprotocol.org/http://www.fixprotocol.org/
  • 8/10/2019 Cointex Fix API

    7/35

    7

    Tag Field Name Required Comments

    Standard Header Y MsgType = 1

    112 TestReqID Y Will be returned in tag 112 of Heartbeat

    Data type: string

    Standard Trailer Y

    RESET REQUEST

    Either the client or the server, in response to a detected gap in the message sequences, caninitiate a Reset Request message. It requests a resend of the messages from BeginSeqNo throughto and including EndSeqNo.

    Tag Field Name Required Comments

    Standard Header Y MsgType = 2

    7 BeginSeqNo Y

    16 EndSeqNo Y

    Standard Trailer Y

    A Reset Request will be responded to by retransmitting the requested messages, or bytransmitting a Sequence Reset (Gap Fill) to skip some of those messages.

    REJECT (SESSION)

    A message reject is issued when an incoming message fails session level validation. Either theclient or the server can produce this message, although the client is very unlikely to do so, as allFIX messages produced by the server are supposed to be FIX compliant.

    When this type of message is produced by the server, the error will have been detected by the FIXengine and suitable text will be found in tag 58. The field in error is found in tag 371 and the

    sequence number of the message in error is found in tag 45.

  • 8/10/2019 Cointex Fix API

    8/35

    8

    Tag Field Name Required Comments

    Standard Header Y MsgType = 3

    45 RefSeqNum Y MsgSeqNum of rejected message

    371 RefTagID N The tag failing validation

    372 RefMsgType N MsgType of the message in error

    373 SessionRejectReason N Refer to FIX documentation

    58 Text N Message to explain the error

    Standard Trailer Y

    SEQUENCE RESET

    The client may generate a Sequence Reset message when responding to a Reset Request inorder to skip messages. Please read the information on the importance of proper sequencenumber reset co-ordination and sequence number processing in section This is a recommendedmechanism to ensure that stale orders are not re-transmitted in the event that the connection hasbeen down for an extended period.

    This message is not produced by the server, when the server responds to Reset Requests allrequested messages are re-sent.

    Tag Field Name Required Comments

    Standard Header Y MsgType = 4

    123 GapFillFlag N Normally present and set to Y

    36 NewSeqNo Y Must only increase expected SeqNo

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    9/35

    9

    The GapResetFlag (tag 123) should normally be present and set to Y in order to skip themessages. This is called a Sequence Reset (Gap Fill)and the server will set the next expectedsequence number to the value of NewSeqNo (tag 36), thus skipping intervening messages. It isimportant to note that the sequence number of this message should be the sequence number ofthe first message to be skipped.

    LOGOUT

    This message is created by the client application when it wishes to disconnect a session.

    Tag Field NameRequir

    edComments

    Standard Header Y MsgType = 5

    58 Text N Not supported

    20005 NoClusterNodes N

    20009NodeID

    Y Id of the cluster node

    20007NodeLoad

    Y Load of t the cluster node

    20008ConnectionMode

    Y 1Quote stream2Trade stream

    20001NoServerURLs

    N

    20002 NodeHostY

    20003 NodePortY

    20004NodeProtocol

    Y

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    10/35

    10

    LOGON

    FIX logon authentication requires a valid Cointex user SenderID name and a password. The user

    must have rights for logon as FIX client.

    Logon can be rejected for a number of reasons:

    the login name or password are invalid

    the user is already logged in the system in a different FIX session or via other means

    Logon request message sequence number is smaller than the last received FIX message

    (MsgSeqNum too low) manual intervention on the client side is required to correct the

    sequence numbers and/or reset them via ResetSeqNumFlag field.

    A Logout message is sent in all these cases with the Text(58) field containing the error description.

    Tag Field NameRequir

    edComments

    Standard Header Y MsgType = A

    98 EncryptMethod Y Ignored, use 0.

    108 HeartBtInt Y Heartbeat interval used by both sides. Default 30.

    141 ResetSeqNumFlag N Indicates both sides of a FIX session should resetsequence numbers

    554 Password Y Cointex trader login password.

    98 EncryptMethod Y Ignored, use 0.

    108 HeartBtInt Y Heartbeat interval used by both sides. Default 30.

    141 ResetSeqNumFlag N Indicates both sides of a FIX session should resetsequence numbers

    20009NodeID N ID of the cluster node

    20005 NoClusterNodes N

    20009

    NodeID

    Y Id of the cluster node

  • 8/10/2019 Cointex Fix API

    11/35

    11

    20007NodeLoad

    Y Load of t the cluster node

    20008ConnectionMode

    Y 1Quote stream2Trade stream

    20001 NoServerURLs N

    20002 NodeHostY

    20003 NodePortY

    20004NodeProtocol

    Y

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    12/35

    12

    APPLICATION MESSAGES FOR SECURITY

    DATA

    SECURITY DEFINITION REQUEST

    The server will only process a security definition request with a SecurityRequestType of 3(Request List of Securities). The server will respond with a Security Definition message. Othertypes of Security Definition Request are rejected by the server by setting the Security ResponseType to 5 on the returned message.

    Tag Field Name Required Comments

    Standard Header Y MsgType = c (lowercase)

    320 SecurityReqID Y Unique identifier for this request

    321 SecurityRequestType N Ignored, use 3

    55 Symbol N Instrument name

    48 SecurityID N Instrument Id

    22 IDSource N Not supported.

    167 SecurityType N Cointex instrument type name

    Standard Trailer Y

    Most of the fields are unsupported due to the fact that on the Cointex FIX Trading Server, use ofthis message is limited to requesting a list of available securities. It is not possible to use thismessage to request that a particular security be traded on the Cointex servers.

    The fields listed in the next table are used to specify filters on the returning data. Presence of afield will indicate to the server that data should be filtered by that value. Absence of the fieldindicates that the data should be wild-carded for that item. For example, to request all instrument ofSpot instrument type, use 207=Spot but do not specify the Symbol tag.

  • 8/10/2019 Cointex Fix API

    13/35

    13

    SECURITY DEFINITION

    The Security Definition is send by the server on client logon or in response to a Security DefinitionRequest to list the available securities on the gateway. This does not list all securities defined onthe Cointex servers only the securities that your logon has received permission to access. If aSecurity Definition Request is being rejected (e.g. not type 3) then the returned message willcontain no securities.

    Tag Field Name Required Comments

    Standard Header Y MsgType = d (lowercase)

    320 SecurityReqID Y As supplied in Request.

    322 SecurityResponseID Y A time based unique identifier.

    323 SecurityResponseType N 4 (returning a list)5 (rejecting a request)6 (could not match selection)

    55 Symbol N Instrument name

    48 SecurityID N Cointex instruement ID.

    167 SecurityType N Cointex instrument type (i.e. instrument group)

    200 MaturityMonthYear N Not supported.

    205 MaturityDay N Not supported.

    201 PutOrCall N Not supported.

    202 StrikePrice N Not supported.

    15 Currency N Instrument primary currency

    58 Text N Instrument description

    454 NoUnderlyings N Number of repeating groups for available routes

  • 8/10/2019 Cointex Fix API

    14/35

    14

    7020 CrossInstrumentType N Cross type for convert instrument primary currency intosystem currency:0- simple, i.e. without cross instrument; 1- cross typeprice;2cross type simple reverse; 3cross typereverse price

    7021 CrossInstrumentId N Cross instrument id for account

    7022 CurrencyMinChange N Accuracy of instrument.

    16470 LotSizeOption Reserved for options.

    16552 ExchTickSize Tic size

    16554 ExchPointValue Point (pips) size

    460 InstrumentType N FOREX = 1;EQUITIES = 2;FUTURES = 3;OPTIONS = 4;EQUITIES_CFD = 5;FORWARD = 6;FUTURES_CFD = 7;INDICIES= 8;GENERAL = 0;

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    15/35

    15

    APPLICATION MESSAGES FOR ROUTESDATA

    ROUTE STATUS REQUEST

    Request status information for Cointex routes.

    Tag Field Name Required Comments

    Standard Header Y MsgType = UAR (uppercase)

    18200 GatewayStatusReqId Y ID for this route status request.

    263 SubscriptionRequestType N Not supported.

    Standard Trailer Y

    ROUTE STATUS

    The Route Status message is sending on client logon or returned by the server in response to aRoute Status Request.

    Tag Field Name

    Require

    d Comments

    Standard Header Y MsgType = UAT (lowercase)

    20009 NodeID N ID of the node, where this route was started

    18200 GatewayStatusReqId N ID for this route status request.

    18201 NoGatewayStatus Y Number of status messages contained in this repeating

    group.

  • 8/10/2019 Cointex Fix API

    16/35

    16

    18202 GatewayStatus

    N Current status of the route. Possible values include: 1: Halted 2: Open 3: ClosedGenerally to user will be send only Route Statusmessage with GatewayStatus=2.

    207 SecurityExchange

    Y Cointex route name.

    20015 QuoteSecurityExchange

    N Info route (only for trade mode). If group withSubExchangeGateway=1 isnt set, subscription shouldbe with using this securityExchange

    18203 ExchangeGateway

    N Not supported.

    18204 SubExchangeGateway

    N Type of Cointex route. Valid values include: 1: Price 2: Order (i.e. trade)

    58 Text N Additional information about the route.

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    17/35

    17

    APPLICATION MESSAGES FOR MARKETDATA

    MARKET DATA REQUEST

    The Market Data Request is submitted by the client application in order to request price data fromthe server. Both snapshots and incremental refreshes are supported. Market depth is supported to20 levels although for most exchanges only 10 levels will be provided. Some exchanges limit thisto 5 levels.

    The server will respond to a Market Data Request with a Market Data Incremental Refreshmessage as requested, or a Market Data Reject message.

    Tag Field Name Required Comments

    Standard Header Y MsgType = V

    262 MDReqID Y Unique ID, or the ID of the request to disable.

    263 SubscriptionRequest

    Type

    Y 1subscribe

    2unsubscribe

    264 MarketDepth N 1Level I0Full cup

    *For full market depth server do not sendMDEntryPositionNo , only MDEntryID.

    265 MDUpdateType N Not supported. Snapshot/Full and Market Data IncrementalRefresh.

    266 AggregatedBook N Ignored.

    267 NoMDEntryTypes N Number of MDEntryType fields requested.

    269 MDEntryType

    Y If not set subscribe for bids, offers and trade.Supported value:BID = '0';OFFER = '1';TRADE = '2';OPENING_PRICE = '4';CLOSING_PRICE = 5;HIGH_PRICE = '7';LOW_PRICE = '8';

  • 8/10/2019 Cointex Fix API

    18/35

    18

    146 NoRelatedSym Y Number of securities requested.

    55 Symbol Y Cointex instrument name

    167 SecurityType N Cointex instrument type. Not required.

    200 MaturityMonthYear

    N Format YYYYMMonly for Derivatives.

    205 MaturityDay

    N Use for Options.

    201 PutOrCall N Use for Options.

    202 StrikePrice N Use for Options.

    207 SecurityExchange

    Y Cointex route name

    Standard Trailer Y

    MARKET DATA INCREMENTAL REFRESH

    A Market Data Incremental Refresh is returned by the server when the Market Data Request hasrequested an incremental refresh. Multiple market data entries can be notified in the samemessage.

    Tag Field Name Required Comments

    Standard Header Y MsgType = X

    262 MDReqID N Request this is responding to

    268 NoMDEntries Y Number of entries following.

    279MDUpdateAction

    Y 0(new)1(change)2(delete)

  • 8/10/2019 Cointex Fix API

    19/35

    19

    269 MDEntryType

    Y Entry type for new entries.

    278 MDEntryID N Identifies the market depth entry (MMID) Unique id inmarket depth cap.

    280 MDEntryRefID N Not supported.

    55 Symbol N Cointex instrument name

    48 SecurityID N Cointex instrument ID.

    167 SecurityType

    N Cointex instrument type.

    200 MaturityMo

    nthYear

    N Format YYYYMMonly for derivatives.

    205 MaturityDay

    N Use for Options.

    201 PutOrCall N Use for Options.

    202 StrikePrice N Use for Options.

    207 SecurityExchange

    Y Cointex route name

    270 MDEntryPx N Price for this entry.

    271 MDEntrySize

    N Volume for this price.

    272 MDEntryDate

    N Date price received.

    273 MDEntryTime

    N Time price received.

    290 MDEntryPositionNo N Not supported. Position for this entry in depth

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    20/35

    20

    MARKET DATA SNAPSHOT/FULL REFRESH

    A Market Data Snapshot/Full Refresh is returned by the server when the Market Data Request hasrequested an Snapshot/Full refresh.

    Tag Field Name Required Comments

    Standard Header Y MsgType = W

    262 MDReqID Y Request this is responding to

    201 PutOrCall N Indicates whether an Option is for put or callValid values:0Put1Call

    200 MaturityMonthYear N Format YYYYMMonly for derivatives

    205 MaturityDay N Use only for derivativesValues: 1-31

    55 Symbol Y Cointex instrument name

    167 SecurityType Y Cointex instrument type

    48 SecurityID Y Cointex instrument ID

    207 SecurityExchange N Cointex route name

    268 NoMDEntries N Number of entries following.

    269 MDEntryType Y Entry type for new entries.

    278 MDEntryID N Identifies the market depth entry (MMID) Unique id inmarket depth cap.

    275 MDMkt N Source of quote

    270 MDEntryPx Y Price for this entry

    271 MDEntrySize Y Volume for this price

    290 MDEntryPositionNo

    Y Position for this entry in depth

    Standard Trailer Y

  • 8/10/2019 Cointex Fix API

    21/35

    21

    NEWS MESSAGES

    The News Messages using for send news to client.

    Tag Field Name Required Comments

    Standard Header Y MsgType = B (uppercase)

    42 OrigTime N

    61 Urgency N News priority. Values from 0 (high) to 9 (low)

    148 Headline Y Headline of news.

    146 NoRelatedSym N

    55 Symbol N Related symbol (if specified).

    22 IDSource N Cointex route name (if specified).

    LinesOfText N Count of lines in message text.

    58 Text N

    149 URLLink N URL link.

    6515 NewsID Y The unique identifier of a news message.

    6940 NewsSource N String containing the news source for the NewsMessage

    6518 NewsType N Textual description of the news category.

    Standard Trailer Y

    ACCOUNT STATUS MESSAGES

  • 8/10/2019 Cointex Fix API

    22/35

    22

    The AccountStatus Messages using for send account info to client. It sent by server on client logonand when account info are changed.

    Tag Field Name Required Comments

    Standard Header Y MsgType = UAA (uppercase)

    1 Account Y Account name

    7001 AccountId Y Cointex Account id

    7002 UserID Y Cointex user id

    553 Username Y Cointex user name

    7004 ClientType Y Client terminal type2 - .net; 3 - pocketPC; 4 - html; 0 - undefined ; 8 - FIXclient

    7006 UserGroupID Y

    7008 UserStatus Y 0offline, 1online, 2account removed

    7010 Balance Y Account balance.

    7011 BlockedSum Y The unique identifier of a news message.

    7012 Leverage Y User leverage, for example for leverage 1:100 will besend 7012=100

    7013 TradingLevel Y

    7014 WarningLevel Y

    7015 MarginLevel Y

    7016 CommisionId Y

    15 Currency N Account currency

    7020 CrossInstrumentType N Cross type for convert account currency into systemcurrency:0- simple, i.e. without cross instrument; 1- cross typeprice;2cross type simple reverse; 3cross type

    reverse price

  • 8/10/2019 Cointex Fix API

    23/35

    23

    7021 CrossInstrumentId N Cross instrument id for account

    7022 CurrencyMinChange N Accuracy for account currency.

    7023 Master N Boolean flag for master account

    Standard Trailer Y

    APPLICATION MESSAGES FOR TRADING

    NEW ORDER SINGLE

    This message is used to submit a new order to the Cointex servers. Give-up and order routing canbe done on the Cointex servers by having the administrator set up users and accounts to do so.

    The Cointex server will respond with either an Execution Report or a Reject (Session) message. AReject message is only issued if the message fails session level validation, such as invalid tagvalues. If an order fails business validation, an Execution Report will be issued with an appropriatestatus and error text.

    Tag Field Name Required Comments

    Standard Header Y MsgType = D

    11 ClOrdID N Client identifier of the order.

    73 NoOrders N Optional. Used for closing position or adding SL/TP. Ifspecified, must be the value of Cointex Order IDsupplied by the server in the execution report.

    37 OrderID N Cointex OrderID

    1 Account Y The Cointex trader account

    21 HandlInst Y Set to 1, otherwise will cause reject

    55 Symbol Y Cointex instrument name

    167 SecurityType N Cointex instrument type name

  • 8/10/2019 Cointex Fix API

    24/35

    24

    200 MaturityMonthYear N Reserved. Required for Options: format CCYYMM

    205 MaturityDay N Reserved. Required for Options.

    201 PutOrCall N Reserved. Required for Options

    202 StrikePrice N Reserved. Required for Options

    207 SecurityExchange Y Cointex route nameBlockEx

    AuctionEx

    54 Side Y Only 1 (buy) or 2 (sell) supported

    60 TransactTime Y Time of this order

    38 OrderQty N Required: number of lots

    40 OrdType Y Supported types:1market;2limit;3stop.

    44 Price N Order price for limit and market orders. For marketorders price is indicative and not required.

    99 StopPx N Order price for stop orders.

    15 Currency N Not supported. Always in primary currency.

    117 QuoteID N Reserved.

    59 TimeInForce N Varies by exchange

    432 ExpireDate N Reserved GTD orders

    58 Text N User comment for order.

    583 ClOrdLinkID N Cointex OrderID. Cant be used together with 73 and 37tag for close orders.

    77 OpenClose N C for close orders (to add SL/TP or to close position)

    18205 slPrice N Price for Stop loss order

    18206 tpPrice N Price for Take profit order

  • 8/10/2019 Cointex Fix API

    25/35

    25

    Standard Trailer Y

    Note, that if you have specifing SL/TP price, then system create independent Stop/Limit

    order that is bound to main order. You can work with this orders (cancel, modify), like withnormal Stop/Limit Orders.

    IDENTIFYING THE TRADED COMMODITY

    To submit a trade to our servers you must identify the traded commodity using the following tags.

    Tag Field Name Required Comments

    55 Symbol The Cointex instrument name.

    167 SecurityType The Cointex instrument type name.

    200 MaturityMonthYear Reserved. Required for Options. Always in the formatCCYYMM

    205 MaturityDay Reserved. Required for Options.

    207 SecurityExchange Cointex route name.

    201 PutOrCall Only valid if options are configured for selectedinstrument.

    202 StrikePrice Reserved. Required for Options. Should be entered inthe same format as tag 44 Price.

    OPEN AND CLOSE INDICATOR

    The OpenClosefield is used in for trades to indicate whether the trade is opening or closing (closeposition, add SL/TP to position or Order.

    For close order OrderID tag must be the value Cointex Order ID. For mutual close must be sentNoOrders of OrderID of all orders for mutual close.

    ORDER CANCEL / REPLACE

  • 8/10/2019 Cointex Fix API

    26/35

    26

    The Order Cancel/Replace is sent by the client application to amend an order that has a workingstatus. It may not be used to re-open an order by increasing the volume of a completed order.Part-filled orders may be amended, but not fully filled orders. Attempts to do so will result in aCancel Reject with no such order.

    If an Order Cancel/Replace is accepted by the business rules but rejected downstream (for

    example, if the exchange connection is disabled) the system will deliver an Execution Report forthe pending state followed by a Cancel Reject.

    Tag Field Name Required Comments

    Standard Header Y MsgType = G

    37 OrderID Y Cointex Order ID

    11 ClOrdID Y Unique identifier of replacement order (will be used inthe Cancel Reject message if the replacement requestis rejected).

    1 Account Y Required: Cointex user account.

    21 HandlInst Y Set to 1, otherwise will cause reject

    55 Symbol Y Must match original order

    167 SecurityType N Optional: match original order if supplied

    200 MaturityMonthYear N Optional: match original order if supplied

    205 MaturityDay N Optional: match original order if supplied

    201 PutOrCall N Optional: match original order if supplied

    202 StrikePrice N Optional: match original order if supplied

    207 SecurityExchange N Optional: match original order if supplied

    54 Side Y Must match original order.

    60 TransactTime Y Time this order request was initiated/released by the

    trader or trading system.

  • 8/10/2019 Cointex Fix API

    27/35

    27

    38 OrderQty N Number of lots.

    152 CashOrderQty N Not supported.

    40 OrdType Y Must match original order.

    44 Price N Optional: may specify new price

    99 StopPx N Optional: may specify new stop price

    59 TimeInForce N Optional: match original order if supplied

    41 OrigClOrdID N Cointex Order ID, used in case of order modification

    168 EffectiveTime N Not supported.

    432 ExpireDate N Optional: match original order if supplied

    77 OpenClose N Optional: Must match original order.

    527 SecondaryExecID N ID of open position

    Standard Trailer Y

    ORDER CANCEL

    The Order Cancel is sent by the client application to cancel all the remaining volume of a workingorder. To reduce the volume of an order, you should use Order Cancel/Replace.

    Tag Field Name Required Comments

    Standard Header Y MsgType = F

    41 OrigClOrdID N Not supported. ClOrdID of the order to cancel.

    37 OrderID Y ClOrdID of the order to cancel.

    11 ClOrdID Y Unique identifier of cancel request(will be used in the

    Cancel Reject message if the replacement request isrejected).

  • 8/10/2019 Cointex Fix API

    28/35

    28

    1 Account Y Required: Cointex user account.

    55 Symbol Y Must match original order.

    48 SecurityID N Optional.

    167 SecurityType N Ignored.

    200 MaturityMonthYear N Ignored.

    205 MaturityDay N Ignored.

    201 PutOrCall N Ignored.

    202 StrikePrice N Ignored.

    207 SecurityExchange N Ignored.

    54 Side Y Must match original order

    60 TransactTime Y Time this order request was initiated/released by thetrader or trading system.

    38 OrderQty N Ignored.

    Standard Trailer Y

    EXECUTION REPORT

    The execution report message is sent by the server to your application for the following reasons:

    Confirm receipt of a new order

    Confirm changes or cancels to an existing order

    Supply unsolicited order state changes

    Relay fill information

    Actual positions and order state (on login) or as response for Order Status request.

    Reject new orders

    The OrdStatusand ExecTypefields are important for determining the sequence of events that took

    place. Some of these scenarios are discussed in further detail below.

  • 8/10/2019 Cointex Fix API

    29/35

    29

    Tag Field Name Required Comments

    Standard Header Y MsgType = 8 PossResend=Y for

    37 OrderID Y Cointex order identifier

    198 SecondaryOrderID N Not supported.

    11 ClOrdID N As set by your application.Tag 11 you are receiving only with first message 150=A(pending new).For further work should be used server orderid (tag 37).

    41 OrigClOrdID N Previous ClOrderID when responding to Cancel orCancel/Replace messages.

    17 ExecID N Optional: fill identifier

    19 ExecRefID N Not supported.

    150 ExecType Y Not all states are supported.

    39 OrdStatus Y Not all states are supported.

    103 OrdRejReason N Not supported.

    378 ExecRestatementReason

    N Supplied for ExecType = D (Restated).

    1 Account N Cointex user account

    55 Symbol Y Cointex instrument name

    48 SecurityID N Cointex instrument ID

    167 SecurityType N Cointex instrument type name.

    200 MaturityMonthYear N For Options: format CCYYMM

    205 MaturityDay N For Options.

    201 PutOrCall N For Options.

    202 StrikePrice N For Options.

  • 8/10/2019 Cointex Fix API

    30/35

    30

    207 SecurityExchange N Optional: Cointex route name

    54 Side Y 1 (buy) or 2 (sell) only

    38 OrderQty N Order volume

    40 OrdType N As stated on the order

    44 Price N As stated on the order

    99 StopPx N As status on the order

    59 TimeInForce N As stated on the order

    432 ExpireDate N As stated on the order

    32 LastQty N Volume of this fill, zero for reversal

    60 TransactTime N Date of order execution

    77 PositionEffect N Used to identify if this is an open order 77=O or closeorder 77=C (SL/TP or close position).

    64 SettlDate N Date of settlement

    31 LastPx N Price of this fill, zero for reversal

    151 LeavesQty Y Volume still working

    14 CumQty Y Volume filled so far

    6 AvgPx N Decimal average price (accuracy limited)

    21 HandlInst N Not returned (is set to 1 on order)

    77 OpenClose N Indicate open or close

    58 Text N Contains rejection reason text

    527 SecondaryExecID N ID of open position

  • 8/10/2019 Cointex Fix API

    31/35

    31

    Standard Trailer Y

    ExecType I = Order Status used in execution report messages that were sent for update

    position/order status or as response on Order Status request.

    ORDER CANCEL REJECT

    The Order Cancel Reject is delivered by the server when a Cancel or Cancel/Replace is notaccepted by the Cointex server. If the server accepted the Cancel or Cancel/Replace but thetrading system rejected it, then this message is preceded by an Execution Report for the pendingstatus.

    Tag Field Name Required Comments

    Standard Header Y MsgType = 9

    37 OrderID Y Cointex order id.

    198 SecondaryOrderID N Not supported.

    11 ClOrdID Y As set in the Cancel or Cancel/Replace

    41 OrigClOrdID Y ClOrdID which could not be cancelled.

    39 OrdStatus Y Current order status.

    1 Account N Cointex user account

    60 TransactTime N Not supported.

    434 CxlRejResponseTo Y Either 1 (Cancel) or 2 (Cancel/Replace)

    102 CxlRejReason N 0too late to cancel1unknown order2rejected by trading system3already in pending state

    58 Text N Text description of rejection

    354 EncodedTextLen N Not supported.

  • 8/10/2019 Cointex Fix API

    32/35

    32

    355 EncodedText N Not supported.

    Standard Trailer Y

    ORDER STATUS REQUEST

    The order status request can be used teo get list of opened positions or active orders.Note, that during startup (after Logon) the system sent the list of active ordersautomatically.

    Tag Field Name Required Comments

    790 OrdStatusReqID Y

    55 Symbol N Cointex Instrument Name

    54 Side N 1- buy, 2sell

    37 OrderId N Cointex OrderID

    790 OrdStatusReqID N

    20000 IntField Y 1 - state of opened orders, 2 - state of opened positions

    1 Account N Cointex account name

    Standard Trailer Y

    REQUEST FOR POSITIONS

    Tag Field NameRequire

    dComments

    Standard Header Y MsgType = AN

    710 PosReqID Y

    Unique identifier for the Request for Positions as

    assigned by the submitter

  • 8/10/2019 Cointex Fix API

    33/35

    33

    724 PosReqType Y 0 = Positions only

    55 Symbol N if not define - for all visible instruments

    1 Account Y Cointex account name

    715 ClearingBusinessDate Y

    Standard Trailer Y

    TRADE CAPTURE REPORT

    TRADE CAPTURE REPORT REQUEST

    Tag Field Name Required Comments

    Standard Header Y MsgType = AD

    568 TradeRequestID Y Unique request id

    569 TradeRequestType Y Must be 0

    37 OrderID N Cointex order id

    55 Symbol N Instrument Name

    207 SecurityExchange N Cointex route name

    580 NoDate N Must be 2. Range of dates (between NoDate1 andNoDate2)

    75 TradeDate Y

    60 TransactTime

    Y Time the trade was created

  • 8/10/2019 Cointex Fix API

    34/35

    34

    TRADER CAPTURE REPORT

    Tag Field Name Required Comments

    Standard Header Y MsgType = AE

    568 TradeReportID Y Unique report id

    569 TradeRequestID C If have requested?

    912 LastRptRequested N Indicates that this is thelast report which will bereturned as a result of

    the request.Nnot lastYlast

    55 Symbol Y Instrument Name

    207 SecurityExchange Y Cointex route name

    570 PreviouslyReported N Not supported.

    32 LastQty Y Trade Quantity

    31 LastPx Y Trade Price

    75 TradeDate Y Not supported

    60 TransactTime Y Time the trade was created

    552 NoSides Y Number of sides

    64 SettlDate Y date of trade settlement

    54 Side Y 1 (buy) or 2 (sell)

    37 OrderID Y Unique order id

    1 Account Y Account name

  • 8/10/2019 Cointex Fix API

    35/35

    119 SettlCurrAmt

    Y LastPx*LastQty

    198 SecondaryOrderID

    N Counter Order ID

    Note: Trade capture report will be sent only in real time connection