RollingAnalysis {fTrading} | R Documentation |
Rolling Analysis
Description
A collection and description of functions
to perform a rolling analysis. A rolling
analysis is often required in building
trading models.
The functions are:
rollFun | Rolling or moving sample statistics, |
rollVar | Rolling or moving sample variance. |
Usage
rollFun(x, n, trim = TRUE, na.rm = FALSE, FUN, ...)
rollVar(x, n = 9, trim = TRUE, unbiased = TRUE, na.rm = FALSE)
Arguments
FUN |
the rolling function, arguments to this function can be
passed through the |
n |
an integer specifying the number of periods or terms to use in each rolling/moving sample. |
na.rm |
a logical flag: if TRUE, missing values in x will be removed before computation. The default is FALSE. |
trim |
a logical flag: if TRUE, the first n-1 missing values in the returned object will be removed; if FALSE, they will be saved in the returned object. The default is TRUE. |
unbiased |
a logical flag. If TRUE, the unbiased sample variance will be returned. The default is TRUE. |
x |
an univariate |
... |
additional arguments to be passed. |
Value
The functions return a timeSeries
object or a numeric
vector, depending on the argument x
.
rollMax
returns the rolling sample maximum,
rollMin
returns the rolling sample minimum,
rollMean
returns the rolling sample mean, and
rollVar
returns the biased/unbiased rolling sample variance.
Note, that the function rollFun
always returns a numeric
vector, independent of the argument x
.
If you like to operate for x
with rectangular objects,
you have to call the functions columnwise within a loop.
Author(s)
Diethelm Wuertz for the Rmetrics R-port.
See Also
var
.
Examples
## Rolling Analysis:
x = (1:10)^2
x
trim = c(TRUE, TRUE, FALSE, FALSE)
na.rm = c(TRUE, FALSE, TRUE, FALSE)
for (i in 1:4)
rollFun(x, 5, trim[i], na.rm[i], FUN = min)
for (i in 1:4)
rollFun(x, 5, trim[i], na.rm[i], FUN = max)
for (i in 1:4)
rollVar(x, 5, trim[i], unbiased = TRUE, na.rm[i])
for (i in 1:4)
rollVar(x, 5, trim[i], unbiased = FALSE, na.rm[i])