Atrekes / FIX protocol guide

What is a FIX protocol engine?

The session layer between a trading application and its counterparty.

A FIX protocol engine connects trading applications through FIX messages. It encodes and parses those messages, manages session state and sequence numbers, and supports recovery when a connection is interrupted. The application above it still decides what an order, quote or execution means.

The practical definition

What does the engine actually do?

02 · ENCODING

Turns structured fields into valid FIX messages

It encodes outgoing messages and parses incoming ones using the selected FIX version, transport/session settings and data dictionary. FIX is a family of application, encoding and session specifications, not one fixed wire format.

03 · SEQUENCING

Deals with gaps and reconnects

Sequence continuity, resend requests, gap fills and persisted session state determine whether a reconnect can resume coherently. These behaviours matter most when the happy path stops.

04 · BOUNDARY

Hands messages to application logic

The engine provides messages and session events to application code. Order management, pricing, credit checks, smart routing and business decisions are separate responsibilities unless explicitly built above it.

Related, but not interchangeable

Engine, parser and OMS

A FIX parser reads FIX text or message data, often from a pasted message or log. By itself, it does not maintain a live session, recover sequence state or connect to a counterparty.

A FIX engine provides that live messaging and session machinery. An order management system (OMS) handles business workflows around orders, allocations, positions and controls. A product may combine these layers, but the labels describe different jobs.

Try Atrekes FIXParser

A buyer’s and engineer’s checklist

How to evaluate a low-latency FIX engine

“Low latency” is a measured property of a particular workload and deployment—not a protocol feature or a guarantee that transfers unchanged between machines.

SCOPE

Check the exact protocol surface

Identify supported FIX versions, session roles, transports, dictionaries and message types. Ask where a claimed feature ends: decoder, framing, session runner or production venue connection.

RECOVERY

Test failure behaviour

Review sequence persistence, resend and gap-fill handling, reconnect behaviour, duplicate detection, store durability and active/passive failover. Request repeatable tests, not only a feature list.

OWNERSHIP

Understand the runtime boundary

Distinguish a native engine from a managed implementation and from a language binding over native code. Measure the boundary your application will actually deploy.

Atrekes · LibHFT

A FIX engine with visible implementation boundaries

LibHFT provides five C++, Java and .NET runtime surfaces, with different implementation ownership made explicit. Its Rust adapter extends codec benchmarking; it is not presented as a sixth session engine. Published performance results are scoped to named workloads and conditions.

Its source-checked coverage inventory and benchmark evidence describe tested scope; they are not exchange certification or a promise of identical latency in every deployment.

Explore LibHFT capabilities and evidence

Primary references

Read the protocol specifications

The FIX Trading Community documents the FIX family and its session layer. The exact session and encoding choices depend on the version and counterparty profile in use.

FIX specification introduction · FIX Session Layer specification