Trient Develops Financial Analytics Platform to Support Its Investment Team
- Manual monthly calculations automated and run daily
- Calculation speeds increased tenfold with multicore processing
- New asset class screening models implemented in hours
“Object-oriented programming in MATLAB enabled us to write less error-prone code, define reusable interfaces, and make rapid updates. As a result, we can give our investors better insight into how we manage our funds and how we look at markets.”Ariel Fischer, Trient Asset Management
Based in Oslo, Norway, Trient Asset Management is an independent and fundamentally driven investment company providing fund and portfolio management. Their Trient Global Macro fund seeks to generate long-term absolute returns by applying macroeconomic and fundamental analysis to identify investment opportunities in both developed and emerging markets. In addition to the Global Macro fund, the company currently manages two UCITS funds investing in equities and fixed-income instruments.
To support the investment team, Trient developed a data analytics platform using MATLAB®.
“Because Trient invests globally, our investment universe is huge,” says Ariel Fischer, head of Systems Development and Infrastructure at Trient. “MATLAB enabled us to develop advanced analytic capabilities and a solid infrastructure for efficiently assembling, maintaining, and performing calculations on large data sets.”
Each day, Trient traverses and analyzes many gigabytes of historical data while continuing to clean and aggregate new data arriving from markets around the world. In the past, Trient analysts used Microsoft® Excel® for data management and analysis, but spreadsheets made it difficult to handle high data volume and velocity.
Spreadsheets had additional drawbacks. First, individual analysts encountered difficulties sharing their work with the wider team. Second, spreadsheets restricted the scope of the analyses they could perform. Third, making even a small change, such as adding a single new asset to be tracked, required hours of manual adjustments. As a result, highly skilled analysts spent too much time on basic tasks such as moving data and recalculating spreadsheets.
Trient wanted to develop an analytics platform to support efficient processing of large data sets.
Trient replaced the spreadsheets with a financial analytics platform developed using MATLAB.
After architecting and setting up a SQL Server® database for financial data, Fischer and the team began developing the data access layer of the analytics platform by writing MATLAB functions to access the financial data using Database Toolbox™.
They added functionality to retrieve market data from several market data providers using Datafeed Toolbox™. Working in MATLAB with Financial Toolbox™, they wrote data cleaning routines that identify outliers, perform linear interpolation for missing values, and normalize dates.
Fischer and the team completed the data access layer with functions that enhance the raw data series (for example, via filtering or calculating window averages), and then store these derived data series in the database.
Using the object-oriented programming capabilities of the MATLAB language, Fischer developed components with defined interfaces to the analytics layer, facilitating consistent use of the components across Trient.
To build the analytics layer, Fischer developed a screening framework with MATLAB and Statistics and Machine Learning Toolbox™. This layer uses fundamental market data and examines various factors to identify cross-region variations, for example as a function of industry and market capitalization.
For example, the framework for equities examines various fundamental data types and looks for differences between the fundamental value and the market value. For this layer, Fischer and the team used Financial Instruments Toolbox™ and Optimization Toolbox™.
Fischer used Econometrics Toolbox™ to run Monte Carlo simulations and generate forecast distributions of time-series models.
The data cleaning and screening calculation was accelerated by using Parallel Computing Toolbox™ and a multicore processor.
Trient analysts use the platform daily to generate reports and charts, perform studies, and run analyses that support investment decisions.
Manual monthly calculations automated and run daily. “When we used spreadsheets, the many manual steps took so much time that we only ran calculations on a subset of data once a month,” says Fischer. “With our MATLAB based platform, we now run our automated analysis daily on many gigabytes of data.”
Calculation speeds increased tenfold with multicore processing. “We dramatically reduced calculation times using Parallel Computing Toolbox,” notes Fischer. “The speed increased almost linearly with the number of cores; our calculations are now about 10 times faster when we run them on a 12-core processor.”
New asset class screening models implemented in hours. “With object-oriented programming in MATLAB, we created a framework and components that are easily reused, even by analysts who are not expert programmers,” says Fischer. “After setting up the initial framework and implementing the first screening model, it took only a few hours to implement an existing model by reusing the framework in MATLAB.”