Final Projects
Mathematical Finance Project Guide
Final Projects
This page gives project options and expectations for the final project in Mathematical Finance.
The GitHub repository for the book is:
https://github.com/wanghemath/Book-MathFinance
The final project should demonstrate that you can connect:
\[ \text{financial question} \quad \longrightarrow \quad \text{mathematical model} \quad \longrightarrow \quad \text{Python implementation} \quad \longrightarrow \quad \text{numerical experiment} \quad \longrightarrow \quad \text{financial interpretation}. \]
The project does not need to be long, but it should be clear, reproducible, and mathematically meaningful.
Project goals
A successful project should show that you can:
- formulate a financial modeling question precisely;
- identify the mathematical assumptions behind the model;
- implement the model in Python;
- test the model numerically;
- visualize and interpret the results;
- explain limitations, model risk, and possible extensions.
Recommended project format
Students may complete the project individually or in small teams, depending on instructor policy.
A typical final project has three deliverables.
| Deliverable | Suggested length | Purpose |
|---|---|---|
| Proposal | 1–2 pages | State the question, model, data/simulation plan, and expected output. |
| Notebook | One clean .ipynb file |
Provide reproducible code, numerical experiments, and figures. |
| Report | 6–10 pages | Explain the mathematics, computation, results, and interpretation. |
A short presentation may also be added if the course includes a final presentation session.
Project expectations
The project should include the following components.
1. Financial question
Begin with a clear question, such as:
- How accurately do different pricing methods agree for the same option?
- How does hedging error change with rebalancing frequency?
- How does an implied-volatility smile affect option prices?
- How does estimation error affect portfolio optimization?
- How well does a VaR model pass a backtest?
- How do Vasicek and CIR models generate different yield curves?
2. Mathematical model
State the model clearly. For example:
- binomial model;
- geometric Brownian motion;
- Black–Scholes model;
- stochastic volatility model;
- Vasicek or CIR short-rate model;
- HJM forward-rate model;
- mean-variance portfolio model;
- CAPM or multi-factor model;
- VaR or Expected Shortfall risk model.
Students should explicitly list the assumptions.
3. Computational implementation
The project should include Python code that is organized into reusable functions.
For example:
def black_scholes_call(S0, K, T, r, sigma):
# return the Black--Scholes call price
passGood code should be readable, reproducible, and commented when necessary.
4. Numerical experiment
The project should include at least one serious numerical experiment.
Examples:
- convergence as the number of binomial steps increases;
- Monte Carlo confidence intervals as the number of paths increases;
- hedging error distribution under different rebalancing frequencies;
- implied-volatility smile fitting across strikes;
- portfolio weights under different covariance estimates;
- VaR exceptions over a rolling backtest;
- yield-curve shapes under different short-rate parameters.
5. Interpretation
The project should not stop at code output. Students should explain:
- what the figures show;
- whether the numerical result matches theory;
- where the model is reliable;
- where the model is fragile;
- what limitations remain.
Project topic list
The following topics are designed to align with the 18 Colab labs.
| ID | Project topic | Closely related labs |
|---|---|---|
| P1 | Binomial, Black–Scholes, Monte Carlo, and PDE Price Comparison | Labs 2, 3, 4, 8 |
| P2 | Delta Hedging Error under Discrete Rebalancing and Model Misspecification | Labs 4, 5, 18 |
| P3 | Implied Volatility Smile Construction and Calibration | Labs 4, 5, 17, 18 |
| P4 | Monte Carlo Variance Reduction for Option Pricing | Labs 3, 6, 7 |
| P5 | Pricing Asian, Barrier, and Lookback Options | Labs 3, 6, 7 |
| P6 | Finite Difference Methods for European and American Options | Labs 4, 8 |
| P7 | Change of Measure and Likelihood-Ratio Pricing | Labs 9, 10 |
| P8 | Vasicek and CIR Yield-Curve Modeling | Labs 11, 12 |
| P9 | HJM Forward-Curve Simulation and Yield-Curve Risk | Labs 11, 12, 13 |
| P10 | Mean-Variance Portfolio Optimization with Estimation Risk | Labs 14, 15 |
| P11 | CAPM and Multi-Factor Risk Decomposition | Labs 14, 15 |
| P12 | Value at Risk, Expected Shortfall, and Backtesting | Labs 15, 16 |
| P13 | Heston Stochastic Volatility and Volatility Skew | Labs 5, 17, 18 |
| P14 | Integrated Option Portfolio: Calibration, Hedging, and Risk | Labs 4, 5, 16, 17, 18 |
| P15 | A Student-Designed Mathematical Finance Project | Any relevant labs |
Project P1: Binomial, Black–Scholes, Monte Carlo, and PDE Price Comparison
Main question
How do different option-pricing methods compare when applied to the same European option?
Suggested tasks
- Price a European call or put using a binomial tree.
- Price the same option using Black–Scholes.
- Price the same option using Monte Carlo simulation.
- Price the same option using a finite-difference method.
- Compare accuracy, speed, and sensitivity to numerical parameters.
Mathematical ideas
- no-arbitrage pricing;
- risk-neutral expectation;
- binomial convergence;
- Black–Scholes formula;
- finite-difference discretization;
- Monte Carlo confidence intervals.
Possible figures
- price versus number of binomial steps;
- Monte Carlo confidence interval versus number of paths;
- finite-difference price surface;
- error relative to Black–Scholes benchmark.
Project P2: Delta Hedging Error under Discrete Rebalancing and Model Misspecification
Main question
How does Delta hedging perform when rebalancing is discrete and the assumed volatility is wrong?
Suggested tasks
- Simulate stock paths under GBM.
- Sell a European call and Delta hedge it.
- Rebalance daily, weekly, monthly, and continuously approximated by a fine grid.
- Compare hedging error distributions.
- Repeat when hedging volatility differs from realized volatility.
Mathematical ideas
- Black–Scholes Delta;
- self-financing portfolios;
- discrete versus continuous hedging;
- volatility misspecification;
- hedging error.
Possible figures
- histogram of hedging errors;
- hedging error standard deviation versus rebalancing frequency;
- hedging error mean versus assumed volatility.
Project P3: Implied Volatility Smile Construction and Calibration
Main question
How can option prices be converted into implied volatilities, and how can a volatility smile be fitted?
Suggested tasks
- Generate or collect option prices across strikes.
- Compute implied volatility by numerical root-finding.
- Plot implied volatility against strike or log-moneyness.
- Fit a simple quadratic smile model.
- Use the fitted smile to price additional options.
Mathematical ideas
- Black–Scholes monotonicity in volatility;
- implied volatility inversion;
- smile and skew;
- calibration error;
- interpolation and extrapolation risk.
Possible figures
- market price versus strike;
- implied volatility versus log-moneyness;
- fitted smile curve;
- residual calibration errors.
Project P4: Monte Carlo Variance Reduction for Option Pricing
Main question
How much can variance reduction improve Monte Carlo option pricing?
Suggested tasks
- Price a European option by plain Monte Carlo.
- Add antithetic variates.
- Add control variates.
- Add moment matching or stratified sampling.
- Compare estimator variance and confidence intervals.
Mathematical ideas
- standard error;
- confidence intervals;
- negative correlation;
- control variate regression;
- estimator efficiency.
Possible figures
- error distribution across repeated simulations;
- confidence interval width versus number of paths;
- variance reduction factor by method.
Project P5: Pricing Asian, Barrier, and Lookback Options
Main question
How do path-dependent payoffs change option values?
Suggested tasks
- Simulate risk-neutral GBM paths.
- Price arithmetic Asian options.
- Price barrier options.
- Price lookback options.
- Study sensitivity to volatility and monitoring frequency.
Mathematical ideas
- path dependence;
- running average;
- running maximum and minimum;
- barrier crossing;
- Monte Carlo pricing.
Possible figures
- example stock paths with payoff features marked;
- option price versus volatility;
- barrier option price versus barrier level;
- monitoring-frequency effect.
Project P6: Finite Difference Methods for European and American Options
Main question
How can option-pricing PDEs be solved numerically?
Suggested tasks
- Implement explicit, implicit, or Crank–Nicolson finite differences.
- Compare numerical prices with Black–Scholes for European options.
- Extend to an American put if appropriate.
- Study stability and convergence.
Mathematical ideas
- Black–Scholes PDE;
- terminal condition;
- boundary condition;
- grid discretization;
- stability;
- early exercise.
Possible figures
- option value surface;
- error versus grid size;
- early exercise boundary for an American put.
Project P7: Change of Measure and Likelihood-Ratio Pricing
Main question
How can risk-neutral pricing be computed by reweighting paths simulated under a different measure?
Suggested tasks
- Simulate GBM under a physical drift.
- Compute likelihood-ratio weights.
- Reweight payoffs to estimate risk-neutral prices.
- Compare with direct risk-neutral simulation.
- Study the effective sample size of the weights.
Mathematical ideas
- Radon–Nikodym derivative;
- Girsanov theorem;
- likelihood-ratio weighting;
- risk-neutral pricing;
- effective sample size.
Possible figures
- distribution of likelihood-ratio weights;
- weighted versus unweighted payoff estimates;
- effective sample size versus drift difference.
Project P8: Vasicek and CIR Yield-Curve Modeling
Main question
How do Vasicek and CIR short-rate models generate different zero-coupon bond prices and yield curves?
Suggested tasks
- Simulate Vasicek and CIR short rates.
- Compute model-implied bond prices.
- Plot model-implied yield curves.
- Compare parameter sensitivities.
- Calibrate simple parameters to a synthetic zero curve.
Mathematical ideas
- short-rate discounting;
- affine term structure;
- mean reversion;
- positive-rate constraint in CIR;
- yield-curve calibration.
Possible figures
- simulated short-rate paths;
- zero-coupon bond prices by maturity;
- yield curves under different parameters;
- calibration fit.
Project P9: HJM Forward-Curve Simulation and Yield-Curve Risk
Main question
How does the HJM framework model the evolution of the entire forward curve?
Suggested tasks
- Specify an initial forward curve.
- Choose one-factor or two-factor volatility functions.
- Simulate forward curves under the HJM drift restriction.
- Compute zero rates and discount factors.
- Study principal components of yield-curve changes.
Mathematical ideas
- instantaneous forward rates;
- HJM no-arbitrage drift;
- curve-valued stochastic processes;
- factor structure;
- yield-curve risk.
Possible figures
- initial and simulated forward curves;
- zero curves over time;
- factor loading shapes;
- principal components of curve changes.
Project P10: Mean-Variance Portfolio Optimization with Estimation Risk
Main question
How sensitive are optimized portfolios to estimated means and covariances?
Suggested tasks
- Simulate or collect asset returns.
- Estimate sample mean and covariance.
- Compute global minimum-variance and tangency portfolios.
- Add long-only or max-weight constraints.
- Compare results under covariance shrinkage.
Mathematical ideas
- portfolio expected return;
- portfolio variance;
- efficient frontier;
- Sharpe ratio;
- constrained optimization;
- estimation risk.
Possible figures
- efficient frontier;
- random portfolios;
- optimized portfolio weights;
- out-of-sample performance comparison.
Project P11: CAPM and Multi-Factor Risk Decomposition
Main question
How can portfolio risk be decomposed into systematic and idiosyncratic components?
Suggested tasks
- Simulate or collect factor returns and asset returns.
- Estimate CAPM beta and alpha.
- Estimate multi-factor exposures.
- Decompose variance into factor and residual components.
- Analyze portfolio factor exposure.
Mathematical ideas
- linear regression;
- beta;
- alpha;
- factor covariance;
- idiosyncratic variance;
- tracking error.
Possible figures
- asset excess return versus market excess return;
- estimated factor exposures;
- systematic versus residual variance;
- portfolio factor contribution chart.
Project P12: Value at Risk, Expected Shortfall, and Backtesting
Main question
How well do different risk models forecast portfolio losses?
Suggested tasks
- Simulate or collect daily portfolio returns.
- Compute historical VaR and ES.
- Compute normal VaR and ES.
- Implement rolling VaR forecasts.
- Count exceptions and run coverage checks.
- Compare performance in calm and volatile periods.
Mathematical ideas
- loss distribution;
- quantiles;
- conditional tail expectation;
- rolling estimation;
- backtesting;
- exception clustering.
Possible figures
- returns and rolling VaR forecasts;
- loss distribution with VaR and ES marked;
- exception plot;
- model comparison table.
Project P13: Heston Stochastic Volatility and Volatility Skew
Main question
How does stochastic volatility generate implied-volatility smiles and skews?
Suggested tasks
- Simulate Heston stock and variance paths.
- Price options under the Heston model.
- Convert prices to Black–Scholes implied volatilities.
- Study the effect of correlation, long-run variance, and vol-of-vol.
- Compare with a constant-volatility Black–Scholes model.
Mathematical ideas
- stochastic variance;
- CIR-type variance process;
- leverage effect;
- option pricing under stochastic volatility;
- implied-volatility skew.
Possible figures
- stock and variance paths;
- implied-volatility smile;
- skew under different correlations;
- option price comparison with Black–Scholes.
Project P14: Integrated Option Portfolio: Calibration, Hedging, and Risk
Main question
How can pricing, calibration, hedging, and risk measurement be combined in one workflow?
Suggested tasks
- Construct a small option portfolio.
- Generate or use option quotes.
- Estimate implied volatilities.
- Fit a smile or surface.
- Compute Greeks.
- Simulate hedging errors.
- Compute portfolio VaR and ES.
- Compare full revaluation with Delta-Gamma-Vega approximation.
Mathematical ideas
- implied-volatility calibration;
- Greeks;
- hedging;
- full revaluation;
- risk approximation;
- stress testing.
Possible figures
- volatility smile or surface;
- option portfolio value under scenarios;
- hedging error histogram;
- VaR and ES comparison.
Project P15: Student-Designed Mathematical Finance Project
Students may propose a custom project. A custom project should still include:
- a clear mathematical finance question;
- a model;
- Python implementation;
- numerical experiment;
- financial interpretation;
- discussion of limitations.
Possible custom directions include:
- jump-diffusion option pricing;
- local volatility;
- rough volatility introduction;
- credit risk modeling;
- pairs trading and cointegration;
- optimal execution;
- reinforcement learning for hedging;
- machine learning for volatility forecasting;
- factor timing;
- stress testing under macro scenarios.
Custom projects should be approved by the instructor before the main work begins.
Proposal template
Students may use the following proposal structure.
Project title:
Team members:
Main question:
What financial or mathematical question will the project answer?
Motivation:
Why is this question important?
Model:
What mathematical model will be used?
What assumptions does the model make?
Data or simulation plan:
Will the project use synthetic data, real data, or both?
How will the data be generated or obtained?
Computational plan:
What functions, algorithms, or numerical methods will be implemented?
Expected figures and tables:
What plots or tables will appear in the final report?
Risks and limitations:
What might make the project difficult?
What assumptions may be unrealistic?
Timeline:
What will be completed by each milestone?
Final report template
A recommended final report structure is:
1. Introduction
- State the financial question.
- Explain why it matters.
2. Mathematical model
- Define variables and assumptions.
- Present main equations.
- Explain the pricing, hedging, optimization, or risk framework.
3. Computational method
- Describe algorithms.
- Explain simulation or numerical method.
- Mention Python packages used.
4. Numerical experiments
- Present figures and tables.
- Explain parameter choices.
- Compare results across methods or scenarios.
5. Interpretation
- Explain what the results mean financially.
- Discuss whether the results match theory.
6. Limitations and extensions
- Discuss model assumptions.
- Explain what could be improved.
7. Conclusion
- Summarize the main finding.
8. References
- Cite books, papers, data sources, and code resources.
Notebook expectations
The project notebook should be clean and reproducible.
A good notebook includes:
- a title and short project summary;
- imports in the first code cell;
- fixed random seeds for simulation;
- clearly named parameters;
- reusable functions;
- figures with titles and axis labels;
- short markdown explanations between code blocks;
- a conclusion cell summarizing findings.
Avoid notebooks that are only long blocks of code without explanation.
Presentation template
For a 7–10 minute presentation, use approximately 6–8 slides.
| Slide | Content |
|---|---|
| 1 | Title, team, and main question |
| 2 | Financial motivation |
| 3 | Mathematical model |
| 4 | Computational method |
| 5 | Main results |
| 6 | Interpretation |
| 7 | Limitations |
| 8 | Conclusion and questions |
Suggested milestones
| Milestone | Suggested due date | Deliverable |
|---|---|---|
| Topic selection | Week 5 | Choose topic and team |
| Proposal | Week 7 | Submit 1–2 page proposal |
| Prototype notebook | Week 10 | Basic code and first figures |
| Draft report | Week 12 | Preliminary report |
| Final submission | Week 14 | Final notebook, report, and optional slides |
Grading rubric
A possible grading rubric is:
| Category | Weight | Excellent work |
|---|---|---|
| Financial question and motivation | 10% | The question is clear, meaningful, and well motivated. |
| Mathematical modeling | 25% | Assumptions, variables, and equations are correct and clearly explained. |
| Computational implementation | 25% | Code is correct, organized, reproducible, and appropriate for the model. |
| Numerical experiments | 15% | Experiments are well designed and include useful comparisons. |
| Interpretation | 15% | Results are explained in financial and mathematical terms. |
| Communication | 10% | Report and notebook are clear, polished, and easy to follow. |
Academic integrity and AI use
Students may use AI tools for help with coding, debugging, explanation, and brainstorming, subject to instructor policy. However, the final project must reflect the student’s own understanding.
A responsible AI-use statement could include:
AI tools were used for debugging and improving code readability.
All mathematical modeling decisions, numerical experiments, interpretations,
and final explanations were checked and written by the project team.
Students should cite external sources, including data sources, papers, textbooks, and substantial code resources.
Reproducibility checklist
Before submitting, check the following:
- The notebook runs from top to bottom without errors.
- Random seeds are set when simulations are used.
- Figures have titles and axis labels.
- Parameters are clearly stated.
- The report explains all major equations.
- Tables and figures are referenced in the text.
- The conclusion answers the original question.
- All sources are cited.
- The submitted files have clear names.
Recommended file names
Use clear file names such as:
final-project-report.pdf
final-project-notebook.ipynb
final-project-slides.pdf
For teams, include a short project name:
heston-smile-project-report.pdf
heston-smile-project-notebook.ipynb
heston-smile-project-slides.pdf
Connection to the labs
The final project should extend the labs rather than simply repeat them.
A good project usually changes at least one of the following:
- model parameters;
- payoff structure;
- numerical method;
- market scenario;
- risk measure;
- calibration objective;
- comparison benchmark;
- data source;
- interpretation question.
For example, a lab may price one option, while a project may compare pricing, hedging, and risk for an entire option portfolio.
Closing advice
Choose a project that is small enough to finish carefully.
A strong final project is not the one with the most complicated model. A strong project is one where the question is clear, the mathematics is correct, the code is reproducible, and the interpretation is thoughtful.