Algorithmic trading system development cycle
Stage I. Analysis and Planning
1
Description of the Trading Idea
Formalized describing of the Trading System concept: type of the trading system, description of trading logic concept and signal logic model (algorithm), target markets and trading instruments, target investors.
Analysis of opportunities and requirements to get the trading system started: world global and market tendencies, market inefficiencies and and excess of liquidity, benchmarks of performance and risk metrics, availability of technologies, target investors profile, competition level.
Design of research, development, testing, optimization and trading plans.
Stage II. Resources Definition
Analysis of technical requirements: required execution metrics (intensity of trading, tick to trade latency), technology providers and trading venues (exchanges, brokers), integration scheme, hardware (servers), hosting, software (platforms).
2
Investments & Cost analysis
Analysis of investments, setup and maintenance costs required for trading system run and operate: min deposit, min ticket size, trading commission fees, cost of technical infrastructure (hardware, hosting, software), management cost.
3
Market Data specification
Analysis of composition, format, period, volume, sources and cost of data required for design of the logic's model and further backtesting and optimization of performance metrics of the trading system.
Stage II. Prototyping
Design of the Methodology which includes trading logic concept, target performance metrics, scheme (model) of signal logic, execution logic, risk management scheme, optimization scheme, etc.
Purchasing, loading, collecting of Market data, processing (synchronization, normalization, aggregation etc) of the Data, organization of Data storage.
Development of the Prototype of a signal and execution logic in prototyping environment: Excel, R, Python, Wealthlab, Amibroker, TradingView (depending on trading system type)
Stage III. Backtesting and optimization
1
Risk Control Model Design
Selection of risk control methods, position sizing, hedging schemes for the algorithmic trading system.
2
Backtesting & Optimization
Optimization and robust testing of trading system's parameters to get stable target performance metrics of the trading system.
Determine of fitness functions, conditions and parameters, selection of optimization method, setup of insample and outsample periods for initial data.
Stage IV. Implementation
Setup of trading infrastructure due to the technical requirements: hardware, hosting, trading and risk management software, integration to venues, performance testing, technical reporting.
Programming of signal and execution logic due to designed Prototype and selected trading software (Integrated script of the platform (MQL, Easylanguage etc) or programming language (Python, C#, C++ etc), design of technical documentation.
Disign of archtecture of the algorithmic trading system, definition of all architectural modules along with its relations and data flow scheme including external and third party modules to be used
Stage IV. Integration and Testing
1
Implementartion & Integration
Setup of trading infrastructure due to the technical requirements: hardware, hosting, trading and risk management software, integration to venues, performance testing, technical reporting.
Programming of signal and execution logic due to designed Prototype and selected trading software (Integrated script of the platform (MQL, Easylanguage etc) or programming language (Python, C#, C++ etc), design of technical documentation.
Delivery of the infrastructure (hardware, hosting and software) to end users (quantitative analysts, traders and risk managers), providing with user documentation.
Stage V. Operating and Maintenance
Operating the trading sytem due to the Trading plan and Risk model: raising of ticket size to scheduled one, optimization of risk and execution schemes, design of portfolios of trading systems
System run in live mode, collecting of trading statistics, final comparison with performance and execution metrics got at the Backtesting stage, technical assistance
Consequently testing of the trading system in demo, paper and live regimes to compare actual metrics with Backtesting benchmark to make sure the system is ready for production