| Products & Services | Solutions | Academia | Support | User Community | Company |
| Download Product Updates | | | Get Pricing | | | Trial Software |
| Documentation → Econometrics Toolbox |
| Contents | Index |
| Learn more about Econometrics Toolbox |
heston = heston(Return, Speed, Level, Volatility)
heston = heston(Return, Speed, Level, Volatility, 'Name1', Value1, 'Name2', Value2, ...)
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:
A geometric Brownian motion (GBM) model with a stochastic volatility function.
![]()
This model usually corresponds to a price process whose volatility (variance rate) is governed by the second univariate model.
A Cox-Ingersoll-Ross (CIR) square root diffusion model.
![]()
This model describes the evolution of the variance rate of the coupled GBM price process.
Specify required input parameters as one of the following types:
A MATLAB array. Specifying an array indicates a static (non-time-varying) parametric specification. This array fully captures all implementation details, which are clearly associated with a parametric form.
A MATLAB function. Specifying a function provides indirect support for virtually any static, dynamic, linear, or nonlinear model. This parameter is supported via an interface, because all implementation details are hidden and fully encapsulated by the function.
The required input parameters are:
| Return | If 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:
|
| Speed | If 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:
|
| Level | If 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:
|
| Volatility | If 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:
|
Note Although the constructor does not enforce restrictions on the signs of any of these input arguments, each argument is usually specified as a positive value. |
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:
Specify the parameter name as a character string, followed by its corresponding parameter value.
You can specify parameter name/value pairs in any order.
Parameter names are case insensitive.
You can specify unambiguous partial string matches.
The following table lists valid parameter names.
| StartTime | Scalar starting time of the first observation, applied to all state variables. If you do not specify a value for StartTime, the default is 0. |
| StartState | Scalar, 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. |
| Correlation | Correlation 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. |
| Simulation | A 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). |
| heston | Object of class heston with the following
displayed parameters:
|
See Creating Heston Stochastic Volatility Models.
![]() | gbm | hpfilter | ![]() |
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 |