Home / Solutions / FIX Engines / FIX Antenna .NET
FIX Engine — FIX Antenna .NET
FIX Antenna™ .NET has been designed to provide native support of
Microsoft .NET technologies enabling quick and easy integration
into any custom .NET application. While enabling all the benefits
of Microsoft's .NET framework it retains all the benefits of B2BITS
class leading FIX engines. The .NET engine delivers performance of
over 35,000 messages per second on a single CPU.
The .NET benefits include the ability to manipulate messages
with the use of class hierarchies, properties and namespaces, XML
based documentation for all messages, and the ability to generate
structured messages. FIX Antenna .NET provides an extremely easy
way to integrate support of the FIX protocol into any .NET
application. It is specifically designed to improve the
productivity of .NET programmers even if they are novice FIX users.
Furthermore, FIX Antenna .NET comes with a rich UI for monitoring session
statuses and parameters in real time.
FIX Antenna™ .NET 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 .NET FIX
engine includes upgrades to the latest FIX and FAST protocols
All libraries/servers are pre-configured for and certified
with multiple exchanges, including CME, ICE, INET and many
Our products come with a 24x7 support provided worldwide and availability of
"on-demand" software escrow.
|High throughput/low latency
Although FIX Antenna .NET is specifically designed to provide
native support of Microsoft. NET technologies, the performance
is still high.
Delivers over 35,000 messages per second.
Adds up to 28 microseconds' latency on 100 Mbps
network with persistence and 14 microseconds'
latency on 100 Mbps network without persistence.
Allows configuring sending/receiving prioritization for
|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.)
- Supports user-defined tags
- Supports user-defined messages
- Message validation (wellformness, required and conditionally
required fields, fields order, types, etc.)
- Customizable FIX protocol. Create your own FIX dialect e.g.
defined extra field for the message, change "required" attribute,
etc. in a friendly XML format
- Multiple session management
- Supports up to 200 concurrent sessions on a single instance on
recommended hardware. Number of concurrent sessions can be
increased if more CPUs are added
- Each session can be configured separately. FIX Dialect can be
configured for session
- Guaranteed delivery
- Reliable store and forward technique
- Flat files are used for persistence to achieve maximum
- Standard FIX routing based on DeliverTo and OnBehalfOf
- Later delivery mode allows unsent messages to be stored in a
queue and delivered later when connection is re-established.
Recommended configuration for a session where execution reports are
to be delivered e.g. session with traders.
- Rejecting mode allows messages, which cannot be sent during
some reasonable time (customizable), to be rejected. Recommended
configuration for a session where orders are to be delivered e.g.
session with exchanges.
|Highly customizable FIX session level
- Different modes of handling sequence number during logon and
- Intraday logout tolerance
- Custom logon message
- Possibility to force sequence number reset on logon
|Reliability and redundancy
- Ability to switch to back-up connection manually or
- Ability to fully restore its state after failure
- Designed to work as a part of highly available solutions in a
- Standard FIX authorization utilizing username and password
fields in FIX Logon message
- FIX encryption to work in non-private networks: DES and
- SSL tunneling
- Auto-accept incoming sessions (to simplify development and
testing) and auto-decline non pre-configured sessions
|Reliability vs. performance
- Supports transient sessions, which do not use any persistence.
This significantly increases performance giving up recovery.
Applicable when recovery is not required (e.g. for market data) or
when persistence is done by the application, which uses the FIX
- Ability to enable or disable Nagle's algorithm to minimize
latency or maximize throughput
- Ability to configure (or turn off) the number of messages to be
joined in a bunch before sending
- Ability to dedicate threads for session for sending and
receiving data to minimize overhead on context switching
|Monitoring and administration
- Built-in remote monitoring and administrative interface for
sessions monitoring and management
- Utilizing FIX session and the same FIX listen port for
- Friendly XML-based DSL for administrative instructions: easy to
read, easy to extend
- Public API to override and/or extend existing administrative
- Rich monitoring and
administration GUI out of the box
|Message composition API
- Provides the following functionality:
- Creating a message singleton by FIX protocol version and
- Creating a message from a raw FIX string (parse)
- Serializing a FIX object message to raw FIX string
- Adding, removing, modifying FIX fields and repeating
- Validating message
- FIX flat message model - generic model to work with the
abstract FIXMessage class via fields and groups getters and
setters, which gives the highest performance
- FIX object model - each FIX message type is a class with FIX
fields as members, using intellisense to make working with FIX
business object more pleasant
- User-friendly standard pure .NET public interface
- Supplied as an assembly (.dll) for Windows
||The package includes:
- Programmer's Guide
- API Guide
- Quick Start sample
- Echo Server sample
- Simple Client sample
- CME Globex client sample
- Other samples
- Monitoring and
Administration GUI is available for free by request
- Software escrow is avaiable on demand
FIX engine is built using real time design patterns proven over
10 years of practice.
FIX Antenna .NET is not a pure .NET implementation. It uses FIX
Antenna C++ as a core, which makes the code more reliable (the core
has been proven on multiple platforms) and fast. As a result, FIX
Antenna .NET provides reliability and speed of C++ and friendliness
of public API from .NET.
The transport layer is implemented based on
Boost.Asio. The design of FIX Antenna .NET allows supporting
various modes to maximize high throughput, achieve low latency, or
operate in a custom mode with balanced throughput and latency. The
internal design allows also to control the number of threads by
fixing it in case of multiple FIX sessions to share time between
them or by dedicating threads for individual FIX sessions (2
threads per session).
Access to low level parameters is provided to tune TCP/IP
performance (Nagel's algorithm), choose the type of storage for the
state recovery, collect run time statistics, measure time taken by
a particular operation, as well as turn on and turn off a
particular feature, and many others.
FIX Antenna .NET is a .NET assembly built on top of FIX Antenna
C++. It provides the following main APIs for trading applications
- Create multiple FIX sessions (initiators and acceptors)
- Open and close FIX session
- Form FIX and FIXML message
- Parse FIX and FIXML message
- Validate FIX message
- Send and receive FIX messages
- Set sequence numbers
- Encrypt FIX messages
full list of FIX Antenna .NET APIs.
FIX Antenna .NET is tested on a wide variety of compilers and
platforms. The binary package is available right away for the
If you cannot find your platform in the table, please contact firstname.lastname@example.org for more
FIX Antenna .NET can be used in the following .NET languages and
- MS Excel (MS Office 2003/2007)
FIX Antenna .NET depends on the following libraries:
||Supplied with the package
|FIX Antenna C++
||.NET 2.0 - 4.0
We offer cost effective
licensing models. They are based on application process
concurrency limits, level of support (business hours only, 24x5/7),
etc. Also Site licenses, OEM licensing models, as well as discounts
based on number of purchased licenses are available. Development,
test and back-up licenses are licensed separately. Cost of such
licenses is 50% from listed price of production license.