1. FIX 4.2 Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1 Workflows (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.1 Session Management Overview (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.2 Market Data Request and Orders (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.3 Order Cancellation (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1.4 Cancel Replace (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Messages (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1 Session Management (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.1 Bidirectional - Market and Order Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.1.1 Logon (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.1.2 Logout (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.1.3 Heartbeat (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.1.4 Test Request (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.2 Received - Market and Order Sessions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1.2.1 Reject (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2 Market Data (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2.1 Sent - Market Session (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2.1.1 Market Data Request (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2.2 Received - Market Session (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2.2.1 Market Data Incremental Refresh (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.2.2.2 Market Data Request Reject (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3 Order (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.1 Sent - Order Session (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.1.1 New Order Single (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.1.2 Order Cancel Request (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.1.3 Order Cancel Replace Request (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.1.4 Order Status Request (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.2 Received - Order Session (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.2.1 Execution Report (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.2.2 Order Cancel Reject (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.3.2.3 List Status (FIX 4.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2
2
3
4
5
7
7
7
7
7
7
8
8
8
9
9
9
10
10
11
11
11
11
14
15
16
17
17
20
21
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
FIX 4.2 Protocol
FX-Works provides FIX Protocol for communicating market data and trade information. (http://www.fixprotocol.org)
Workflows (FIX 4.2)
This section describes various workflows supported by the FIX protocol interface.
Session Management Overview (FIX 4.2)
Market Data Request and Orders (FIX 4.2)
Order Cancellation (FIX 4.2)
Cancel Replace (FIX 4.2)
Session Management Overview (FIX 4.2)
The FIX Client API creates two session types for market data and trading message flows:
Market Data: Session for receiving quotes.
Trade: Session for order submission and trade execution.
Below is an overview of how the connection is managed on the two different interfaces/sessions.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
Note: If a password is set for a specific MD SenderCompID / Order SenderCompID combo in the FIX 4.2 Server plugin's Sessions property, then
the Logon message sent by the client must also contain a Password field (tag 554) matching the value set in plugin's Sessions property table for
the specified MD ID / Ord ID values. Otherwise, a Logout message will immediately be sent back by the FIX Server to the connecting client
effectively terminating the given session.
Market Data Request and Orders (FIX 4.2)
The following diagrams show the supported workflow for receiving market data from FX-Works and sending orders to FX-Works.
Market Data Request and Orders
This workflow involves two FIX sessions, the market data session and the trade session. The client requests market data in a market data
session, receives incremental market data refresh on the same session, and then sends out orders and receives execution reports on the trade
session.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
Order Cancellation (FIX 4.2)
Aside from the usual Order/Execution report sequence, an Order Cancel Request can also be sent to the client with a response of
OrderCancelReject or an ExecutionReport of canceled.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
N.B. - If the Execution Report is returned (FILLED), a (Canceled) Execution Report will not be returned.
Cancel Replace (FIX 4.2)
If the order exists and a successful Cancel/Replace is sent:
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
If the order does not exist and the Cancel/Replace was unsuccessful:
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
Messages (FIX 4.2)
Session Management (FIX 4.2)
Bidirectional - Market and Order Sessions
Logon (FIX 4.2)
The logon message authenticates a user establishing a connection to a remote system. If FX-Works receives a Logon message with invalid fields,
it sends a Logout message in response.
Logon Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
A = Logon
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (MD or Trade).
98
EncryptMethod
Y
0 (zero) = no encryption is used
108
HeartBtInt
Y
Heartbeat interval in seconds.
141
ResetSeqNumFlag
N
Indicates that both sides of the FIX session should reset sequence numbers.
Y = Yes, reset sequence numbers
N = No
554
Password
N
Used to authenticate the session. Required if the Sessions property of the FIX 4.2 Server plugin contains a
password for specified client.
Sample Logon Message:
8=FIX.4.2^9=76^35=A^34=1^49=ClientID^52=20101222-05:36:06.486^56=FXWorks-MD^98=0^108=10^141=Y^10=103
Logout (FIX 4.2)
The logout message initiates or confirms the termination of a FIX session.
Logout Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
5=Logout
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (MD or Trade).
58
Text
N
The reason for the Logout rejection.
Sample Logout Message:
8=FIX.4.2^9=60^35=5^34=104^49=ClientID^52=20101222-05:48:42.476^56=FXWorks-MD^10=118
Heartbeat (FIX 4.2)
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
The Heartbeat monitors the status of the communication link and identifies when the last of a string of messages was not received.
Heartbeat Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
0=Heartbeat
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (MD or Trade).
112
TestReqID
N
Required when the heartbeat is the result of a Test Request message.
Sample Heartbeat Message:
8=FIX.4.2^9=59^35=0^34=12^49=ClientID^52=20101222-05:36:33.486^56=FXWorks-MD^10=069
Test Request (FIX 4.2)
The test request message forces a heartbeat from the opposing application.
TestRequest Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
1=TestRequest
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (MD or Trade).
112
TestReqID
Y
The resulting Heartbeat message contains this ID. The TestReqID should be incremental.
Sample TestRequest Message:
8=FIX.4.2^9=64^35=1^34=6^49=ClientID^52=20101222-08:31:52.986^56=FXWorks-MD^112=1^10=034
Received - Market and Order Sessions
Reject (FIX 4.2)
The reject message should be issued when a message is received but cannot be properly processed due to a session-level rule violation.
Reject Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
3=Reject
49
SenderCompID
Y
FX-Works ID (MD or Trade).
56
TargetCompID
Y
Client Organization's ID.
45
RefSeqNum
Y
MsgSeqNum of rejected message.
58
Text
N
Where possible, message to explain reason for rejection
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
371
RefTagID
N
The tag number of the FIX field being referenced.
372
RefMsgType
N
The MsgType of the FIX message being referenced.
373
SessionRejectReason
N
Code to identify reason for a session-level Reject message:
0= Invalid tag number
1= Required tag missing
2= Tag not defined for this message type
3= Undefined Tag
4= Tag specified without a value
5= Value is incorrect (out of range) for this tag
6= Incorrect data format for value
7= Decryption problem
8= Signature problem
9= CompID problem
10= SendingTime accuracy problem
11= Invalid MsgType
Sample Reject Message:
8=FIX.4.2^9=107^35=3^34=4^49=FXWorks-MD^52=20101222-08:29:20.410^56=ClientID^45=6^58=Required tag
missing^371=112^372=1^373=1^10=045
Market Data (FIX 4.2)
Sent - Market Session (FIX 4.2)
Market Data Request (FIX 4.2)
A Market Data Request is a general request for market data on specific securities or forex quotes.
Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
V = MarketDataRequest
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (MD).
262
MDReqID
Y
Must be unique, or the ID of previous Market Data Request to disable if
SubscriptionRequestType = Disable previous Snapshot + Updates Request (2).
263
SubscriptionRequestType
Y
Indicates to the other party what type of response is expected. A subscribe
request asks for updates as the status changes. Unsubscribe will cancel any
future update messages from the counter party.
1 = Snapshot + Updates (Incremental Refresh only)
2 = Unsubscribe
264
MarketDepth
Y
0 = Full Book
1 = Top of Book
265
MDUpdateType
N
Required if SubscriptionRequestType = Snapshot + Updates (1).
1 = Incremental Refresh. Provides new or updated rates.
266
AggregatedBook
N
N = Non-aggregate Y = Aggregate
146
NoRelatedSym
Y
Specifies the number of repeating symbols specified.
Start of Repeating
Group 146
(NoRelatedSym)
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the
following format: baseCCY/variableCCY
460
Product
N
4 = CURRENCY
AttributedPrices
N
A full book, non-aggregated price can be attributed to a sender if MarketDepth
(264) = 0, AggregatedBook (266) = N, AttibutedPrices (7560) = Y are sent on the
Market Data request.
End of Repeating
Group
146 (NoRelatedSym)
7560
Sample MarketDataRequest Message:
8=FIX.4.2^9=119^35=V^34=3^49=ClientID^52=20101229-03:12:12.712^56=FXWORKS-MD^262=101^263=0^264=1^265=0^146=1^55=USD/JPY^460=4^10=0
Received - Market Session (FIX 4.2)
Market Data Incremental Refresh (FIX 4.2)
The Market Data messages are used as the response to a Market Data Request message.
Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
X = MarketDataIncrementalRefresh
49
SenderCompID
Y
FX-Works ID (MD).
56
TargetCompID
Y
Client organization's ID.
262
MDReqID
Y
Unique identifier for Market Data Request
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
268
NoMDEntries
Y
Number of entries in market data message.
279
MDUpdateAction
Y
Type of Market Data update action.
0 = New
2 = Delete
269
MDEntryType
Y
The side of the rate. Part of the repeating group of fields for each rate in the update.
0= Bid
1= Offer
278
MDEntryID
Y
Market data identifier. There is only one MDEntry active at any one time. A market data update
message with a MDUpdateAction = 0 (New) should replace any active entry with the same
MDEntryID (278). A market data update message with MDUpdateAction (279) = 2 (Delete)
indicates any active entry with the same MDEntryID should be deleted.
270
MDEntryPx
Y
Price of the Market Data Entry.
15
Currency
Y
The value of this field represents the denomination of the quantity fields (for example, JPY
represents a quantity of JPY). This may be the base or term currency of a currency pair.
271
MDEntrySize
Y
Quantity represented by the Market Data Entry.
276
QuoteCondition
Y
Indicates whether the rate is tradable or only indicative.
A=Open/Active B=Closed/Inactive
Start of
Repeating
Group 268
(NoMDEntries)
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
282
MDEntryOriginator
Y
Originator of a Market Data Entry. Present on full non-aggregated book attributed market data
updates. A full book, non-aggregated price can be attributed to a sender if MarketDepth (264) =
0, AggregatedBook (266) = N, AttibutedPrices (7560) = Y are sent on the Market Data request.
290
MDEntryPositionNo
Y
Display position of a bid or offer, numbered from most competitive to least competitive, per
market side, beginning with 1.
End of
Repeating
Group 268
(NoMDEntries)
Sample MarketDataIncrementalRefresh Message:
8=FIX.4.2^9=284^35=X^34=140^49=FXWorks-MD^52=20101229-03:21:35.671
^56=ClientID^55=USD/JPY^262=100^268=2^279=0^269=0^270=82.275^15=USD ^271=0 ^276=B^282=FXCM^290=1^269=1
^270=82.295^15=USD^271=5000000^276=A^282=FXCM^290=1^10=088
Market Data Request Reject (FIX 4.2)
The Market Data messages are used as the response to a Market Data Request message.
Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
Y = MarketDataRequestReject
49
SenderCompID
Y
FX-Works ID (MD).
56
TargetCompID
Y
Client organization's ID.
262
MDReqID
Y
Unique identifier for Market Data Request
281
MDReqRejReason
N
Reason for the rejection of a Market Data request.
58
Text
N
Text indicating any cause of the reject
Order (FIX 4.2)
Sent - Order Session (FIX 4.2)
New Order Single (FIX 4.2)
The new order message type is used by institutions to submit limit orders to FX-Works for execution.
NewOrderSingle Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
D = NewOrderSingle
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (Trade).
1
Account
N
Client Account
43
PossDupFlag
N
Indicates possible retransmission of message with this sequence number. If set to Y, a warning will
be logged on the server and an order reject will be sent back in response.
11
ClOrdID
Y
A unique identifier assigned by the client. Uniqueness must be guaranteed within a single trading
day.
21
HandlInst
Y
1 = Automated execution.
40
OrdType
Y
3=Stop Loss, 4=Stop Limit, C=Forex Market, F=Forex Limit, P=Pegged, V=Trailing Stop, W=One
Cancels Other, X=If Done, Y=If Done OCO, Z=Iceberg
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
54
Side
Y
1=Buy 2=Sell
7534
StopSide
N
Required if OrdType is Stop (3) or Stop Limit (4). Optional for Trailing Stop (V). Uses midpoint if not
specified. The price against which the StopPx (99) will be compared:
1 - Bid
2 - Offer
3 - Mid
38
OrderQty
Y
The amount of the dealt currency (using the Symbol (#55) field) to be either bought or sold (as
determined by the Side (#54) field).
59
TimeInForce
N
Specifies how long the order remains in effect. Absence of this field is interpreted as DAY.
0=Day
1= Good Till Cancel (GTC)
3= Immediate or Cancel (IOC)
4= Fill or Kill (FOK)
6= Good Till Date (GTD)
X=Good for Seconds
IOC and FOK are not supported on any complex order types: 3: Stop-Loss order 4: Stop-Limit order
P: Pegged order
U: Sliced order V:Trailing Stop order W: OCO order X: IFD order Y: IFD OCO order
44
Price
N
If the OrdType is Stop Limit, Forex Limit or Iceberg, then this is set to the limit price. For If Done and
If Done OCO, this field represents the If Leg Limit Price. Value should be greater than zero.
99
StopPx
N
The stop rate at which the market order will be placed into the market if OrdType is Stop (3). Or The
stop rate at which the limit order will be placed into the market if OrdType is Stop Limit (4). Value
should be greater than zero.
210
MaxShow
N
Maximum number of shares within an order to be shown to other customers. Required when
OrdType is Iceberg (Z). Value should be >= 0 and cannot be greater than total order amount.
58
Text
N
A comment attached to the trade.
432
ExpireDate
N
The date for which the order is good in the format: YYYYMMDD. Required when the TimeInForce
(#59) value is 6 (GTD) and ExpireTime is not set.
126
ExpireTime
N
The duration in hours, minutes, and seconds for which the order is good in the format:
YYYYMMDD-HH:MM:SS. Required when the TimeInForce (#59) value is 6 (GTD).
7558
ExpireSeconds
N
Required when TimeInForce = Good for Seconds. Must be expressed in whole seconds.
60
TransactTime
Y
Time of execution/order creation (expressed in UTC (Universal Time Coordinated, also known as
“GMT”)
167
SecurityType
N
FOR = Foreign Exchange Contract
7569
IFDIfType
N
Type of order to create for If or Then leg. Can be Limit=F, Stop Loss=3 or Stop Limit=4.
7535
IFDThenType
N
Type of order to create for If or Then leg. Can be Limit=F, Stop Loss=3 or Stop Limit=4.. Must be set
to W=OCO for OrdType=Y.
7536
IFDThenSide
N
Buy or Sell, required for If-Done (OrdType=X) or If-Done OCO (OrdType=Y).
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
7570
IFDIfStopRate
N
IFD If leg stop rate. Required if IFDIfType (7569) = 3 or 4. Value must be greater than zero.
7537
IFDThenPrStopRate
N
IFD Then leg stop rate. Required for OrdType (40) = X and IFDIfType (7569) = 3 (Stop Loss) or 4
(Stop Limit). Value must be greater than zero.
7538
IFDThenPrLimitRate
N
IFD Then leg limit rate. Required if OrdType (40) = X and IFDThenType (7535) = 4. Value must be
greater than zero.
7539
IFDThenPrStopSide
N
IFD Then leg stop side (Bid, Offer or Mid). Required for OrdType (40) = X.
1 - Bid
2 - Offer
3 - Mid
7540
OCOLeg1LimitRate
N
OCO leg 1 limit rate. Required if OrdType (40) = O or if OrdType (40) = Y and IFDThenType (7535) =
W. Value must be greater than zero.
7541
OCOLeg2Type
N
OCO leg2 type. Required if OrdType (40) = O or if OrdType (40) = Y and IFDThenType (7535) = W.
Valid values:
3 – Stop-Loss
4 – Stop-Limit
7553
OCOLeg2Side
N
Valid values:
1 – Buy
2 – Sell
If not specified, defaults to the leg 1 setting.
7542
OCOLeg2StopRate
N
OCO leg 2 stop rate. Required if OrdType (40) = W or if OrdType (40) = Y and IFDThenOrdType
(7535) = W. Value must be greater than zero.
7543
OCOLeg2StopSide
N
OCO leg 2 stop side. Required if OCOLeg2Type (7541) = 3 or 4.
Valid Values:
1 - Bid
2 - Offer
3 - Mid
7544
OCOLeg2StopLimitRate
N
OCO leg 2 stop-limit rate. Required if OCOLeg2Type (7541) = 4. Value must be greater than zero.
7578
PeggedOrdType
N
Order type for pegged order. Supported values are:
F – Foreign exchange limit order
Z – Foreign exchange iceberg order
7579
PeggedOrdSide
N
Pegging type.
Valid values:
1 – Bid
2 – Offer
3 – Mid (middle price between top of book bid and offer)
7580
PeggedOrdOffset
N
Pegged order offset pips. If not specified default value is set to 0.
7581
PeggedOrdDiscretion
N
Pegged order discretion pips. If not specified default value is set to 0.
7583
PeggedOrdProtect
N
Pegged order protection size percentage.
Values supported:
0.1....1.0.
If not specified, but default set to 1.0.
7582
PeggedOrdAtOrBetter
N
Pegged order’s worst rate. Value should be greater than zero.
7587
TrailBy
Y
The amount by which an order will trail the market. Required for OrdType (40) = V.
Valid values are >= 0. Specified to the full decimal scale for the order’s currency pair; e.g., 0.00001
for EUR/USD.
7588
MaxSlippage
N
Only applies to trailing stop limit orders. The calculated limit rate on the order placed into the market,
if a trailing stop limit order is triggered. It equals the MaxSlippage added/subtracted, depending on
whether it’s a buy or sell, to the stop trigger rate. Valid values are whole numbers >=0; e.g., a setting
of 5 for EUR/USD would indicate 0.0005 points.
7589
InitialTriggerRate
N
Only applies to trailing stop limit orders. The trigger rate at which the order will start trailing the
market (value should be greater than zero). The TrailBy (7587) will not start until the market has hit
this price. If left blank, the order will start trailing the market immediately.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
Sample NewOrderSingle Messages:
Market Order
8=FIX.4.2^9=147^35=D^34=12^49=REP-ORD^52=20131003-08:00:09.447^56=FXW-ORD^1=ioworks^11=1^15=EUR^21=1^38=1000000^40=C^54=2^55=EUR
Limit Order
8=FIX.4.2^9=154^35=D^34=27^49=REP-ORD^52=20131003-08:07:15.587^56=FXW-ORD^1=ioworks^11=2^15=EUR^21=1^38=1000000^40=F^44=1.2^54=2^
Stop Limit
8=FIX.4.2^9=180^35=D^34=34^49=REP-ORD^52=20131003-08:10:24.217^56=FXW-ORD^1=ioworks^11=3^15=EUR^21=1^38=1500.000000^40=4^44=1.2000
Stop Loss
8=FIX.4.2^9=168^35=D^34=38^49=REP-ORD^52=20131003-08:12:11.490^56=FXW-ORD^1=ioworks^11=4^15=EUR^21=1^38=2000000.000000^40=3^54=2^
Pegged Order
8=FIX.4.2^9=191^35=D^34=45^49=REP-ORD^52=20131003-08:15:42.426^56=FXW-ORD^1=ioworks^11=5^15=EUR^21=1^38=50000^40=P^54=1^55=EUR/U
If Done (IFD) Order
8=FIX.4.2^9=228^35=D^34=49^49=REP-ORD^52=20131003-08:17:12.803^56=FXW-ORD^1=ioworks^11=6^15=EUR^21=1^38=1000000^40=X^44=1.2001^54
Trailing Stop
8=FIX.4.2^9=181^35=D^34=89^49=REP-ORD^52=20131003-08:36:57.032^56=FXW-ORD^1=ioworks^11=7^15=EUR^21=1^38=500000^40=V^54=2^55=EUR/
One Cancels Other (OCO) Order
8=FIX.4.2^9=206^35=D^34=4^49=IO01_OR^52=20131022-12:12:56.453^56=FXWSERV-ORDER^1=ioworks^11=1^15=EUR^21=1^38=2000^40=W^54=2^55=E
Order Cancel Request (FIX 4.2)
The order cancel request message requests the cancellation of all of the remaining quantity of an existing order.
OrderCancelRequest Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
F = OrderCancelRequest
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (Trade).
11
ClOrdID
Y
Unique ID of cancel request as assigned by the institution.
41
OrigClOrdID
Y
ClOrdID of the previous order as assigned by the institution, id of order to be canceled.
55
Symbol
Y
The symbol of the original order. Must match the current order's symbol
54
Side
Y
1=Buy 2=Sell. Must match the current order's side
40
OrdType
N
Order type. Must be present on cancel requests made for the following non primitive order types:
3 – Stop-Loss order
4 – Stop-Limit order
P – Pegged order
V – Trailing Stop order
W – OCO order
X – IFD order
Y – IFD OCO order
60
TransactTime
Y
Time of message creation (expressed in UTC)
Sample OrderCancelRequest Message:
8=FIX.4.2^9=124^35=F^34=153^49=ClientID^52=20101229-03:29:26.783 ^56=FXWorks-TRADE^41=123abc^11=123abc
^60=20101229-03:29:26.783^10=035
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
Order Cancel Replace Request (FIX 4.2)
The order cancel/replace request is used to change the parameters of an existing order.
OrderCancelReplaceRequest Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
G = OrderCancelReplaceRequest
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (Trade).
1
Account
N
Client Account
40
OrdType
Y
3=Stop, 4=Stop Limit, C=Forex Market, F=Forex Limit, P=Pegged, Z=Iceberg
41
OrigClOrdID
Y
ClOrdID of the previous order as assigned by the institution, id of order to be canceled.
43
PossDupFlag
N
Indicates possible retransmission of message with this sequence number. If set to Y, a warning will
be logged on the server and an order reject will be sent back in response.
11
ClOrdID
Y
A unique identifier assigned by the client. Uniqueness must be guaranteed within a single trading
day.
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
54
Side
Y
1=Buy 2=Sell
7534
StopSide
N
Required if OrdType is Stop (3) or Stop Limit (4). The price against which the StopPx (99) will be
compared:
1 - Bid
2 – Offer
38
OrderQty
Y
The amount of the dealt currency (using the Symbol (#55) field) to be either bought or sold (as
determined by the Side (#54) field).
59
TimeInForce
N
Specifies how long the order remains in effect. Absence of this field is interpreted as DAY.
0=Day
1= Good Till Cancel (GTC)
3= Immediate or Cancel (IOC)
4= Fill or Kill (FOK)
6= Good Till Date (GTD)
X=Good for Seconds
44
Price
Y
If the OrdType is Stop Limit, Forex Limit or Iceberg, then this is set to the limit price. For If Done and
If Done OCO types, the is the If-Leg Limit rate. Value must be greater than zero.
99
StopPx
N
The stop rate at which the market order will be placed into the market if OrdType is Stop (3). Or The
stop rate at which the limit order will be placed into the market if OrdType is Stop Limit (4). Value
must be greater than zero.
210
MaxShow
N
Maximum number of shares within an order to be shown to other customers. Required when
OrdType is Iceberg (Z)
58
Text
N
A comment attached to the trade.
126
ExpireTime
N
The duration in hours, minutes, and seconds for which the order is good in the format:
YYYYMMDD-HH:MM:SS. Required when the TimeInForce (#59) value is 6 (GTD).
60
TransactTime
Y
Time of execution/order creation (expressed in UTC (Universal Time Coordinated, also known as
“GMT”)
167
SecurityType
N
FOR = Foreign Exchange Contract
7534
StopSide
N
Valid values:
1 - Bid
2 – Offer
7570
IFDIfStopRate
N
IFD If leg stop rate. Required if IFDIfType (7569) = 3 or 4. Value must be greater than zero.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
7537
IFDThenPrStopRate
N
Done leg primitive stop rate. Required for OrdType (40) = X and IFDIfType (7569) = 3 or 4. Value
must be greater than zero.
7538
IFDThenPrLimitRate
N
If done then leg primitive limit rate. Required if OrdType (40) = X and IFDThenType (7535) = 4. Value
must be greater than zero.
7539
IFDThenPrStopSide
N
IFD then leg for primitive stop side. This field is required for OrdType = X.
Valid Values:
1 – Bid
2 – Offer
7540
OCOLeg1LimitRate
N
OCO limit rate for leg1. This field is required for OrdType = O or (Y and IFDThenOrdType = W).
Value must be greater than zero.
7542
OCOLeg2StopRate
N
OCO order stop rate for leg2. This field is required for OrdType = O or OrdType = Y together with
IFDThenOrdType = W. Value must be greater than zero.
7543
OCOLeg2StopSide
N
OCO stop side for leg2. This field is required for OCOLeg2Type = 3 or 4.
Valid Values:
1 – Bid
2 – Offer
7544
OCOLeg2StopLimitRate
N
OCO stop-limit rate for leg2. This field is required for OCOLeg2Type = 4.
7587
TrailBy
N
The amount by which an order will trail the market. Required for OrdType (40) = V. Valid values are
>= 0. Specified to the full decimal scale for the order’s currency pair; e.g., 0.00001 for EUR/USD.
7588
MaxSlippage
N
Only applies to trailing stop limit orders. The calculated limit rate on the order placed into the market,
if a trailing stop limit order is triggered. It equals the MaxSlippage added/subtracted, depending on
whether it’s a buy or sell, to the stop trigger rate. Valid values are whole numbers >=0; e.g., a setting
of 5 for EUR/USD would indicate 0.0005 points.
Sample OrderCancelReplaceRequest Message:
8=FIX.4.2^9=181^35=G^34=5^49=ClientID^52=20110119-02:23:40.210^56=FXWorks-TRADE^11=EURUSD-BID-SPOT-3820209
^38=1000^40=F^41=EURUSD-BID-SPOT-3819333^44=1.34226^54=2^55=EUR/USD^59=1^167=FOR^10=008
If Done Order Replace
8=FIX.4.2^9=222^35=G^34=286^49=REP-ORD^52=20131003-10:16:08.781^56=FXW-ORD^1=ioworks^11=IfDoneReplace^15=EUR^21=1^38=2000^40=X^41=
One Cancels Other Replace
8=FIX.4.2^9=201^35=G^34=23^49=IO01_OR^52=20131022-12:22:13.437^56=FXWSERV-ORDER^1=ioworks^11=2^15=EUR^21=1^38=1000000^40=W^41=1
Order Status Request (FIX 4.2)
The order status request message is used by clients to generate an order status message back from FX-Works.
OrderStatusRequest Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
H = OrderStatusRequest
49
SenderCompID
Y
Client organization's ID.
56
TargetCompID
Y
FX-Works ID (Trade).
37
OrderID
Y
Unique order identifier assigned by FX-Works. Either OrderID or ClOrdID must be present when requesting
for particular order's status.
11
ClOrdID
Y
A unique identifier assigned by the client. Uniqueness must be guaranteed within a single trading day.
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
54
Side
Y
1=Buy 2=Sell
7556
OpenOrders
N
Y = requests all open orders.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
40
OrdType
Y
Order type. Supported values: 3=Stop Loss, 4=Stop Limit, P=Pegged, V=Trailing Stop, W=One Cancels
Other, X=If-Done, Y=If-Done OCO. Order type is required to be specified for individual order status request,
omit for all open orders requests.
60
TransactTime
Y
Time of execution/order creation (expressed in UTC (Universal Time Coordinated, also known as “GMT”)
Received - Order Session (FIX 4.2)
Execution Report (FIX 4.2)
Execution Report
The execution report message is used to:
Confirm the receipt of an order
Confirm changes to an existing order (i.e. accept cancel and replace requests)
Relay order status information
Relay fill information on working orders
Relay fill information on tradeable or restricted tradeable quotes
Reject orders
ExecutionReport Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
8 = ExecutionReport
49
SenderCompID
Y
FX-Works ID (Trade).
56
TargetCompID
Y
Client organization's ID.
167
SecurityType
Y
FOR = Foreign Exchange Contract
40
OrdType
Y
3 = Stop 4 = Stop Limit C = Forex Market F = Forex Limit Z = Iceberg
37
OrderID
Y
Unique identifier for Order as assigned by FX-Works. Uniqueness must be guaranteed within a
single trading day.
11
ClOrdID
Y
Unique identifier for Order as assigned by client. Uniqueness must be guaranteed within a single
trading day.
41
OrigClOrdID
N
In response to Cancel or Cancel/Replace requests, this field will contain the original client order id.
17
ExecID
Y
Unique identifier of execution message as assigned by FX-Works.
20
ExecTransType
Y
Execution transaction type:
0 = New
3 = Status
150
ExecType
Y
Describes the specific ExecutionRpt (i.e. Pending Cancel) while OrdStatus will always identify the
current order status (i.e. Partially Filled).
0 = New
1 = Partial fill
2 = Fill
4 = Canceled
5 = Replace
8 = Rejected
C = Expired
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
39
OrdStatus
Y
Identifies current status of order.
0 = New
1 = Partially filled
2 = Filled
4 = Canceled
5 = Replaced
8 = Rejected
C = Expired
103
OrdRejReason
N
Optional with ExecType = 8, Rejected.
1
Account
N
The account name as agreed to by FX-Works and the client or else defaulted by the system. A FIX
connection can have one or more trading accounts.
64
FutSettDate
N
GMT forward value date. Not sent if ExecType = 8, Rejected.
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
54
Side
Y
1=Buy 2=Sell
15
Currency
N
The value of this field represents the denomination of the quantity fields (for example, JPY
represents a quantity of JPY). This is the base currency of a currency pair.
38
OrderQty
Y
Quantity ordered
40
OrdType
N
Order Type. Supported values are:
3 – Stop-Loss order
4 – Stop-Limit order
C – Market order
F – Limit order
P – Pegged order
V – Trailing Stop
W – OCO order
X – IFD order
Y – IFD OCO order
Z – Iceberg order
Required for most cases except ExecType = 8 or 6
44
Price
N
Required for Limit based orders. Spot or all-in forward rate at which the limit order is to be executed.
99
StopPx
N
Required for Stop orders, OrderType = 3. The spot rate at which the stop order becomes effective
210
MaxShow
N
Maximum amount shown on an iceberg order. Only applicable for OrdType = Z.
15
Currency
N
The dealt currency of the order. This is the currency for the amount specified in tag 38, OrderQty
field.
32
LastShares
N
Quantity (e.g. shares) bought/sold on this (last) fill.
31
LastPx
N
Price of this (last) fill.
151
LeavesQty
Y
Quantity open for further execution. If the OrdStatus is Canceled, Expired, or Rejected (in which
case the order is no longer active) then LeavesQty could be 0, otherwise LeavesQty = OrderQty CumQty.
14
CumQty
Y
Total quantity (e.g. number of shares) filled. Not sent if ExecType = 8, Rejected, or if the entire order
is canceled, ExecType = 4, Canceled.
6
AvgPx
Y
Calculated average price of all fills on this order. Not sent if ExecType = 8, Rejected, or if the entire
order is canceled, ExecType = 4, Canceled.
60
TransactTime
Y
Time of execution/order creation (expressed in UTC (Universal Time Coordinated, also known as
“GMT”)
120
SettlCurrency
N
Currency code of settlement denomination.
75
TradeDate
N
Indicates date of trade referenced in this message in YYYYMMDD format.
7534
StopSide
N
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
7547
IFDIfOrdStatus
N
IFD order status for If leg. Conditionally required if OrdType = "X" or "Y".
Valid values:
0 = New
1 = Partial fill
2 = Fill
4 = Canceled
C = Expired
7569
IFDIfType
N
Valid values:
3 – Stop-Loss order
4 – Stop-Limit order
F – Limit order
7535
IFDThenType
N
IFD leg2 order type type. This field is required for OrdType = "X".
Valid values:
3 – Stop-Loss order
4 – Stop-Limit order
F – Limit order
7536
IFDThenSide
N
IFD then leg side. This field is required for OrdType = "X" or "Y".
Valid values:
1 – Buy
2 – Sell
Note: only opposite to Side value is supported now.
7570
IFDIfStopRate
N
IFD If leg stop rate. Required if IFDIfType (7569) = 3 or 4
7537
IFDThenPrStopRate
N
IFD Then leg stop rate. Required if IFDThenType (7535) = 3 or 4
7538
IFDThenPrLimitRate
N
IFD then leg for primitive limit rate. This field is required for OrdType = X and IFDThenOrdType = 4.
7539
IFDThenPrStopSide
N
IFD then leg for primitive stop side.
Valid Values:
1 – Bid
2 – Offer
7554
IFDThenAvgPx
N
The average price at which Then leg that was filled or partially filled.
7555
IFDThenCumQty
N
Total amount for Then Leg that currently executed in a chain of partial fills. This field is required for
OrdType = "X".
7556
IFDThenPrLeavesQty
N
Amount, still outstanding for IFD order then leg. This field is required for OrdType ="X".
7540
OCOLeg1LimitRate
N
OCO limit rate for leg1. This field is required for OrdType = O or (Y and IFDThenOrdType = W).
7541
OCOLeg2Type
N
OCO leg2 type. This field is required for OrdType = O or OrdType = Y together with
IFDThenOrdType = W.
Valid values:
3 – Stop-Loss
4 – Stop-Limit
7553
OCOLeg2Side
N
Valid values:
1 – Buy
2 – Sell
7542
OCOLeg2StopRate
N
OCO order stop rate for leg2. This field is required for OrdType = O or OrdType = Y together with
IFDThenOrdType = W.
7543
OCOLeg2StopSide
N
OCO stop side for leg2. This field is required for OCOLeg2Type = 3 or 4.
Valid Values:
1 – Bid
2 – Offer
7544
OCOLeg2StopLimitRate
N
OCO stop-limit rate for leg2. This field is required for OCOLeg2Type = 4.
7545
IFDFillSide
N
IFD Fill side. Required for OrdType = X and Y.
1 – If side
2 – Then side
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
7546
OCOLegId
N
OCO fill for leg id. This field is required for OrdType = Y and W. Valid values:
1 – Leg 1
2 – Leg 2.
7548
OCOLeg1AvgPx
N
The average price at which OCO Leg1 was filled or partially filled.
7549
OCOLeg1CumQty
N
Total amount of OCO Leg1 currently executed in a chain of partial fills.
7550
OCOLeg2AvgPx
N
The average price at which OCO Leg2 was filled or partially filled.
7551
OCOLeg2CumQty
N
Total amount of OCO Leg2 currently executed in a chain of partial fills.
7579
PeggedOrdSide
N
Pegging type. Valid values:
1 – Bid
2 – Offer
3 – Mid
7580
PeggedOrdOffset
N
Pegged order offset pips. If not specified default value is set to 0.
7581
PeggedOrdDiscretion
N
Pegged order discretion pips. If not specified default value is set to 0.
7583
PeggedOrdProtect
N
Pegged order protection size percentage. If not specified default value is set to 1.0 (100%).
7582
PeggedOrdAtOrBetter
N
Pegged order’s worst rate.
7585
MatchingType
N
1=Aggressor. Only supported for Fill (Trade) messages.
7587
TrailBy
N
The amount by which an order will trail the market. Required for OrdType (40) = V (Trailing Stop).
Valid values are >= 0. Specified to the full decimal scale for the order’s currency pair; e.g., 0.00001
for EUR/USD.
7588
MaxSlippage
N
If value is set then Trailing Stop places a stop limit order, otherwise Trailing Stop uses a market
order.
Max Slippage produces the calculated limit rate on the order placed into the market. If a trailing stop
limit order is triggered, it equals the Max Slippage added/subtracted, depending on whether it’s a buy
or sell, to the stop trigger rate.
Valid values are whole numbers >=0; e.g., a setting of 5 for EUR/USD would indicate 0.0005 points.
58
Text
N
Descriptive text message
Sample ExecutionReport Message:
8=FIX.4.2^9=304^35=8^34=38^49=FXWorks-TRADE^52=20101229-03:18:13.454 ^56=ClientID^115= ^116= ^128= ^129=
6=82.28^11=USDJPY-BID-SPOT-2693446 ^14=0^15=USD^17=1293592329844.11^37=1000000001013^38=500000039=0^40=2
^44=82.28^54=2^55=USD/JPY^60=20101229-03:18:13.454^75=00000000 ^120=USD^150=0^151=5000000^167=FOR^10=167
Order Cancel Reject (FIX 4.2)
Order Cancel Reject
The order cancel reject message is issued by the broker upon receipt of a cancel request or cancel/replace request message which cannot be
honored.
OrderCancelReject Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
9 = OrderCancelReject
49
SenderCompID
Y
FX-Works ID (Trade).
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
56
TargetCompID
Y
Client organization's ID.
11
ClOrdID
Y
A unique FIX client assigned ID for this cancel request being rejected.
41
OrigClOrdID
Y
ClOrdID of the previous order as assigned by the institution, id of order to be canceled.
39
OrdStatus
Y
'8' = Rejected
434
CxlRejResponseTo
Y
'1' = Order Cancel Request, '2' = Order Cancel Replace Request
102
CxlRejReason
N
Code to identify reason for cancel rejection.
0 = Too late to cancel
1 = Unknown order
3 = Order already in Pending Cancel or Pending Replace status
Sample OrderCancelReject Message:
8=FIX.4.2^9=132^35=9^34=216^49=FXWorks-TRADE^52=20101229-03:29:26.785 ^56=ClientID^115= ^116= ^128= ^129=
11=123abc^37=NONE^39=8^41=123abc ^102=1^434=1^10=124
List Status (FIX 4.2)
List Status
ListStatus Message Fields
Tag
Field Name
Req'd
Comments
35
MsgType
Y
N = ListStatus
49
SenderCompID
Y
FX-Works ID (Trade).
56
TargetCompID
Y
Client organization's ID.
66
ListID
Y
FX-Works defined List ID.
429
ListStatusType
Y
Only value supported: 2 (response type.)
82
NoRpts
Y
Only value supported: 1.
431
ListOrderStatus
Y
Only value supported: 1 (in bidding status).
83
RptSeq
Y
Only value supported: 1.
58
Text
N
Descriptive text message.
68
TotNoOrders
Y
The total orders outstanding.
60
TransactTime
Y
Time of execution/order creation (expressed in UTC (Universal Time Coordinated, also known as “GMT”)
73
NoOrders
Y
Number of repeated fields to follow.
11
ClOrdID
Y
Unique identifier for Order as assigned by client. Uniqueness must be guaranteed within a single trading day.
14
CumQty
Y
Total quantity (e.g. number of shares) filled. Not sent if ExecType = 8, Rejected, or if the entire order is
canceled, ExecType = 4, Canceled.
39
OrdStatus
Y
Identifies current status of order.
0 = New
1 = Partially filled
2 = Filled
4 = Canceled
5 = Replaced
8 = Rejected
C = Expired
151
LeavesQty
Y
Quantity open for further execution. If the OrdStatus is Canceled, DoneForTheDay, Expired, Calculated, or
Rejected (in which case the order is no longer active) then LeavesQty could be 0, otherwise LeavesQty =
OrderQty - CumQty.
Copyright © 2014 1Zero Bit, Inc. All rights reserved.
1Zero Bit FIX 4.2 API Manual. Visit http://www.1zerobit.com/beta for more details.
84
CxlQty
Y
Order amount canceled for the order. For IFD and IF OCO orders is the IF Leg canceled amount.
59
TimeInForce
N
Specifies how long the order remains in effect. Absence of this field is interpreted as DAY.
0=Day
1= Good Till Cancel (GTC)
3= Immediate or Cancel (IOC)
4= Fill or Kill (FOK)
6= Good Till Date (GTD)
X=Good for Seconds
432
ExpireDate
N
The date for which the order is good in the format: YYYYMMDD. Required when the TimeInForce (#59) value
is 6 (GTD) and ExpireTime is not set.
126
ExpireTime
N
The duration in hours, minutes, and seconds for which the order is good in the format:
YYYYMMDD-HH:MM:SS. Required when the TimeInForce (#59) value is 6 (GTD).
6
AvgPx
Y
Calculated average price of all fills on this order. Not sent if ExecType = 8, Rejected, or if the entire order is
canceled, ExecType = 4, Canceled.
58
Text
N
Descriptive text message.
37
OrderID
Y
FX-Works order id.
55
Symbol
Y
The symbol for the base and variable currencies of the currency pair in the following format:
baseCCY/variableCCY
54
Side
Y
1=Buy 2=Sell
40
OrdType
Y
3=Stop, 4=Stop Limit, C=Forex Market, F=Forex Limit, P=Pegged, Z=Iceberg
Copyright © 2014 1Zero Bit, Inc. All rights reserved.