Quickstart Guide
This guide walks through connecting your first order session to EurekaLabs. Estimated time: 20 to 30 minutes for an engineer familiar with FIX protocol.
Prerequisites
Before starting, you will need:
- An active EurekaLabs account (request access at login/register)
- Your EKL API credentials from the management console
- A FIX engine capable of FIX 4.2 or higher (QuickFIX, CameronFIX, or native)
- Network connectivity to the EKL co-location endpoint (your assigned gateway IP and port are in the management console)
FIX Session Setup
Configure your FIX engine with the following session parameters. Your SenderCompID and the logon passphrase are issued at account provisioning.
Configure session identity
Set SenderCompID to your assigned firm identifier. Set TargetCompID to EUREKAHQ for all sessions.
[SESSION]
SenderCompID=YOUR_FIRM_ID
TargetCompID=EUREKAHQ
HeartBtInt=30
ResetOnLogon=Y
SocketConnectHost=gw.eurekahq.org
SocketConnectPort=9443
Set logon credentials
EKL uses custom FIX tag 553 (Username) and tag 554 (Password) on the Logon message. Your credentials are distinct from your management console password.
8=FIX.4.4|9=XX|35=A|49=YOUR_FIRM_ID|56=EUREKAHQ|
553=YOUR_SESSION_USER|554=YOUR_SESSION_PASS|
98=0|108=30|10=XXX
Enable mTLS transport
All EKL sessions require mutual TLS. Download your client certificate bundle from the management console and configure your FIX engine's SSL context to present it on connect.
SSLEnable=Y
SSLCertificate=/path/to/ekl-client.crt
SSLPrivateKey=/path/to/ekl-client.key
SSLCACertificate=/path/to/ekl-ca.crt
Submit Your First Order
Once your FIX session logs on, submit a limit order using standard FIX 4.4 NewOrderSingle (tag 35=D). EKL accepts standard FIX order types with no custom extensions required for basic order submission.
// NewOrderSingle limit buy
8=FIX.4.4 // BeginString
35=D // MsgType = NewOrderSingle
49=YOUR_FIRM_ID
56=EUREKAHQ
11=ORD-001 // ClOrdID
55=AAPL // Symbol
54=1 // Side = Buy
60=20260101-09:30:00.000 // TransactTime
38=100 // OrderQty
40=2 // OrdType = Limit
44=175.50 // Price
59=0 // TimeInForce = Day
Verify Latency Data
After your first order is confirmed, you can pull the hardware-timestamp latency measurement via the management API. This confirms that your session is being timestamped and that the data pipeline is flowing correctly.
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.eurekahq.org/v1/latency?session=YOUR_SESSION&period=1h"
# Example response
{
"session": "YOUR_SESSION",
"p50_ns": 210,
"p99_ns": 380,
"p999_ns": 620,
"samples": 2847
}
For p50 values significantly above 500ns on your first session, contact support. This usually indicates a routing configuration issue or suboptimal physical path in the co-location switch topology.