THE FASTEST JAVA FIX ENGINE

Chronicle FIX

Microsecond latency, multi-asset FIX Engine designed to meet the needs of the most demanding trading applications. Trusted by top-tier banks, exchanges, and hedge funds with thousands of deployed sessions globally. 

"Chronicle FIX handles billions of price ticks per week, delivers consistent low latency, and never misses a beat"

- Paul Scott, Head of EFX, ANZ

performance

Microsecond Performance

Handles a New Order Single round-trip in less than 4 µs up to the 99.9th percentile.

Learn more >>

Java Has Never Been Faster

Minimal garbage

Java garbage collections (GC) are expensive, hence Chronicle FIX Engine is designed to require at most one GC per day.

Efficient data processing

Designed from the ground-up to avoid all performance penalties, Chronicle FIX leverages zero-copy through the stack. Moreover, smart field ordering is applied to allow messages to be generated and parsed in less than 1 µs at high percentiles.

Lean codebase

The latency is reduced further by keeping the codebase to a minimum with generated code automatically tailored to your usage of the FIX protocol.

Precision benchmarking

We ensure confidence in your benchmarks with performance probe points that deliver fine-grained latency measurements.

New Order Single round trip benchmark

The benchmark below was conducted by measuring the roundtrip for a New Order Single FIX message being generated through to the Execution Report being received by the initiator.

Chronicle FIX Engine Performance

scalability

Scales in Any Direction

Designed to manage hundreds of connections per server and a million messages per core. Not enough? Scale horizontally without latency penalties.

Learn more >>

Won't Break Under Pressure

Handles massive throughput with ease

Each Chronicle FIX Engine comfortably serves a thousand connections and handles a million messages per second. All without compromising latency.

Rule-based router

If you reach the limit of a single server, Chronicle FIX provides a rule-based router that allows you to scale your FIX Engines horizontally across the estate to address the most demanding requirements. When combined with Mapper you can route messages to FIX Engines using different FIX protocols to unify your FIX Architecture.

Proven by clients

The Chronicle FIX Engine is production hardened as it has been deployed in some of the world’s largest banks as a core trading technology, addressing some of the most stringent performance and resilience requirements.

routing1

Simple to Manage

Treats FIX messages as simple Java POJOs making FIX easily accessible to all developers. Update your FIX Engines on the fly with dynamic reconfiguration.

Learn more >>

Get Up and Running in No Time

Skip the boilerplate

The implementation is facilitated with custom code generation of the underlying Java representation that includes e.g. FIX message types and parsers. This allows you to immediately focus on the business logic rather than boilerplate.

Easy configuration

Chronicle FIX Engines are easily configured in YAML-format or programmatically. The configuration can be changed dynamically at any time - a complete audit trail of any updates is retained.

Solid test framework

Chronicle’s YAML based test framework makes testing a no-brainer. You can integration tests your FIX Engine by simply specifying a series of input messages and the corresponding expected output.

!FixEngineCfg {
    default: {
        FixVersion:V4_4,
        HeartBtInt: 2,
        MessageParser:!MessageParser { },
        MessageGenerator: !MessageGenerator { },
        MsgSequenceHandler: !MsgSequenceHandler { },
        LoggingMode: !LoggingMode UNBUFFERED,
},
    SERVER-CLIENT: {
        HostId: 1,
        SenderCompID: SERVER,
        TargetCompID: CLIENT,
        FileStorePath: acceptor,
        ConnectionType: acceptor,
        MessageNotifier: !ServerMessageNotifierExample { },
        SocketAcceptorHostPort: host.port
},
    CLIENT-SERVER: {
    HostId: 2,
    SenderCompID: CLIENT,
    TargetCompID: SERVER,
        FileStorePath: connector,
        ConnectionType: initiator,
        MessageNotifier: !ClientMessageNotifierExample { }
       SocketConnectHostPort: [ host.port ]
},
}

Exemplary configuration file for a client and server

handshake

FIX Agnostic

Supports all FIX versions, ITCH, and SBE (Refinitiv, iLink, etc.) protocols. Translates between FIX schemas to enable seamless interactions among clients.

Learn more >>

Highly Compatible

FIX agnostic

The Chronicle FIX Engine is compatible with all FIX versions* and facilitates translations between different FIX versions. In practice, this means an organisation can maintain its business logic using a single unified FIX version, e.g. FIX 5.0, but still allow clients to use other FIX versions/schemas to connect to the unified business logic. This reduces time-to-market as well as development and maintenance costs.

Integration

Chronicle FIX integrates seamlessly with your own codebase, any third-party libraries (e.g Splunk and 3Forge), as well as Chronicle Queue and Chronicle Microservices.

Tailor to any counterparty

