FIXEdge - Quick Start Guide

Overview

The B2BITS FIXEdge is a server application that provides FIX connectivity for standalone client applications. Client applications communicate with FIXEdge via one of the supported transport protocols (such as Simple Sockets, TIBCO, CORBA). FIXEdge can also be customized to use other connectivity bridges like CMS, ISE, INET, etc.

FIXEdge can be deployed on different machines, however, the easiest way to use FIXEdge is running one instance on a single machine.

FIXEdge complies the following FIX standards:

  • FIX 4.0-5.0SP2 and FIXT 1.1 including Extension Packs
  • FAST 1.1

FIXEdge supports the following platforms:

  • Windows
  • Linux RHEL/CentOS 7
  • Linux RHEL/CentOS 8

In case of any questions, direct them to the Support team: SupportFIXProducts@epam.com.

A request for a license update can be directed to the Sales team: sales@btobits.com.

Evaluation of System Requirements

The configuration of modern computers is usually enough to build a working system. However, the choice of particular configuration of hardware and software depends on the selected deployment scheme and FIXEdge performance requirements. 

Usually, the administrator sends a message to the support team with information about expected performance requirements and configuration. It is important to specify the following data in the message:

  1. Expected count of FIX sessions, types of messages (market data, orders) in each session, count of messages per second. 
  2. Operating system, processors, memory, hard drive, network bandwidth. Optional: SQL database and ODBC drivers.

The support team evaluates the possibility of using the existing configurations for expected requirements. If necessary the support team gives recommendations for configuration changing.

Content of the Package  

FIXEdge server components

FIXServer, FMXML Handler, JMS Transport Adaptor, MQ Transport Adaptor, TIBCO Transport Adaptor, Universal Transport Adaptor, BLLanguageExtension, SMTP Transport Adaptor.

Others transport adaptors can be installed and configured later.

FIXEdge monitoring
tools

FIX Integrated Control Center (FIXICC) and FIXICC Agent.

FIXICC is a Java stand-alone application which provides monitoring and administration capabilities for FIX Edge.

FIXICC Agent is a wrapper that allows FIXICC to establish connection with several instances of FIXEdge.

The installation packages for Windows and Linux also contain Java components (java run-time engine).  


 Package Structure

FIXEdge is delivered as a FIXEdge-x.x.x.zip package for Windows and FIXEdge-x.x.x.tar.gz package for Linux

The package has the following structure:

  • FIXEdge - installation guide, readme and license files
    • FIXEdge/bin - FIXEdge binaries, libraries and shell scripts
    • FIXEdge/doc - config samples
    • FIXEdge/FIXEdge1
      • FIXEdge/FIXEdge1/conf - FIXEdge configuration files
      • FIXEdge/FIXEdge1/log - FIXEdge log folder
        • FIXEdge/FIXEdge1/log/archive - FIXEdge archive log folder
        • FIXEdge/FIXEdge1/log/backup - FIXEdge backup log folder
    • FIXEdge/fixicc - FIXICC
    • FIXEdge/fixicc-agent - FIXICC agent
    • FIXEdge/jre - Java runtime files

Installation

Get the License File

The FIXEdge's license file can be obtained upon request to the Sales team. The license has an expiration date but it is possible to generate a perpetual license. License information is stored in the ‘engine.license’ file, it expected to be placed in the FIXEdge root directory. In order to apply new license, it is enough to replace the current file with a newer one and restart FIXEdge.

A separate license file for FIXICC and FIXICC Agent is required for FIXdge versions of before 5.11.3

Please, refer to the How to update license files article for additional information.

Install FIXEdge's Components

All of FIXEdge components require ports for their work. Each instance of FIXEdge requires three ports, and one port is required for each instance of FIXICC Agent. Make sure that they are not used by other applications.

See in detail the step-by-step guides for Linux and Windows:

Testing

Set up the Echo Configuration to make sure that all components were deployed correctly. The test consists of sending a FIX message from FIX Client Simulator (aka Simple Client) to FIXEdge server and returning the same message back to Simple Client. The tool is based on .NET technologies and can be used to Simulate FIX buy and/or sell side endpoints.

To perform the test download the FIX Client Simulator and follow the instructions from the Echo Configuration between FIXEdge and SimpleClient article.

Configuration

Configure FIX Layer

The FIXEdge installation package contains a pre-configured FIX acceptor session. Session properties can be viewed via FIXICC or in the 'FIXEdge.properties' file located in the 'FIXEdge/FIXEdge1/conf' folder. Once installed, FIXEdge is ready to create and/or maintain pre-configured and other FIX sessions/connections. Each FIX session is identified by the pair of SenderCompID and TargetCompID properties.

