% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/svp_test.R
\name{lmc_ged}
\alias{lmc_ged}
\title{LMC Test for GED Shape Parameter}
\usage{
lmc_ged(
  y,
  p = 1,
  J = 10,
  N = 99,
  nu_null,
  burnin = 500,
  del = 1e-10,
  wDecay = FALSE,
  Bartlett = FALSE,
  Amat = NULL,
  direction = c("two-sided", "less", "greater"),
  sigvMethod = "factored",
  winsorize_eps = 0
)
}
\arguments{
\item{y}{Numeric vector. Observed returns.}

\item{p}{Integer. AR order of the volatility process. Default 1.}

\item{J}{Integer. Winsorizing parameter. Default 10.}

\item{N}{Integer. Number of Monte Carlo replications. Default 99.}

\item{nu_null}{Numeric. Value of \eqn{\nu} under the null hypothesis.}

\item{burnin}{Integer. Burn-in for simulation. Default 500.}

\item{del}{Numeric. Small constant for log transformation. Default \code{1e-10}.}

\item{wDecay}{Logical. Use decaying weights. Default \code{FALSE}.}

\item{Bartlett}{Logical. Use Bartlett kernel HAC for weighting matrix.
Default \code{FALSE}.}

\item{Amat}{Weighting matrix specification. \code{NULL} (default) for identity
weighting, \code{"Weighted"} for data-driven HAC, or a \code{(p+3)x(p+3)}
matrix. Takes precedence over \code{Bartlett}.}

\item{direction}{Character. Test direction: \code{"two-sided"} (default),
\code{"less"} (H1: nu < nu_null), or \code{"greater"} (H1: nu > nu_null).
Uses signed root of the LR statistic for one-sided tests.}

\item{sigvMethod}{Character. Method for \eqn{\sigma_v} estimation:
\code{"factored"} (default), \code{"hybrid"}, or \code{"direct"}.}

\item{winsorize_eps}{Numeric. Winsorization threshold for moment conditions.
Default 0 (no winsorization).}
}
\value{
An object of class \code{"svp_test"}.
}
\description{
Performs a Local Monte Carlo (LMC) test of the null hypothesis
\eqn{H_0: \nu = \nu_0} for the shape parameter in an SV(p) model
with GED errors. Testing \eqn{\nu_0 = 2} corresponds to testing normality.
}
\examples{
\donttest{
y <- sim_svp(1000, phi = 0.95, sigy = 1, sigv = 0.2, errorType = "GED", nu = 1.5)$y
test <- lmc_ged(y, p = 1, J = 10, N = 49, nu_null = 2)
print(test)
}

}
