% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/forecast.R
\name{forecast_svp}
\alias{forecast_svp}
\title{Multi-Step Ahead Volatility Forecast}
\usage{
forecast_svp(
  object,
  H = 1,
  output = c("log-variance", "variance", "volatility"),
  filter_method = "corrected",
  K = 7,
  M = 1000,
  seed = 42,
  del = 1e-10
)
}
\arguments{
\item{object}{An \code{"svp"}, \code{"svp_t"}, or \code{"svp_ged"} object
from \code{\link{svp}}.}

\item{H}{Integer. Maximum forecast horizon. Default 1.}

\item{output}{Character. Primary output scale: \code{"log-variance"} (default,
native log-volatility w_h), \code{"variance"} (conditional variance
\eqn{\sigma^2_{T+h|T}}), or \code{"volatility"} (conditional std dev
\eqn{\sigma_{T+h|T}}). All three are always computed and stored; this
controls which is used by \code{print} and \code{plot} methods.}

\item{filter_method}{Character. Filter method: \code{"corrected"} (default),
\code{"mixture"} (GMKF), or \code{"particle"} (BPF).}

\item{K}{Integer. Number of mixture components for GMKF. Default 7.}

\item{M}{Integer. Number of particles for BPF. Default 1000.}

\item{seed}{Integer. Random seed for BPF. Default 42.}

\item{del}{Numeric. Small constant for log transformation. Default \code{1e-10}.}
}
\value{
An object of class \code{"svp_forecast"}, a list containing:
\describe{
  \item{w_forecasted}{Primary forecast (scale determined by \code{output}).}
  \item{log_var_forecast}{Log-volatility forecasts \eqn{w_{T+h|T}}.}
  \item{var_forecast}{Conditional variance forecasts \eqn{\sigma^2_{T+h|T}}.}
  \item{vol_forecast}{Conditional volatility forecasts \eqn{\sigma_{T+h|T}}.}
  \item{P_forecast}{Forecast MSE \eqn{P_{T+h|T}} for each horizon.}
  \item{w_estimated}{Filtered log-volatility.}
  \item{w_smoothed}{Smoothed log-volatility.}
  \item{zt}{Filtered standardized residuals.}
  \item{zt_smoothed}{Smoothed standardized residuals.}
  \item{ys}{Demeaned log-squared returns.}
  \item{mdl}{The estimated model object.}
  \item{H}{The forecast horizon.}
  \item{output}{The chosen output scale.}
  \item{filter_output}{The \code{"svp_filter"} object from filtering.}
}
}
\description{
Applies Kalman filtering/smoothing to an estimated SV(p) model and produces
multi-step ahead volatility forecasts with uncertainty quantification.
}
\examples{
\donttest{
sim <- sim_svp(1000, phi = 0.95, sigy = 1, sigv = 0.2,
               leverage = TRUE, rho = -0.3)
fit <- svp(sim$y, p = 1, leverage = TRUE)
fc <- forecast_svp(fit, H = 10)
plot(fc)
}

}
