Quasi-Monte Carlo for Finance Peter Kritzer Johann Radon Institute for Computational and Applied Mathematics (RICAM) Austrian Academy of Sciences Linz, Austria NCTS, Taipei, November 2016 Peter Kritzer Quasi-Monte Carlo for Finance 1
1 Introduction 2 Options 3 Brownian paths 4 Non-uniform random number generation using QMC 5 Generation of Brownian paths 6 Formulation as an integration problem 7 Challenges using QMC 8 Concluding remarks Peter Kritzer Quasi-Monte Carlo for Finance 2
Introduction Peter Kritzer Quasi-Monte Carlo for Finance 3
Suppose we would like to valuate a complicated financial product whose payoff depends on a stochastic process (S t ) t 0 describing the price of an asset S at time t. (1) How can we do this? (2) Where does QMC come into play? Peter Kritzer Quasi-Monte Carlo for Finance 4
How? (1) Find a suitable model for the (stochastic) price process S t. (2) In many cases, this will involve a stochastic differential equation and Brownian motion. (3) Find an approximation Ŝt to S t. (4) Use a suitable method to simulate Brownian motion. (4) Use a suitable method to simulate Brownian motion. Where? Here! Peter Kritzer Quasi-Monte Carlo for Finance 5
Options Peter Kritzer Quasi-Monte Carlo for Finance 6
What is an option? Simple definition: a contract that gives one party the right to buy/sell an asset at some point of time in the future at a previously fixed price. Simplest example: European call option: Gives one party the right to buy an asset (e.g. a stock) at a future point of time T > 0 at price K. T is called the maturity of the option, K the strike price, the stock the underlying. Value of European call: max(s T K, 0). Peter Kritzer Quasi-Monte Carlo for Finance 7
A more sophisticated example: Suppose the stock price follows a stochastic process (S t ) t 0. Consider an option that pays ( ) 1 d max S tk K, 0. d k=1 at time T, where S tk is the price of the stock at time t k, k = 1,..., d. This option is called fixed strike Asian call option. What is the value of this option at time 0 (i.e., right now)? The answer is not straightforward, because it depends on the whole path of S t in the interval [0, T ]. We need a model to simulate the stochastic process (S t ) t 0. Peter Kritzer Quasi-Monte Carlo for Finance 8
Brownian paths Peter Kritzer Quasi-Monte Carlo for Finance 9
There are different kinds of models to describe stochastic processes such as the stock price (S t ) t 0. Depending on the context, they might be simple or more complicated. Basically all models involve Brownian motion. Many models involve stochastic differential equations (SDEs). Here we use a method stemming from the Heston model. Peter Kritzer Quasi-Monte Carlo for Finance 10
Brownian motion: Stochastic process in continuous time on a probability space (Ω, F, P) satisfying: (1) W 0 = 0 almost surely. (2) For any t 1, t 2 0 the random variables W t2 W t1 and W t2 t 1 have the same distribution. (3) For any t 1,..., t d with t 0 := 0 < t 1 < t 2 < < t d the random variables W t1 W t0,..., W td W td 1 are independent. (4) 1/tW t is a standard normal random variable for every t > 0. (5) Fore each ω Ω the mapping t W t (ω) is continuous. Peter Kritzer Quasi-Monte Carlo for Finance 11
The Heston model relies on SDEs that can be solved approximately (only a few ideas here, no details). We first need to discretize the time interval [0, T ]. For the sake of simplicity, assume equal-length time intervals: Let h = T d. Discretize [0, T ] by time nodes 0, h, 2h,..., dh = T. We could also discretize such that time intervals have different length, but for the moment use the simpler version. Peter Kritzer Quasi-Monte Carlo for Finance 12
Then we estimate the payoff function of the option, ( ) 1 d max S kh K, 0. d k=1 We approximate the option price by estimating the prices S kh, max ( 1 d ) d Ŝ kh K, 0. k=1 The Ŝkh depend on the increments of a Brownian motion, W k+1 = W (k+1)h W kh. Peter Kritzer Quasi-Monte Carlo for Finance 13
Need to simulate a discrete Brownian paths, where h = T /d. How can we do this? (W h, W 2h,..., W T ). First question: How to generate non-uniform (e.g., normally distributed) random numbers? Peter Kritzer Quasi-Monte Carlo for Finance 14
Non-uniform random number generation using QMC Peter Kritzer Quasi-Monte Carlo for Finance 15
The inversion method: Suppose that F : R [0, 1] is the cumulative distribution function (CDF) of a real random variable X, i.e., F(x) = P[X x]. Assume F is invertible, i.e., G : (0, 1) R such that G(F (x)) = x for x R and F(G(u)) = u for u (0, 1). Let U be uniformly distributed on (0, 1). Then Y = G(U) has the same distribution as X. Peter Kritzer Quasi-Monte Carlo for Finance 16
Instead of a random U: Use elements from a quasi-random sequence in (0, 1)! Sequences of node sets from QMC methods are usually evenly distributed quasi-random sequences in (0, 1). Examples: van der Corput sequence, Kronecker sequence, etc. Peter Kritzer Quasi-Monte Carlo for Finance 17
We can proceed analogously for sampling from multivariate distributions if the components are independent (e.g., standard normal vectors). Again, take node sets from multivariate QMC methods (Halton sequence, Sobol sequence, Niederreiter sequence, etc.). Slight drawback: There is no closed elementary formula for the inverse CDF of a normal distribution. However, there are suitable implementations in most software packages, and actually we only need to know how to handle the standard normal CDF. Alternative methods: importance sampling, acceptance rejection. Peter Kritzer Quasi-Monte Carlo for Finance 18
Generation of Brownian paths Peter Kritzer Quasi-Monte Carlo for Finance 19
Recall our original goal to generate discrete Brownian paths, (W h, W 2h,..., W T ). where h = T /d. More generally, how to generate a Brownian path (W t1,..., W td ), with 0 < t 1 < < t d? Easy to check: (W t1,..., W td ) is a Gaussian vector with mean zero and covariance matrix t 1 t 1 t 1... t 1 t 1 t 2 t 2... t 2 (min(t j, t k )) d j,k=1 = t 1 t 2 t 3... t 3........ t 1 t 2 t 3... t d Peter Kritzer Quasi-Monte Carlo for Finance 20
The forward method: Suppose we are given a standard normal vector X = (X 1,..., X d ). Calculate the discrete Brownian path (W t1,..., W td ) as follows. Set W t1 = t 1 X 1, and W tk+1 = W tk + t k+1 t k X k+1. The vector (W t1,..., W td ) has the required covariance matrix, which can be checked by using E[X j X k ] = δ j,k. Advantage: generation of a path requires generation of (X 1,..., X d ), d multiplications, and d 1 additions. Peter Kritzer Quasi-Monte Carlo for Finance 21
The Brownian bridge construction: Let π be a permutation of the set {1,..., d}. Assume we want to compute the W ti in the order W tπ(1),..., W tπ(d). Brownian bridge construction makes this possible. Special case: π = id: forward construction. Peter Kritzer Quasi-Monte Carlo for Finance 22
Two key ideas underlying BB construction: Lemma Let W be a Brownian motion and let t 1 < t 2 < t 3. Then the conditional distribution of W t2 given W t1 and W t3 is N(µ, σ 2 ) with µ = t 3 t 2 t 3 t 1 W t1 + t 2 t 1 t 3 t 1 W t3 and σ 2 = (t 3 t 2 )(t 2 t 1 ) t 3 t 1. Furthermore: For computing W tπ(j), we only need knowledge of the two elements next to the right and the left, respectively. The covariance matrix is as before. Use of QMC: Use a cleverly chosen QMC sequence to determine π (e.g, van der Corput sequence). Then we can figure out beforehand which elements are next right and left for each W π(j). This can make the computation efficient. Peter Kritzer Quasi-Monte Carlo for Finance 23
The PCA construction: The covariance matrix of (W t1,..., W td ) can be written in the form VD 1/2 D 1/2 V 1, where D is a diagonal matrix with positive entries, and V is an orthogonal matrix, i.e., VV = V V = I. Let X be a d-dimensional standard normal vector. Then we can construct (W t1,..., W td ) by (W t1,..., W td ) = VDX. Peter Kritzer Quasi-Monte Carlo for Finance 24
The PCA construction principle can be extended: Due to the properties of D and V, we have VD 1/2 D 1/2 V 1 = (VD)(VD). Let Σ denote the covariance matrix of the W tj. Then the following lemma holds. Lemma Let A be any d d matrix with AA = Σ. Let X be a standard normal vector. Then Y = AX is a normal vector with covariance matrix Σ. Peter Kritzer Quasi-Monte Carlo for Finance 25
Recall: In our example, the goal was to generate where h = T /d. (W h, W 2h,..., W T ), Is evenly spaced discretization an advantage? Suppose we would like to generate (W 1/d, W 2/d,..., W d/d ), i.e., discretization with step-size 1/d, where we normed (w.l.o.g.) T := 1. Peter Kritzer Quasi-Monte Carlo for Finance 26
In this setting, the covariance matrix is 1 1 1... 1 D := 1 1 2 2... 2 1 2 3... 3. d....... 1 2 3... d Then we can easily find the Cholesky decomposition of D, D = SS, with 1 0 0... 0 S := 1 1 1 0... 0 1 1 1... 0. d....... 1 1 1... 1 Peter Kritzer Quasi-Monte Carlo for Finance 27
Becoming even more general: Lemma Let A be any d d matrix with AA = D. Then there exists an orthogonal d d matrix V such that A = SV, i.e. (SV )(SV ) = D. For a standard normal X, W = AX is a Brownian path with discretization 1/d, 2/d,..., d/d. Conversely, given any orthogonal matrix V, the matrix Z := SV satisfies ZZ = D. Hence, for evenly spaced discretization, many methods can be expressed using orthogonal matrices. Peter Kritzer Quasi-Monte Carlo for Finance 28
Examples: For the forward construction, the corresponding orthogonal matrix is the identity matrix. Cleverly choosing the orthogonal transform can be very helpful: e.g., we can reduce the computation cost of the PCA construction (from O(d 2 ) to O(d log d)). Peter Kritzer Quasi-Monte Carlo for Finance 29
One more advantage: In the Asian option example, actually only the increments of the Brownian path are relevant. Observe that if then (W 1/d, W 2/d,..., W d/d ) = SVX (W 1/d, W 2/d W 1/d,..., W d/d W (d 1)/d ) = VX. Peter Kritzer Quasi-Monte Carlo for Finance 30
Formulation as an integration problem Peter Kritzer Quasi-Monte Carlo for Finance 31
How to view all of this as an integration problem? The exemplary problem was to compute the fair price P ( expected value) of the Asian option. We approximated the price process S (and thereby the price of P) by the solution of an SDE. This involved a time discretization using d steps. This corresponds to approximating E(P) by E(P D ), where E(P D ) = p(x)φ(x) dx R d where p is some complicated function of x R d and φ is the density of the standard normal distribution. φ comes into play because it occurs in the simulation of Brownian paths. Peter Kritzer Quasi-Monte Carlo for Finance 32
Using, e.g., the inversion method we sampled from the standard normal distribution. By this step, we more or less transform the previous integral back to the unit cube, i.e., E(P D ) = p(φ 1 (y)) dy, [0,1] d where Φ is the CDF of the standard normal distribution. Instead of computing E(P D ) precisely, we approximate it by using QMC, E(P D ) 1 N p(φ 1 (y N k )) k=1 for some QMC node set (e.g., low discrepancy sequence). This corresponds to using low discrepancy sequences in the inversion method. Peter Kritzer Quasi-Monte Carlo for Finance 33
Challenges using QMC Peter Kritzer Quasi-Monte Carlo for Finance 34
Challenge I: High dimensions: Integration problems arising from finance are frequently very high-dimensional. Theoretical error bounds for QMC are typically bad for high dimensions d. Still, the results using QMC for such problems can be quite good. This phenomenon can be explained by the lower effective dimension of the problem (Owen et al., Griebel, Kuo, Sloan,... ), or the introduction of coordinate weights (Sloan, Woźniakowski). Peter Kritzer Quasi-Monte Carlo for Finance 35
Challenge II: Mapping to the unit cube: Transforming into E(P D ) = p(x)φ(x) dx R d E(P D ) = p(φ 1 (y)) dy, [0,1] d is technically possible in many cases. However, the integrand p Φ 1 may become very hard to handle, even if p is nice. Peter Kritzer Quasi-Monte Carlo for Finance 36
E.g., the new integrand or its derivatives might be unbounded or very large near the boundary of the unit cube. Significant parts of QMC theory do not apply to such integrands. How to overcome this problem? Find assumptions on p and Φ that are practically justifiable and guarantee nice behavior of p Φ 1. Alternative: Come up with QMC theory that works on the whole space R d. No fully satisfying answers yet but much current research (see, e.g., Kuo, Nichols, Sloan, Wasilkowski, Waterhouse,... ). Peter Kritzer Quasi-Monte Carlo for Finance 37
Challenge III: Non-smooth functions: An even bigger problem: Sometimes, despite all efforts, the integrand is not in one of the common QMC function spaces. Simple example: payoff of a simple European call option: Payoff 60 50 40 30 20 10 20 40 60 80 100 120 S T The function does not satisfy the common smoothness assumptions necessary for QMC. Peter Kritzer Quasi-Monte Carlo for Finance 38
What can we do then? 1. Hope that we can by chance find a different approach that works (happens only sometimes, e.g. for European options the Black-Scholes formula). 2. Ignore the problem and apply QMC nevertheless. 3. Hope that the integrand has bounded variation, and apply the Koksma-Hlawka inequality: f (x) dx 1 N f (x k ) [0,1] N V HK (f )D N (x 1,..., x N ), s k=1 where D N (x 1,..., x N ) only depends on the choice of x 1,..., x N, and V HK (f ) is the variation of f in the sense of Hardy and Krause. If V HK (f ) <, then the integration error vanishes as N. Peter Kritzer Quasi-Monte Carlo for Finance 39
Further challenge popping up: for many, even nice, f, V HK (f ) =, or one cannot easily check. Recent research: Find other, easier to check kinds of variation and corresponding Koksma-Hlawka-type inequalities (recently Harman, Pausinger, Svane, Tichy,... ) Peter Kritzer Quasi-Monte Carlo for Finance 40
Challenge IV: Error estimates. Suppose we choose to apply QMC methods after all. How to find effective error estimates? Theoretical ones often not good enough. Randomize the QMC algorithm and apply it repeatedly. Statistics then helps us to find an estimator for the error. Peter Kritzer Quasi-Monte Carlo for Finance 41
Most common randomization method: Random shift: Given is a set of QMC integration nodes x 1,..., x N [0, 1) d. Choose a random vector σ [0, 1) d. Use randomized integration nodes x k + σ (mod1), 1 k d. in the QMC rule instead of x 1,..., x N. Apply the QMC rule for M independent realizations of σ, take the average of the M realizations. Peter Kritzer Quasi-Monte Carlo for Finance 42
Concluding remarks Peter Kritzer Quasi-Monte Carlo for Finance 43
Multi-asset derivatives: For simplicity, we only covered financial products depending on a single asset S. We could look at s price processes S (1),..., S (s). This typically results in a ds-dimensional problem. A second covariance matrix (describing dependencies among the assets) is involved. They can be factorized using different methods. Arranging the matrices in a clever way can help in making computations faster. Peter Kritzer Quasi-Monte Carlo for Finance 44
Why does QMC actually work? There are not many situations in which QMC methods are guaranteed to work well theoretically. The reason is that in practice most integrands are not smooth, while QMC theory usually needs some kind of smoothness assumptions to work well. The empirical success of QMC for large classes of problems is subject of current research (see, e.g., Kuo, Sloan and their co-authors). There is no particular QMC rule that works for all (or even most) problems. Comparison of different methods is necessary. Peter Kritzer Quasi-Monte Carlo for Finance 45
Thank you very much for your attention. Peter Kritzer Quasi-Monte Carlo for Finance 46
Useful literature: P. Glasserman. Monte Carlo Methods in Financial Engineering. Springer, New York, 2004. C. Lemieux. Monte Carlo and Quasi-Monte Carlo Sampling. Springer, New York, 2009. G. Leobacher, F. Pillichshammer. Introduction to Quasi-Monte Carlo Integration and Applications. Birkhäuser, Cham, 2014. Peter Kritzer Quasi-Monte Carlo for Finance 47