Skip to main content

FIX Client Onboarding Process

This document describes a set of steps to prepare your system for FIX clients.

Each FIX gateway can service hundreds of clients. You can define multiple gateways, each serving different types of users. A typical client needs one market data and one order entry session.

Preparation

PROD/UAT

It is good practice to have multiple environments, including a UAT (User Acceptance Testing) or staging environment, in addition to the production environment. Each client should start integration using the UAT environment to ensure proper testing and validation before moving to production..

FIX Session Schedule

Determine a schedule for your FIX sessions. You can chose between specific hours of operation or 24/7 sessions. Keep in mind that while your matching engine and execution algorithms can operate continuously, trading in certain markets may be limited to specific trading hours.

The FIX protocol requires periodic reset of message sequence numbers. There are two ways to achieve this:

  • Non-stop 24/7 FIX sessions: These sessions should include periodic in-session sequence number resets, which is the default behavior.
  • Scheduled downtime: You can schedule periodic downtime, such as once a day or once a week, for all FIX sessions belonging to the same gateway.
    • For example, a minimalistic weekly FIX schedule can be from Sunday to Sunday, from 17:05 to 17:00 EST. See the FIX Gateway section in the Execution Server Configuration Guide for instructions on configuring the FIX schedule.

Secure Connectivity

Consider the following aspects of securing connectivity for clients:

  • Firewall: Make sure you have control over the firewall of the network hosting the FIX gateway. You will need to open each session's port to a specific set of customer’s public IP addresses to allow communication.
  • SSL: Make sure you utilize a SSL/TLS encryption to secure the FIX traffic and protect sensitive information.

Log Collection

Be ready to capture FIX message traffic for each client. This can be done on demand for troubleshooting purposes or continuously for audit purposes. Make sure you have the necessary tools and infrastructure in place to capture and store the FIX message traffic effectively.

Operation Readiness

Make sure you are prepared to monitor active FIX sessions using the ES Monitor tool.

Familiarize yourself with the following operations:

  • Disconnecting or halting a FIX client
  • Locating client orders
  • Canceling all client orders

Client Documentation

Deltix provides the following end-user documentation for FIX clients:

Feel free to copy these documents and white label them to align with your branding and requirements.

Client Checklist

To onboard a new FIX client, follow the steps below:

  1. Create a pair of FIX sessions - a Market Data and Order Entry session. Use the email template (provided below) and customize it with the appropriate information for the newly created sessions.
  2. Schedule a restart of the FIX Gateway to ensure the new sessions are recognized and implemented.
  3. Adjust the firewall settings to allow access to the new ports from the client's public IP addresses.
  4. Configure an SSL tunnel or load balancer if needed.
  5. Notify the client about the availability of the new FIX sessions.

Sample of email to Client

Here is a sample of email that you can send to a new FIX client. Note that the fields in blue font are customizable, and you should update them with the relevant information based on your specific configuration.The Deltix FIX gateway can be white-labeled, allowing you to customize certain parameters. For example, you can change default TargetCompID(56) from the default value“DELTIX” to a custom value. See the Execution Server Configuration Reference FIX Gateway section, for instructions on making these customizations.

Connection parameters for the Acme UAT Environment

Parameter:Market Data Session:Order Entry Session:
SenderCompID(49)ACMEPRICE1ACMETRADE1
TargetCompID(56)DELTIXDELTIX
Hostmd.cryptocortex.netoe.cryptocortex.net
Whitelisted source IPs96.230.80.2696.230.80.26
Port70019001
Logon Password:wJEAGe#xh8BCGLT&ai@P@PPg
Reset Sequence Numbers on each LogonYY
Heartbeat Interval30 sec30 sec
FIX Session ScheduleSunday-Sunday
17:30-17:00 NY
Sunday-Sunday
17:30-17:00 NY
FIX BeginStringFIX.4.4FIX.4.4
Connection TypeInitiatorInitiator
EncryptionTLSTLS
note

The fields in this table are presented from your client’s perspective. On the FIX gateway side, some of these fields are reversed (e.g., Acceptor vs Initiator, etc.).