High Performance Technology for Trading

FAST (FIX Adapted for Streaming)

Onix Solutions' out-of-the-box fully standard FAST 1.1 implementation offers an easy to use C++ or .NET API, versatile diagnostic and comprehensive suite of sample applications (with the source code) and significantly reduces the time and cost of FIX FAST development and implementation.

ONIX FAST 1.1 is fully compatible with the CME (Chicago Mercantile Exchange). FAST Market Data Feed and source code for a sample CME market data client are included.

A 30 day evaluation of the .NET FIX Engine or C++ FIX Engine with built-in FAST 1.1 support can be obtained at http://www.onixs.biz/downloads/.

To learn more about FAST 1.1 and C++ or .NET FIX Engine please read below or e-mail info@onixs.biz .

Introduction

FAST (an acronym for FIX Adapted for Streaming) is a binary compression algorithm optimised for real-time distribution of high-volume market data. It was developed by FIX Protocol Ltd (FPL) to reduce the bandwidth requirements and the latency of message oriented data feeds. This protocol is rapidly gaining recognition among major exchanges and ECNs (Chicago Mercantile Exchange (CME), Eurex, the International Securities Exchange (ISE), Sweden's OM Exchanges (OMX), to date).

Advantages and disadvantages

FAST benefits include reduced bandwidth and reduced latency. They are archived at the expense of increased processing time and more complex processing algorithms.

Message structure

FAST does not define any requirements to the business structure of the messages; it only addresses the data representation. Therefore FAST can be used to compact not only FIX messages, but proprietary messages too.

Compression methods

The FAST Protocol uses the following approaches to compact data messages:

  • implicit tagging
  • field encoding
  • presence map
  • stop bit
  • binary encoding

These approaches assume that the structures of the transferred messages as well as encoding rules are agreed between the counter parties. This is usually done via the exchange of machine readable XML-based FAST templates.

Implicit Tagging

The order of fields within the FAST message is fixed, so the field meaning is defined by its position in the message and there is no need to transfer the field tag to describe the field value.

For example:

Symbol|MDEntryType|MDEntryPx|MDEntrySize|MDEntryTime

Part of the FIX message:

55=FOO1|269=0|270=1300|271=100000|273=17:57:01.352

The corresponding part of the FAST message:

FOO1|0|1300|100000|17:57:01.352

Information about the previous field value as well as about the initial value is used to reduce the amount of redundant information sent with each successive message.

Field Encoding

Field Encoding Operator defines the actions that need to be taken on the received field value, the previous field value and the initial value in order to obtain the final value.

For example, if the Default Field Operator with the initial value "FUT" is defined for SecurityDesc <107> field in the FAST template and this field is empty in the received message then the "FUT" is used as the final field value.

Field Encoding Operators are specified in the FAST Template.

Presence Map

A presence map is a sequence of bits that starts each FAST message. Each bit in the presence map can signal the presence or absence of a particular field value in the binary streams that follows.

Stop Bit

The most significant bit in each byte is used as an indicator of the field delimiter instead of a dedicated 8-bit field delimiter value.

Binary Encoding

Field values are represented as bit sequences (contrary to the character (text) representation that is used in the FIX protocol).

Home | Downloads | Contact Us | Site Map© Onix Solutions 2004–