The FIXEdge server accompanied by Pre-Trade Risk module allows combining the message routing and transformation functionality with a check of pre-trade risk rules. The diagram below represents the typical use case of routing messages from a trading application to an exchange via a FIX server:
Workflow description
- Client submits orders, cancellations, and modifications to FIXEdge via the FIX protocol or other available integration interfaces. The target exchange can be specified by clients or determined by FIXEdge according to routing rules (configured or scripted).
- Before sending any message to an exchange, FIXEdge forwards it to the Pre-Trade Risk Check module for risk control. If the order passes risk checks, it is forwarded to the destination exchange through the same FIXEdge instance (or through another FIXEdge instance, if a separate, exchange-faced instance of FIXEdge is used). Orders are sent to exchanges over FIX or supported proprietary protocols.
- Orders that have not passed the risk checks are rejected back to clients through FIXEdge. When a user is about to reach (reaches) her/his limits, corresponding alerts are shown in the Monitoring GUI.
- The Pre-Trade Risk Check module performs validation against pre-configured set of rules. Parameters for risk checks (limits) are set via the Configuration UI and are stored in a plain text file.
- Checks requiring market data (prices) take it from the file. Data in the file can be populated and updated at the start of the day and intraday by external process.