5.0

5.0 | 1 rating Rate this file 31 Downloads (last 30 days) File Size: 1.97 KB File ID: #41939
image thumbnail

Merton Jump Diffusion Option Price (Matrixwise)

by

 

24 May 2013 (Updated )

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

| Watch this File

File Information
Description

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

Acknowledgements

Fast Matrixwise Black Scholes Implied Volatility inspired this file.

Required Products MATLAB
MATLAB release MATLAB 8.0 (R2012b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
24 Jun 2013 Justin Rodrigues

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
28 May 2013

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

Contact us