## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  message = FALSE,
  warning = FALSE
)
set.seed(2026)

## ----setup--------------------------------------------------------------------
library(svines)

## ----continuous-fit-----------------------------------------------------------
data(returns)
x <- returns[1:200, 1:2]

fit <- svine(
  x,
  p = 1,
  margin_families = c("norm", "std"),
  family_set = c("gaussian", "t")
)
fit
summary(fit)

## ----simulation---------------------------------------------------------------
sim <- svine_sim(n = 100, rep = 1, model = fit)
dim(sim)

next_obs <- svine_sim(n = 1, rep = 100, model = fit, past = x)
dim(next_obs)

## ----diagnostics--------------------------------------------------------------
residuals <- svine_pseudo_residuals(x, fit)
dim(residuals)

## ----discrete-fit-------------------------------------------------------------
counts <- cbind(
  claims = rpois(250, lambda = 2),
  events = rpois(250, lambda = 4)
)

fit_discrete <- svine(
  counts,
  p = 1,
  var_types = c("d", "d"),
  margin_families = "pois",
  family_set = "gaussian"
)
fit_discrete
svine_sim(5, rep = 1, model = fit_discrete)

## ----copula-only--------------------------------------------------------------
u <- pseudo_obs(x)
copula_fit <- svinecop(
  u,
  p = 1,
  family_set = c("gaussian", "t")
)
copula_fit

