TMB::MakeADFun()
object for the exponential Ornstein-Uhlenbeck stochastic volatility model.R/eou_MakeADFun.R
eou_MakeADFun.Rd
Construct a TMB::MakeADFun()
object for the exponential Ornstein-Uhlenbeck stochastic volatility model.
eou_MakeADFun(
Xt,
dt,
log_Vt,
alpha,
log_gamma,
mu,
log_sigma,
logit_rho,
par_list,
...
)
Vector of nobs
asset log prices.
Interobservation time.
Optional vector of nobs
volatilities on the log standard deviation scale. See 'Details'.
Optional asset growth rate parameter. See 'Details'.
Optional log-volatility mean reversion parameter on the log scale. See 'Details'.
Optional log-volatility mean parameter. See 'Details'.
Optional log-volatility diffusion parameter on the log scale. See 'Details'.
Optional correlation parameter between asset and volatility innovations, on the logit scale. See 'Details'.
Optional list with named elements consisting of a subset of log_Vt
, alpha
, log_gamma
, mu
, log_sigma
, and logit_rho
. Values in par_list
will supercede those of the corresponding individual argument if both are provided.
Additional arguments to TMB::MakeADFun()
.
The result of a call to TMB::MakeADFun()
.
The exponential Ornstein-Uhlenbeck (eOU) stochastic volatility model for a single asset is given by the stochastic differential equation (SDE)
dlog_Vt = - gamma (log_Vt - mu) dt + sigma dB_Vt
dXt = (alpha - .5 Vt^2) dt + Vt (rho dB_Vt + sqrt(1-rho^2) dB_Zt),
where B_Vt
and B_Zt
are independent Brownian motions.
eou_MakeADFun()
implements the Euler approximation to this SDE...
The optional inputs log_Vt
, alpha
, ..., logit_rho
can be set to initialize optimization routines. The default values are alpha = 0
, ..., logit_rho = 0
, and log_Vt
as the log of windowed standard deviation estimates returned by sv_init()
.
eou_MakeADFun
is a wrapper to TMB::MakeADFun()
. This function may be called on the underlying C++ template provided by svcommon via