Since FIX connections can vary slightly we allow you to tailor each session to fit the counter-party. You can e.g. adapt the data model for storing messages, use a custom parser, and specify how to validate and handle messages.

Runs on all platforms

Chronicle's FIX Engine support Java 8, 11, 17 on OpenJDK, Oracle, Azul (Zing/Zulu).

*4.0, 4.1, 4.2, 4.3, 4.4, 5.0, 5.0SP1, 5.0SP2, FIXT1.1

Configurable

Robust and Resilient

Equipped with full HA/DR capabilities via multi-node replication and hot-hot configurations. This helps achieve uninterrupted trading.

Learn more >>

Prepared for the Worst

Things rarely go as planned, which is why Chronicle FIX Engine is equipped to handle safe failover without any loss of data and minimal downtime. Failover kicks in immediately when failure is detected and the backup server goes live after any required message replay to recover the lost state.

The sequence of events (failover):

  1. Normal operation. The Connector connects to Acceptor 1 and sends/receives messages normally.
  2. Acceptor 1 fails.
  3. The Connector times out waiting for Acceptor 1, and instead fails over to Acceptor 2. FIX logon and handshake occur so that the FIX sequence numbers are synchronised, with message replay as appropriate. This ensures a seamless hand-over, with no data loss.
Chronicle FIX Engine Failover
Secure

Secure and Compliant

Persists all historic events using Chronicle Queue to comply with regulations, including MiFID II. Allows multi-level protection of your data.

Learn more >>

Mult-Level Protection

Validate your traffic

Securely pre-validate your FIX traffic before passing it downstream to your Chronicle FIX Engines by deploying the FIX Proxy Firewall in the DMZ.

Prevent eavesdropping

The Transport Layer Security (TLS) proxy can be used to transparently encrypt FIX message traffic, between you and your counterparty. Further, Chronicle Queues can be encrypted to protect any logs and replicated messages.

Compliant with regulations

Chronicle FIX Engine keeps a record of all historic events using Chronicle Queue to be compliant with regulations, including MifId II. You are free to configure per session timestamps to suit your business and reporting requirement.

Microsecond Performance

performance

Handles a New Order Single round-trip in less than 4 µs up to the 99.9th percentile.

Scales in Any Direction

scalability

Designed to manage hundreds of connections per server and a million messages per core. Not enough? Scale horizontally without latency penalties.

FIX Agnostic

handshake

Supports all FIX versions, ITCH, and SBE (Refinitiv, iLink, etc.) protocols. Translates between FIX schemas to enable seamless interactions among clients.

Simple to Manage

routing1

Treats FIX messages as simple Java POJOs making FIX easily accessible to all developers. Update your FIX Engines on the fly with dynamic reconfiguration.

Robust and Resilient

Configurable

Equipped with full HA/DR capabilities via multi-node replication and hot-hot configurations. This helps achieve uninterrupted trading.

Secure and Compliant

Secure

Persists all historic events using Chronicle Queue to comply with regulations, including MiFID II. Allows multi-level protection of your data.

scalability

Scales in Any Direction

Designed to manage hundreds of connections per server and a million messages per core. Not enough? Scale horizontally without latency penalties.

performance

Microsecond Performance

Handles a New Order Single round-trip in less than 4 µs up to the 99.9th percentile. Allows further optimizations related to field ordering.

handshake

FIX Agnostic

Supports all FIX versions, ITCH, and SBE (Refinitiv, iLink, etc.) protocols. Translates between FIX schemas to enable seamless interactions among clients.

routing1

Simple to Manage

Treats FIX messages as simple Java POJOs making FIX easily accessible to all developers. Update your FIX Engines on the fly with dynamic reconfiguration.

Secure

Secure and Compliant

Persists all historic events using Chronicle Queue to comply with regulations, including MiFID II. Allows multi-level protection of your data.

Configurable

Robust and Resilient

Equipped with full HA/DR capabilities via multi-node replication and hot-hot configurations. This helps achieve uninterrupted trading.

CHRONICLE'S FIX ROUTER

Flexibly Scale and Manage Distributed FIX Environments

Chronicle's FIX Router routes FIX messages, based on routing rules, between FIX engines. The FIX router is included as part of the Chronicle FIX product and is highly configurable, using a natural rule syntax to manage the flow of FIX messages. The key features are:

  • Dynamic load balancer allowing distribution of messages across a pool of FIX gateway servers. This allows vertical scaling of your server capacity.
  • Standardised connection surface to insulate clients from backend server configuration and changes.
  • Manage server update risk by flexibly routing only a subset of flow on and off newly updated servers.
  • FIX version translator making sure the trading clients can connect even if using other versions of the FIX protocol.
  • Rule-based drop-copy functionality makes it possible to tap off selected pieces of information to other services.
Screenshot 2022-04-20 at 14.59.20

