Ordering – make sure you are understood correctly
Last, but by far not least, your trading application will have an ordering module. This module performs the following functions:
- It maintains the connection to the execution server keeping it alive.
- It transforms trading signals passed by the risk management module into actual orders – using FIX or any proprietary API.
- It handles all types of responses from the broker or trading venue. These responses range from just OK to partial fills and rejects.
- It decides what to do in cases where your order was rejected or filled partially.
- It resubmits orders, full or in parts, in case it is favored by the trading logic.
You may have noticed that one of the responsibilities of the ordering module is maintaining connections – quite like the data handling module. Yes, there’s no mistake here, it is absolutely normal that a trading app uses different connections for data and for orders....