Casos de usuarios

UniCredit Bank Austria Develops and Rapidly Deploys a Consistent, Enterprise-Wide Market Data Engine


Improve risk management operations throughout a multinational financial institution


Use MATLAB and MATLAB Compiler SDK to build and rapidly deploy a consistent enterprise-wide data warehouse with easily accessible derived market data


  • Development time reduced by 50 percent
  • Risk management improved
  • Operational, audit, and maintenance costs reduced

“Many financial institutions are struggling to adapt their models to the volatility and limited availability of credit in today’s markets. Using MathWorks products, we can develop and deploy models in response to new market conditions in days or weeks, instead of months.”

Peter W. Schweighofer, UniCredit Bank Austria
Zero-coupon yield curve plot in UniCredit Bank Austria’s UMD environment.

To effectively manage risk in volatile global markets, financial institutions must rapidly adjust their internal financial models. Making these adjustments is impossible without a consistent market and static data repository across all asset classes and a streamlined process for computing derived and synthetic market data.

UniCredit Bank Austria AG used MathWorks tools to develop its market data calculation engine, which computes the near-time and end-of-day derived market data required for market risk and performance management. The MATLAB® based engine is integrated in the bank’s Unified Market Data (UMD) data warehouse and is accessible via the bank’s existing J2EE Web architecture.

“Knowledge of the prevailing market conditions, the models, and the algorithms resides in the business division,” explains Peter W. Schweighofer, senior market risk manager at UniCredit Bank Austria. “With MathWorks tools, the risk managers can develop algorithms and financial models, and the IT division can quickly deploy the applications. Because we can implement changes in our models and get them into production quickly, we can rapidly respond to new market data and conditions.”


Business units within the bank had stored different versions of the same market data and calculated derived data using disparate systems. This approach added maintenance overhead, and the inconsistency in data and processing algorithms contributed to high operational risk. “We needed enterprise-wide data management to ensure consistent results and sound consolidated financial statements group-wide,” says Schweighofer.

The bank also needed to construct a processing engine for cleaning and computing derived data. They wanted to give access to that data to groups concerned with market, operational, and counterparty risk management; asset-liability management; market conformity checking; and capital adequacy. Finally, to give subsidiaries across Europe access, UniCredit Bank Austria wanted to develop a J2EE framework that accessed the market data engine.


UniCredit Bank Austria used MATLAB and MATLAB Compiler SDK™ to develop UMD and integrate it into the bank’s Web infrastructure. They chose these tools because they wanted to build a proprietary system, were familiar with the risk profile and the revaluation functions of the traded products, and used MathWorks software elsewhere in the bank.

A key first step was cleaning the real-time tick data—up to 100 million records for more than 20,000 financial instruments received daily from various market data vendors. Using MATLAB, the business team developed algorithms that identify abnormalities and missing data and can automatically correct them by interpolating or using the last known good data.

They also developed algorithms for calculating on-the-fly and end-of-day derived market data including corporate and treasury credit spread curves, volatility surfaces, inflation swaps, and zero-coupon yield curves.

With Optimization Toolbox™, the team calibrated their models by minimizing the error function between the results predicted by the model and the actual results observed in the market.

The team used Financial Instruments Toolbox™ to calculate bond yields and Financial Toolbox™ to perform forward rate and short-term interest rate future strip calculations.

The results were backtested and verified against historical market data and existing algorithms already in use at the bank.

Once the business team verified the algorithms, the IT team used MATLAB Compiler SDK to create MATLAB based Java® classes from the MATLAB programs. They then deployed these classes to an application server, and the integrated system was tested for enterprise deployment.

UMD is currently accessed by hundreds of financial managers and traders throughout the bank for market conformity, risk analysis, reporting, and trading.


  • Development time reduced by 50 percent. “With MATLAB, we can focus on business logic instead of implementation details,” says Schweighofer. “We can deploy an algorithm in a Java environment the same day, without any additional coding. This approach enabled us to cut our development time in half, if not more.”

  • Risk management improved. “UMD is now the back end for all trading activities related to risk management operations throughout UniCredit Bank Austria,” says Schweighofer. “It’s a scalable data engine that we can adapt rapidly to volatility in market conditions.” The integrated system reinforces enterprise-wide data consistency and reliability, a requirement of local and international regulations.

  • Operational, audit, and maintenance costs reduced. “By eliminating redundant systems and improving data quality and traceability, we have improved audit compliance, which further lowers costs,” says Schweighofer. “Time spent per day on manual data management tasks was reduced from several hours to less than 30 minutes, enabling our employees to focus on more strategic activities.”