Nothing
## ---- include = FALSE---------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.width = 7,
fig.height = 3
)
library(stochvolTMB)
## -----------------------------------------------------------------------------
data(spy)
plot(spy$date, spy$log_return, type = "l", xlab = "", ylab = "", main = "Log-returns of S&P500")
plot(spy$date, spy$price, type = "l", xlab = "", ylab = "", main = "Price of S&P500")
## ----warning=FALSE------------------------------------------------------------
gaussian = estimate_parameters(spy$log_return, model = "gaussian", silent = TRUE)
t_dist = estimate_parameters(spy$log_return, model = "t", silent = TRUE)
skew_gaussian = estimate_parameters(spy$log_return, model = "skew_gaussian", silent = TRUE)
leverage = estimate_parameters(spy$log_return, model = "leverage", silent = TRUE)
## -----------------------------------------------------------------------------
summary(t_dist, report = "transformed")
## -----------------------------------------------------------------------------
summary(skew_gaussian, report = "fixed")
## -----------------------------------------------------------------------------
summary(leverage, report = "transformed")
## -----------------------------------------------------------------------------
AIC(gaussian,
t_dist,
skew_gaussian,
leverage)
## -----------------------------------------------------------------------------
plot(leverage, include_ci = TRUE, plot_log = TRUE, dates = spy$date)
plot(leverage, include_ci = TRUE, plot_log = FALSE, dates = spy$date)
## -----------------------------------------------------------------------------
pred = predict(leverage, steps = 10, include_parameters = TRUE)
summary(pred)
# plot the forecast
plot(leverage, forecast = 50) + ggplot2::xlim(3200, nrow(spy) + 50)
## ----include=FALSE------------------------------------------------------------
stochvol_gauss <- readRDS("stochvol_gauss.rds")
stochvol_lev <- readRDS("stochvol_lev.rds")
stochvolTMB_gauss <- estimate_parameters(spy$log_return, "gaussian", silent = TRUE)
stochvolTMB_lev <- estimate_parameters(spy$log_return, "leverage", silent = TRUE)
## ----eval=FALSE---------------------------------------------------------------
# library(stochvol)
#
# stochvol_gauss <- svsample(spy$log_return, quiet = T)
# stochvolTMB_gauss <- estimate_parameters(spy$log_return, "gaussian", silent = TRUE)
#
# stochvol_lev <- svlsample(spy$log_return, quiet = T)
# stochvolTMB_lev <- estimate_parameters(spy$log_return, "leverage", silent = TRUE)
## -----------------------------------------------------------------------------
stochvol_gauss$para
summary(stochvolTMB_gauss, report = "transformed")
stochvol_lev$para
summary(stochvolTMB_lev, report = "transformed")
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.