Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daniilvorontsov/fourier-option-pricing
MSc thesis project concerned with option pricing for Levy Jump models. Package includes pricing implementations for European Call and Put options for Carr-Madan, COS and Fourier Time Stepping.
https://github.com/daniilvorontsov/fourier-option-pricing
carr-madan cuda fourier-transform monte-carlo option-pricing
Last synced: about 2 months ago
JSON representation
MSc thesis project concerned with option pricing for Levy Jump models. Package includes pricing implementations for European Call and Put options for Carr-Madan, COS and Fourier Time Stepping.
- Host: GitHub
- URL: https://github.com/daniilvorontsov/fourier-option-pricing
- Owner: DaniilVorontsov
- Created: 2024-08-23T16:32:55.000Z (4 months ago)
- Default Branch: master
- Last Pushed: 2024-11-13T00:16:30.000Z (about 2 months ago)
- Last Synced: 2024-11-13T01:19:15.562Z (about 2 months ago)
- Topics: carr-madan, cuda, fourier-transform, monte-carlo, option-pricing
- Language: Jupyter Notebook
- Homepage:
- Size: 2.75 MB
- Stars: 0
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
**Fourier transform methods for option pricing**
The MSc thesis was concerned with option pricing under exponential Lévy jump models. Three renowned methods were implemented in C++ for Variance Gamma and CGMY processes. For CGMY additional study was conducted to evaluate option prices through Monte-Carlo simulation accelerated on GPU with CUDA Nvidia. For further information please refer to the PDF report.**The contents of the project**
One base class LevyMarket contains all three Fourier transform pricing methods implementations. LevyMarket contains virtual functions CF (Characteristic Function) and CE (Characteristic Exponent) which are defined in inheritance classes VarianceGammaMarket and CGMYmarket. VarianceGammaMarket class corresponds to the Variance Gamma model. Apart from CF and CE, it has a method for analytical price integration. CGMYmarket class corresponds to the CGMY model. Apart from CF and CE, it has a CPU implementation of MCFT-1.
CUDA part is located in .cu files where functions MCFT1 and MCFT2 are defined. This functions are called in files VG.cpp and CGMY.cpp. For VG analytical pricing Boost library is required.main.cpp
-- main functionVG.cpp
-- error tests and time performance for two sets of options under VGCGMY.cpp
-- error tests and time performance for two sets of options under CGMYFFT.h, FFT.cpp
-- implementation of a Fast Fourier Transform (radix-2 DIT Cooley–Tukey algorithm)Spline.h
-- interploation library by Tino Kluge https://kluge.in-chemnitz.de/opensource/spline/LinearInterpolation.h, LinearInterpolation.cpp
-- linear interpolation classFourierMethods.h, FourierMethods.cpp
-- Classes for Fourier methods, auxilary functions for MCFT1, MCFT2
-- Fourier methodsMCFT1.cu
-- MCFT1 implementation with CUDA, requires CUDAMCFT2.cu
-- MCFT2 implementation with CUDA, requires CUDAVisualization.ipynb
-- plots and aggregation for reportVG_CGMY.ipynb
-- CDF recovery for CGMY and sampling of GBM, VG, CGMY plots for reportRelease version x64
ISO C++14 Standard
Intel(R) Core(TM) i5-11400H 2.70 GHz, 12 CPU
RTX 3050 Ti Laptop GPU
CUDA version: release 11.8, V11.8.89
Boost Version 1.85.0
Microsoft Visual C++ (MSVC)