To configure FIXEdge according to the business needs, see FIXEdge Configuration.

Configure Transport Adaptors

Transport Adaptors allow clients to communicate with FIXServer over non-FIX transports. They are defined in the 'Transport Layer' section of the 'FIXEdge.properties' file. Transport Adaptors are usually libraries with .dll (Windows) or .so (Linux) extensions which FIXEdge loads at runtime. Transport Adaptors handle sessions are identified by the ClientID. 

See how to configure Transport Adaptors in FIXEdge Transport Adaptors.

Configure FIX Integrated Control Center

FIX Integrated Control Center (FIXICC) is a Java stand-alone application which provides out-of-the-box monitoring and administration capabilities for FIX Edge and any application embedding FIX Antenna C++, FIX Antenna Java and/or FIX Antenna .NET. Normally, no additional work is required to configure the application.

More information about FIXICC is presented in the FIXICC User Guide.

Management

FIXEdge can be managed from FIX Integrated Control Center (see FIXICC User Guide - Server level) or with the scripts to start/stop FIXEdge as a service/daemon. Also, there are additional options for FIXEdge for Windows.

Starting FIXEdge

Steps for Windows

  1. Run FIXEdge as a service with the script
    • Go to the B2BITS\FIXEdge\bin\ and run the 'FixEdge1.service.run.cmd' script as Administrator

  2. Run FIXEdge as a service in Windows Services
    • Go to Administrative tools --> Services. Find FIXEdge.FIXEdge1 service and select 'Start' option in the context menu
  3. Run FIXEdge as a console application
    • Go to the B2BITS\FIXEdge\bin\ and run the 'FixEdge1.run.cmd' script 

Steps for Linux

Go to the /home/user/B2BITS/FIXEdge/bin and run the start script:

$ cd /home/user/B2BITS/FIXEdge/bin
$ ./FixEdge1.run.sh

Stopping FIXEdge

Steps for Windows

  1. Stop FIXEdge service with the script
    • Go to the B2BITS\FIXEdge\bin\ and run the 'FIXEdge1.service.stop.cmd' script as Administrator

  2. Stop FIXEdge service with Windows Services
    • Go to Administrative tools --> Services. Find FIXEdge.FIXEdge1 service and select 'Stop' option in the context menu

  3. The console version of FIXEdge can be stopped by pressing “Ctrl+C” keys combination.


Steps for Linux

Go to the /home/user/B2BITS/FIXEdge/bin and run the stop script:

$ cd /home/user/B2BITS/FIXEdge/bin
$ ./FixEdge1.stop.sh

Session Management

Sessions can be configured, started or stopped from FIX Integrated Control Center, see FIXICC User Guide - Session level.

Monitoring

FIXEdge can be monitored referring to log files or from the FIXICC application. Log files for each session are stored separately in the “FIXEdge/FIXEdge1/log” folder and can be viewed using any text editor/viewer. The 'FixEdge.log' file contains information about session creation, destruction, reconnection, license expiration date, etc.

Analyzing Log Files with FIXEye

All log files with incoming and outgoing FIX messages can be viewed via FIXEyeFIXEye is a multi-purpose FIX session surveillance and visibility platform. 

See more about the FIX log analyzer here: FIXEye User Guide.

Configuration of High Availability Failover Cluster  

FIXEdge Failover Cluster installation (based on Logs replicator)

FIXEdge Active-Passive Failover Cluster Deployment Guide

Uninstallation

Make sure that FIXEdge had stopped before uninstalling.

Steps for Windows

  1. Uninstall the FIXEdge service. Run the following script as Administrator:

    B2BITS\FIXEdge\bin\FIXEdge1.uninstall.cmd
  2. Stop and uninstall the FIXICC Agent. Run the following scripts as Administrator:

    B2BITS\FIXEdge\fixicc-agent\bat\stopService.FIXEdge1.bat
    B2BITS\FIXEdge\fixicc-agent\bat\uninstallService.FIXEdge1.bat

Steps for Linux

  1. Stop and uninstall the FIXICC Agent

    $ cd /home/user/B2BITS/FIXEdge/fixicc-agent/bin/
    $ ./stopDaemonNoPriv.sh
    $ ./uninstallDaemon.sh

FAQ

Frequently asked questions and "How to" articles can be found here: "How to..." articles

Useful Links

FIXICC User Guide

FIXEdge Installation Guide

Deployment Schemas

FIXEdge Configuration

FIXEdge Transport Adaptors

FIX Client Simulator

FAQs and "How to" articles

FIXEdge Failover Cluster installation (based on Logs replicator)

FIXEdge Active-Passive Failover Cluster Deployment Guide