| svsim {stochvol} | R Documentation |
Simulating a Stochastic Volatility Process
Description
svsim is used to produce realizations of a stochastic volatility (SV)
process.
Usage
svsim(len, mu = -10, phi = 0.98, sigma = 0.2, nu = Inf, rho = 0)
Arguments
len |
length of the simulated time series. |
mu |
level of the latent log-volatility AR(1) process. The defaults
value is |
phi |
persistence of the latent log-volatility AR(1) process. The
default value is |
sigma |
volatility of the latent log-volatility AR(1) process. The
default value is |
nu |
degrees-of-freedom for the conditional innovations distribution.
The default value is |
rho |
correlation between the observation and the increment of the
log-volatility. The default value is |
Details
This function draws an initial log-volatility h_0 from the stationary
distribution of the AR(1) process defined by phi, sigma, and mu.
Then the function jointly simulates the log-volatility series
h_1,...,h_n with the given AR(1) structure, and the “log-return” series
y_1,...,y_n with mean 0 and standard deviation exp(h/2).
Additionally, for each index i, y_i can be set to have a conditionally heavy-tailed
residual (through nu) and/or to be correlated with (h_{i+1}-h_i)
(through rho, the so-called leverage effect, resulting in asymmetric “log-returns”).
Value
The output is a list object of class svsim containing
- y
vector of length
lencontaining the simulated data, usually interpreted as “log-returns”.- vol
vector of length
lencontaining the simulated instantaneous volatilities. These aree^{h_t/2}ifnu == Inf, and they aree^{h_t/2} \sqrt{\tau_t}for finitenu.- vol0
The initial volatility
exp(h_0/2), drawn from the stationary distribution of the latent AR(1) process.- para
a named list with five elements
mu,phi,sigma,nu, andrho, containing the corresponding arguments.- latent
vector of the latent state space
h_tfort > 0.- latent0
initial element of the latent state space
h_0.- tau
vector of length
lencontaining the simulated auxiliary variables for the Student-t residuals whennuis finite. More precisely,\tau_t\sim\text{Gamma}^{-1}(\text{shape}=\nu/2, \text{rate}=\nu/2-1).
Note
The function generates the “log-returns” by
y <- exp(-h/2)*rt(h, df=nu). That means that in the case of nu < Inf
the (conditional) volatility is sqrt(nu/(nu-2))*exp(h/2), and that corrected value
is shown in the print, summary and plot methods.
To display the output use print, summary and plot. The
print method simply prints the content of the object in a moderately
formatted manner. The summary method provides some summary statistics
(in %), and the plot method plots the the simulated 'log-returns'
y along with the corresponding volatilities vol.
Author(s)
Gregor Kastner gregor.kastner@wu.ac.at
See Also
Examples
## Simulate a highly persistent SV process of length 500
sim <- svsim(500, phi = 0.99, sigma = 0.1)
print(sim)
summary(sim)
plot(sim)
## Simulate an SV process with leverage
sim <- svsim(200, phi = 0.94, sigma = 0.15, rho = -0.6)
print(sim)
summary(sim)
plot(sim)
## Simulate an SV process with conditionally heavy-tails
sim <- svsim(250, phi = 0.91, sigma = 0.05, nu = 5)
print(sim)
summary(sim)
plot(sim)