FIX Antenna® Java supports FIX 4.0, 4.1, 4.2, 4.3, 4.4, 5.0, 5.0
SP1, 5.0 SP2, FIXML and FAST. Support for FIX Antenna Java FIX
engine includes upgrades to the latest FIX and FAST protocol
versions. A
high availability extension is included as a
standard.
Key benefits:
- Runs everywhere
- Natively integrates with standard Java monitoring tool
sets
- Can be used in an enterprise environment and web-based
solutions
These features help maintain a consistent interface for all
internal applications, while dealing with many counterparties and
cross asset classes where different versions of the protocol are in
use. Furthermore, FIX Antenna Java comes with a rich UI
for monitoring session statuses and parameters in real time on desktop app or web browser.
All libraries/servers are pre-configured for and certified
with multiple exchanges. Our products come with worldwide 24/7 support and software escrow.
50,000+ messages/secon a
single CPU30,000
messages/sec across 200 sessions
Real time monitoring of
session statuses & parameters Rich User Interfacesupport a variety
of requirements
24 / 7 Service Worldwide coverage On demand software
escrow
Features
Feature |
Description |
High performance / low
latency |
- Delivers over 50,000 messages per
second with persistence and over 150,000 messages per second
without persistence.
- Adds 11 microseconds to latency for sending messages and up to
4 microseconds to latency for reading with persistence
- Adds up to 1 microsecond to latency in average for sending
messages and up to 3.5 microseconds to latency in average for
reading without persistence.
Please refer to the latest benchmarks of FIX Antenna Java,
Windows- and
Linux-based.
|
Supports standard
FIX |
- 100% FIX standard compliance:
- FIX 4.0, 4.1, 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
- FAST 1.1
- Supports all FIX message types (pre-trade, trade, post-trade,
market data, etc.)
- Message validation (well formedness, required and conditionally
required fields, fields order, types, etc.)
-
Support of the popular FIX dictionary format used by
QuickFIX
- Customizable FIX protocol with user-defined tags and message
types. Create your own FIX dialect, e.g. define an extra field,
change "required" attribute, etc., in a friendly XML format
(compatible with FIX Antenna C++ and .NET.)
- Multiple session management
- Supports up to 200 concurrent sessions in a single instance on
recommended hardware. Number of concurrent sessions can be
increased if more CPUs are added
- Each session can be configured separately
- Guaranteed delivery
- Relies on the store and forward technique
- Memory-mapped files are used for persistence
to achieve maximum performance
- Standard FIX routing based on DeliverTo and OnBehalfOf
fields
|
Market Data
Handlers |
- CME FIX/FAST, MDP 3.0
- BOVESPA FAST
- EBS FAST
|
FIXML converter |
- FIX to FIXML converter
- FIXML to FIX converter
- Support FIX 4.0, 4.1, 4.2, 4.3, 4.4, 5.0, 5.0 SP1, 5.0 SP2
|
Delivery modes |
- Later delivery mode allows unsent messages to be stored in a
queue and delivered later when connection is re-established. This
is recommended for configuring sessions where execution reports are
to be delivered, e.g. a session with traders.
- Rejection mode allows messages that cannot be sent during a
given, customizable time to be rejected. This is recommended for
configuring sessions where orders are to be delivered, e.g. a
session with exchanges.
|
Highly customizable FIX
session level |
- Highly customizable logic of message processing
-
- Ability to create custom handler for any type of message
- Ability to add custom pre-processing of messages before they
are handled by FIX Antenna
- Ability to add custom post-processing of system-level messages
before they are sent to a counterparty
|
Reliability vs.
performance |
|
Performance tuning |
|
Fan-out ready |
- Implement effective fan-out solutions
- Average round-trip time is about 200 uses for a fan-out of an
incoming message to 200 outgoing sessions
- Includes
examples of fan-out implementation
|
High
Availability |
Can work in a cluster, replicating a FIX session's state to
backup nodes. FIX Antenna Java supports 2 modes:
- Replication to central storage from primary nodes for later use
by backup nodes to recover states
- Direct copy from primary nodes to backup nodes
-
- asynchronous replication to backup nodes
- synchronous replication (primary node will wait for
acknowledgement from backup)
|
Configuration |
- Supports configuration in XML and properties file format.
- Ability to configure default behavior and custom sessions in
the same configuration file.
|
Monitoring and
administration |
- Proprietary built-in remote monitoring and administrative
interface for sessions monitoring and management
-
JMX interface for sessions monitoring and management
- Public API to override and/or extend existing administrative
instructions
- Rich monitoring and
administration GUI out of the box
|
Message composition
API |
- Allows:
-
- Creating a message singleton by FIX protocol version and
message type
- Creating a message from a raw FIX string (parse)
- Serializing a FIX object message to a raw FIX string
- Adding, removing, and modifying FIX fields and repeating
groups
- Message validation
- Reducing memory allocations via internal pooling
- FIX flat message model - a generic model for working with the
abstract FIXMessage class via fields, groups getters, and groups
setters, resulting in the highest performance
- RG API - an API for working with repeating groups, similar to
the FIX flat message model, that allows working with
structures
- FIX object model - a model where each FIX message type is a
class with FIX fields as members, using intelligence to simplify
working with the FIX business object
- Prepared messages - a message template for faster message
sending with identical structures but different values
- Efficient getters and setters for working with primitive type
values to reduce garbage production
|
Integration with
middleware |
- Has customizable adapters for communicating with
JMS and
Kafka servers. Provides an API for easy sending/receiving of
FIX messages from/to middleware
- Included standalone FIX-to-JMS and FIX-to-Kafka servers for
routing messages between FIX and middleware environments
|
Security |
- Provides native built-in SSL support and SSL tunneling
- CME Secure Logon support (See
How to connect to CME Globex using Secure Logon for
details)
- Standard FIX authorization utilizing username and password
fields in the FIX Logon message
- Strategies for accepting incoming sessions:
- Auto-accept incoming sessions (to simplify development and
testing)
- Auto-decline non pre-configured sessions
|
Small footprint |
- The minimal FIX application size could be about 200K and it
will not include 3rd party libraries
|
Packaging |
Each package consists of:
See the
full list of packages available for FIX Antenna Java.
|
Supports all popular
environments |
Supported OS:
Supported compilers:
|
Proprietary built-in remote monitoring and
administrative interface for sessions monitoring and management
- Allows implementing effective fan-out solutions
- Average round-trip time is about 200 uses for a fan-out of an
incoming message to 200 outgoing sessions
- Includes examples of fan-out implementation
Architecture
Our latest FIX Antenna Java engine (v. 2) was built using over a
decade of FIX market experience, a thorough understanding of
current market structure and future trends, and feedback from our
clients. The current release of the FIX library adds extra
reliability for operating in the most demanding low latency
environments.
The transport layer of FIX Antenna Java is built using Message
Queues with priorities, which allows system messages to be
processed even in high load applications.
The logic of the FIX session layer is built using the Chain of
Responsibility Pattern. There is a chain of the system and user
defined handlers, which check the message for validity, right
number sequence, etc. This approach enables greater flexibility,
allows the incorporation of custom logic into any place in the
chain, and makes the application adaptable to any requirements.
During an ongoing session, messages will be stored after
processing. Incoming messages will be saved after normal processing
by all handlers and user applications, while outgoing messages will
be saved after they have been sent to counterparties. This assures
that every single message will be processed.
B2BITS® FIX Products vs. Open
Source FIX Solutions
LEARN MORE
APIs
FIX Antenna Java provides the following main APIs for trading
applications to:
- Create multiple FIX sessions (initiators and acceptors)
- Open and close FIX sessions
- Form FIX messages
- Validate FIX messages
- Send and receive FIX messages
- Convert FIX messages to/from FIXML
- Route FIX messages to/from JMS
- Work with FAST stream
- Set sequence numbers
- Conveniently handle repeating groups in FIX message
full list of FIX Antenna Java
APIs
Samples
Name |
Description |
RepeatingGroupAPIExample
|
Demonstrates how to manipulate FIX messages with repeating
groups and tags using the RG API. |
CreateMessage |
Demonstrates how to create a message object with the FIX
Messaging API. |
FlatNewOrderSingleMessage |
Demonstrates several ways to convert an existing string with a
FIX message into its object representation. |
NewOrderSingleMessage |
Demonstrates how to create the NewOrderSingle (D) message with
the object messaging model. |
SimpleNewsBroadcaster |
Demonstrates how to create a FIX initiator session and send a
News (B) message to the server. |
MaxSpeedBroadcaster |
Demonstrates how to configure the
SimpleNewsBroadcaster sample for working with a maximum
throughput. |
CustomProtocolBroadcaster |
Demonstrates how to run the
SimpleNewsBroadcaster sample with customized FIX protocol. |
SimpleAdminClient |
Demonstrates how to connect to an administrative session and
communicate with it using the implementation of administrative
messages. |
SimpleServer |
Demonstrates how to implement a FIX server with the simple IP
filtering of incoming sessions. |
SimpleServerWithAdminSession |
Demonstrates how to run the
SimpleServer sample with the Administrative plug-in
enabled. |
SimpleServerWithCustomDic |
Demonstrates how to run the
SimpleServer sample with customized FIX protocol. |
Advanced FIXAJ Samples
Name |
Description |
CustomSessionLevelBroadcaster |
Demonstrates how to run the
SimpleNewsBroadcaster sample with a customized session
level. Allows redefinition of handlers for Resend Request(2) and
Reject(3) messages in its configuration. |
CustomStorageBroadcaster |
Demonstrates how to implement and configure a custom storage
mechanism for incoming messages (outgoing messages will be stored
in the default way). Customization is based on the
SimpleNewsBroadcaster sample. |
SSL Samples
Name |
Description |
SimpleMessageSSLClient |
Demonstrates how to configure the
SimpleNewsBroadcaster sample when using SSL
connection. |
SimpleSSLNewsBroadcaster |
Demonstrates how to build the simplest GUI FIX client that can
work with SSL. A bit more complex than the
SimpleMessageSSLClient sample with GUI elements. |
SimpleSSLServer |
Demonstrates how to build the simplest SSL FIX server. This
sample is based on the
SimpleServer sample |
Validation Samples
Name |
Description |
SimpleValidator44 |
Demonstrates how to check a message for compliance with FIX 4.4
using the FIX Antenna Validation module. |
SimpleValidator50 |
Demonstrates how to check a message for compliance with FIX 5.0
using the FIX Antenna Validation module. |
AdditionalValidationSample44 |
Demonstrates how to customize validation when using customized
FIX protocol. |
FIXML Samples
Name |
Description |
FIX2FIXML |
Demonstrates a simple way of converting a string with a FIX
message into its FIXML representation. |
FIX2FIXMLWithCustomSerializer |
Demonstrates how to convert a string with a FIX message into
its FIXML representation with custom XML processing. |
FIXML2FIX |
Demonstrates a simple way of converting a string with an FIXML
message into its FIX representation. |
FIXML2FIXWithCustomParser |
Demonstrates how to convert a string with an FIXML message into
its FIX representation with custom XML processing. |
FAST Samples
Name |
Description |
FastDecoder |
Demonstrates how to decode a FAST message and get a FIX
message. |
FastEncoder |
Demonstrates how to encode a FIX message into FAST. |
SimpleFastClient |
Demonstrates how to connect to the FAST server and receive
messages from it. Built as a simple command line tool. |
JMS Samples
Name |
Description |
FIXJMSAdpator |
Demonstrates how to send and receive FIX messages via JMS
Adaptor. |
FIXJMSAdvancedAdpator |
Demonstrates how to send and receive FIX messages via JMS
Adaptor. FIXJMSAdvancedAdaptor hides the JMS queues access and
makes it easier to initialize the adaptor. |
MDP 3.0 Samples
Name |
Description |
CME MDP 3.0 Tools |
Demonstrates how to subscribe and receive market
data from the CME MDP 3.0 connection stream. |
CME MDP 3.0 Channel Sample |
Demonstrates how to create a CME MDP 3.0 adaptor
instance and connect to certain market data streams. |
Simple CME MDP 3.0 Channel Sample |
Demonstrates how to create a Simple market data
channel and connect to the CME MDP Stream. |
CME High Level Market Data API Samples |
Demonstrates how to use the High Level Market Data
API to make a high-level connection to CME MDP 3.0. The high-level
connection has built-in support of CME Business Objects like
OrderBooks (Multiple Depth, Implied, Consolidated), Security
Definition & Status, Statistics, Last Trades, and Quote
Requests. |
Package Matrix &
Downloads

Legend
FIXAJ Light - a FIX engine with a
minimal footprint. This package can be used in products which have
strict limitations for their size.
FIXAJ Full - a fully functional FIX
engine.
FIXAJ Add-ons - validation and Message
Object Model for FIX Antenna Light.
ICE Adaptor - FIX Antenna Solution for
ICE Trade Capture. This package contains console and GUI tools for
communicating with the ICE Trade Capture interface.
FIXML Convertor - a set of FIX Antenna
related libraries for converting FIX to FIXML and back.
Fast Engine - the functional core for
supporting FAST.
CME Fast Adaptor - a fully functional
application for communicating with CME.
CME MDP 3.0 Adaptor - a fully
functional application which supports all features of the new
MDP3.0 platform
JMS Adaptor - an adaptor that helps
link FIX Antenna with the Java Message Service. The package also
contains a server for routing FIX messages to and from the JMS
server.
Price
We offer cost effective licensing models. They are based on
application process concurrency limits, level of support (business
hours only, 24x5/7), etc. Site licenses, OEM licensing models, and
discounts based on the number of purchased licenses are also
available. Development, test, and back-up licenses are licensed
separately and priced at 50% of the listed cost of production
licenses.
view licensing models