roll_sum: Calculate the rolling sum of a _numeric_ vector, matrix, or...

Description Usage Arguments Details Value Examples

View source: R/rutils.R

Description

Calculate the rolling sum of a numeric vector, matrix, or xts time series over a sliding window (lookback period).

Usage

1
roll_sum(x_ts, look_back)

Arguments

x_ts

A vector, matrix, or xts time series containing one or more columns of data.

look_back

The size of the lookback window, equal to the number of data points for calculating the rolling sum.

Details

For example, if look_back=3, then the rolling sum at any point is equal to the sum of x_ts values for that point plus two preceding points. The initial values of roll_sum() are equal to cumsum() values, so that roll_sum() doesn't return any NA values.

The function roll_sum() performs the same operation as function runSum() from package TTR, but using vectorized functions, so it's a little faster.

Value

A vector, matrix, or xts time series with the same dimensions as the input series.

Examples

1
2
3
4
5
6
7
8
9
# Rolling sum of vector
vec_tor <- rnorm(1000)
rutils::roll_sum(vec_tor, look_back=3)
# Rolling sum of matrix
mat_rix <- matrix(rnorm(1000), nc=5)
rutils::roll_sum(mat_rix, look_back=3)
# Rolling sum of xts time series
x_ts <- xts(x=rnorm(1000), order.by=(Sys.time()-3600*(1:1000)))
rutils::roll_sum(x_ts, look_back=3)

algoquant/rutils documentation built on Feb. 26, 2021, 1:30 a.m.