User Stories

Fulcrum Asset Management Develops Custom Quantitative Risk Management System


Develop an accurate, scalable, and fast risk engine for fund management


Use MATLAB to import financial data from multiple sources, develop sophisticated risk models, and run optimizations and scenarios analysis on multicore processors


  • Optimizations and calculations accelerated
  • Risk measurement accuracy improved
  • Integration with databases and datafeeds streamlined

“With MATLAB we developed a risk management system that helps us implement our strategies, hedge our risks more efficiently, and respond rapidly to changes in the market. MATLAB enables us to incorporate our ongoing research and the experience of our fund managers into the risk engine.”

Athanasios Bolmatis, Fulcrum Asset Management
Distribution of standardized and unstandardized simulated portfolio returns before and after hedging.

Fulcrum Asset Management LLP is an independent private partnership founded in 2004 by Gavyn Davies, former Chief Economist of Goldman Sachs, and Andrew Stevens, an investment manager at Goldman Sachs. Headquartered in London, the firm manages approximately $1.5 billion in absolute and relative return strategies.

Fulcrum considers risk management to be an integral part of portfolio management and has invested in building the infrastructure that ensures that its funds are closely monitored and abide by prespecified risk limits. Using MATLAB®, Fulcrum built a risk management system that dynamically measures risk and return, enabling portfolio managers—the Fulcrum Risk Committee and the Fulcrum Investment Committee—to respond rapidly to market events.

The MATLAB based system provides an accurate view of each fund’s current positions, calculates several risk measures (including volatility, value-at-risk, expected shortfall, drawdowns, and factor exposures), enables scenario testing to assess vulnerability to default scenarios, and helps fund managers select hedges.

“MATLAB makes it easy to access financial data from internal databases and external data service providers without building extra software,” says Fulcrum Director Athanasios Bolmatis. “With MATLAB we can process that data using risk management techniques developed by our own experts and scale the system as we add more funds.”

Fulcrum’s risk management application, shown stress testing a 1% event over 5 days on Russell 2000 Futures as well as the effects of adding an S&P 500 put option on the existing portfolio.


Fulcrum wanted an agile and scalable system for risk analysis. They considered packaged risk management solutions, but ultimately decided against them. “With most packages, model accuracy was insufficient, meaning that limits on value-at-risk, for example, would be incorrectly breached,” says Bolmatis. “Further, because this is a core system for us, we wanted to control the inputs into estimation and incorporate the extensive knowledge of Fulcrum experts into the system.”


Fulcrum used MATLAB to develop a custom risk management engine, integrate it with local databases, and accelerate risk calculations and optimizations via parallel computing.

Using Database Toolbox, Fulcrum analysts imported fund position data into MATLAB from their portfolio accounting system, which comprises local Microsoft® SQL Server® databases.

The fund position data was complemented by current and historical market data from Bloomberg, FactSet®, and other leading financial data providers, which the team obtained using Datafeed Toolbox.

Fulcrum implemented risk models in MATLAB and performed GARCH estimation, simulation, and forecasting using Econometrics Toolbox and Optimization Toolbox.

They assessed the efficacy of the system using historical market data and concluded that the models were able to provide accurate risk measures with statistically consistent VaR breaches.

Using Optimization Toolbox, the group built an application that identified the set of optimum options to minimize the expected shortfall of any portfolio under various constraints, such as maximum cost or allowance of shorting.

They accelerated optimizations and Monte Carlo simulations used in scenario analysis by using Parallel Computing Toolbox to run them on desktop computers equipped with multicore processors.

Fulcrum staff access the risk management system daily via a standalone application built using MATLAB Compiler. Even if they do not have MATLAB installed, they can use this application’s graphical interface to perform analysis and generate risk reports while making full use of their multicore desktops.

Some reports are exported at the push of a button from the risk management engine to Microsoft Excel®, enabling the Investment and Risk Committees, as well as other interested parties, to view risks and performance in a familiar spreadsheet format.


  • Optimizations and calculations accelerated. “Risk calculations that would take an hour with a spreadsheet-based system are completed in a few minutes with MATLAB,” says Bolmatis. “When we run the same computations on an eight-core system using Parallel Computing Toolbox, we get results in tens of seconds, enabling us to be more responsive to events in the market.”

  • Risk measurement accuracy improved. “Because we developed the risk management engine ourselves with MATLAB, we have complete control over the system and can continually improve it,” notes Bolmatis.

  • Integration with databases and datafeeds streamlined. “Instead of manually importing data into a spreadsheet, we now use MATLAB to automatically obtain up-to-date data from local databases and external datafeeds,” says Bolmatis. “Agility and scalability are key advantages of MATLAB.”