Skip to content

Backtesting Speed

2 messages · Wojciechowski, William, Adrian Trapletti

#
Hi,

What type of algorithms/computations would you
program in C/C++?

Thanks,

William C. Wojciechowski
Koch Quantitative Trading
20 East Greenway Plaza
Houston, TX 77046
713-544-5093
william.wojciechowski at kochind.com

-----

The companies I (used to) work for use intraday data, sometimes
tick-by-tick data, to backtest trading strategies. In that case speed is
a very important issue and interpreted language environments like R are
slow in comparison to compiled language environments like C/C++. 

Generic environment for quant trading might look like the following: 

time critical computations like backtesting and realtime computing in
C/C++, client/server, GUI etc. in Java, and statistical analysis and
diagnostics, prototyping etc. in Matlab or R or similar.

Regards

Adrian
#
Wojciechowski, William wrote:

            
The only general comment I can make about your question is: You have to 
find out where speed really matters for your application. As already 
mentioned here on the list, typically a very small portion of the code 
uses almost all cpu and/or I/O time. And improving this code or porting 
it to a faster environment helps. However, sometimes it is better to 
implement the whole application in a faster and maybe more primitive 
environment as switching between high-level and low-level environments 
is too expensive (like calling C/C++ code from R). And sometimes the 
"cheapest" way is just to improve your hardware, e.g. if I/O behaviour 
is really important, then a faster hardware solution is maybe far 
cheaper than having a software engineer redesign your whole application.

Best regards
Adrian