File Exchange

image thumbnail

Merton Jump Diffusion Option Price (Matrixwise)

version 1.1 (1.97 KB) by

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

10 Downloads

Updated

View License

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

Comments and Ratings (2)

Liqun

Liqun (view profile)

Do you have matrixwise Black Scholes Option price?

Excellent program, well written and knowledgable author. Was kind enough to answer my questions and showed me how to execute the program to fit my needs. Very professional and kind.

Updates

1.1

Fixed small bug in the example given which omitted defining the variable "cp", and called "ia_calcMJDOptionPrice" instead of "calcMJDOptionPrice"

MATLAB Release
MATLAB 8.0 (R2012b)
Acknowledgements

Inspired by: Fast Matrixwise Black-Scholes Implied Volatility

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video