Products & Services Solutions Academia Support User Community Company

Learn more about Econometrics Toolbox   

heston - Heston stochastic volatility models

Synopsis

heston = heston(Return, Speed, Level, Volatility)

heston = heston(Return, Speed, Level, Volatility, 'Name1', Value1, 'Name2', Value2, ...)

Class

Heston

Description

This constructor creates and displays heston objects, which derive from the SDEDDO (SDE from drift and diffusion objects) class. Use heston objects to simulate sample paths of two state variables. Each state variable is driven by a single Brownian motion source of risk over NPERIODS consecutive observation periods, approximating continuous-time stochastic volatility processes.

Heston models are bivariate composite models. Each Heston model consists of two coupled univariate models:

Input Arguments

Specify required input parameters as one of the following types:

The required input parameters are:

ReturnIf you specify Return as a scalar, it represents the expected (mean) instantaneous rate of return of the univariate GBM price model. If you specify it as a function, Return calculates the instantaneous rate of return of the GBM price model. This function generates a scalar when invoked with two inputs:
  • A real-valued scalar observation time t.

  • A 2-by-1 bivariate state vector Xt.

SpeedIf you specify Speed as a scalar, it represents the mean-reversion speed of the univariate CIR stochastic variance model (the speed at which the CIR variance reverts to its long-run average level). If you specify it as a function, Speed calculates the speed of mean reversion of the CIR variance model. This function generates a scalar when invoked with two inputs:
  • A real-valued scalar observation time t.

  • A 2-by-1 state vector Xt.

LevelIf you specify Level as a scalar, it represents the reversion level of the univariate CIR stochastic variance model. If you specify it as a function, Level calculates the reversion level of the CIR variance model. This function generates a scalar when invoked with two inputs:
  • A real-valued scalar observation time t.

  • A 2-by-1 state vector Xt.

VolatilityIf you specify Volatility as a scalar, it represents the instantaneous volatility of the CIR stochastic variance model, often called the volatility of volatility or volatility of variance. If you specify it as a function, Volatility generates a scalar when invoked with two inputs:
  • A real-valued scalar observation time t.

  • A 2-by-1 state vector Xt.

Optional Input Arguments

Specify optional input arguments as variable-length lists of matching parameter name/value pairs: 'Name1', Value1, 'Name2', Value2, ... and so on. The following rules apply when specifying parameter-name pairs:

The following table lists valid parameter names.

StartTimeScalar starting time of the first observation, applied to all state variables. If you do not specify a value for StartTime, the default is 0.
StartStateScalar, 2-by-1 column vector, or 2-by-NTRIALS matrix of initial values of the state variables.

If StartState is a scalar, heston applies the same initial value to both state variables on all trials.

If StartState is a bivariate column vector, heston applies a unique initial value to each state variable on all trials.

If StartState is a matrix, heston applies a unique initial value to each state variable on each trial.

If you do not specify a value for StartState, all variables start at 1.

CorrelationCorrelation between Gaussian random variates drawn to generate the Brownian motion vector (Wiener processes). Specify Correlation as a scalar, a 2-by-2 positive semidefinite matrix, or as a deterministic function C(t) that accepts the current time t and returns an 2-by-2 positive semidefinite correlation matrix.

A Correlation matrix represents a static condition.

As a deterministic function of time, Correlation allows you to specify a dynamic correlation structure.

If you do not specify a value for Correlation, the default is a 2-by-2 identity matrix representing independent Gaussian processes.

SimulationA user-defined simulation function or SDE simulation method. If you do not specify a value for Simulation, the default method is simulation by Euler approximation (simByEuler).

Output Arguments

hestonObject of class heston with the following displayed parameters:
  • StartTime: Initial observation time

  • StartState: Initial state at StartTime

  • Correlation: Access function for the Correlation input, callable as a function of time

  • Drift: Composite drift-rate function, callable as a function of time and state

  • Diffusion: Composite diffusion-rate function, callable as a function of time and state

  • Simulation: A simulation function or method

  • Return: Access function for the input argument Return, callable as a function of time and state

  • Speed: Access function for the input argument Speed, callable as a function of time and state

  • Level: Access function for the input argument Level, callable as a function of time and state

  • Volatility: Access function for the input argument Volatility, callable as a function of time and state

Examples

See Creating Heston Stochastic Volatility Models.

See Also

cir, gbm, sdeddo

  


Free Interactive Computational Finance CD

View demos and recorded presentations led by industry experts.

Now On Demand
Network with industry peers and learn the latest applications of the leading software product for computational finance.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS