The EPAM B2BITS FIX Client Simulator UI (FCS) is a desktop application that runs on Windows, Linux, and macOS, simulating buy-side and sell-side workflows as defined by the FIX protocol. It allows users to create and execute repeatable test scenarios, ensuring comprehensive testing for compliance with FIX protocol implementations.
The EPAM B2BITS FIX Client Simulator Console, a new command-line interface (CLI), allowing users to run automated FIX testing scenarios directly from the command line, providing greater flexibility for automated testing and integration into CI/CD pipelines.
FCS combines the ability to enter, generate, and edit raw FIX messages via pre-defined forms. Moreover, it offers an approach to assemble and replay FIX messages, handle sequence numbers and identities automatically.
FCS is used in the following use cases:
- OMS/EMS functional and stress testing
- FIX sessions automated testing
- FIX protocol implementations
- Errors reproducing
FIX Client Simulator covers the entire spectrum of FIX protocol versions, supports custom FIX protocol extensions and QuickFIX-formatted dictionaries. It is integrated with B2BITS' FIXopaedia serving as a reliable specifications source and guaranteeing strict adherence to FIX protocol compliance.

Features
A short introduction video to FIX tools, including the FIX Client Simulator, can be found here.
Feature | Description |
---|---|
FIX standard support |
FIX Client Sumulator ensures FIX standard compliance by supporting:
|
FIX session management |
|
Kafka session management |
|
FIX message handling |
|
Context-driven workflow simulation |
|
Tests visualization |
|
Automated testing | |
Security |
|
CI/CD integration |
|
Packaging |
FIX Client Simulator is delivered as a simple zip archive. The package contains:
|
Context-Driven Workflow Simulation
FIX Client Simulator provides the ability to simulate context-driven workflows defined by FIX standard specification.
For example, FCS allows to autogenerate Order Cancel Request (35=F) or Order Cancel/Replace Request (35=G) message based on outgoing New Order Single (35=D) or incoming Execution Report (35=8) message.
The particular outgoing New Order Single (35=D) or incoming Execution Report (35=8) message can be right-clicked on in the the Events Viewer section and two actions from the context menu will be available:
- Cancel - to autogenerate Order Cancel Request (35=F) message.
- Cancel/Replace - to autogenerate and send Order Cancel/Replace Request (35=G) message.
Also, there is an ability to autogenerate New, Partially Filled, and Filled Execution Report (35=8) message based on incoming New Order Single (35=D) message.
The particular incoming New Order Single (35=D) message can be right-clicked on in the the Events Viewer section and three actions from the context menu will be available:
- Exec Report - New - to autogenerate Execution Report New(35=8) message.
- Exec Report - Fill - to autogenerate Execution Report Filled (35=8) message.
- Exec Report - Partial Fill - to autogenerate Execution Report Partially Filled (35=8) message.
The new message will be autogenerated in accordance with the FIX dictionary file (associated with the session) using the tag=value pairs from the initial FIX message.
The autogenerated messages will be added to the Send Message section.
Automated Testing
FIX Client Simulator allows users to create, edit and run repitable test scenarios for selected FIX sessions.
There are two ways to add new test scenario:
- Create it manually using the set of instructions such as Send, Expect, Expect Until and Breakpoint.
OR - Record it automatically. Recording of incoming messages can be enabled/disabled.
The list of existing test scenarios is displayed in the Test Scenarios tab on the main application screen.
Created scenarios can be edited, renamed, or removed.
If the scenario was tested successfully, then the corresponding line in the Test Scenarios table will be highlighted in green. Time taken to run the test will be displayed in the Details column.
If the scenario was tested unsuccessfully, then the corresponding line in the Test Scenarios table will be highlighted in red. Time taken to run the test and error description will be displayed in the Details column.
Stress Testing
FCS is a load stress tool. It simulates load as an initiator by sending messages to OMS/EMS and matching engines. Additionally, it can simulate an acceptor by behaving like a client of a trading platform that consumes message traffic and generates responses.
When replaying FIX transaction logs, FCS can send FIX messages to one or multiple FIX sessions with a given speed or according to recorded time stamps (with up to nano-seconds in accuracy). It also supports bidirectional communication. More details can be found at FIX Client Simulator User Guide - Replay log.
For post-testing, FCS provides vital statistics on the number of messages processed including the maximum and minimum number sent, the average number sent per second, and latency percentiles.
With FCS, you can create test data sets tailored to specific sizes and content requirements. For additional information, please refer to Create messages from the template and Generate messages .
When executing data playback, FCS offers configurable options to generate sequence numbers, timestamps, and other FIX tags on the fly. For more detailed information, refer to Autoincrement tag values.
FCS is versatile, functioning either as a standalone stress tool with capabilities for automating load test scenarios or as a CLI that can incorporate into more complex, integrated testing environments.
Platforms
Operating System |
|
Please contact us at sales@b2bits.com to obtain the free trial version of FIX Client Simulator or for any additional information.