Skip to main content
Log in

Efficient Monte Carlo-based options pricing on graphics processors and its optimizations

  • Research Papers
  • Published:
Science China Information Sciences Aims and scope Submit manuscript

Abstract

Options pricing is a critical problem and one of the fundamental building blocks in mathematical finance. Monte Carlo (MC) simulation is the most widely used solution for options pricing. In most cases options pricing must be performed in real time. Although today’s multi-core CPUs can provide a high computing power, the options pricing on today’s multi-core CPUs is far from responding in real time. In this paper, we use modern graphics processors (GPUs), which provide a much higher computing power than multi-core CPUs, to perform MC-based options pricing. The challenge is that GPUs only provide a small on-chip scratchpad while MC-based options pricing requires a large memory space and accesses the memory space irregularly. To make MC-based options pricing efficient on GPUs, we propose a recycling approach which compacts the data to shrink the memory space, and a crossing-path layout which reorganizes the data to make memory accesses GPU-friendly. We use real market data and benchmarks to evaluate our optimization approaches. The experimental result shows that our MC-based options pricing on the latest GPU is 43-fold faster than the latest multi-core CPU for single precision computation (with Intel C++ Compiler 11.1); compared with GCC 4.2.4, the speedup is as high as 145.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Tangman D Y, Gopaul A, Bhuruth M. Numerical pricing of options using high-order compact finite difference schemes. J Comput Appl Math, 2008, 218: 270–280

    Article  MATH  MathSciNet  Google Scholar 

  2. Samuli I, Jari T. Efficient numerical methods for pricing American options under stochastic volatility. Num Method Part Differ Equ, 2007, 24: 104–126

    Google Scholar 

  3. Black F, Myron S. The pricing of options and corporate liabilities. J Politic Econ, 1973, 81: 637–654

    Article  Google Scholar 

  4. Phelim P B. Options: A Monte Carlo approach. J Financ Econ, 1977, 4: 323–338

    Article  Google Scholar 

  5. Acworth P, Broadie M, Glasserman P. A comparison of some Monte Carlo and Quasi-Monte Carlo methods for option pricing. In: Proceedings of the 1996 Conference on Monte Carlo and Quasi-Monte Carlo Methods. New York: Springer, 1998

    Google Scholar 

  6. Option (finance), available at http://en.wikipedia.org/wiki/Option_(finance)#Types_of_options

  7. NVIDIA CUDA Programming Guide v2.0, 2009, 1: 10–11

  8. John D O, David L, Naga G, et al. A survey of general-purpose computation on graphics hardware. In: Eurographics, 2005, State of Art Reports. 2005. 21–51

  9. Bongki M, Joel S. Adaptive runtime support for direct simulation Monte Carlo methods on distributed memory architectures. In: Proceedings of the Scalable High Performance Computing Conference, Knoxville, TN, 1994. 176–183

  10. Craig K, Matt P. Options pricing on the GPU, GPU Gems 2, Chapter 45, Addison Wesley Professional, 2005

  11. Stanimire T, Michael M, Robert B, et al. Benchmarking and implementation of probability-based simulations on programmable graphics cards. Comput Graph, 2005, 29: 71–80

    Article  Google Scholar 

  12. Michael D M, Kevin W, Brent H, et al. Performance evaluation of GPUs using the RapidMind development platform. In: Proceedings of the 2006 ACM/IEEE conference on Supercomputing, Tampa, Florida, 2006. 181

  13. Gregoire J, Ecole C P, Tuan N, et al. Parallelized trinomial option pricing model on GPU with cuda, 2008, available at http://www3.imperial.ac.uk

  14. Victor P, Mark H. Black-Scholes Option Pricing. NVIDIA CUDK SDK, June 2007

  15. William H P, Saul A T, William T V, et al. Numerical Recipes: The Art of Scientific Computing. 3rd ed. Chapter 7. New York: Cambridge University Press, 2007

    MATH  Google Scholar 

  16. Makoto M, Takuji N. Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans Mode Comput Simul, 1998, 8: 3–30

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Li Liu  (刘力).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Liu, L., Zhang, Y., Liu, L. et al. Efficient Monte Carlo-based options pricing on graphics processors and its optimizations. Sci. China Inf. Sci. 53, 1703–1712 (2010). https://doi.org/10.1007/s11432-010-3109-7

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11432-010-3109-7

Keywords

Navigation