Starting from a constant volatility approach, assume that the derivative's underlying asset price follows a standard model for geometric Brownian motion:
where μ {\displaystyle \mu \,} is the constant drift (i.e. expected return) of the security price S t {\displaystyle S_{t}\,} , σ {\displaystyle \sigma \,} is the constant volatility, and d W t {\displaystyle dW_{t}\,} 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 σ {\displaystyle \sigma \,} for given stock prices S t {\displaystyle S_{t}\,} at different times t i {\displaystyle t_{i}\,} is
its expected value is E [ σ ^ 2 ] = n − 1 n σ 2 . {\displaystyle \operatorname {E} \left[{\widehat {\sigma }}^{2}\right]={\frac {n-1}{n}}\sigma ^{2}.}
This basic model with constant volatility σ {\displaystyle \sigma \,} 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 σ {\displaystyle \sigma } with a function ν t {\displaystyle \nu _{t}} that models the variance of S t {\displaystyle S_{t}} . This variance function is also modeled as Brownian motion, and the form of ν t {\displaystyle \nu _{t}} depends on the particular SV model under study.
where α ν , t {\displaystyle \alpha _{\nu ,t}} and β ν , t {\displaystyle \beta _{\nu ,t}} are some functions of ν {\displaystyle \nu } , and d B t {\displaystyle dB_{t}} is another standard gaussian that is correlated with d W t {\displaystyle dW_{t}} with constant correlation factor ρ {\displaystyle \rho } .
Main article: Heston model
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 ω {\displaystyle \omega } is the mean long-term variance, θ {\displaystyle \theta } is the rate at which the variance reverts toward its long-term mean, ξ {\displaystyle \xi } is the volatility of the variance process, and d B t {\displaystyle dB_{t}} is, like d W t {\displaystyle dW_{t}} , a gaussian with zero mean and d t {\displaystyle dt} variance. However, d W t {\displaystyle dW_{t}} and d B t {\displaystyle dB_{t}} are correlated with the constant correlation value ρ {\displaystyle \rho } .
In other words, the Heston SV model assumes that the variance is a random process that
Some parametrisation of the volatility surface, such as 'SVI',2 are based on the Heston model.
Main article: Constant elasticity of variance model
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 γ > 1 {\displaystyle \gamma >1} . In other markets, volatility tends to rise as prices fall, modelled with γ < 1 {\displaystyle \gamma <1} .
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.
Main article: SABR volatility model
The SABR model (Stochastic Alpha, Beta, Rho), introduced by Hagan et al.3 describes a single forward F {\displaystyle F} (related to any asset e.g. an index, interest rate, bond, currency or equity) under stochastic volatility σ {\displaystyle \sigma } :
The initial values F 0 {\displaystyle F_{0}} and σ 0 {\displaystyle \sigma _{0}} are the current forward price and volatility, whereas W t {\displaystyle W_{t}} and Z t {\displaystyle Z_{t}} are two correlated Wiener processes (i.e. Brownian motions) with correlation coefficient − 1 < ρ < 1 {\displaystyle -1<\rho <1} . The constant parameters β , α {\displaystyle \beta ,\;\alpha } are such that 0 ≤ β ≤ 1 , α ≥ 0 {\displaystyle 0\leq \beta \leq 1,\;\alpha \geq 0} .
The main feature of the SABR model is to be able to reproduce the smile effect of the volatility smile.
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 continuous variance differential:4
The GARCH model has been extended via numerous variants, including the NGARCH, TGARCH, IGARCH, LGARCH, EGARCH, GJR-GARCH, Power GARCH, Component 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.5
The 3/2 model is similar to the Heston model, but assumes that the randomness of the variance process varies with ν t 3 / 2 {\displaystyle \nu _{t}^{3/2}} . 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 θ ν t {\displaystyle \theta \nu _{t}} and ξ ν t {\displaystyle \xi \nu _{t}} respectively.
Using estimation of volatility from high frequency data, smoothness of the volatility process has been questioned.6 It has been found that log-volatility behaves as a fractional Brownian motion with Hurst exponent of order H = 0.1 {\displaystyle H=0.1} , at any reasonable timescale. This led to adopting a fractional stochastic volatility (FSV) model,7 leading to an overall Rough FSV (RFSV) where "rough" is to highlight that H < 1 / 2 {\displaystyle H<1/2} . The RFSV model is consistent with time series data, allowing for improved forecasts of realized volatility.89
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 Ψ 0 = { ω , θ , ξ , ρ } {\displaystyle \Psi _{0}=\{\omega ,\theta ,\xi ,\rho \}\,} 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 Ψ 0 {\displaystyle \Psi _{0}\,} , compute the residual errors when applying the historic price data to the resulting model, and then adjust Ψ {\displaystyle \Psi \,} 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.
Many numerical methods have been developed over time and have solved pricing financial assets such as options with stochastic volatility models. A recent developed application is the local stochastic volatility model.14 This local stochastic volatility model gives better results in pricing new financial assets such as forex options.
There are also alternate statistical estimation libraries in other languages such as Python:
Jim Gatheral (18 September 2006). The Volatility Surface: A Practitioner's Guide. Wiley. ISBN 978-0-470-06825-0. 978-0-470-06825-0 ↩
J Gatheral, A Jacquier (2014). "Arbitrage-free SVI volatility surfaces". Quantitative Finance. 14: 59–71. arXiv:1204.0646. doi:10.1080/14697688.2013.819986. S2CID 41434372. /wiki/ArXiv_(identifier) ↩
PS Hagan, D Kumar, A Lesniewski, DE Woodward (2002) Managing smile risk, Wilmott, 84-108. http://lesniewski.us/papers/published/ManagingSmileRisk.pdf ↩
Kluppelberg, Claudia; Lindner, Alexander; Maller, Ross (September 2004). "A Continuous Time GARCH Process Driven by a Lévy Process: Stationarity and Second Order Behaviour". J. Appl. Probab. 41 (3): 601–622. doi:10.1239/jap/1091543413. https://epub.ub.uni-muenchen.de/1794/ ↩
Brooks, Chris (2014). Introductory Econometrics for Finance (3rd ed.). Cambridge: Cambridge University Press. p. 461. ISBN 9781107661455. 9781107661455 ↩
Jim Gatheral, Thibault Jaisson and Mathieu Rosenbaum (2018). Volatility is rough. Quantitative Finance 18(6), Pages 933-949 ↩
Fabienne Comte and Eric Renault (1998). Long memory in continuous-time stochastic volatility models. Math. Finance, 8(4), 291–323 ↩
Matthieu Garcin (2022). Forecasting with fractional Brownian motion: a financial perspective. Quantitative finance, 22(8), 1495-1512 ↩
Ghalanos, Alexios (20 September 2023). "rugarch: Univariate GARCH models". https://cran.r-project.org/web/packages/rugarch/index.html ↩
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. doi:10.32614/RJ-2010-014. S2CID 17324384. http://journal.r-project.org/archive/2010-2/RJournal_2010-2_Ardia+Hoogerheide.pdf ↩
Kastner, Gregor (2016). "Dealing with Stochastic Volatility in Time Series Using the R Package stochvol" (PDF). Journal of Statistical Software. 69 (5): 1–30. arXiv:1906.12134. doi:10.18637/jss.v069.i05. https://www.jstatsoft.org/index.php/jss/article/view/v069i05/v69i05.pdf ↩
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. arXiv:1706.05280. doi:10.1016/j.csda.2013.01.002. S2CID 17019876. http://epub.wu.ac.at/3771/1/paper.pdf ↩
van der Weijst, Roel (2017). "Numerical Solutions for the Stochastic Local Volatility Model". {{cite journal}}: Cite journal requires |journal= (help) https://repository.tudelft.nl/islandora/object/uuid%3A029cbbc3-d4d4-4582-8be2-e0979e9f6bc3 ↩