FIX Simulator On-Prem
Advance your trading system's testing capabilities with our FIX Server Simulator
Key Features
Customizable Responses
FIX Simulator can send accepts, rejects, fills and done for day messages depending on the order id pattern.
Extensive FIX Message Support
FIX Simulator supports both New Order Single and New Order Lists messages, as well as Execution Reports and Allocation Reports for complete order processing.
CI/CD Integration Testing
It is possible to integrate FIX Simulator into the CI/CD pipeline together with FIX Client to ensure the trades are executed as expected.
Scenarios
Developer Machine
In this scenario, developer runs both FIX Client and FIX Simulator on their own machine, allowing for a quick development and testing of the new features, e.g. in FIX Client.
To send the orders through FIX Client, a custom UI tool can be used or they can be inserted directly into the local database.
Integration Testing
In integration testing scenario, FIX Simulator is deployed to a dedicated testing machine, where it runs alongside FIX Client to process orders as they arrive.
The testing is usually executed as follows (also see diagram below):
- A dedicated database is pre-filled with the necessary trading data for a given number of days. This data can contain either high-level information like the signal for each product on each day, or specific number of lots to place on that day.
- An orchestrator program takes care of running the whole integration testing procedure, spinning up FIX Client, FIX Simulator and other necessary programs in the right order.
- Orchestrator program has a loop over the number of days in the database, and on each day it reads the signal, generates orders, spins up FIX Client and FIX Simulator with a given date, and waits for them to execute the orders.
- In the end of the process, the newly generated database with executed orders is compared against a gold database to ensure there are no differences and the changes can be released to production.
Features
Feature | Details |
---|---|
Order Types | NewOrderSingle NewOrderList |
Order Entities | AllocationReport |
Execution Report Types | ACCEPT CANCEL REJECT FILL PARTIAL_FILL DONE_FOR_DAY |
Order Options | Can set specific execution time, FIX Simulator uses built-in storage to maintain state. |
Instrument Pricing | Can connect to the instrument pricing database to find trade prices. |
Other | Can specify custom datetime for CI/CD such that all reports will use it as a timestamp, otherwise real-time timestamp is used. |
Frequently Asked Questions
How easy is it to integrate FIX Simulator into our existing system?
FIX Simulator is designed for easy integration with minimal configuration, and we would be happy to assist you in setup.
Can I customize the response scenarios further?
Our simulator offers extensive customization options to fit your specific testing needs.
If you require further features, we can also develop them on contractual basis.