xVA Neural Net Engine - Machine Learning Accelerated xVA Simulations
By Anup Aryan
At IHS Markit, we are continually seeking ways to accelerate xVA computations and deliver xVA valuations and sensitivities which meet and exceed the ever-growing challenges of modern financial risk pricing. In recent years, neural networks and machine learning have revolutionized a wide array of computationally intensive modelling tasks, from self-driving cars to speech recognition, all while delivering exceptional prediction performance. Inspired by these recent advances, we have applied machine learning techniques to xVAs to address some of the toughest modelling and performance challenges in financial markets to date. The result is the xVA Neural Net Engine, a high speed xVA pricer based on neural net modelling and accelerated GPU computing, which delivers accurate xVA valuations many orders of magnitude faster than traditional methods.
The xVAs
Credit, funding and capital valuation adjustments, collectively known as the xVAs, are costs which banks face when entering derivative transactions or managing existing positions. Standard xVAs include Credit Valuation Adjustment (CVA) and Funding Valuation Adjustment (FVA). The lifetime cost of margin funding, or Margin Valuation Adjustment (MVA), has come into focus as markets and regulations have moved towards requiring initial margin (IM).
The challenge that banks face, and have faced for many years, is
that the calculation of the xVAs is a computationally demanding
task as it requires a Monte Carlo simulation to project future
values of the portfolio. This can be very computationally expensive
for a large portfolio or for portfolios containing exotic trades
requiring numerical methods for pricing. Compounding the
computational expense is the fact that traders need market
sensitivities of these xVAs in order to properly hedge the bank's
exposure. If a bump and revalue approach is used for sensitivities
these Monte Carlo simulations need to be run hundreds of times to
calculate all the required sensitivities.
Pricing MVA is particularly challenging when using the ISDA SIMM
approach to compute the initial margin. SIMM is based on the
portfolio sensitivities, so to project IM to future time steps we
must project portfolio sensitivities into the future within the
Monte Carlo simulation. This is an order of magnitude increase in
the number of valuations required from the pricing models. As MVA
costs become a significant contributor to xVAs there may be a need
to compute MVA sensitivities to explain the movements in the MVA
costs, and possibly hedge the fluctuations in these costs. This
would lead to a sensitivities of sensitivities situation and the
corresponding compounding computational challenges. It is very
difficult to implement this level of computation using traditional
modelling methods.
Current state of the art in the industry usually involves invoking
large distributed computing hardware stacks running for many hours
to complete all the calculations required for each day. While the
hardware stacks are quite powerful, there is still often a need for
approximations or simplified product pricing models to compute the
xVAs. The computational expense usually means these measures are
computed just once a day, whereas the ability to rapidly compute
them on demand for deal time decision making would be ideal for the
industry.
xVA and AI
Portfolio xVA computation can be broken down into three broad
steps: trade valuation, aggregation and risk measure calculation.
In the computation xVAs, the costliest component is the valuation
of trades on future Monte Carlo scenarios. It is this step we seek
to accelerate. In our approach, we train neural networks (NN) to
learn the pricing functions. The trained neural nets are then used
as a replacement to the original pricing model. In this approach,
instrument prices are computed as a forward pass, or inference, of
the network which can be computed very quicky on accelerated
hardware.
Neural nets are an excellent tool for replicating derivative
pricing functions. First, they excel at high dimensional problems
(large number of inputs and outputs), and second, they can support
nonlinear dependencies in the training data. Additionally, typical
application of NNs must contend with the issue of overfitting. In
this application, we are training to well defined mathematical
functions that produce no noise, as such overfitting is not a
concern, and high-quality replication of the pricing function can
be obtained with sufficient data and training.
For each product type we train a unique neural network. The inputs
to the NN are the values of all the relevant market data used to
price the product, time-to-maturity of the product, as well as
other product specific parameters such as strike price or tenor.
The output is the PV of the product. Training a deep neural network
for each product type allows us to fine tune the inputs and the
design of the neural network to obtain an accurate replication of
the pricing function with a modest amount of training.
Training neural networks also requires large amounts of training data which can be difficult to source in many applications. In our application, training data is generated by sampling input market data and running our in-house xVA pricing engine to produce forward valuations. The input data must be augmented to cover a wide range of input states. We use a combination of historical sampling and Monte Carlo simulation to generate the data. The result is a large training dataset with a wide coverage of the input/output space ready for NN training. It is important to note that data generation and model training can be expensive steps, however, they are one-time upfront costs and are not relevant to deal time xVA computation.
Once trained, the neural nets are deployed in pricing in the Neural Net xVA Engine. To compute portfolio xVAs, all future valuations are computed as an inference (or predict) of the neural net. Prices can then be aggregated and xVAs calculated. This approach is extremely performant as the inference is a highly vectorized computation run on the GPU. In fact, pricing, aggregation and xVA computation are all run on the GPU. This allows us to leverage the extreme compute capabilities of GPUs across all phases of xVA simulation.
While the compute performance is extreme, the accuracy is also very high. For example, we can compare expected exposures for a portfolio of vanilla and cross-currency swaps across four currencies. We show the expected positive and negative exposures below, comparing the valuation from the traditional style instruments (shown as Actual) against the Neural Net (NN) engine.
We can also drill down to scenario level exposures. Below, we show 50 scenario paths, once again comparing the valuation from the traditional style instruments against the Neural Net engine.
MVA
We take this approach one step further for MVA modelling. To price
the MVA we require not only the forward valuation but also forward
sensitivities along each Monte Carlo path. This is an order of
magnitude increase in computational complexity and data
requirements. To solve this problem, we extend the neural networks
to predict values and all sensitivities of the product. For
interest rate products this includes discounting, LIBOR (or RFR)
basis, cross-currency basis and foreign exchange risks. Using this
trained net, in a single forward pass we can simultaneously predict
the value and all sensitives, by timestep and path at the product
level. The trade level sensitivities can be aggregated and used to
calculate initial margin through ISDA SIMM and ultimately the MVA
funding cost.
Predicting the trade level sensitivities from the NN allows for a
massive acceleration of MVA as accurate derivatives are available
with limited additional cost. Our analysis has shown that NNs can
be trained to replicate various product types (both vanilla and
exotic) to a high degree of accuracy (errors in final xVAs are less
than the Monte Carlo noise of the simulations), see Aryan 2020 for
details on Bermudan Swaption modelling.
IHS Markit's xVA Neural Net Engine
IHS Markit is an industry leading vendor who believes it is the first to offer a turnkey software as a service solution utilizing Neural Nets for XVA pricing*. The Neural Net xVA Engine is available as a preview in our Risk Bureau product. The product allows for a live calculation of xVAs for user-entered portfolios of swaps and cross currency swaps. The interest rate and fx data is sourced daily along with a wide array of credit curves. The product allows users to compute fast xVAs run on a GPU cloud server based on the latest market conditions. To preview the product please click here.
Aryan 2020: https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3634059
*Updated from earlier version to note this is believed to be the first turnkey SaaS application using Neural Nets for xVA.