Direct Edge Portalsm

 

FIX Application Programming Interface (API) Specification

 

 

 

 

 

 

 

 

Date: 11/26/2008

Version: 2.37

 

 

 

 

 

 

 

This document contains information proprietary to Direct Edge ECN LLC  and may not be reproduced, disclosed or used in whole or part without the express written consent of the Direct Edge ECN LLC.

 

© Direct Edge ECN LLC 2008

 

 

 

 


Table Of Contents

 


1.0 Data 3

1.1 General Criteria – Used in ALL FIX Messages 3

1.2 Message Types 3

1.3 Data Types – Used in All FIX Messages 3

2.0 General FIX Message Structure 4

2.1 Standard Header 4

2.2 Standard Trailer 4

3.0 Administrative Messages 5

3.1 Logon - From Client 5

3.2 Logon - Response From Direct Edge ECNsm 5

3.3 HeartBeat - From Direct Edge ECNsm and Client 5

3.4 TestRequest - From Direct Edge ECNsm and Client 5

3.5 Resend - From Direct Edge ECNsm and Client 6

3.6 Reject - From Direct Edge ECNsm and Client 6

3.7 SequenceReset/GapFill - From Direct Edge ECNsm and Client 6

3.8 Logout - From Direct Edge ECNsm and Client 6

4.0 Order Entry Messages 7

4.1 New Order Single - From Client 7

4.2 Execution Report – GENERIC EXECUTION REPORT From Direct Edge ECNsm 9

4.3 Execution Report - New Order or Cancel/Replace - From Direct Edge ECNsm 11

4.4 Execution Report - Filling Status From Direct Edge ECNsm 12

4.5 Execution Report - Order Status from Direct Edge ECNsm 13

5.0 Order Cancel Messages 14

5.1 Order Cancel – From Client 14

5.2 Order Cancel Replace Request – From Client 14

5.3 Order Cancel Reject - From Direct Edge ECNsm 14

6.0 Operational Sequence 16

6.1 Logon Process 16

6.2 Regular FIX Communications 16

6.3 Logout Process 16

6.4 Order Placement 17

6.5 Cancel / Replace Logic 17

6.6 NYSE and AMEX Listed Symbol Suffixes 18

7.0 Revision Changes 19

 

 

 

 

 

 

 

 

 


 

The most recent version of this API may be obtained on the Direct Edge ECNsm Website:

http://www.directedgeecn.com

The Direct Edge ECN uses the FIX 4.2 protocol:

http://www.fixprotocol.org

The ECN website contains a complete overview of ECN Certification process.  Direct Edge ECNsm Certification Procedures are available online in the same section as the Direct Edge ECNsm Portal API.

 

1.0 Data

 

1.1 General Criteria – Used in ALL FIX Messages

 

1.        EDGA/ EDGX are insensitive to the client’s field orderings, except where dictated by the FIX Standard Header and Standard Trailer (see next Section).

2.        EDGA / EDGX will order the FIX fields within the message in ascending order, except for the header and trailer.

 

1.2 Message Types

 

The Following FIX messages are understood by the system

0 = HeartBeat

1 = TestRequest

2 = ResendRequest

3 = Reject

4 = SequenceReset

5 = Logout

8 = ExecutionReport

9 = OrderCancelReject

A = Logon

D = NewOrderSingle

F = OrderCancelRequest
G = OrderCancelReplaceRequest

H = OrderStatusRequest

 

1.3 Data Types – Used in All FIX Messages

 

Type

Format

Example

Int

Integer

99999

Float

Numeric digits with optional decimal point and sign character.  Accommodate at least 15 significant digits.

Price restrictions are: Minimum Price Variant of 0.01 or 0.0001 (See RegNMS  pricing).  Quotes are rounded down or up for buys and sells respectively to the NASDAQ MPV of 0.01.  Maximum Price is 99999.00.  Minimum Price is 0.01 or 0.0001 (See RegNMS Pricing)

-2000.000000

-2000

-2000.

Qty

Quantity: see float (0 < Qty < 2,147,483,647)

 

Price

Price: see float (0 < Price < 99,999.00)

 

Price Offset

Price Offset: see float

 

Amt

Amount: see float

 

Char

Single Character.  

 

Boolean

Single Character ‘Y’ or ‘N’

 

String

Case Sensitive Alphanumeric characters with no terminating character

EDGA / EDGX

