Heartbeat (35=0)
Heartbeats are sent periodically to signal a connection is still active. They are sent on an interval defined by HeartBtInt in the Logon message. If an expected heartbeat is missed, a TestRequest is sent to verify the connection is still active.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=0 | |||
112 | TestReqID | C | Field is required when the Heartbeat is the response to a Test Request message |
Standard Trailer |
Logon (35=A)
Logon messages from Client to Saxo FIX API are for two types of sessions:
- Market Data Session: To request market data and receive it. This is only available for FX Spot currently. Support on CFD Indices and CFD Futures will be added soon.
- Order session: To submit orders, change orders and send allocation instructions; and receive execution reports and allocation instruction acknowledgements.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=A | |||
98 | EncryptMethod | Y | 0 = NONE |
108 | HeartBtInt | Y | Heartbeat interval (seconds). Must be 30 seconds, unless otherwise agreed. |
141 | ResetSeqNumFlag | N | Note: sequence numbers reset over the weekend. |
553 | Username | Y | Saxo-supplied username |
554 | Password | Y | Saxo-supplied password |
Standard Trailer |
Logon response from Saxo FIX API to Client.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=A | |||
98 | EncryptMethod | Y | 0 = NONE |
108 | HeartBtInt | Y | Heartbeat interval (seconds). Must be 30 seconds, unless otherwise agreed. |
141 | ResetSeqNumFlag | N | Note: sequence numbers reset over the weekend. |
Standard Trailer |
TestRequest (35=1)
TestRequests will be sent in response to missed heartbeats, and may be sent periodically by Saxo Bank. They must be responded to immediately with a Heartbeat containing the TestReqID or the session will be considered unresponsive and the connection terminated.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=1 | |||
112 | TestReqID | Y | Identifier to be returned in resulting Heartbeat |
Standard Trailer |
ResendRequest (35=2)
ResendRequests can be issued if messages are missed and a message with a higher than expected sequence number is received, i.e. a message has been lost in transit—for example during a disconnect/reconnect.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=2 | |||
7 | BeginSeqNo | Y | MsgSeqNum of first message in range to be resent |
16 | EndSeqNo | Y | MsgSeqNum of last message in range to be resent |
Standard Trailer |
Reject (35=3)
Rejects indicates a serious error in the implementation of FIX API specification by either FIX Client or Saxo FIX API. Message contains information indicating the message, tag and reason for rejection of the message. Immediately after SessionLevelReject is exchanged between FIX Client and Saxo FIX API, the session will be closed by Saxo FIX API..
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=3 | |||
45 | RefSeqNum | Y | Reference message sequence number |
371 | RefTagID | N | Tag 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 |
58 | Text | N | Where possible, text describing reject reason |
Standard Trailer |
SequenceReset (35=4)
SequenceResets are used to reset the sender's sequence number during a session.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=4 | |||
123 | GapFillFlag | N | Indicates that the SequenceReset is replacing administrative or application messages which will not be resent |
36 | NewSeqNo | Y | New sequence number |
Standard Trailer |
Logout (35=5)
Logouts are sent to terminate a session.
Tag | Field Name | Required | Description |
---|---|---|---|
Standard Header, MsgType 35=5 | |||
58 | Text | N | Text describing logout reason |
Standard Trailer |