Configuring FIX Session
A FIX session is defined as a unique combination of a BeginString (the FIX version number 4.2), a SenderCompID (OMS Client ID as defined by Clear Street), and a TargetCompID.
A FIX session has an active time period during which all data is transmitted. Clear Street currently accepts connections between 3:30 AM EST to 10 PM EST on all business days. Clear Street will act as an acceptor and OMS will be the initiator.
A Logon message (Tag 35=A) must be sent to Clear Street on every business day to indicate the beginning of activity and a Logout message (Tag 35=5) must be sent to Clear Street indicating an end of activity for that day.
Clear Street also recommends exchange of heartbeats every 30 seconds by sending a message with Tag 35=0.
Clear Street expects every message to have a unique continuous sequence number as part of the message with Tag 34. If there are any gaps in sequence numbers, a sequence reset message will be sent to the OMS client with tag 34=4.
All requests must either provide a Symbol (Tag 55) or both IDSource (Tag 22) and SecurityID (Tag 48) to clearly identify a security. IDSource (Tag 22) and SecurityID are marked as conditionally required for this purpose.
We support TLS for securing the data over a FIX session. Please contact [email protected] for exchanging keys with Clear Street and for additional details.
[DEFAULT]
ReconnectInterval=5
SenderCompID=LOCATESCLIENT
HeartBtInt=30
SocketAcceptPort=31234
TargetCompID=CLST
HeartBtInt=30
SocketConnectPort=31234
SocketConnectHost=100.0.0.0
BeginString=FIX.4.2
[SESSION]
StartTime=04:00:00
EndTime=22:00:00
Currently we support two different message flows. All new client implementations should use Preferred Message Flow below.
Preferred Message Flow
We request all new OMSs to follow this message flow
- OMS will send a
Quote Requestmessage to locate securities - Clear Street responds by sending a
Quotemessage with the located securities information including Locate_ID inTag 117. If the requestedOrderQtyof theQuote Requestis not met by the initialQuote, additionalQuotemessages MAY be sent until the entireOrderQtyis fulfilled. AllQuotemessages include the originating order ID (QuoteReqID) inTag 131. - OMS will send a
New Ordermessage by settingTag 117with the Locate_ID that Clear Street provided. - Clear Street responds by sending an
Execution Reportmessage with status update such as accepted/expired/etc inTag 39 - OMS will send an
Order Cancel Requestmessage if they would like to decline the offer by settingTag 37with the Locate_ID that Clear Street provided. - Clear Street responds with a
Rejectmessage on any validation/formatting errors.
Message List
| Message | Tag 35 | Comments | Direction w.r.t. CLST |
|---|---|---|---|
| Quote Request | R | Request to locate a list of securities | Incoming |
| Quote | S | Response for quote request. Multiple responses are sent depending on the number of quotes requested | Outgoing |
| New Order - Single | D | Request to Accept a single locate | Incoming |
| Order Cancel Request | F | Request to Decline a single locate | Incoming |
| Execution Report | 8 | Status response for a single locate accept/reject message with locate id | Outgoing |
| Reject | 3 | Any validation/authentication errors on the Order requests | Outgoing |
Quote Request
Quote Request is a request sent by OMS for locating multiple securities
8=FIX.4.29=005435=R49=OMSC56=CLSTLOCT34=136052=20220208-21:10:01131=123456783146=2115=ACCOUNTID109=CLST55=IBM38=100054=155=AAPL38=200054=110=106| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required | Repeatable |
|---|---|---|---|---|---|---|---|---|
| Message Type | 35 | Required | Message Type | AlphaNumeric | 1 | Required | No | |
| QuoteReqID | 131 | Unique ID for the Quote | A12345bc | AlphaNumeric | Required | No | ||
| OnBehalfOfCompID | 115 | Account ID from Order | ACCTID | AlphaNumeric | Required | No | ||
| ClientID | 109 | Firm ID/MPID | CLST | AlphaNumeric | Required | No | ||
| NoRelatedSym | 146 | Number of related symbols in this order | 1 | Numeric | Required | No | ||
| Symbol | 55 | Security ticker | AAPL | Alpha | Required | Yes | ||
| IDSource | 22 | 1-CUSIP 2-SEDOL 4-ISIN 8-Exchange Symbol | Security ID type | 1 | Numeric | 1 | Conditionally Required | Yes |
| SecurityID | 48 | Security ID as per IDSource tag 22 | 037833100 | AlphaNumeric | 12 | Conditionally Required | Yes | |
| OrderQty | 38 | Number of shares for which quote is being requested | 1000 | Numeric | Required | Yes | ||
| Side | 54 | 1-Buy | Side of Quote | 1 | Numeric | 1 | Optional | Yes |
Quote
Quote is a response sent by Clear Street as a reply to the Quote Request message with Locate ID. There will be one response message for each of the securities requested as part of Quote Request.
8=FIX.4.29=5935=S34=2851249=CLSTLOCT52=20220208-21:10:45.33656=OMSC131=123456783117=10000155=IBM135=1000133=0.2310=025| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required |
|---|---|---|---|---|---|---|---|
| MsgType | 35 | S | Message Type | S | AlphaNumeric | 1 | Required |
| QuoteReqID | 131 | Unique ID from the Quote Request ReferenceId | AlphaNumeric | Required | |||
| QuoteID | 117 | Unique ID for this quote locate_id | AlphaNumeric | Required | |||
| Symbol | 55 | Security ticker | AAPL | Alpha | Required | ||
| IDSource | 22 | 1-CUSIP 2-SEDOL 4-ISIN 8-Exchange Symbol | Security ID type | 1 | Numeric | 1 | Conditionally Required |
| SecurityID | 48 | Security ID as per IDSource tag 22 | 037833100 | AlphaNumeric | 12 | Conditionally Required | |
| OfferSize | 135 | Number of shares that can be offered If availability is less the OrderQty then availability If availability is more than OrderQty then OrderQty 1 if no OrderQty is specified and available 0 if no OrderQty is specified and not available | 1000 | Numeric | Required | ||
| OfferPx | 133 | Offer price for the security requested in cents-per-share | 0.23 | Numeric | Required | ||
| OfferSpotRate | 190 | Offer borrow rate for the security | -40 | Numeric | Optional |
New Order-Single (To Accept an Offer)
New Order-Single is a request sent by OMS to accept a locate that was offered by Clear Street
//Example: Accept
8=FIX.4.29=005435=D49=OMSC56=CLSTLOCT34=136052=20220208-21:10:0111=1234568160=20220208-21:10:00.792109=ACCOUNTID76=USRNM,PSWD1=ACCOUNTID117=10001110=106| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required |
|---|---|---|---|---|---|---|---|
| MsgType | 35 | S | Message Type | D | AlphaNumeric | 1 | Required |
| ClOrdID | 11 | Unique ID for the Order | AlphaNumeric | 25 | Optional | ||
| HandInst | 21 | 1-Auto, Private 2-Auto, Public 3-Manual | Instructions for order handling on Broker trading floor | 1 | Numeric | 1 | Optional |
| Symbol | 55 | Security ticker | AAPL | Alpha | Required | ||
| Side | 54 | 1-Buy 2-Sell 3-Buy Minus 4-Sell Plus 5-Sell Short 6-Sell Short Exempt 7-Undisclosed 8-Cross 9-Cross Short | Side | 1 | Numeric | 1 | Optional |
| TransactTime | 60 | Date+Time in UTC | 20220121-13:27:43.000 | YYYYMMDD-HH:mm:SS:sss | 21 | Required | |
| OrdType | 40 | 1-Market 2-Limit 3-Stop 4-Stop Limit 5-Market On Close 6-With or Without 7-Limit or Better 8-Limit With or Without 9-On Basis A-On Close B-Limit On Close C-Forex C D-Previously Quoted E-Previously Indicated F-Forext F G-Forex G H-Forex H I-Funari P-Pegged | Order Type | 1 | AlphaNumeric | 1 | Optional |
| ClientID | 109 | Firm ID/MPID | CLST | AlphaNumeric | Required | ||
| ExecBroker | 76 | Credential string: username, password | USRNM,PSWD | AlphaNumeric | Optional | ||
| OrderQty | 38 | Number of share ordered | 1000 | Numeric | Optional | ||
| IDSource | 22 | 1-CUSIP 2-SEDOL 3-ISIN 8-Exchange Symbol | Security ID Type | 1 | Numeric | 1 | Conditionally Required |
| SecurityID | 48 | Security ID as per IDSource tag 22 | 037833100 | AlphaNumeric | 12 | Conditionally Required | |
| ClearingAccount | 440 | Trader ID | TRDRID | AlphaNumeric | Optional | ||
| Account | 1 | Account ID | ACCTID | AlphaNumeric | Optional | ||
| QuoteID | 117 | Locate_ID | Locate ID | 123456 | AlphaNumeric | Required |
Execution Report (Accept/Reject)
Execution Report(One Response Message for each item in List of Order Accept/Reject) is a response sent by Clear Street confirming the accept/reject of a locate. There will be one response message for each item if the response is for a list of multiple securities request via New Order - List
8=FIX.4.29=5935=834=2851249=CLSTLOCT52=20220208-21:10:45.33656=OMSC37=20000511=1234567155=IBM54=1109=ACCOUNTID38=100058=THISISASINGLELOCATEACCEPTRESPONSEBYSYMBOL17=20000520=0150=239=21=ACCOUNTID151=014=10006=23.0044=0.2310=025| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required |
|---|---|---|---|---|---|---|---|
| MsgType | 35 | 8 | Message type | 8 | AlphaNumeric | 1 | Required |
| OrderID | 37 | Locate ID | AlphaNumeric | Required | |||
| ClOrdID | 11 | ClOrdID from the New Order message | AlphaNumeric | 25 | Required | ||
| Symbol | 55 | Security ticker | AAPL | Alpha | Required | ||
| Side | 54 | 1-Buy 2-Sell 3-Buy Minus 4-Sell Plus 5-Sell Short 6-Sell Short Exempt 7-Undisclosed 8-Cross 9-Cross Short |
Side | 1 | Numeric | 1 | Required |
| ClientID | 109 | Same as Account ID | CLST | AlphaNumeric | Required | ||
| OrderQty | 38 | Number of share requested | 1000 | Numeric | Required | ||
| IDSource | 22 | 1-CUSIP 2-SEDOL 4-ISIN 8-Exchange Symbol |
Security ID type | 1 | Numeric | 1 | Conditionally Required |
| SecurityID | 48 | Security ID as per IDSource tag 22 | 037833100 | AlphaNumeric | 12 | Conditionally Required | |
| Text | 58 | Any comments by locating broker or indicating partial fills or part of original order | comment | AlphaNumeric | Optional | ||
| ExecID | 17 | Locate ID | Numeric | Required | |||
| ExecTransType | 20 | 0-New 1-Cancel 2-Correct 3-Status |
Transaction type | 0 | Numeric | 1 | Required |
| ExecType | 150 | 0-New 1-Partial Fill 2-Filled 3-Done for Day 8-Rejected B-Calculated/Offered C-Expired |
Type of Execution report | 2 | AlphaNumeric | 1 | Required |
| OrdStatus | 39 | 0-New 1-Partial Fill 2-Filled 3-Done for Day 8-Rejected B-Calculated/Offered C-Expired |
Current status of Order | 2 | AlphaNumeric | 1 | Required |
| Account | 1 | Account ID from Order | ACCTID | AlphaNumeric | Required | ||
| LeavesQty | 151 | Amount of shares open for further execution | Numeric | Required | |||
| CumQty | 14 | Currently executed shares | 1000 | Numeric | Required | ||
| AvgPx | 6 | Calculated average price | 0.23 | Numeric | Required |
Order Cancel Request (To Decline an Offer)
Order Cancel Request is a request sent by OMS to decline a locate that was offered by Clear Street.
//Example: Decline
8=FIX.4.29=005435=F49=OMSC56=CLSTLOCT34=136052=20220208-21:10:0141=1234568137=20000511=123456721=ACCOUNTID109=CLST76=USRNM,PSWD55=IBM54=160=20220208-21:10:00.79238=100058=comment10=106| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required |
|---|---|---|---|---|---|---|---|
| MsgType | 35 | F | Message type | F | AlphaNumeric | 1 | Required |
| OrigClOrdID | 41 | Unique ID of the previous order when canceling or declining an locate. | AlphaNumeric | 25 | Required | ||
| OrderID | 37 | Locate ID of the Locate that is being declined. | AlphaNumeric | Required | |||
| ClOrdID | 11 | Unique ID of the Order. Must be the first in the repeatable list. | AlphaNumeric | 25 | Required | ||
| Account | 1 | Account ID from Order. | ACCTID | AlphaNumeric | Required | ||
| ClientID | 109 | Firm ID/MPID. | CLST | AlphaNumeric | Required | ||
| ExecBroker | 76 | Credential String: username,password | USRNM,PSWD | AlphaNumeric | Optional | ||
| Symbol | 55 | Security Ticker. | AAPL | Alpha | Required | ||
| SecurityID | 48 | Security ID as per IDSource tag 22. | 037833100 | AlphaNumeric | 12 | Conditionally Required | |
| IDSource | 22 | 1-CUSIP 2-SEDOL 4-ISIN 8-Exchange Symbol |
Security ID type. | 1 | Numeric | 1 | Conditionally Required | Side | 54 | 1-Buy 2-Sell 3-Buy Minus 4-Sell Plus 5-Sell Short 6-Sell Short Exempt 7-Undisclosed 8-Cross 9-Cross Short |
Side | 1 | Numeric | 1 | Optional |
| TransactTime | 60 | DateTime in UTC. | 20220121-13:27:43.000 | YYYYMMDD-HH:mm:SS:sss | 21 | Required | |
| OrderQty | 38 | Number of share requested. | 1000 | Numeric | Required | ||
| Text | 58 | Any comments by locating broker or indicating partial fills or part of original order. | comment | AlphaNumeric | Optional |
Reject
Reject is sent by Clear Street where there are any issues with the request messages.
8=FIX.4.29=5935=334=2851249=CLSTLOCT52=20220208-21:10:45.33656=OMSC45=12345691371=158=Order rejected. Missing Account10=025| Field Name | FIX Tag # | Possible Values | Comments | Example | Format | Length | Required |
|---|---|---|---|---|---|---|---|
| MsgType | 35 | 3 | Message type | 3 | AlphaNumeric | 1 | Required |
| RefSeqNum | 45 | Reference message sequence number | 123456789 | Numeric | Required | ||
| Text | 58 | Reason for reject | Order rejected. Missing field ClOrdID | AlphaNumeric | Required | ||
| RefTagID | 371 | The tag number of the FIX field being referenced | 1 | Numeric | Optional |