Merton Jump Diffusion Option Price (Matrixwise)

Calculates Merton's 1976 Jump Diffusion Model by Closed Form Matrixwise Calculation for Full Surface

Al momento, stai seguendo questo contributo

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

Cita come

Mark Whirdy (2026). Merton Jump Diffusion Option Price (Matrixwise) (https://it.mathworks.com/matlabcentral/fileexchange/41939-merton-jump-diffusion-option-price-matrixwise), MATLAB Central File Exchange. Recuperato .

Riconoscimenti

Ispirato da: calcBSImpVol(cp,P,S,K,T,r,q)

Categorie

Scopri di più su Financial Toolbox in Help Center e MATLAB Answers

Informazioni generali

Compatibilità della release di MATLAB

  • Compatibile con qualsiasi release

Compatibilità della piattaforma

  • Windows
  • macOS
  • Linux
Versione Pubblicato Note della release Action
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