Merton Jump Diffusion Option Price (Matrixwise)
Calculates Option Prices by Merton's 1976 Jump Diffusion Model by Closed Form Matrixwise Calculation for Full Surface
Inputs:
cp [1,-1] Call,Put
S Current Price
K Strike Vector
T Time-to-Maturity Vector
sigma Volatility of Diffusion
r Risk-free-Rate
q Div Yield
lambda Poisson Rate
a Jump Mean
b Jump Std Deviation
n Event Count (Limited to 170 since factorial(170)=7.26e306)
Example:
S = 100; K = (20:5:180)'; T = (0.1:0.1:5)';
sigma = 0.2; r = 0.0075; q = 0; lambda = 0.01; a = -0.2; b = 0.6; n = 50;
P = ia_calcMJDOptionPrice(cp,S,K,T,sigma,r,q,lambda,a,b,n);
[mK,mT] = meshgrid(K,T); [sigma,C] = calcBSImpVol(cp,P,S,mK,mT,r,q);
subplot(2,1,1); mesh(mK,mT,P); subplot(2,1,2); mesh(mK,mT,sigma);
References:
Merton, 1976, Option Pricing When Underlying Stock Returns are Discontinuous
http://www.people.hbs.edu/rmerton/optionpricingwhenunderlingstock.pdf
Citation pour cette source
Mark Whirdy (2025). Merton Jump Diffusion Option Price (Matrixwise) (https://www.mathworks.com/matlabcentral/fileexchange/41939-merton-jump-diffusion-option-price-matrixwise), MATLAB Central File Exchange. Extrait(e) le .
Compatibilité avec les versions de MATLAB
Plateformes compatibles
Windows macOS LinuxCatégories
Tags
Remerciements
Inspiré par : calcBSImpVol(cp,P,S,K,T,r,q)
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Découvrir Live Editor
Créez des scripts avec du code, des résultats et du texte formaté dans un même document exécutable.
Version | Publié le | Notes de version | |
---|---|---|---|
1.1.0.0 | Fixed small bug in the example given which omitted defining the variable "cp", and called "ia_calcMJDOptionPrice" instead of "calcMJDOptionPrice" |
||
1.0.0.0 |