"Our team can be seen as something of a startup at the bank," says Vincent Gay-Para, Vice President in Risk Technology at Credit Suisse. "I guess it's because we're a small and dynamic team developing technology that's totally new and is a direct response to a critical business need." Vincent and his team of 10 or so core developers, are currently involved with Credit Suisse's Strategic Risk Programme (SRP), which is crafting technology solutions that enable the business to better understand risk across the bank. In response to this demand, Vincent and his team developed a suite of software tools to help analyse how individual and departmental risks interplay and contribute to the overall risk of the bank's activities. It is known as Risk Data Algebra (RDA), and it's an important innovation that has the power to revolutionise how Credit Suisse manages risk.
Why was RDA needed?
"A decade ago, traders used to use Excel to do their own data aggregation," explains Vincent. "It was on a very small scale but as the amounts of data they were dealing with grew in volume, Excel couldn't cope with it." In addition to increasing volumes of data, there were various business and operations risks surrounding the way traders aggregated their data using Excel.
"That's when all the banks rushed to move all their computations away from Excel systems on traders' desktops and onto databases or servers," explains Vincent. The idea was that by centralising the way traders (and the bank as a whole) calculated risk, it would provide a clearer and more accurate insight into the level of risk associated with the bank's activities.
"These solutions worked well," explains Vincent, "But now the size and scope of the data required has once again outgrown the capacities of the existing solutions. The amount of data that the bank has to handle is massive and it's growing exponentially. We're facing big data problems that aren't going away." In addition, the fallout after the financial crisis pushed risk management to the forefront, and increased the regulatory pressures on banks like Credit Suisse to provide transparent and detailed reporting.
Faced with the current challenges, Vincent and his team set about turning a business requirement into a real technology solution. The result was a script-based language, specific to risk data management, that in-house developers can use to build RDA-based risk management applications in a consistent manner.
The software allows large sets of streaming data to be combined into interactive live reports that can be presented to end-users (such as traders) in desktop GUIs or Excel, so that traders and risk managers can analyse potential earnings or losses. For example, if a company goes bankrupt the technology can assess the impact of this bankruptcy on positions Credit Suisse holds, and even try to predict whether or not it's likely to lead to another company going bankrupt and what the direct impact of that would be on the business.
The language of RDA
The key to RDA's strength is that it's a very high-level language. It makes use of generic database concepts, such as joins and pivots, but optimises such operators in a way that's specific to risk-related scenarios. For instance, market data and trade data, accessed from different partitions on different servers, can be joined together in one line of code. Says Vincent: "If you wrote that in Java, it would mean writing 10,000 lines of code. In this language we've developed, it takes just a few lines."
While it's very powerful, the use of generic operators means that RDA is extremely flexible, so developers can quickly and easily change the design of their systems. Vincent explains: "The algebraic operators are like building blocks. So you can take them apart and re-assemble them like Lego pieces."
Runtime innovations ensure that the system's considerable hardware resources are fully exploited. Where conventional "big data" systems may send off a computation to be crunched by a cloud of servers, RDA keeps entire datasets alive in memory. "Which means that we require a lot of memory," explains Vincent, adding that this is possible because the cost of memory is a lot less than it used to be.
Keeping data so highly available allows RDA to employ computational techniques such "delta processing". This means that if one element changes within a giant dataset, only the small, relevant parts of a calculation are re-computed on-the-fly, rather than the system stating again, as would conventionally would be the case. This feature reduces the response time to around 10 milliseconds.
The future of the project
The Strategic Risk Programme is still ongoing and RDA is a flexible and evolving technology. For Vincent, the dream is to turn RDA into a service for end users, rather than a tool for developers. Vincent adds: "Eventually, we want to allow traders and other end users to build their own report-producing systems, deploy them on demand, and then share this resource.
"One problem with the earlier shift to the server-side solutions was that traders lost access to lots of the features they were used to having in Excel." Vincent's team is now able to restore many of these functions to traders, while introducing never-before imagined speed and precision.
Why is data management such a big deal in banking and technology?
Following the financial crisis, the Dodd-Frank Act in the US and the Financial Services Act in the UK required banks to review and reform the way they calculate and manage risk. Banks usually calculate risk by analysing market data (from exchanges), trading data (buying or selling being conducted by or through the bank) or reference data (employee information like holiday calendars). However, this data can often be hard to correctly combine and interpret, and the ever-growing amount of data means that banks must perform increasingly complex calculations.
As a result, risk management is a crucial and innovative part of technology in banking, and technologists are at the forefront of risk management solutions. As a graduate at Credit Suisse, you may well be working on a project that is in some way connected to this important area.