Beta Autoregressive Moving Average Models
Overview
Fits Beta Autoregressive Moving Average (BARMA) models for time series data distributed in the standard unit interval (0, 1). The estimation is performed via the conditional maximum likelihood method using the Broyden-Fletcher-Goldfarb-Shanno (BFGS) quasi-Newton algorithm. A ridge penalization scheme is available to improve numerical stability of the estimation, as proposed by Cribari-Neto, Costa and Fonseca (2025) doi:10.1214/25-BJPS645. The package includes tools for model fitting, diagnostic checking, and forecasting, along with two hydro-environmental datasets from Brazil. Based on the work of Rocha and Cribari-Neto (2009) doi:10.1007/s11749-008-0112-z and the associated erratum Rocha and Cribari-Neto (2017) doi:10.1007/s11749-017-0528-4. The original code was developed by Fabio M. Bayer.
New features
- Add S3 method
plot.barma()to generate diagnostic plots for fittedbarmaobjects. It displays a four-panel grid by default: observed vs. fitted values, residuals over time, residual ACF, and a residual histogram with a density overlay. - Add
penaltyargument tobarma(), enabling ridge-penalized conditional maximum likelihood estimation as proposed by Cribari-Neto, Costa and Fonseca (2025, BJPS). Whenpenalty = TRUE, the penalized log-likelihood is optimized and the penalized FIM is returned. - Add internal helper
utils_internal.Rwith.barma_ridge_lambda()to centralize the ridge penalty scalarlambda_n = 1/(n-a)^0.9, shared acrossloglik_barma(),score_vector_barma(), andfim_barma().
Show all changes in 1.2.0Hide the rest of the changes in 1.2.0
- Add
utils_optimizer.Rwith internal helpersmake_par_indices()andrun_optimizer(), centralizing parameter indexing and optimization logic previously embedded inbarma().
Improvements
- Forward
penaltyargument throughrun_optimizer()tologlik_barma()andscore_vector_barma(), ensuring the penalized likelihood is used consistently during optimization when requested. - Forward
penaltyargument tofim_barma()inbarma(), so the returned Fisher Information Matrix reflects penalization whenpenalty = TRUE.
Documentation
- Add two new vignettes: one detailing the numerical stability and ridge penalization approach (Cribari-Neto, Costa, and Fonseca, 2025), and another demonstrating applied hydro-environmental time series modeling (Costa, Cribari-Neto, and Scher, 2024).
- Add Cribari-Neto, Costa and Fonseca (2025, BJPS, DOI: 10.1214/25-BJPS645) to
@referencesinbarma(), reflecting the newpenaltyargument. - Update
@param optimizationinbarma()to use\describeinstead of\itemizefor correct rendering of named list fields in HTML help pages.
From NEWS.md in the release
Install
Health
- OK13 OK2026-09-08
- ERROR12 OK, 1 ERROR2026-09-07
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-05-11
Show 2 earlier changesHide 2 earlier changes
- WARNING12 OK, 1 WARNING2026-05-10
- OK7 OK2026-03-30
Documentation
- Help pages
- 18 (1 internal)
- Examples that run
- 60%6 run in a plain check · 4 only when donttest examples are enabled (R CMD check --as-cran)
- Exported functions with examples
- 86%
- Documented parameters
- 96%
- Return-value docs
- 100%
- Help pages citing references
- 33% with a bibliography file
Downloads
Repository
7 development-tooling and community-health practices detected across 5 families in the upstream repository
Checks run against github.com/everton-da-costa/betaarma on 2026-10-25.
The R CMD check workflow runs on Linux, macOS and Windows, and on R-devel
Show all practicesHide 1 practice
Dependencies
Installing betaARMA adds 29 packages (16 with compiled code, 22 MB of source tarballs). Heaviest: ggplot2 6.0 MB, colorspace 2.0 MB, Rcpp 1.8 MB.
Code & Tests
Datasets
People & History
Package metadata
- First published
- 2026-03-29
- Total releases
- 3 / 1 yrs
- License
- MIT + file LICENSE OSI
- Minimum R
- ≥ 3.5
- Bundled data
- 4.6 KB / 2 files
- Download size
- 393 KB
Cite
Cite this package
Run in R for the authors' preferred citation:
citation("betaARMA")The package provides a citation file that builds its entry when R runs it. Run citation() to see it.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-26, which the citation names so these numbers can be found later. More on citing and the projects behind them.