Skip to content

Latest commit

 

History

35 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Alpha-Stable Process Calibration for Illiquid Options Pricing

Calibration of the alpha parameter in alpha-stable processes using deep learning, with applications to options pricing under subdiffusive dynamics.

Projet de recherche — Hugo Vigna (neural network) & Massyle Dendene (stochastic processes & pricing)

Overview

Standard financial models assume Gaussian returns, but real markets exhibit heavy tails and jumps. Alpha-stable processes provide a framework for modeling these phenomena. This project uses a 1D convolutional neural network to calibrate the stability parameter alpha from observed trajectories, then applies subordinated jump-diffusion pricing.

Key results

Task Metric Value
Alpha calibration (50 classes) MAE 0.039
R^2 0.903
Option pricing MAE 0.30 EUR
Real data validation (KNCT) Predicted alpha 0.911
Optimal alpha 0.917

Project Structure

├── README.md
├── methodology.md                  # Detailed methodology and analysis
├── requirements.txt
├── notebooks/
│   ├── CNN_classification.ipynb    # CNN training and evaluation
│   ├── cluster_pricing.ipynb       # Clustering analysis and pricing
│   └── best_class_model.h5        # Trained model weights
├── python_code/
│   ├── Subordinators.py           # Alpha-stable subordinator simulation
│   ├── ProcessSimulations.py      # GBM, Poisson, subordinated processes
│   ├── BaseOptionPricer.py        # Standard Black-Scholes pricer
│   ├── FractionalOptionPricer.py  # Subordinated jump-diffusion pricer
│   ├── SubdiffusiveBlackScholes.py
│   └── OptionPricerDupire.py
└── results/                        # Classification, pricing, and clustering figures

Methodology

See methodology.md for the full analysis, including:

  • CNN architecture design (multi-scale 1D convolutions, 50-class classifier)
  • Class discernability analysis via KS distance (inter/intra-class ratios)
  • Real data validation on KNCT asset (Bloomberg data)
  • Limitations and potential improvements

Usage

Installation

git clone https://github.com/hugovigna/deep-learning-for-alpha-calibration.git
cd deep-learning-for-alpha-calibration
pip install -r requirements.txt

Simulate Alpha-Stable Trajectories

from python_code.Subordinators import Subordinators
from python_code.ProcessSimulations import ProcessSimulations

T, alpha, n_steps = 3.0, 0.7, 750
time, S, U, tau = Subordinators.simulate_inverse_alpha_subordinator(T, alpha, n_steps)
time_gbm, gbm = ProcessSimulations.simulate_gbm(S0=100, mu=0.01, sigma=0.25,
                                                  T=T, n_steps=n_steps, n_paths=1)
traj = Subordinators.interpolate_subordinate_process(time_gbm, gbm[0], S)

Train and Evaluate

See notebooks/CNN_classification.ipynb for the full pipeline:

  • 30,000 simulated trajectories with alpha in [0.4, 1.0]
  • Multi-scale 1D CNN (kernels 3, 5, 7)
  • ~90% classification accuracy, MAE ~ 0.039

Price Options

from python_code.FractionalOptionPricer import FractionalOptionPricer

pricer = FractionalOptionPricer(S0=100, K=110, T=1, r=0.01, sigma=0.25, alpha=0.7)
call_price = pricer.price_call()

References

  1. Samorodnitsky, G. & Taqqu, M. (1994). Stable Non-Gaussian Random Processes. Chapman & Hall.
  2. Carr, P. & Wu, L. (2003). The Finite Moment Log Stable Process and Option Pricing. Journal of Finance.
  3. Magdziarz, M. (2009). Black-Scholes Formula in Subdiffusive Regime. Journal of Statistical Physics.

License

MIT License — see LICENSE file.

Authors

  • Hugo Vigna — Neural network design and calibration (@hugovigna)
  • Massyle Dendene — Stochastic process modeling and option pricing (python_code/)

About

Deep learning for calibration of alpha parameter in alpha-stable Levy processes for pricing of illiquid options

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages