Stochastic Processes¶
Stochastic processes for use in various models and pricing engines
Heston Processes¶
HestonProcess¶
Square-root stochastic-volatility Heston process
type HestonProcess <: AbstractHestonProcess
s0::Quote
riskFreeRate::YieldTermStructure
dividendYield::YieldTermStructure
v0::Float64
kappa::Float64
theta::Float64
sigma::Float64
rho::Float64
disc::AbstractDiscretization
hestonDisc::AbstractHestonDiscretization
end
-
HestonProcess
(riskFreeRate::YieldTermStructure, dividendYield::YieldTermStructure, s0::Quote, v0::Float64, kappa::Float64, theta::Float64, sigma::Float64, rho::Float64, d::AbstractHestonDiscretization = QuadraticExponentialMartingale())¶ Default constructor for the Heston Process
BatesProcess¶
Square-root stochastic-volatility Bates process
type BatesProcess<: AbstractHestonProcess
hestonProcess::HestonProcess
lambda::Float64
nu::Float64
delta::Float64
m::Float64
end
-
BatesProcess
(riskFreeRate::YieldTermStructure, dividendYield::YieldTermStructure, s0::Quote, v0::Float64, kappa::Float64, theta::Float64, sigma::Float64, rho::Float64, lambda::Float64, nu::Float64, delta::Float64, d::AbstractHestonDiscretization = FullTruncation())¶ Constructor for the Bates Process. Builds underlying Heston process as well
Black Scholes Processes¶
Various types of Black-Scholes stochastic processes
Black Scholes types are based off of a GeneralizedBlackScholesProcess, with a structure seen here:
type GeneralizedBlackScholesProcess <: AbstractBlackScholesProcess
x0::Quote
riskFreeRate::YieldTermStructure
dividendYield::YieldTermStructure
blackVolatility::BlackVolTermStructure
localVolatility::LocalConstantVol
disc::AbstractDiscretization
isStrikeDependent::Bool
blackScholesType::BlackScholesType
end
BlackScholesMertonProcess¶
Merton (1973) extension to the Black-Scholes stochastic process
-
BlackScholesMertonProcess
(x0::Quote, riskFreeRate::YieldTermStructure, dividendYield::YieldTermStructure, blackVolatility::BlackConstantVol, disc::AbstractDiscretization = EulerDiscretization())¶ Constructs a Black Scholes Merton Process, based off the GeneralizedBlackScholesProcess structure above.
Other Stochastic Processes¶
OrnsteinUhlenbeckProcess¶
type OrnsteinUhlenbeckProcess <: StochasticProcess1D
speed::Float64
vol::Float64
x0::Float64
level::Float64
end
-
OrnsteinUhlenbeckProcess
(speed::Float64, vol::Float64, x0::Float64 = 0.0, level::Float64 = 0.0) = new(speed, vol, x0, level)¶ Constructor for the OrnsteinUhlenbeckProcess
GsrProcess¶
Gaussian short rate stochastic process
type GsrProcess <: StochasticProcess1D
times::Vector{Float64}
vols::Vector{Float64}
reversions::Vector{Float64}
T::Float64
revZero::Vector{Bool}
cache1::Dict{Pair{Float64, Float64}, Float64}
cache2::Dict{Pair{Float64, Float64}, Float64}
cache3::Dict{Pair{Float64, Float64}, Float64}
cache4::Dict{Float64, Float64}
cache5::Dict{Pair{Float64, Float64}, Float64}
end
-
GsrProcess
(times::Vector{Float64}, vols::Vector{Float64}, reversions::Vector{Float64}, T::Float64 = 60.0)¶ Constructor for the GsrProcess