ZXZZT

UTC Date/Time

GMT Date/Time: YYYYMMDD-HH:MM:SS

GMT Date/Time: YYYYMMDD-HH:MM:SS.sss

20011231-22:30:00

20011231-22:30:00.015

UTC Date

GMT Date: YYYYMMDD

20011231

UTC Time

GMT Time: HH:MM:SS

22:30:00

 

 

 


2.0 General FIX Message Structure

 

The Standard Header and Standard Trailer are required on all FIX messages.  MsgType (FIX 35) is part of the header.  These fields are REQUIRED to be in this order on the header and trailer.

 

2.1 Standard Header

 

TAG

FieldName

Contents

Comments

8

BeginString

FIX.4.2(.X)

Protocol Version, X is the ECN version number.  The “.X” portion is optional and may be altered.  Only on the “FIX.4.2” string should be depended upon.

9

BodyLength

99999

Length of Message Body

35

MsgType

Accepted Message Types

0 = HeartBeat

1 = TestRequest

2 = ResendRequest

3 = Reject

4 = SequenceReset

5 = Logout

8 = ExecutionReport

9 = OrderCancelReject

A = Logon

D = NewOrderSingle

F = OrderCancelRequest
G = OrderCancelReplaceRequest

H = OrderStatusRequest

49

SenderCompID

MMID, EDGA / EDGX

Sender Company ID (MMID of message sender)

56

TargetCompID

EDGA / EDGX, MMID

Target Company ID (MMID of message receiver)

34

MsgSeqNum

 

Message Sequence Number (Resets to 1 at the start of each trading day)

115*

OnBehalfOfCompID

MMID

“On Behalf Of” Company MMID (required from Service Bureau Client.  MMID of original client)

128*

DeliverToCompID

MMID

“Deliver To” Company MMID (sent by DIRECT EDGE to Service Bureau, MMID of original client)

50*

SenderSubID

MMID1

Sender Sub ID (required from client only on Logon Messages)

57*

TargetSubID

MMID1

Target Sub ID (sent by DIRECT EDGE on Logon Response Messages)

43*

PossDupFlag

 

Indicates possible retransmission of this seq num.  43=N is the default if field is omitted, and 43=N should not be sent on all messages.

97*

PossResend

 

Indicates possible retransmission of msg under a New sequence number.  97=N is the default if filed is omitted, and 97=N should not be sent on all messages.

52

SendingTime

 

GMT Date/Time Message was sent

 

 

2.2 Standard Trailer

 

TAG

FieldName

Contents

Comments

10

CheckSum

 

Integer byte count of message length without the CheckSum field

* = Optional.

 


3.0 Administrative Messages

 

3.1 Logon - From Client

 

TAG

FieldName

Contents

Comments

35

MsgType

A

(Contained in header)

95

RawDataLength

String[20]

Length of RawData

96

RawData

Password

Password for username SenderSubID

98

EncryptMethod

0

None

108

HeartBtInt

 

Client Hearbeat Interval (In seconds)

 

 

3.2 Logon - Response From Direct Edge ECNsm

 

TAG

FieldName

Contents

Comments

35

MsgType

A

(Contained in header)

98

EncryptMethod

0

None

108

HeartBtInt

60

DIRECT EDGE ECN Heartbeat Interval is 60 seconds.  Clients should use a 60 second Heartbeat Interval.

 

 

3.3 HeartBeat - From Direct Edge ECNsm and Client

 

TAG

FieldName

Contents

Comments

35

MsgType

0

(Contained in header)

112*

TestReqID

 

Required in response to a Test Request

 

 

3.4 TestRequest - From Direct Edge ECNsm and Client

 

TAG

FieldName

Contents

Comments

35

MsgType

1

(Contained in header)

112

TestReqID

 

Auto-Generated Request ID

* = Optional.   

 

 


3.5 Resend - From Direct Edge ECNsm and Client

 

TAG

FieldName

Contents

Comments

35

MsgType

2

(Contained in header)

7

BeginSeqNo

 

 

16

EndSeqNo

 

0 means +infinity

 

 

3.6 Reject - From Direct Edge ECNsm and Client

 

TAG

FieldName

Contents

Comments

35

MsgType

3

(Contained in header)

45

RefSeqNum

 

MsgSeqNo of Rejected Message

371*

RefTagID

 

 

372*

RefMsgType

 

 

373*

Sess