Pricing of cross-currency interest rate derivatives on Graphics Processing Units Duy Minh Dang Department of Computer Science University of Toronto Toronto, Canada dmdang@cs.toronto.edu Joint work with Christina Christara and Ken Jackson Workshop on Parallel and Distributed Computing in Finance IEEE International Parallel & Distributed Processing Symposium Atlanta, USA, April 19 – 23, 2010 1 / 18
Outline Power Reverse Dual Currency (PRDC) swaps 1 The model and the associated PDE 2 GPU-based parallel numerical methods 3 Numerical results 4 Summary and future work 5 2 / 18
Power Reverse Dual Currency (PRDC) swaps PRDC swaps • Long-dated swaps ( ≥ 30 years) • Two currencies: domestic and foreign (unit zero-coupon bond prices P d and P f ) • PRDC coupons in exchange for domestic LIBOR payments ( funding leg ) • Two parties: the issuer (pays PRDC coupons) and the investor (pays LIBOR) • PRDC coupon and LIBOR rates are applied on the domestic currency principal N d Tenor structure: T 0 < T 1 < . . . < T β − 1 < T β , ν α ≡ ν ( T α − 1 , T α ) = T α − T α − 1 At each of the times T α , α = 1 , . . . , β − 1, the issuer 1 − P d ( T α − 1 , T α ) • receives ν α N d L d ( T α − 1 , T α ), where L d ( T α − 1 , T α ) = ν ( T α − 1 , T α ) P d ( T α − 1 , T α ) • pays PRDC coupon amount ν α N d C α , where the coupon rate C α has the structure � � � � c f s ( T α ) C α = min max − c d , b f , b c f α ◦ s ( T α ) : the spot FX-rate at time T α ◦ f α : scaling factor, usually is set to the forward FX rate F (0 , T α ) = P f (0 , T α ) P d (0 , T α ) s (0) ◦ c d , c f : domestic and foreign coupon rates; b f , b c : a cap and a floor • In the standard case ( b f = 0 and b c = ∞ ), C α is a call option on the spot FX rate h α = c f f α , k α = f α c d C α = h α max( s ( T α ) − k α , 0) , c f 3 / 18
Power Reverse Dual Currency (PRDC) swaps Bermudan cancelable PRDC swaps The issuer has the right to cancel the underlying swap at any of the times { T α } β − 1 α =1 after the occurrence of any exchange of fund flows scheduled on that date. • Observation: terminating a swap at T α is the same as i. continuing the underlying swap, and ii. entering into the offsetting swap at T α ⇒ the issuer has a long position in an associated offsetting Bermudan swaption • Pricing framework: dividing the pricing of a Bermudan cancelable PRDC swap into i. the pricing of the underlying PRDC swap (a “vanilla” PRDC swap), and ii. the pricing of the associated offsetting Bermudan swaption • Notations ◦ u c α ( t ) and u f α ( t ): value at time t of the coupon and the LIBOR part scheduled after T α , respectively ◦ u h α ( t ): value at time t of the offsetting Bermudan swaption that has only the dates { T α +1 , . . . , T β − 1 } as exercise opportunities ◦ u e α ( t ): value at time t of all fund flows in the offsetting swap scheduled after T α ◦ u h β − 1 ( T β − 1 ) = u e β − 1 ( T β − 1 ) = 0 ◦ Note: u h α ( T α ) is the “hold value” and u e α ( T α ) is the “exercise value” of the option at time T α 4 / 18
b b b b b b b b b Power Reverse Dual Currency (PRDC) swaps Backward pricing algorithm T 0 T 1 T β − 3 T β − 2 T β − 1 T β 5 / 18
b b b b b b b b b Power Reverse Dual Currency (PRDC) swaps Backward pricing algorithm T 0 T 1 T β − 3 T β − 2 T β − 1 T β solve PDE uc β − 2( T β − 2) − Nd C β − 1 GPU 1 uh β − 2( T β − 2) 0 GPU 2 solve PDE 5 / 18
b b b b b b b b b Power Reverse Dual Currency (PRDC) swaps Backward pricing algorithm T 0 T 1 T β − 3 T β − 2 T β − 1 T β solve PDE uc β − 2( T β − 2) − Nd C β − 1 GPU 1 uh β − 2( T β − 2) 0 GPU 2 solve PDE solve PDE uc − Nd C β − 2 + uc β − 3( T β − 3) β − 2( T β − 2) GPU 1 � � uh ue , uh β − 3( T β − 3) max β − 2( T β − 2) β − 2( T β − 2) GPU 2 � �� � solve PDE � � uc β − 2( T β − 2)+ uf β − 2( T β − 2) − 5 / 18
b b b b b b b b b b b b b b b Power Reverse Dual Currency (PRDC) swaps Backward pricing algorithm T 0 T 1 T β − 3 T β − 2 T β − 1 T β solve PDE uc β − 2( T β − 2) − Nd C β − 1 GPU 1 uh β − 2( T β − 2) 0 GPU 2 solve PDE solve PDE uc − Nd C β − 2 + uc β − 3( T β − 3) β − 2( T β − 2) GPU 1 � � uh ue , uh β − 3( T β − 3) max β − 2( T β − 2) β − 2( T β − 2) GPU 2 � �� � solve PDE � � uc β − 2( T β − 2)+ uf β − 2( T β − 2) − 5 / 18
b b b b b b b b b b b b b b b Power Reverse Dual Currency (PRDC) swaps Backward pricing algorithm T 0 T 1 T β − 3 T β − 2 T β − 1 T β solve PDE uc β − 2( T β − 2) − Nd C β − 1 GPU 1 uh β − 2( T β − 2) 0 GPU 2 solve PDE solve PDE uc − Nd C β − 2 + uc β − 3( T β − 3) β − 2( T β − 2) GPU 1 � � uh ue , uh β − 3( T β − 3) max β − 2( T β − 2) β − 2( T β − 2) GPU 2 � �� � solve PDE � � uc β − 2( T β − 2)+ uf β − 2( T β − 2) − solve PDE uc − Nd C 1 + uc 0( T 0) 2 ( T 1) GPU 1 � � ue uh , uh 0 ( T 0) max 1( T 1) 1 ( T 1) GPU 2 � �� � solve PDE � � uc 2 ( T 2)+ uf 2( T 2) − • u f α ( T α ): obtained by the “fixed notional” method, not by solving a PDE • Price of the underlying PRDC swap: u f 0 ( T 0 ) + u c 0 ( T 0 ) • Price of the Bermudan cancelable PRDC swap: ( u f 0 ( T 0 ) + u c 0 ( T 0 )) + u h 0 ( T 0 ) 5 / 18
The model and the associated PDE The pricing model Consider the following model under domestic risk neutral measure ds ( t ) s ( t ) =( r d ( t ) − r f ( t )) dt + γ ( t , s ( t )) dW s ( t ) , dr d ( t )=( θ d ( t ) − κ d ( t ) r d ( t )) dt + σ d ( t ) dW d ( t ) , dr f ( t )=( θ f ( t ) − κ f ( t ) r f ( t ) − ρ fs ( t ) σ f ( t ) γ ( t , s ( t ))) dt + σ f ( t ) dW f ( t ) , • r i ( t ) , i = d , f : domestic and foreign interest rates with mean reversion rate and volatility functions κ i ( t ) and σ i ( t ) • s ( t ): the spot FX rate (units domestic currency per one unit foreign currency) • W d ( t ) , W f ( t ) , and W s ( t ) are correlated Brownian motions with dW d ( t ) dW s ( t ) = ρ ds dt , dW f ( t ) dW s ( t ) = ρ fs dt , dW d ( t ) dW f ( t ) = ρ df dt � s ( t ) � ς ( t ) − 1 • Local volatility function γ ( t , s ( t )) = ξ ( t ) L ( t ) - ξ ( t ): relative volatility function - ς ( t ): constant elasticity of variance (CEV) parameter - L ( t ): scaling constant (e.g. the forward FX rate F (0 , t )) 6 / 18
The model and the associated PDE The 3-D pricing PDE Let u = u ( s , r d , r f , t ) be the value of a security at time t , with a terminal payoff measurable with respect to the σ -algebra at maturity time T end and without intermediate payments. On R 3 + × [ T start , T end ), u satisfies the PDE ∂ u ∂ t + L u ≡ ∂ u ∂ t +( r d − r f ) s ∂ u ∂ s � � ∂ u � � ∂ u + θ d ( t ) − κ d ( t ) r d + θ f ( t ) − κ f ( t ) r f − ρ fS σ f ( t ) γ ( t , s ( t )) ∂ r d ∂ r f 2 γ 2 ( t , s ( t )) s 2 ∂ 2 u d ( t ) ∂ 2 u f ( t ) ∂ 2 u + 1 ∂ s 2 + 1 + 1 2 σ 2 2 σ 2 ∂ r 2 ∂ r 2 d f + ρ dS σ d ( t ) γ ( t , s ( t )) s ∂ 2 u ∂ r d ∂ s + ρ fS σ f ( t ) γ ( t , s ( t )) s ∂ 2 u ∂ r f ∂ s + ρ df σ d ( t ) σ f ( t ) ∂ 2 u − r d u = 0 ∂ r d ∂ r f • Derivation: Multi-dimensional Itˆ o’s formula • Boundary conditions: Dirichlet-type “stopped process” boundary conditions • Backward PDE: the change of variable τ = T end − t • Difficulties: High-dimensionality, cross-derivative terms 7 / 18
GPU-based parallel numerical methods Discretization • Space: Second-order central finite differences on uniform mesh • Time: ADI technique based on Hundsdorfer and Verwer (HV) approach ◦ u m : the vector of approximate values ◦ A m 0 : matrix of all mixed derivatives terms; A m i , i = 1 , . . . , 3: matrices of the second-order spatial derivative in the s -, r d -, and r s - directions, respectively ◦ g m i , i = 0 , . . . , 3 : vectors obtained from the boundary conditions ◦ A m = � 3 i ; g m = � 3 i =0 A m i =0 g m i Timestepping HV scheme from time t m − 1 to t m : Phase 1: v 0 = u m − 1 + ∆ τ ( A m − 1 u m − 1 + g m − 1 ) , ( I − 1 v i = v i − 1 − 1 u m − 1 + 1 2∆ τ A m 2∆ τ A m − 1 2∆ τ ( g m i − g m − 1 i ) ) , i = 1 , 2 , 3 , i i � �� � � �� � A m � � v i i Phase 2: v 0 = v 0 + 1 2∆ τ ( A m v 3 − A m − 1 u m − 1 ) + 1 2∆ τ ( g m − g m − 1 ) , � ( I − 1 v i − 1 − 1 2∆ τ A m 2∆ τ A m i ) � v i = � i v 3 , i = 1 , 2 , 3 , u m = � v 3 . 8 / 18
Recommend
More recommend