This repository contains a collection of Jupyter notebooks and code from my university course in Financial Mathematics. The projects focus on the computational and stochastic aspects of quantitative finance, implementing key models and numerical methods from scratch.
- Random Number Generation: Foundations of simulation using various pseudo-random number generators.
- Stochastic Process Generation: Simulating paths for fundamental processes like Geometric Brownian Motion (GBM).
- CRR Model (Cox-Ross-Rubinstein): A binomial options pricing model for discrete-time option valuation.
- Variance Reduction Techniques: Implementing methods like Antithetic Variates and Control Variates to improve the efficiency of Monte Carlo simulations.
- Option Pricing: Numerical valuation of European and American options using different models.
- Monte Carlo Simulation: Using random sampling to price derivative securities and estimate financial quantities.
- Black-Scholes Model: Analytical solution for European option pricing and analysis of the Greeks.
| Folder | Description |
|---|---|
/lab1 |
Contains notebooks on implementing and testing various pseudo-random number generators (e.g., Linear Generator). |
/lab2 |
Code for generating and visualizing paths of stochastic processes like Brownian Motion. |
/lab3 |
Implementations of the Cox-Ross-Rubinstein (CRR) binomial tree model for option pricing. |
/lab4 |
Notebooks demonstrating variance reduction techniques (Antithetic, Control Variates) applied to Monte Carlo option pricing. |
/lab5 |
Core Monte Carlo simulations for financial pricing with CRR model. |
/lab6 |
Analytical Black-Scholes option pricing formula and comparative analyses. |
/lab7 |
MCMC method analysis. |
- Python (NumPy, SciPy, Matplotlib, Pandas)
- Jupyter Notebook
This repository is for educational purposes, documenting my learning journey in financial mathematics.