FIX market data
FIX 4.4 market-data feed for secondary markets
FIX market data
Lise exposes a FIX 4.4 acceptor for secondary-market market data. The feed is read-only: you can discover instruments and subscribe to the order book. Order entry over FIX is not available.
Trading and account operations continue to go through the GraphQL API.
What is available today
| Capability | Status |
|---|---|
| Session logon with API key | Supported |
Instrument discovery (SecurityList) | Supported |
| Level-2 order book snapshot | Supported |
| Live book updates (full refresh) | Supported |
| Last trade in snapshot | Supported |
| Order entry / cancels / execution reports | Not supported |
Incremental market-data refresh (35=X) | Not supported (updates are full snapshots) |
Connection
| Setting | Value |
|---|---|
| Protocol | FIX.4.4 |
| Transport | TCP |
Server SenderCompID | LISE |
Your SenderCompID / TargetCompID | Assigned by your account manager |
| Heartbeat | 30 seconds |
| Session hours | 00:00:00–00:00:00 (24/7) |
Host and port are provided per environment (sandbox / production) by your account manager.
Point your initiator at the host and port you were given. On the wire, Lise is the acceptor: your
TargetCompIDmust beLISE, and yourSenderCompIDis the value assigned to your session.
Authentication
Logon (35=A) uses the same API keys as GraphQL. Provide credentials in the Logon Username / Password fields using either form:
| Form | Username (tag 553) | Password (tag 554) |
|---|---|---|
| Full key | lise-apikey_<login>_<secret> | ignored |
| Split | <login> | <secret> |
See Authentication for how keys are created and revoked.
Failed authentication rejects the Logon; the session does not start.
Supported application messages
Inbound (you → Lise)
| MsgType | Name | Notes |
|---|---|---|
A | Logon | Required; API key auth |
x | SecurityListRequest | Only SecurityListRequestType=4 (All Securities) |
V | MarketDataRequest | Snapshot (0) or Snapshot+Updates (1); unsubscribe with 2 |
Any other application message is ignored.
Outbound (Lise → you)
| MsgType | Name | Notes |
|---|---|---|
y | SecurityList | Published secondary-market instruments |
W | MarketDataSnapshotFullRefresh | Initial snapshot and every live update |
Y | MarketDataRequestReject | Unknown symbol, unsupported subscription type, etc. |
Instrument discovery
Send a SecurityListRequest (35=x) with:
SecurityReqID(tag 320) — your correlation idSecurityListRequestType(tag 559) =4(All Securities)
Lise replies with a SecurityList (35=y) containing each published secondary-market instrument:
| Field | Description |
|---|---|
Symbol | Token ticker |
SecurityID | ISIN when available (SecurityIDSource=4) |
SecurityAltID | Bloomberg ticker when available (SecurityAltIDSource=A) |
Currency | EUR |
SecurityType | CS (common stock) |
Use Symbol and/or SecurityID (ISIN) in subsequent market-data requests.
Market data
Request
Send a MarketDataRequest (35=V) with:
| Field | Value |
|---|---|
MDReqID | Your correlation id |
SubscriptionRequestType | 0 = one-shot snapshot; 1 = snapshot + live updates; 2 = unsubscribe |
MarketDepth | Number of price levels (L2 depth) |
NoRelatedSym | At least one instrument (Symbol and/or SecurityID) |
Snapshot contents
Each MarketDataSnapshotFullRefresh (35=W) includes:
MDEntryType | Meaning |
|---|---|
0 (Bid) | Aggregated open buy orders at that price |
1 (Offer) | Aggregated open sell orders at that price |
2 (Trade) | Last trade, when available (includes MDEntryDate / MDEntryTime in UTC) |
Prices are in EUR with 2 decimal places. Sizes are integer volumes.
Live updates
With SubscriptionRequestType=1, Lise keeps the subscription and pushes a new full snapshot (35=W) whenever the secondary-market book for that instrument changes. Updates are not incremental (35=X is not used).
To stop updates, send another MarketDataRequest with the same MDReqID and SubscriptionRequestType=2, or log out of the session.
Rejects
If the instrument cannot be resolved or the request is invalid, Lise sends MarketDataRequestReject (35=Y) with a reason text (for example unknown symbol).
Not in scope
The FIX session does not accept:
NewOrderSingle(35=D)OrderCancelRequest/OrderCancelReplaceRequestExecutionReportdrop-copy- Quote or RFQ flows
To place or cancel secondary-market orders, use the GraphQL mutations documented in the API Reference.
Next steps
Updated about 2 months ago

