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,
  ...
)

Arguments

Xt

Vector of nobs asset log prices.

dt

Interobservation time.

log_Vt

Optional vector of nobs volatilities on the log standard deviation scale. See 'Details'.

alpha

Optional asset growth rate parameter. See 'Details'.

log_gamma

Optional log-volatility mean reversion parameter on the log scale. See 'Details'.

mu

Optional log-volatility mean parameter. See 'Details'.

log_sigma

Optional log-volatility diffusion parameter on the log scale. See 'Details'.

logit_rho

Optional correlation parameter between asset and volatility innovations, on the logit scale. See 'Details'.

par_list

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().

Value

The result of a call to TMB::MakeADFun().

Details

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

TMB::MakeADFun(data = list(model = "sv_eou", ...),
               parameters = list(...),
               DLL = "svcommon_TMBExports",
               ...)