Programming Guide


FAST is a binary encoding method for message oriented data streams. FAST is an acronym for FIX Adapted for STreaming. The original purpose of FAST was optimization of FIX messages.

Decoding in 4 Steps

In order to decode FAST data to FIX message the following 4 steps are required:

  • FIX engine initialization
  • Template library loading
  • Decoding
  • FIX engine shutdown

FIX Engine Initialization

The FIX engine must be initialized as described in the following section. The appropriate FIX dialect must be configured during this step if necessary as described here.

Template Library Loading

To load FAST templates from an XML source the following code sequence can be used.

final TemplateLoader templateLoader = new DomXmlTemplateLoader();
final InputStream is = ResourceLoaderUtil.CLASSPATH_LOADER.getResource("site/templates.xml");
final TemplateLibrary templateLibrary = templateLoader.load(is);


Create Decoder instance first.

final Decoder decoder = new Decoder(templateLibrary, FastVersion.FAST_1_1, Version.FIX50);

Decode FAST stream chunks then.

final Message fixMessage = decoder.decode(data);

FIX Engine Shutdown

The FIX engine must be shutdown as described in the following section.


Check also Samples :: Simple FAST