Skip to content

wARMASVp

0.2.0Package record

Winsorized ARMA Estimation for Higher-Order Stochastic Volatility Models

0packages depend
2.2Kdownloads / year
86.7%test coverage
13/13flavors OK

Overview

About

Estimation, simulation, hypothesis testing, AR-order selection, and forecasting for univariate higher-order stochastic volatility SV(p) models. Supports Gaussian, Student-t, and Generalized Error Distribution (GED) innovations, with optional leverage effects. Estimation uses closed-form Winsorized ARMA-SV (W-ARMA-SV) moment-based methods that avoid numerical optimization. Hypothesis testing includes Local Monte Carlo (LMC) and Maximized Monte Carlo (MMC) procedures for leverage effects, heavy tails, and autoregressive order. AR-order selection is also available via information criteria (BIC/AIC) using the Kalman-filter quasi-likelihood and the Hannan-Rissanen ARMA residual variance. Forecasting is based on Kalman filtering and smoothing. See Ahsan and Dufour (2021) doi:10.1016/j.jeconom.2021.03.008, Ahsan, Dufour, and Rodriguez-Rondon (2025) doi:10.1111/jtsa.12851, and Ahsan, Dufour, and Rodriguez-Rondon (2026) doi:10.34989/swp-2026-8 for details.

Changes in 0.2.0

New features

  • svp_IC() and svp_AR_order(): AR-order selection for SV(p) models via information criteria. Four criteria are returned by default (BIC_Kalman, AIC_Kalman, BIC_HR, AIC_HR), spanning state-space QML and Hannan-Rissanen estimation families; four more (AICc_Kalman, BIC_Whittle, BIC_YW, AIC_YW) are available opt-in via the criteria argument. svp_AR_order() sweeps over p = 1, ..., pmax; both functions read errorType and leverage from the fitted model.
  • lmc_ar() / mmc_ar() now accept errorType = "Gaussian", "Student-t", or "GED". The tail parameter is held fixed at the null MLE during simulation; innovations are pre-drawn from the corresponding distribution.

Breaking changes

Show all changes in 0.2.0Hide the rest of the changes in 0.2.0
  • sim_svp() now always returns a named list list(y, h, z, v) of length-n vectors (observed returns, log-volatility path, return innovation, volatility innovation). The K (multiple-replicate) argument has been removed; wrap the call in a loop for replicates. Callers that previously relied on sim_svp() returning a bare vector must now extract $y.

Defaults

  • filter_svp() and forecast_svp() gain a proxy argument and now default to proxy = "bayes_optimal" (was the paper-faithful "u"-proxy). For Student-t leverage this uses the posterior mean E[zeta | u] rather than the raw u-proxy, which has marginal variance nu/(nu-2) > 1. No effect for Gaussian, GED, or non-leverage models.

Bug fixes

  • GMKF: corrected the Student-t leverage parameterization in the Gaussian mixture Kalman filter.
  • Filtering / forecasting: corrected the state-innovation variance Q under leverage. The filter uses the conditional Q = sigma_v^2 (1 - delta^2); the forecaster uses the conditional Q at horizon 1 and the marginal Q = sigma_v^2 at horizons >= 2.
  • Bootstrap particle filter: Student-t leverage recovery now samples the mixing variable from its posterior rather than its prior.
  • GED leverage: the CKF/GMKF leverage shift now applies the copula proxy rather than using the raw innovation.
  • MMC: the observed test statistic S0 is kept fixed during optimization, per Dufour (2006, eq. 4.22). Previously recomputed at each optimizer evaluation in the leverage, Student-t, and GED tests.
  • MMC: default eps[sigma_y] = 0 in all MMC functions (was 0.3). The simulated null distribution is sigma_y-invariant, so varying it is unnecessary.

Performance

  • The KSC mixture EM step used by the GMKF (fit_ksc_mixture()) is now implemented in C++, giving roughly a 12x speedup for Student-t and GED filtering.

Documentation

  • DESCRIPTION: added the DOI for the JTSA 2025 reference per CRAN reviewer feedback.
  • Updated the introductory vignette with an AR-order-selection section.

From NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 5.6 min · r-devel-windows-x86_64
Status changes
  • OK13 OK2026-08-04
  • NOTE12 OK, 1 NOTE2026-08-01
  • OK13 OK2026-05-02
  • NOTE9 OK, 1 NOTE2026-04-25
  • ERROR6 OK, 1 NOTE, 1 ERROR2026-04-23
Advisories

none known

Documentation

In release 0.2.0
READMEYes · 222 wordsVignettesYes · 1 · dynamicNEWSYes · 100% structured · mentions 0.2.0Citation fileYes · cites a publicationWebsitenot declared in DESCRIPTION
Help pages
34 (19 internal)includes a package overview page
Examples that run
0%15 only when donttest examples are enabled (R CMD check --as-cran)
Exported functions with examples
100%
Documented parameters
96%
Return-value docs
100%
Help pages citing references
9%

Downloads

2.2K
CRAN downloads in the past year
Rank #12,967 · ~6/day · ~182/mo
Daily download trend is not available in this view yet.
35030 days
87190 days
2.2K1 year
Compare downloads with other packages →
Also on151 r2u3 autocran

Repository

1Stars
0Forks
0Open issues
0Open PRs
0Releases
32Commits
1Commit identities
32 commits · Last activity 2026-10-21 · Default branch at 0.2.0.9003, ahead of CRAN 0.2.0 (checked 2026-10-18)
Responsiveness
not measured

Stars over time

2026-07-07 · 02026-09-28 · 1
PracticesBeta

4 development-tooling and community-health practices detected across 3 families in the upstream repository

Checks run against github.com/roga11/warmasvp on 2026-10-18.

Continuous integration (1)
GitHub Actions
CRAN release process (2)
cran-comments.mdCRAN-SUBMISSION
Lint, format, editor (1)
RStudio project
How this is detected·Detection ruleset v3 (2026-09-26)
AI coding toolsBeta

This repository shows signs of AI coding tools.

  • Claude Codefirst seen 2026-08-02
    Commits: at least 3 crediting it in the message
Models named in its commits
  • Claude Opus 53 commits · Aug 2026
Counts are commits, not lines of code. Commits by a tool's accounts count once across all of its accounts. Commits crediting it are the largest count among its credit lines, a minimum.How this is detected·Detection ruleset v4 (updated 2026-09-27)

Dependencies

Declared dependencies
9 external dependencies (excludes base and recommended)

Installing wARMASVp adds 4 packages (3 with compiled code, 4.5 MB of source tarballs). Heaviest: Rcpp 1.8 MB, gsignal 1.3 MB, RcppArmadillo 1.0 MB.

Depends (0)
none
Imports (3)
LinkingTo (2)
Enhances (0)
none
Reverse dependencies
0direct
0indirect

Nothing depends on this yet.

People & History

People (3)
Author, Maintainer · added in 0.2.0
Author · added in 0.2.0

Maintainer since 0.1.0 (2026)

Listed in earlier versions (2)
Nazmul Ahsan
no longer listed · 0.1.0
Gabriel Rodriguez Rondon
no longer listed · 0.1.0
Releases (2)

Pick two releases to compare their code metrics.

  • 0.2.0Latest
    record
    2026-05-15 · current release · diff ↗ ·
    added 2 exports
    svp_AR_order, svp_IC
  • R
    R 4.6.0 released · 2026-04-24
  • 0.1.0
    record
    2026-04-22
  • R
    R 4.5.0 released · 2025-04-11

Package metadata

First published
2026-04-22
Total releases
2 / 1 yrs
License
GPL (>= 3) OSI
Download size
237 KB

Cite

Cite this package

Run in R for the authors' entry:

citation("wARMASVp")

The package provides a citation file, so citation() returns the authors' own entry.

It points to 10.1016/j.jeconom.2021.03.008, 10.1111/jtsa.12851, 10.34989/swp-2026-8.

Cite the R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for wARMASVp version 0.2.0 [Data set]. HJJB, LLC. Data release v2026-10-21. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-21, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy