In 2008, TickZoom began building a software framework for automated trading because TickZoom saw a need for capabilities and performance of institutional trading software but with greater reliability and more affordable prices for medium and smaller size trading firms.
Initial Prototype and Early Development
After the initial prototype of the software in early 2009, several trading firms were impressed with the performance began to fund further development. They needed features added to the framework such as multi-symbol support and portfolio trading.
So, a team began full time development on the framework in early 2009. This team included TickZoom plus other developers paid by clients. So many capabilities were added since the early prototype including multi-symbol support and portfolio management.
Battle Testing In Real Time and Live Trading
Later, when the team began testing the system for trading real time, it encountered numerous unforeseen challenges. This is because the TickZoom clients have the goal of highly stable, reliable automated trading with zero (or at least very minimal) manual intervention required.
So the team developed solutions to address numerous fault conditions that arrive during live, automated trading. Those faults include loss of connectivity, data quality issues, order flow errors like rejected orders, too late to cancel, partial fills, switching between live and simulated trading, and broker server temporary outages or errors.
Development of High Speed, Low Latency Kernel
Also it required robust technology to solve needs in the framework itself to provide low latency data and order handling across many symbols. To achieve the lowest possible latency TickZoom redesigned to remove threading offered by the operating systems to user-mode scheduling instead. TickZoom also added components to eliminate all data sharing between cores of a CPU and thereby eliminate the need for synchronization locks entirely.
As part of this, TickZoom implemented proprietary, high-speed TCP/IP and interprocess communication and memory management components. All these were built and tested with extremely stringent speed and low latency specifications. This also required disabling the garbage collection in the .Net framework in favor or platform facilities that work from a design of “memory re-use” rather then “garbage collection” for exceptionally improved performance.
Current Status of TickZoom Software and Services
Accomplishing the entire development took numerous “person years” of effort but ultimately culminated in a highly stable and reliable framework for real time trading plus high speed data processing for historical testing and optimizing for bar or tick data.
As of the 4th quarter 2012, the clients of TickZoom declared it “finished” meaning that the framework has the performance, stability and reliability that they require plus their most needed capabilities for automated, intraday trading of a portfolio of multiple symbols.
So starting in 2013, TickZoom began to serve additional clients by customizing and enhancing the framework to their needs.