Monte Carlo Methods in Finance Peter Jackel JOHN WILEY & SONS, LTD
Preface Acknowledgements Mathematical Notation xi xiii xv 1 Introduction 1 2 The Mathematics Behind Monte Carlo Methods 5 2.1 A Few Basic Terms in Probability and Statistics 5 2.2 Monte Carlo Simulations 7 2.2.1 Monte Carlo Supremacy 8 2.2.2 Multi-dimensional Integration 8 2.3 2.4 2.5 2.6 2.7 2.8 2.9 Some Common Distributions Kolmogorov's Strong Law The Central Limit Theorem The Continuous Mapping Theorem Error Estimation for Monte Carlo Methods The Feynman-Kac Theorem The Moore-Penrose Pseudo-inverse 9 18 18 19 20 21 21 3 Stochastic Dynamics 3.1 Brownian Motion 3.2 Ito's Lemma 3.3 Normal Processes 3.4 Lognormal Processes 3.5 The Markovian Wiener Process Embedding Dimension 3.6 Bessel Processes 3.7 Constant Elasticity Of Variance Processes 3.8 Displaced Diffusion 23 23 24 25 26 26 27 28 29 Process-driven Sampling 31 4.1 Strong versus Weak Convergence 31 4.2 Numerical Solutions 32
viii Contents 4.2.1 The Euler Scheme 32 4.2.2 The Milstein Scheme 33 4.2.3 Transformations 33 4.2.4 Predictor-Corrector 35 4.3 Spurious Paths 36 4.4 Strong Convergence for Euler and Milstein 37 5 Correlation and Co-movement 41 5.1 Measures for Co-dependence 42 5.2 Copulae 45 5.2.1 The Gaussian Copula 46 5.2.2 The f-copula 49 5.2.3 Archimedean Copulae 51 6 Salvaging a Linear Correlation Matrix 59 6.1 Hypersphere Decomposition 60 6.2 Spectral Decomposition 61 6.3 Angular Decomposition of Lower Triangular Form 62 6.4 Examples 63 6.5 Angular Coordinates on a Hypersphere of Unit Radius 65 7 Pseudo-random Numbers 67 7.1 Chaos 68 7.2 The Mid-square Method 72 7.3 Congruential Generation 72 7.4 RanO To Ran3 74 7.5 The Mersenne Twister 74 7.6 Which One to Use? 75 8 Low-discrepancy Numbers 77 8.1 Discrepancy 78 8.2 Halton Numbers 79 8.3 Sobol' Numbers 80 8.3.1 Primitive Polynomials Modulo Two 81 8.3.2 The Construction of Sobol' Numbers 82 8.3.3 The Gray Code 83 8.3.4 The Initialisation of Sobol' Numbers 85 8.4 Niederreiter (1988) Numbers 88 8.5 Pairwise Projections 88 8.6 Empirical Discrepancies 91 8.7 The Number of Iterations 96 8.8 Appendix 96 8.8.1 Explicit Formula for the L2-norm Discrepancy on the Unit Hypercube 96 8.8.2 Expected L2-norm Discrepancy of Truly Random Numbers 97 9 Non-uniform Variates 99 9.1 Inversion of the Cumulative Probability Function 99 9.2 Using a Sampler Density 101
9.2.1 Importance Sampling 103 9.2.2 Rejection Sampling 104 9.3 Normal Variates 105 9.3.1 The Box-Muller Method 105 9.3.2 The Neave Effect 106 9.4 Simulating Multivariate Copula Draws 109 10 Variance Reduction Techniques 111 10.1 Antithetic Sampling 111 10.2 Variate Recycling 112 10.3 Control Variates 113 10.4 Stratified Sampling 114 10.5 Importance Sampling 115 10.6 Moment Matching 116 10.7 Latin Hypercube Sampling 119 10.8 Path Construction 120 10.8.1 Incremental 120 10.8.2 Spectral 122 10.8.3 The Brownian Bridge 124 10.8.4 A Comparison of Path Construction Methods 128 10.8.5 Multivariate Path Construction 131 10.9 Appendix 134 10.9.1 Eigenvalues and Eigenvectors of a Discrete-time Covariance Matrix 134 10.9.2 The Conditional Distribution of the Brownian Bridge 137 11 Greeks 139 11.1 Importance Of Greeks 139 11.2 An Up-Out-Call Option 139 11.3 Finite Differencing with Path Recycling 140 11.4 Finite Differencing with Importance Sampling 143 11.5 Pathwise Differentiation 144 11.6 The Likelihood Ratio Method 145 11.7 Comparative Figures 147 11.8 Summary 153 11.9 Appendix 153 11.9.1 The Likelihood Ratio Formula for Vega 153 11.9.2 The Likelihood Ratio Formula for Rho 156 12 Monte Carlo in the BGM/J Framework 159 12.1 The Brace-Gatarek-Musiela/Jamshidian Market Model 159 12.2 Factorisation 161 12.3 Bermudan Swaptions 163 12.4 Calibration to European Swaptions 163 12.5 The Predictor-Corrector Scheme 169 12.6 Heuristics of the Exercise Boundary 171 12.7 Exercise Boundary Parametrisation 174 12.8 The Algorithm 176 ix
12.9 Numerical Results 177 12.10 Summary 182 13 Non-recombming Trees 13.1 Introduction 13.2 Evolving the Forward Rates 13.3 Optimal Simplex Alignment 13.4 Implementation 13.5 Convergence Performance 13.6 Variance Matching 13.7 Exact Martingale Conditioning 13.8 Clustering 13.9 A Simple Example 13.10 Summary 183 183 184 187 190 191 192 195 196 199 200 14 Miscellanea 201 14.1 Interpolation of the Term Structure of Implied Volatility 201 14.2 Watch Your CPU Usage 202 14.3 Numerical Overflow and Underflow 205 14.4 A Single Number or a Convergence Diagram? 205 14.5 Embedded Path Creation 206 14.6 How Slow is Exp ()? 207 14.7 Parallel Computing And Multi-threading 209 Bibliography 213 Index 219