Algorithm 1 Longstaff Schwartz MC method to price American maximum call option on two stocks
8. Bringing Flexibility to FPGA Based Pricing Systems
8.2 Background and Related Work
The use of FPGAs for accelerating financial simulations has become attractive with the first available devices. Many papers are available that propose efficient random number generation methods and path generations [5, 13, 14, 18–20, 22]. Although most are focused on the Black-Scholes market model, there are a few publications on non-constant volatility models as well. Benkrid [20], Thomas, Tse, and Luk [18, 22] have thoroughly investigated the potentials of FPGAs and heterogeneous
platforms for the Generalized Autoregressive Conditional Heteroskedasticity (GARCH) setting in particular. Thomas has come up with a Domain-Specific Language (DSL) for reconfigurable path- based MC simulations in 2007 [18] that supports GARCH as well. It allows to describe various path generation mechanisms and payoffs and can generate software and hardware implementations. That way, Thomas’ DSL is similar to our proposed framework. However, it does neither incorporate MLMC simulations nor automatic HW/SW splitting.
For the Heston setting, Delivorias has demonstrated the enormous speedup potential of FPGAs for classical MC simulations compared to CPUs and GPUs in 2012 [6]. The results are included in
Chap. 3, but do neither include energy nor synthesis numbers.
De Schryver et al. have shown in 2011 that Xilinx Virtex-5 FPGAs can save around 60 % of energy compared to a Tesla C2050 GPU [15]. Sridharan et al. have extended this work to multi-asset options in 2012 [17], showing speedups up to 350 for one FPGA device compared to an SSE
reference model on a multi-core CPU. De Schryver et al. have enhanced their architecture further to support modern MLMC methods in 2013 [16]. Their architecture is the basis for our proposed implementation in this paper.
Our HyPER platform was first presented in [3]. A hardware prototype was exhibited at the ReConFig 2013 and the FPL 2014 conferences.
8.2.1 Heston Model
The Heston model is a mathematical model used to price products on the stock market [9].
Nowadays, it is widely used in the financial industry. One main reason is that the Heston model is complex enough to describe important market features, especially volatility clustering [10]. At the same time, closed-form solutions for simple products are available. This is crucial to enable calibrating the model against the market in realistic time.
In the Heston model the price and the volatility of an economic resource are modeled as stochastic differential equations:
(8.1) The price can reflect any economic resource like assets or indices as the S&P 500 or the Dow Jones Industrial Average. can also be the stock price of a company. The volatility is a measure for the observable fluctuations of the price . The fair price of a derivative today can be calculated as , where g is a corresponding discounted payoff function. Although closed-form solutions for simple payoffs like vanilla European call or put options exist, so-called exotic
derivatives like barrier, lookback, or Asian options must be priced with compute-intensive numerical methods in the Heston model [10]. A very common and universal choice are Monte Carlo (MC)
methods that we consider in this chapter.
8.2.2 Monte Carlo Methods for the Heston Model
Simulating the Heston model in Eq. (8.1) requires the application of an appropriate discretization scheme. In this work we have applied Euler discretization that has been shown to work well with in the MLMC Heston setting [11]. Discretizing Eq. (8.1) into k steps with equal step sizes leads
to the discrete Heston equations given by:
(8.2) While the initial asset price and r can be observed directly at the market, the five Heston Parameters κ, θ, σ, ϱ, and are obtained through calibration, compare Chaps. 2 and 10. and
are two independent normal distributed random variables with mean zero and variance one. With this method an approximated solution can be obtained by linearly interpolating .
The classic MC algorithm estimates the price of a European derivative with a final payoff function as the sample mean of simulated instances of the discounted payoff values , i.e.,
where are independent identically distributed copies of .
For the implementation, we have used the same algorithmic refinements as in the data path presented in [16] (antithetic variates, full truncation, log price simulation).
8.2.3 The Multilevel Monte Carlo Method
The MLMC method as proposed by Giles in 2008 uses different discretization levels within one MC simulation [8]. It is based on an iterative result refinement strategy, starting from low levels with coarse discretizations and adding corrections from simulations on higher levels with finer
discretizations. Figure 8.2 illustrates a continuous stock path with two different discretizations (4 and 8 steps). It is obvious that the computational effort required to compute one path increases for higher levels. For a predefined accuracy of the result, the MLMC method tries to balance the computational effort on all levels, therefore much more paths are computed on lower levels (with coarser
discretizations). Since for finer discretizations the variances decrease, it is sufficient to simulate fewer paths on higher levels. In total, this leads to an asymptotically lower computational effort for the complete simulation [8]. For our investigated financial product “European barrier options”, MLMC has explicitly shown to provide benefits also for practical constellations [11].
Fig. 8.2 MLMC approximates the real stockpath that has infinite information, with multiple levels of discretization. In this case the path
is approximated with four and eight discretization points
Let us formalize the idea. Without loss of generality one can assume that discretization points for a fixed M and some integer L are sufficient to obtain the desired accuracy. We define for l = l 0, …, L as the approximated solution of Eq. (8.1) with M l−1 discretization points. Then, in contrast to the classic MC estimate where the “single” approximation is used, one considers the sequence of approximation . With the telescoping sum
(8.3) the single expected value by expected values of differences. Each of the expectations on the right are called levels. The MLMC algorithm approximates each of these levels with independent classic MC algorithms. To get a convergent and efficient MLMC algorithm, it is important that the variances of the levels
decay to zero fast enough. One way to achieve fast enough convergence of V l is choose a suitable discretization scheme and to let and depend on the same Brownian path. At the end the MLMC algorithm aims at reducing the overall computational cost by optimally distributing the workload over all levels [8].
In our setup it has been explicitly shown that Euler discretization is sufficient [11]. Using the discretized Heston model, Eq. (8.2), the price P can be calculated according to Eq. (8.3) with L individual MC algorithms. To reach the target accuracy ɛ, N l paths are evaluated on each level l, given by:
(8.4) The level variances are estimated with initial N l = 104 samples. To let and depend on the same Brownian path, the same random numbers of the fine path are also used to approximate the coarse path, by adding up the M previous random numbers of the fine path.