Typical components of an algorithmic trading platform:
- ticker plant
- algo-hosting servers
- risk management server
- controlling console(s)
- FIX gateways
Presently there are three major approaches/technological solutitions with respect to design of high-frequency algorithmic trading systems: pure software (traditional) systems, hardware-based systems (financial appliances) and hybrid solutions where system functionality is distributed between software and specialized hardware component(s).
There is little doubt that hardware-based and hybrid systems are more efficient compare to traditional pure software-based solutions. However, typically they are less flexible and usually cost of these systems is much higher than traditional software-based solutions.
On other hand, growing popularity and accessibily of high-perfromance multi-core computers coupled with deployement of InfiniBand fabric for distributed high-performance computing, using OpenCL to offload heavy calculations to GPUs allows for efficient implementation of software-only systems that be extremely competitive.