Chronicle FIX in Action

Chronicle has supplied trading solutions to many top tier financial institutions. Read one of our case studies to understand what you can achieve with Chronicle’s low-latency FIX Engine.

Highly Optimised DMA Solution

A large global bank asked Chronicle for a solution that optimised the performance within their Equity Trading Group. Chronicle delivered a high throughput, low-latency solution that exponentially improved both the execution and accuracy for their clients while integrating with the existing infrastructure. Learn more >>

 

Quick ROI on EFX Trading Platform

Chronicle built a bespoke EFX trading platform for a top-tier bank. By leveraging Chronicle FIX and EFX microservices the system was deployed within six months. By then, message throughput was increased up to ten times allowing a wider range of strategies that utilise the whole book. Learn more >>

uob
Screenshot 2022-03-09 at 18.31.05
Screenshot 2022-03-09 at 18.28.30
Screen Shot 2022-05-04 at 4.09.07 PM

Experience the Speed

Chronicle’s claim of providing the fastest Java FIX Engine on the market is supported by thorough benchmarks.

The results are shared in a number of articles that invite anyone to delve into the details of the performance advantages of Chronicle’s low-latency FIX Engine. Or even better, experience the speed first hand by running our performance demos. 

Chronicle FIX vs QuickFIX

New Order Single Request - Execution Report Response Round Trip
50k msgs/s, 1 M messages, Ryzen 9 5950X, 3.4 GHz, SSD

CHRONICLE'S VISUAL FIX PARSER

Facilate Analysis
of FIX Messages

Chronicle provides a free FIX parser that can facilitate the analysis of FIX messages by presenting them in a human readable format.

Chronicle FIX Engine - FIX Parser

Chronicle FIX UI

Chronicle FIX Engine now comes equipped with a new user interface. The new interface features a more intuitive layout and improved navigation, making it easier for users to access their FIX sessions and includes the ability to: 

  • Manage sessions (such as resetting sequence numbers)
  • Edit sessions
  • Search through FIX messages

For more information on these features, watch our introductory video:

LIGHTWEIGHT PROXY

Secures Your FIX Communication

As an optional feature to Chronicle FIX we provide a lightweight TCP and TLS Proxy. Key features are:

  • Multiple FIX/TCP Sessions - manage concurrent connections, routing from multiple listening ports to multiple downstream destinations
  • Configurable Routing Policies - multiple policies supported, including Round Robin, Sticky Round Robin, “Blue-Green” partitioning
  • FIX Message Routing - message routing based on Sender/TargetCompID pairs
  • FIX Message Validation - messages can be validated before passing to a downstream FIX server
  • TLS Support - connections can be configured to initiate and/or terminate TLS for encryption and authentication
  • Network Segmentation - can be installed in DMZ to satisfy network security requirements
  • High Availability - transparent failover to backup servers/replica queues
  • Low Overhead - less than 100ns plus additional TCP hop
Screen Shot 2022-08-11 at 10.27.08 AM

Licensing and Support

At Chronicle we pride ourselves on the stability and knowledge of our development and support team. With decades of experience from the financial industry, you can trust us with your toughest challenges.

Complete Control of the Code

All customers get full access to our GitHub repository where you can read, fork, and create pull-requests on the Chronicle FIX source code. This means you have complete control over your environment and the freedom to continually optimise your trading workflows.

 

Get Expert Help

Our expert consultants are ready to support you with any issues that may arise. We understand that the FIX Engine is usually only a small part of a system, and our experienced developers can help with architecture and latency issues in other areas if needed.

 

Simple Licensing Model

Our simple and transparent licensing model provides certainty and ensures that Chronicle’s low-latency FIX Engine is available to businesses of all sizes, from the largest bank to the smallest hedge fund.

Articles about Chronicle FIX

Developing Low Latency Trading Systems with Chronicle Microservices

Introduction to Chronicle Services Traditionally, low latency trading systems were developed as monolithic applications in low level languages such as C++. While these systems delivered the required performance, the development effort was extremely time consuming,…

Continue Reading >>

Why Java is Better Than C++ for High Speed Trading Systems

by Sarah Butcher 23 November 2020 eFinancial News The accepted wisdom has it that if you’re building a high speed trading system you probably want to use C++ instead of Java: it’s closer to the metal and is…

Continue Reading >>

Choosing Chronicle FIX Engine

Overview The FIX Trading Community web site has posted a list of common questions about FIX Engines. This page brings together our answers for these questions. For more details on Chronicle FIX Capabilities/throughput Chronicle FIX supports; 100,000…

Continue Reading >>
What's Next?

Get Started Today

If you want to learn more about how Chronicle FIX works, why not start experimenting with our demos or read the documentation? For example, you can learn how to get up and running quickly and how Chronicle FIX can be optimised for your environment.