This Excel spreadsheet provides a simple implementation of jump diffusion. This technique is useful for modeling stock prices (or indeed other commodities, such as energy prices) subject to sudden shocks.
Stocks often drift in value in small amounts, but are sometimes punctuated by large spikes. These large jumps represent low-probability but high-impact events. In other words, jump diffusion is a mathematical tool for modeling fat-tail risk.
Merton first explored this concept in the 1976 paper “Option pricing when underlying stock prices are discontinuous”, and called it jump diffusion. His pioneering work gave risk analysts the mathematical tools needed to manage the risk inherent in these price spikes.
Simple Excel Model of Jump Diffusion
The Excel spreadsheet models the effect of jump diffusion on a stock price (whose price is normally dictated by Brownian drift). The relevant equation is as follows.
- rt is the log return
- α is the mean drift
- ε is the diffusion. This follows a normal distribution. It is calculated by σ*NORMSINV(RAND()), where sigma is the standard deviation of the jumps
- I is equal to 0 (for no jump) or 1 (for a jump). The value is determined by the jump probability
- ut is the value of the jump. This follows a normal distribution and is determined by E[u] + σu*NORMSINV(RAND()), where E[u] and σu are the mean and standard deviation of the jump
The spreadsheet is easy to use. Simply enter your parameters as indicated, and Excel will calculate the path of the stock price. Click on the Recalculate button to generate a new path.
The prices are illustrated in a plot, with vertical lines indicating the position of the jumps.
Jump diffusion is closely related to the concept of Brownian Motion.
The simple implementation demonstrated here is the basis of more complicated models used by financial practitioners to model real financial instruments.
Download Excel Spreadsheet for Jump Diffusion
hello, i am new to jump diffusion process, by looking at the above sheet, I am not able to understand where to feed the data set. and how to generate results??
Kindly help.