Pricing Early-exercise options GPU Acceleration of SGBM method Delft University of Technology - Centrum Wiskunde & Informatica ´ Alvaro Leitao Rodr´ ıguez and Cornelis W. Oosterlee Lausanne - December 4, 2016 A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 1 / 28
Outline 1 Definitions 2 Basket Bermudan Options 3 Stochastic Grid Bundling Method 4 Parallel GPU Implementation 5 Results 6 Conclusions A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 2 / 28
Definitions Option A contract that offers the buyer the right, but not the obligation, to buy (call) or sell (put) a financial asset at an agreed-upon price (the strike price) during a certain period of time or on a specific date (exercise date). Investopedia. Option price The fair value to enter in the option contract. In other words, the (discounted) expected value of the contract. V t = D t E [ f ( S t )] where f is the payoff function, S the underlying asset, t the exercise time and D t the discount factor. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 3 / 28
Definitions - cont. Pricing techniques • Stochastic process, S t . • Simulation: Monte Carlo method. • PDEs: Feynman-Kac theorem. Types of options - Exercise time • European: End of the contract, t = T . • American: Anytime, t ∈ [0 , T ]. • Bermudan: Some predefined times, t ∈ { t 1 , . . . , t M } • Many others: Asian, barrier, . . . A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 4 / 28
Definitions - cont. Early-exercise option price • American: V t = sup D t E [ f ( S t )] . t ∈ [0 , T ] • Bermudan: V t = sup D t E [ f ( S t )] . t ∈{ t 1 ,..., t M } Pricing early-exercise options • PDEs: Hamilton-Jacobi-Bellman equation. • Simulation: • Least-squares method (LSM), Longstaff and Schwartz. • Stochastic Grid Bundling method (SGBM) [JO15]. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 5 / 28
Basket Bermudan Options • Right to exercise at a set of times: t ∈ { t 0 = 0 , . . . , t m , . . . , t M = T } . • d -dimensional underlying process: S t = ( S 1 t , . . . , S d t ) ∈ R d . • Intrinsic value of the option: h t := h ( S t ). • The value of the option at the terminal time T : V T ( S T ) = f ( S T ) = max( h ( S T ) , 0) . • The conditional continuation value Q t m , i.e. the discounted expected payoff at time t m : � � Q t m ( S t m ) = D t m E V t m +1 ( S t m +1 ) | S t m . • The Bermudan option value at time t m and state S t m : V t m ( S t m ) = f ( S T ) = max( h ( S t m ) , Q t m ( S t m )) . • Value of the option at the initial state S t 0 , i.e. V t 0 ( S t 0 ). A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 6 / 28
Basket Bermudan options scheme Figure: d-dimensional Bermudan option A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 7 / 28
Stochastic Grid Bundling Method • Dynamic programming approach. • Simulation and regression-based method. • Forward in time: Monte Carlo simulation. • Backward in time: Early-exercise policy computation. • Step I: Generation of stochastic grid points { S t 0 ( n ) , . . . , S t M ( n ) } , n = 1 , . . . , N . • Step II: Option value at terminal time t M = T V t M ( S t M ) = max( h ( S t M ) , 0) . A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 8 / 28
Stochastic Grid Bundling Method (II) • Backward in time, t m , m ≤ M , : • Step III: Bundling into ν non-overlapping sets or partitions B t m − 1 (1) , . . . , B t m − 1 ( ν ) • Step IV: Parameterizing the option values Z ( S t m , α β t m ) ≈ V t m ( S t m ) . • Step V: Computing the continuation and option values at t m − 1 Q t m − 1 ( S t m − 1 ( n )) = E [ Z ( S t m , α β � t m ) | S t m − 1 ( n )] . The option value is then given by: V t m − 1 ( S t m − 1 ( n )) = max( h ( S t m − 1 ( n )) , � � Q t m − 1 ( S t m − 1 ( n ))) . A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 9 / 28
Bundling • Original: Iterative process (K-means clustering). • Problems: Too expensive (time and memory) and distribution. • New technique: Equal-partitioning. Efficient for parallelization. • Two stages: sorting and splitting. SORT SPLIT Figure: Equal partitioning scheme A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 10 / 28
Parametrizing the option value • Basis functions φ 1 , φ 2 , . . . , φ K . � � S t m , α β • In our case, Z depends on S t m only through φ k ( S t m ): t m � � � K S t m , α β α β Z = t m ( k ) φ k ( S t m ) . t m k =1 • Computation of α β α β t m (or � t m ) by least squares regression. • The α β t m determines the early-exercise policy. • The continuation value: �� K � � � � α β Q t m − 1 ( S t m − 1 ( n )) = D t m − 1 E � t m ( k ) φ k ( S t m ) | S t m − 1 k =1 K � � � α β = D t m − 1 � t m ( k ) E φ k ( S t m ) | S t m − 1 . k =1 A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 11 / 28
Basis functions � � • Choosing φ k : the expectations E φ k ( S t m ) | S t m − 1 should be easy to calculate. • The intrinsic value of the option, h ( · ) , is usually an important and useful basis function. For example: • Geometric basket Bermudan: � d � 1 � d S δ h ( S t ) = t δ =1 • Arithmetic basket Bermudan: � d h ( S t ) = 1 S δ t m d δ =1 • For S t following a GBM: expectations analytically available. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 12 / 28
Estimating the option value • SGBM has been developed as duality-based method . • Provide two estimators (confidence interval). • Direct estimator (high-biased estimation): � �� � � � � , � V t m − 1 ( S t m − 1 ( n )) = max h S t m − 1 ( n ) Q t m − 1 S t m − 1 ( n ) , N � V t 0 ( S t 0 )] = 1 E [ � � V t 0 ( S t 0 ( n )) . N n =1 • Path estimator (low-biased estimation): τ ∗ ( S ( n )) = min { t m : h ( S t m ( n )) ≥ � � Q t m ( S t m ( n )) , m = 1 , . . . , M } , � � v ( n ) = h S � , τ ∗ ( S ( n )) N L � 1 V t 0 ( S t 0 ) = lim v ( n ) . N L N L n =1 A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 13 / 28
Parallel SGBM on GPU • NVIDIA CUDA platform. • Parallel strategy: two parallelization stages: • Forward: Monte Carlo simulation. • Backward: Bundles → Oportunity of parallelization. • Novelty in early-exercise option pricing methods. • Two implementations → K-means vs. Equal-partitioning: • K-means: sequential parts. • K-means: transfers between CPU and GPU cannot be avoided. • K-means: all data need to be stored. • K-means: Load-balancing. • Equal-partitioning: fully parallelizable. • Equal-partitioning: No transfers. • Equal-partitioning: efficient memory use. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 14 / 28
Parallel SGBM on GPU - Forward in time • One GPU thread per Monte Carlo simulation. • Random numbers “on the fly”: cuRAND library. • Compute intermediate results: • Expectations. • Intrinsic value of the option. • Equal-partitioning: sorting criterion calculations. • Intermediate results in the registers: fast memory access. • Original bundling: all the data still necessary. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 15 / 28
Parallel SGBM on GPU - Forward in time Figure: SGBM Monte Carlo A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 16 / 28
Parallel SGBM on GPU - Backward in time • One parallelization stage per exercise time step. • Sort w.r.t bundles: efficient memory access. • Parallelization in bundles. • Each bundle calculations (option value and early-exercise policy) in parallel. • All GPU threads collaborate in order to compute the continuation value. A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 17 / 28
Parallel SGBM on GPU - Backward in time Figure: SGBM backward stage A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 18 / 28
Parallel SGBM on GPU - Backward in time Figure: SGBM backward stage A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 19 / 28
Results • Accelerator Island system of Cartesius Supercomputer. • Intel Xeon E5-2450 v2. • NVIDIA Tesla K40m. • C-compiler: GCC 4.4.7. • CUDA version: 5.5. • Geometric and arithmetic basket Bermudan put options: S t 0 = (40 , . . . , 40) ∈ R d , X = 40, r t = 0 . 06, σ = (0 . 2 , . . . , 0 . 2) ∈ R d , ρ ij = 0 . 25, T = 1 and M = 10. • Basis functions: K = 3. • Multi-dimensional Geometric Brownian Motion. • Euler discretization, δ t = T / M . A. Leitao & Kees Oosterlee (TUD & CWI) SGBM on GPU Lausanne - December 4, 2016 20 / 28
Recommend
More recommend