PhD defence by Wojciech Mikal Pawlak
Accelerated Financial Algorithms: Derivative Pricing and Risk Management Applications
This thesis concludes a Ph.D. research project in Accelerated Financial Algorithms, conducted in collaboration with DIKU and SimCorp. In it, we describe the design and implementation of common compute-intensive financial applications that combine state-of-the-art High-Performance Computing (HPC) code optimisation techniques to harness massive parallelism of modern parallel hardware architectures like Graphical Processing Units (GPU).
We target the acceleration of pricing and risk management of real investment portfolios that consist of complex derivative instruments. We demonstrate our findings through a detailed analysis and practical accelerated implementations of common numerical algorithms. Our research is supplemented with a feasibility study carried out using high-level data-parallel programming languages and frameworks.
We propose Futhark, which is a purely functional array programming language, as an example of a technology that enables efficient performance, while sustaining modularity, maintainability, and scalability of complex financial algorithms. We focus on high-level algorithmic specifications and code optimisations that extract enough parallelism from a given algorithm to efficiently map it to high-throughput Graphics Processing Units (GPUs).
In particular, we use flattening techniques for non-regular nested parallelism; target memory access patterns and size requirements through code optimisation such as data reordering, padding, and access coalescing; introduce inspector-executor approaches to dynamically analyse and adapt to any input dataset; and provide multiple kernel versions that together efficiently cover the entire spectrum of possible datasets.
The first contribution addresses an acceleration of a fixed-income derivatives pricing algorithm based on the Hull-White One-Factor Lattice Method (HW1F). We introduce a high-level algorithmic specification, which exhibits irregular-nested parallelism, and derive and optimise two hand tuned CUDA implementations: one of which utilises the only outer level of parallelism, while the other utilises both levels of parallelism.
The second contribution is an accelerated algorithm for equity derivatives pricing that uses a Least Squares Monte Carlo Simulation Model (LSMC) following a Longstaff-Schwartz model and is implemented in high-level Futhark language. We show how an auto-generated implementation beats a manually-optimised one for certain datasets.
The third contribution is a massive-scale Monte Carlo simulation to obtain Value at Risk (MCVaR) and other portfolio market risk measures. The simulations comprise multiple nested parallel levels executed on a diverse portfolio of vanilla and exotic derivatives.
- Chair: Professor, Friedrich Henglein, Department of Computer Science, UCPH
- Associate Professor, Patrick Bahr, IT University of Copenhagen
- Professor, Sven-Bodo Scholz, Heriot Watt University, UK
Academic and industrial supervisors
Department of Computer Science (DIKU): Martin Elsman, Cosmin Eugen Oancea
SimCorp: Allan Peter Engsig-Karup, Carl Balslev Clausen
Moderator at this defense will be
Assistant professor, Michael Kirkedal Thomsen Department of Computer Science,
University of Copenhagen
For an electronic copy of the thesis, please go to: https://di.ku.dk/english/research/phd/