Testing and Optimizing Trading Speed Using Lower-Level Embedding on Time Series Analysis Functions
Session Number
F05
Advisor(s)
Maxwell Rhee, TransMarket Group
Location
A-135
Start Date
28-4-2016 1:35 PM
End Date
28-4-2016 2:00 PM
Abstract
Lower-level languages perform computations much faster than higher- level languages, because they use code closer to machine code, whereas the latter abstracts away that convoluted code for read- and writeability. Novice programmers with small data can take this for granted, but trading firms that analyze huge amounts and know that speed is money can not. The goal of this project is to evaluate the run-time reduction effect of C embedding on Python and R. To do this, four computationally heavy time series manipulation functions were chosen to implement in R and Python, both pure and embedded. After writing and running the code that implements the functions, C embedding significantly improved computational speed in both languages in different ratios, dependent on the algorithmic complexity of the code. This supports the traditional implementation by trading firms of lower-level embedding and compromise of readability for speed, even as all language speeds improve with regular updates.
Testing and Optimizing Trading Speed Using Lower-Level Embedding on Time Series Analysis Functions
A-135
Lower-level languages perform computations much faster than higher- level languages, because they use code closer to machine code, whereas the latter abstracts away that convoluted code for read- and writeability. Novice programmers with small data can take this for granted, but trading firms that analyze huge amounts and know that speed is money can not. The goal of this project is to evaluate the run-time reduction effect of C embedding on Python and R. To do this, four computationally heavy time series manipulation functions were chosen to implement in R and Python, both pure and embedded. After writing and running the code that implements the functions, C embedding significantly improved computational speed in both languages in different ratios, dependent on the algorithmic complexity of the code. This supports the traditional implementation by trading firms of lower-level embedding and compromise of readability for speed, even as all language speeds improve with regular updates.