Simple Approaches to the Black-Scholes Equation

BLACK_SCHOLES is a FORTRAN90 library which demonstrates several approaches to the valuation of a European call, creating graphics files for processing by gnuplot, by Desmond Higham.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


BLACK_SCHOLES is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

COLORED_NOISE, a FORTRAN90 library which generates samples of noise obeying a 1/f^alpha power law.

GNUPLOT, FORTRAN90 programs which illustrate how a program can write data and command files so that gnuplot can create plots of the program results.

ORNSTEIN_UHLENBECK, a FORTRAN90 library which approximates solutions of the Ornstein-Uhlenbeck stochastic differential equation (SDE) using the Euler method and the Euler-Maruyama method.

PCE_LEGENDRE, a MATLAB program which assembles the system matrix associated with a polynomal chaos expansion of a 2D stochastic PDE, using Legendre polynomials;

PCE_ODE_HERMITE, a FORTRAN90 program which sets up a simple scalar ODE for exponential decay with an uncertain decay rate, using a polynomial chaos expansion in terms of Hermite polynomials.

PINK_NOISE, a FORTRAN90 library which computes a "pink noise" signal obeying a 1/f power law.

SDE, a FORTRAN90 library which illustrates the properties of stochastic differential equations, and common algorithms for their analysis, by Desmond Higham;

STOCHASTIC_DIFFUSION, a FORTRAN90 library which implements several versions of a stochastic diffusivity coefficient.

STOCHASTIC_GRADIENT_ND_NOISE, a MATLAB program which solves an optimization problem involving a functional over a system with stochastic noise.

STOCHASTIC_RK, a FORTRAN90 library which applies a Runge-Kutta scheme to a stochastic differential equation.


Original MATLAB version by Desmond Higham;
FORTRAN90 version by John Burkardt.


  1. Desmond Higham,
    Black-Scholes for Scientific Computing Students,
    Computing in Science and Engineering,
    Volume 6, Number 6, November/December 2004, pages 72-79.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN90 source codes.

Last revised on 16 February 2012.