rolloptim: Rolling Optimizations

Analytical computation of rolling optimization for time-series data. The 'rolloptim' package solves constrained quadratic and linear programs in closed form by applying Lagrangian multipliers and the Karush-Kuhn-Tucker conditions (Kuhn and Tucker, 1951, <doi:10.1525/9780520411586-036>) to perform mean-variance portfolio optimization (Markowitz, 1952, <doi:10.1111/j.1540-6261.1952.tb01525.x>) over rolling windows. For each window, the analytical solution computes the optimal weights that minimize variance, maximize expected return, minimize residual sum of squares, or maximize quadratic utility, subject to a total-weight equality constraint and box bounds on each weight. Use cases include mean-variance portfolio optimization, expected-return maximization, and constrained regression. The package supports rolling optimizations with constraints via the total, lower, and upper arguments. The implementation accepts rolling moments computed via the 'roll' package and uses 'RcppArmadillo' for linear algebra, with parallelism across windows provided by 'RcppParallel'.

Version: 1.0.0
Depends: R (≥ 3.5.0)
Imports: Rcpp, RcppParallel
LinkingTo: Rcpp, RcppArmadillo, RcppParallel
Suggests: covr, CVXR, ROI, ROI.plugin.glpk, ROI.plugin.qpoases, ROI.plugin.quadprog, roll (≥ 1.1.7), testthat, zoo
Published: 2026-07-11
DOI: 10.32614/CRAN.package.rolloptim (may not be active yet)
Author: Jason Foster [aut, cre]
Maintainer: Jason Foster <jason.j.foster at gmail.com>
BugReports: https://github.com/jasonjfoster/rolloptim/issues
License: GPL-2 | GPL-3 [expanded from: GPL (≥ 2)]
URL: https://github.com/jasonjfoster/rolloptim
NeedsCompilation: yes
SystemRequirements: GNU make
Materials: README, NEWS
CRAN checks: rolloptim results

Documentation:

Reference manual: rolloptim.html , rolloptim.pdf

Downloads:

Package source: rolloptim_1.0.0.tar.gz
Windows binaries: r-devel: not available, r-release: not available, r-oldrel: not available
macOS binaries: r-release (arm64): not available, r-oldrel (arm64): not available, r-release (x86_64): not available, r-oldrel (x86_64): not available

Linking:

Please use the canonical form https://CRAN.R-project.org/package=rolloptim to link to this page.