What is the best programming language for algorithmic trading?


The application of programming language must consider many factors, such as strategic parameters, performance, modularity, development, flexibility and cost.

Once you want to implement a trading strategy, you need to build the whole algorithm trading system. This includes hardware selection, operating system and system resilience to rare and potentially catastrophic events.

Algorithmic trading system is a comprehensive structure. The factors that can be considered include: research tools, portfolio optimizer, risk manager, execution engine, trading strategy design, trading frequency and trading volume.

System requirements must be defined before deciding on the “best” language for an automated trading system. For example, is the system purely for execution? Does the system require a risk management or portfolio building module? Does the system need a high-performance backtester?

For most strategies, trading systems can be divided into two categories: research and signal generation.

1. Research
Evaluate strategic performance based on historical data. The process of evaluating the market strategy based on the previous trading data is called the back test. The data size and algorithm complexity will have a great impact on the computational strength of the backtester. CPU speed and concurrency are usually the limiting factors for the execution speed of optimization research.

2. Signal generation
Generate a set of trading signals from the algorithm and send such orders to the market, usually through brokerage companies. For some strategies, a high level of performance is required. I / O problems such as network bandwidth and delay are usually the limiting factors to optimize the execution system. Then the language selection of each component of the whole system may be very different.

The algorithm strategy developed by nonconvex technology has excellent performance in core indicators such as transaction success rate and transaction speed. At present, it is building a high-efficiency, low delay, highly reliable and full memory high-frequency trading platform based on rust ecology to meet the trading needs of customers in risk control, trading, data, system and so on.

If you want to pursue efficiency and perfection, you can try rust ~