Skip to content

A collection of numerical implementations for the simulation of well-known stochastic processes on MATLAB.

Notifications You must be signed in to change notification settings

hjstobart/matlab-stochastic-processes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Overview:

Numerical implementations for the simulation of well known stochastic processes using the Euler(-Maruyama) method on MATLAB.

Contents:

  • Arithmetic Brownian Motion
  • Brownian Bridge
  • Feller Square Root Process (Also known as: Cox-Ingersoll-Ross Model)
  • Geometric Brownian Motion
  • Kou Jump Diffusion
  • Merton Jump Diffusion
  • Ornstein-Uhlenbeck Process (Also known as: Vasicek Model)
  • Variance Gamma Process

Note:

Dear reader,

Stochastic Processes are a topic that arises in many mathematically related fields, not just Finance, but Physics, Chemistry, Biology and more recently even the social sciences as well. As such they have been studied intensively from both a mathematical and computational point of view. This repository concerns the latter, that is, it is focused on the numerical simulation of some traditional stochastic processes used in Finance.

There are a number of different methods/algorithms available when considering how to implement these processes, including: the Euler-Maruyama method (sometimes simply referred to as the Euler method); the Euler-Maruyama method with Analytic Moments; the Milstein Scheme; the Runge-Kutta method; and I’m sure there are others that I have missed. All of which are designed to simulate stochastic processes and to solve stochastic differential equations. Thus far, my own implementations only use the Euler-Maruyama method, but I hope to add to this in the future.

As always the scripts may not be perfect, but I hope they provide some insight for those who come across them.

H ✌️


Terms & Conditions

Disclaimer:

This repository and the code therein may be freely copied and distributed as necessary. It is being provided solely for information and general illustrative purposes. The author will not be responsible for the consequences of reliance upon the code or for numbers produced from using the code.

End User Terms of Service:

Where appropriate, this repository is in compliance with Section C. Acceptable Use and Section D. User-Generated Content of the GitHub Terms of Service. For more information, please see here: https://docs.github.com/en/site-policy/github-terms/github-terms-of-service