bates
Description
Thebates
function creates abates
object, which represents a Bates model.
The Bates model is a bivariate composite model that derives from theheston
object. The Bates model is composed of two coupled and dissimilar univariate models, each driven by a single Brownian motion source of risk and a single compound Poisson process representing the arrivals of important events overNPeriods
consecutive observation periods. The Bates model approximates continuous-time Bates stochastic volatility processes.
The first univariate model is aGBM
model with a stochastic volatility function and a stochastic jump process, and usually corresponds to a price process whose variance rate is governed by the second univariate model. The second model is a Cox-Ingersoll-Ross (CIR
) square root diffusion model that describes the evolution of the variance rate of the coupledGBM
price process.
Bates models are bivariate composite models. Each Bates model consists of two coupled univariate models:
A geometric Brownian motion (
gbm
) model with a stochastic volatility function and jumps.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 Bates price process.
Creation
Syntax
Description
create aBates
= bates(Return
,Speed
,Level
,Volatility
,JumpFreq
,JumpMean
,JumpVol
)bates
object with the default options.
Since Bates models are bivariate models composed of coupled univariate models, all required inputs correspond to scalar parameters. Specify required inputs as one of two types:
MATLAB®array. Specify an array to indicate a static (non-time-varying) parametric specification. This array fully captures all implementation details, which are clearly associated with a parametric form.
MATLAB function. Specify a function to provide indirect support for virtually any static, dynamic, linear, or nonlinear model. This parameter is supported by an interface because all implementation details are hidden and fully encapsulated by the function.
Note
You can specify combinations of array and function input parameters as needed. Moreover, a parameter is identified as a deterministic function of time if the function accepts a scalar timet
as its only input argument. Otherwise, a parameter is assumed to be a function of timetand stateXtand is invoked with both input arguments.
setsProperties使用name-value pair arguments in addition to the input arguments in the preceding syntax. Enclose each property name in quotes.Bates
= bates(___,名称,值
)
Thebates
object has the followingProperties:
StartTime
— Initial observation timeStartState
— Initial state at timeStartTime
Correlation
— Access function for theCorrelation
input argumentDrift
— Composite drift-rate functionDiffusion
— Composite diffusion-rate functionSimulation
— A simulation function or method
输入参数
Properties
Object Functions
simByEuler |
SimulateBates sample paths by Euler approximation |
simByQuadExp |
SimulateBates ,Heston , andCIR sample paths by quadratic-exponential discretization scheme |
simulate |
Simulate multivariate stochastic differential equations (SDEs) forSDE ,BM ,GBM ,CEV ,CIR ,HWV ,Heston ,SDEDDO ,SDELD ,SDEMRD ,Merton , orBates models |
simByTransition |
SimulateBates sample paths with transition density |
simByMilstein |
SimulateBates sample paths by Milstein approximation |
Examples
More About
Algorithms
The Bates model (Bates 1996) is an extension of the Heston model and adds not only stochastic volatility, but also the jump diffusion parameters as in Merton (1976) were also added to model sudden asset price movements.
Under the risk-neutral measure the model is expressed as follows
Here:
ᵞ is the continuous risk-free rate.
qis the continuous dividend yield.
Jis the random percentage jump size conditional on the jump occurring, where
(1+J) has a lognormal distribution:
Here:
μjis the mean ofJ(μj> -1).
ƛpis the annual frequency (intensity) of the Poisson processPt(ƛp≥ 0).
υ is the initial variance of the underlying asset (υ0> 0)。
θ is the long-term variance level (θ > 0).
κ is the mean reversion speed for the variance (κ > 0).
συis the volatility of volatility (συ> 0)。
pis the correlation between the Weiner processesWtandWtυ(-1 ≤p≤ 1).
The "Feller condition" ensures positive variance: (2κθ > συ2).
The stochastic volatility along with the jump help better model the asymmetric leptokurtic features, the volatility smile, and the large random fluctuations such as crashes and rallies.
References
[1] Aït-Sahalia, Yacine. “Testing Continuous-Time Models of the Spot Interest Rate.”Review of Financial Studies9, no. 2 ( Apr. 1996): 385–426.
[2] Aït-Sahalia, Yacine. “Transition Densities for Interest Rate and Other Nonlinear Diffusions.”The Journal of Finance54, no. 4 (Aug. 1999): 1361–95.
[3] Glasserman, Paul.Monte Carlo Methods in Financial Engineering. New York: Springer-Verlag, 2004.
[4] Hull, John C.Options, Futures and Other Derivatives. 7th ed, Prentice Hall, 2009.
[5] Johnson, Norman Lloyd, Samuel Kotz, and Narayanaswamy Balakrishnan.Continuous Univariate Distributions. 2nd ed. Wiley Series in Probability and Mathematical Statistics. New York: Wiley, 1995.
[6] Shreve, Steven E.Stochastic Calculus for Finance. New York: Springer-Verlag, 2004.
Version History
Introduced in R2020aSee Also
Topics
- Simulating Equity Prices
- Simulating Interest Rates
- Stratified Sampling
- Price American Basket Options Using Standard Monte Carlo and Quasi-Monte Carlo Simulation
- Base SDE Models
- Drift and Diffusion Models
- Linear Drift Models
- Parametric Models
- SDEs
- SDE Models
- SDE Class Hierarchy
- Quasi-Monte Carlo Simulation
- Performance Considerations