Open main menu

In statistics, stochastic volatility models are those in which the variance of a stochastic process is itself randomly distributed.[1] They are used in the field of mathematical finance to evaluate derivative securities, such as options. The name derives from the models' treatment of the underlying security's volatility as a random process, governed by state variables such as the price level of the underlying security, the tendency of volatility to revert to some long-run mean value, and the variance of the volatility process itself, among others.

Stochastic volatility models are one approach to resolve a shortcoming of the Black–Scholes model. In particular, models based on Black-Scholes assume that the underlying volatility is constant over the life of the derivative, and unaffected by the changes in the price level of the underlying security. However, these models cannot explain long-observed features of the implied volatility surface such as volatility smile and skew, which indicate that implied volatility does tend to vary with respect to strike price and expiry. By assuming that the volatility of the underlying price is a stochastic process rather than a constant, it becomes possible to model derivatives more accurately.


Basic modelEdit

Starting from a constant volatility approach, assume that the derivative's underlying asset price follows a standard model for geometric Brownian motion:


where   is the constant drift (i.e. expected return) of the security price  ,   is the constant volatility, and   is a standard Wiener process with zero mean and unit rate of variance. The explicit solution of this stochastic differential equation is


The maximum likelihood estimator to estimate the constant volatility   for given stock prices   at different times   is


its expected value is  

This basic model with constant volatility   is the starting point for non-stochastic volatility models such as Black–Scholes model and Cox–Ross–Rubinstein model.

For a stochastic volatility model, replace the constant volatility   with a function  , that models the variance of  . This variance function is also modeled as Brownian motion, and the form of   depends on the particular SV model under study.


where   and   are some functions of  , and   is another standard gaussian that is correlated with   with constant correlation factor  .

Heston modelEdit

The popular Heston model is a commonly used SV model, in which the randomness of the variance process varies as the square root of variance. In this case, the differential equation for variance takes the form:


where   is the mean long-term volatility,   is the rate at which the volatility reverts toward its long-term mean,   is the volatility of the volatility process, and   is, like  , a gaussian with zero mean and   standard deviation. However,   and   are correlated with the constant correlation value  .

In other words, the Heston SV model assumes that the variance is a random process that

  1. exhibits a tendency to revert towards a long-term mean   at a rate  ,
  2. exhibits a volatility proportional to the square root of its level
  3. and whose source of randomness is correlated (with correlation  ) with the randomness of the underlying's price processes.

Some parametrisation of the volatility surface, such as 'SVI',[2] are based on the Heston model.

CEV modelEdit

The CEV model describes the relationship between volatility and price, introducing stochastic volatility:


Conceptually, in some markets volatility rises when prices rise (e.g. commodities), so  . In other markets, volatility tends to rise as prices fall, modelled with  .

Some argue that because the CEV model does not incorporate its own stochastic process for volatility, it is not truly a stochastic volatility model. Instead, they call it a local volatility model.

SABR volatility modelEdit

The SABR model (Stochastic Alpha, Beta, Rho), introduced by Hagan et al.[3] describes a single forward   (related to any asset e.g. an index, interest rate, bond, currency or equity) under stochastic volatility  :


The initial values   and   are the current forward price and volatility, whereas   and   are two correlated Wiener processes (i.e. Brownian motions) with correlation coefficient  . The constant parameters   are such that  .

The main feature of the SABR model is to be able to reproduce the smile effect of the volatility smile.

GARCH modelEdit

The Generalized Autoregressive Conditional Heteroskedasticity (GARCH) model is another popular model for estimating stochastic volatility. It assumes that the randomness of the variance process varies with the variance, as opposed to the square root of the variance as in the Heston model. The standard GARCH(1,1) model has the following form for the variance differential:


The GARCH model has been extended via numerous variants, including the NGARCH, TGARCH, IGARCH, LGARCH, EGARCH, GJR-GARCH, etc. Strictly, however, the conditional volatilities from GARCH models are not stochastic since at time t the volatility is completely pre-determined (deterministic) given previous values.[4]

3/2 modelEdit

The 3/2 model is similar to the Heston model, but assumes that the randomness of the variance process varies with  . The form of the variance differential is:


However the meaning of the parameters is different from Heston model. In this model both, mean reverting and volatility of variance parameters, are stochastic quantities given by   and   respectively.

Calibration and estimationEdit

Once a particular SV model is chosen, it must be calibrated against existing market data. Calibration is the process of identifying the set of model parameters that are most likely given the observed data. One popular technique is to use maximum likelihood estimation (MLE). For instance, in the Heston model, the set of model parameters   can be estimated applying an MLE algorithm such as the Powell Directed Set method [1] to observations of historic underlying security prices.

In this case, you start with an estimate for  , compute the residual errors when applying the historic price data to the resulting model, and then adjust   to try to minimize these errors. Once the calibration has been performed, it is standard practice to re-calibrate the model periodically.

An alternative to calibration is statistical estimation, thereby accounting for parameter uncertainty. Many frequentist and Bayesian methods have been proposed and implemented, typically for a subset of the abovementioned models. The following list contains extension packages for the open source statistical software R that have been specifically designed for heteroskedasticity estimation. The first three cater for GARCH-type models with deterministic volatilities; the fourth deals with stochastic volatility estimation.

  • rugarch: ARFIMA, in-mean, external regressors and various GARCH flavors, with methods for fit, forecast, simulation, inference and plotting.[5]
  • fGarch: Part of the Rmetrics environment for teaching "Financial Engineering and Computational Finance".
  • bayesGARCH: Bayesian estimation of the GARCH(1,1) model with Student's t innovations.[6]
  • stochvol: Efficient algorithms for fully Bayesian estimation of stochastic volatility (SV) models via Markov chain Monte Carlo (MCMC) methods.[7][8]

There are also alternate statistical estimation libraries in other languages such as Python:

  • PyFlux Includes Bayesian and classical inference support for GARCH and beta-t-EGARCH models.

See alsoEdit


  1. ^ Jim Gatheral (18 September 2006). The Volatility Surface: A Practitioner's Guide. Wiley. ISBN 978-0-470-06825-0.
  2. ^ J Gatheral, A Jacquier (2014). "Arbitrage-free SVI volatility surfaces". Quantitative Finance. 14. arXiv:1204.0646. doi:10.1080/14697688.2013.819986.
  3. ^ PS Hagan, D Kumar, A Lesniewski, DE Woodward (2002) Managing smile risk, Wilmott, 84-108.
  4. ^ Brooks, Chris (2014). Introductory Econometrics for Finance (3rd ed.). Cambridge: Cambridge University Press. p. 461. ISBN 9781107661455.
  5. ^ Ghalanos, Alexios. "rugarch: Univariate GARCH models".
  6. ^ Ardia, David; Hoogerheide, Lennart F. (2010). "Bayesian Estimation of the GARCH(1,1) Model with Student-t Innovations" (PDF). The R Journal. 2 (2): 41–47.
  7. ^ Kastner, Gregor (2016). "Dealing with Stochastic Volatility in Time Series Using the R Package stochvol" (PDF). Journal of Statistical Software. 69 (5): 1–30. doi:10.18637/jss.v069.i05.
  8. ^ Kastner, Gregor; Frühwirth-Schnatter, Sylvia (2014). "Ancillarity-Sufficiency Interweaving Strategy (ASIS) for Boosting MCMC Estimation of Stochastic Volatility Models" (PDF). Computational Statistics and Data Analysis. 79: 408–423. doi:10.1016/j.csda.2013.01.002.