TimeSeries CRAN R
TimeSeries CRAN R
R topics documented:
timeSeries-package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
aggregate-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
align-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
apply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
as . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
attach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1
2 R topics documented:
base-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
bind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
colCum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
colStats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
comment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
cumulated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
DataPart,timeSeries-method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
diff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
dimnames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
drawdowns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
durations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
finCenter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
is.timeSeries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
isRegular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
isUnivariate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
lag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
math . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
model.frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
monthly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
na . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
na.contiguous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
orderColnames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
orderStatistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
periodical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
plot-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
print-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
rank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
readSeries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
returns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
rev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
rollMean . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
rowCum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
runlengths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
sample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
series-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
smooth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
SpecialDailySeries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
splits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
spreads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
str-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
timeSeries-package 3
timeSeries-deprecated . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
timeSeries-method-stats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
TimeSeriesClass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
TimeSeriesData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
TimeSeriesSubsettings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
turns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
wealth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Index 73
Description
Package of time series tools and utilities.
Details
Package: timeSeries
Type: Package
Version: see description file
Date: 2011
License: GPL Version 2 or later
Copyright: (c) 1999-2014 Rmetrics Association
URL: http://www.rmetrics.org
Mathematical Operation
Methods
Misc Functions
Description
Aggregates a ’timeSeries’ Object.
Usage
## S4 method for signature 'timeSeries'
aggregate(x, by, FUN, ...)
daily2monthly(x, init=FALSE)
daily2weekly(x, startOn="Tue", init=FALSE)
Arguments
x an object of class ’timeSeries’.
by a sequence of timeDate objects denoting the aggregation period.
FUN the function to be applied.
startOn a string value, specifying the day of week as a three letter abbreviation. Weekly
aggregated data records are then fixed to the weekdays given by the argument
startOn.
init a logical value, if set to TRUE then the time series will be indexed to 1 for its first
value. By default init is set to FALSE.
... arguments passed to other methods.
Details
The function aggregate is a function which can aggregate time series on general aggregation peri-
ods.
In addition there are two tailored function for simple usage: Function daily2monthly and daily2weekly
which allow to aggregate ’timeSeries’ objects from daily to monthly or weekly levels, respectively.
In the case of the function daily2weekly one can explicitely the starting day of the week, the
default value is Tuesday, startOn="Tue".
Value
aggregate returns an aggregated S4 object of class timeSeries.
daily2monthly returns an aggregated monthly object of class timeSeries.
daily2weekly returns an aggregated weekly object of class timeSeries starting on the specified
day of week.
8 align-methods
Examples
## Load Microsoft Data Set -
x <- MSFT
## Aggregate by Weeks -
by <- timeSequence(from = start(x), to = end(x), by = "week")
aggregate(x, by, mean)
Description
Usage
Arguments
x an object of class timeSeries.
by a character string denoting the period
offset a character string denoting the offset
method a character string denoting the alignment approach.
include.weekends
a logical flag, should weekend be included.
... Further arguments to be passed to the interpolating function.
Value
Returns an aligned S4 ’timeSeries’ object.
Examples
## Use MSFT and Compute Sample Size -
dim(MSFT)
Description
Applies a function to a ’timeSeries’ object over time peridos of arbitrary positons and lengths.
Usage
fapply(x, from, to, FUN, ...)
Arguments
x an object of class timeSeries.
from, to starting date and end date as timeDate objects. Note, to must be time ordered
after from. If from and to are missing in function fapply they are set by default
to from=start(x), and to=end(x).
10 apply
FUN the function to be applied. For the function applySeries the default setting is
FUN=colMeans.
by a character value either "monthly" or "quarterly" used in the function applySeries.
The default value is "monthly". Only operative when both arguments from and
to have their default values NULL. In this case the function FUN will be applied
to monthly or quarterly periods.
units an optional character string, which allows to overwrite the current column names
of a timeSeries object. By default NULL which means that the column names
are selected automatically.
format the format specification of the input character vector in POSIX notation.
zone the time zone or financial center where the data were recorded.
FinCenter a character value with the the location of the financial center named as "conti-
nent/city", or "city".
recordIDs a data frame which can be used for record identification information. Note, this
is not yet handled by the apply functions, an empty data.frame will be returned.
title an optional title string, if not specified the inputs data name is deparsed.
documentation optional documentation string, or a vector of character strings.
... arguments passed to other methods.
Details
Like apply applies a function to the margins of an array, the function fapply applies a function to
the time stamps or signal counts of a financial (therefore the "f" in front of the function name) time
series of class 'timeSeries'.
The function fapply inputs a timeSeries object, and if from and to are missing, they take the
start and end time stamps of the series as default falues. The function then behaves like apply on
the column margin.
Note, the function fapply can be used repetitive in the following sense: If from and to are two
timeDate vectors of equal length then for each period spanned by the elelemts of the two vectors
the function FUN will be applied to each period. The resulting time stamps, are the time stamps of
the to vector. Note, the periods can be regular or irregelar, and they can even overlap.
The function fapply calls the more general function applySeries which also offers, to create
automatical monthly and quarterly periods.
Examples
## Percentual Returns of Swiss Bond Index and Performance Index -
LPP <- 100 * LPP2005REC[, c("SBI", "SPI")]
head(LPP, 20)
## Alternative Use -
fapply(LPP, from, to, FUN = colSums)
Description
Functions and methods dealing with the coercion of ’timeSeries’ objects.
Usage
## Default S3 method:
as.timeSeries(x, ...)
## S3 method for class 'ts'
as.timeSeries(x, ...)
## S3 method for class 'data.frame'
as.timeSeries(x, ...)
## S3 method for class 'character'
as.timeSeries(x, ...)
## S3 method for class 'zoo'
as.timeSeries(x, ...)
Arguments
optional A logical value. If TRUE, setting row names and converting column names (to
syntactic names) is optional.
row.names NULL or a character vector giving the row names for the data frame. Missing
values are not allowed.
12 as
Details
Functions to create ’timeSeries’ objects from other objects:
Value
Function as.timeSeries returns a S4 object of class ’timeSeries’.
Functions as.numeric, as.data.frame, as.matrix, as.ts return depending on the generic func-
tion a numeric vector, a data frame, a matrix, or an object of class ts.
Examples
## Create an Artificial timeSeries Object -
setRmetricsOptions(myFinCenter = "GMT")
charvec <- timeCalendar()
data <- matrix(rnorm(12))
TS <- timeSeries(data, charvec, units = "RAND")
TS
## Coerce to Vector -
as.vector(TS)
## Coerce to Matrix -
as.matrix(TS)
Description
Attaches a ’timeSeries’ object to the search path.
Usage
## S4 method for signature 'timeSeries'
attach(what, pos = 2, name = deparse(substitute(what)),
warn.conflicts = TRUE)
Arguments
name alternative way to specify the database to be attached. See for details help(attach,package=base).
pos an integer specifying position in search() where to attach the database. See for
details help(attach,package=base).
warn.conflicts a logical value. If TRUE, warnings are printed about conflicts from attaching the
database, unless that database contains an object .conflicts.OK. A conflict is
a function masking a function, or a non-function masking a non-function. See
for details help(attach,package=base).
what [attach] -
database to be attached. This may currently be a timeSeries object, a data.frame
or a list or a R data file created with save or NULL or an environment. See for
details help(attach,package=base).
Value
The environment is returned invisibly with a name attribute.
Note
Note, the function detach from the base package can be used to detach the attached objects.
Examples
## Load Microsoft Data Set -
x <- MSFT[1:10, ]
colnames(x)
Description
Extracts or assigns optional attributes from or to a timeSeries object.
Usage
getAttributes(obj)
setAttributes(obj) <- value
Arguments
obj a timeSeries object whose optional attributes are to be accessed.
value an object, the new value of the attribute, or NULL to remove the attribute.
Details
Each timeSeries object is documented. By default a time series object holds in the documentation
slot a string with creation time and the user who has defined it. But this is not all. Optionally the
whole creation process and history can be recorded. For this the @documentation slot may have
an optional "Attributes" element. This attribute is tracked over the whole life time of the object
whenever the time series is changed. Whenever you like to be informed about the optional attributes,
or you like to recover them you can dot it, and evenmore, whenever you like to add information as
an addiitonal attribute you can also do it.
The two functions getAttributes and setAttributes provide access to and allow to modify the
optional attributes of a timeSeries object.
Examples
## Create an artificial timeSeries Object -
tS <- dummySeries()
tS
tS
getAttributes(tS)
tS@documentation
Description
Methods for function in Package ‘base’ for timeSeries object.
Methods
x = "timeSeries" a timeSeries object.
Examples
## None -
Description
Binds two ’timeSeries’ objects either by column or by row.
Value
returns a S4 object of class timeDate.
Examples
## Load Microsoft Data Set -
x <- MSFT[1:12, ]
x
## Bind Columnwise -
X <- cbind(x[, "Open"], returns(x[, "Open"]))
colnames(X) <- c("Open", "Return")
X
## Bind Rowwise -
Y <- rbind(x[1:3, "Open"], x[10:12, "Open"])
Y
16 colCum
Description
Functions to compute cumulative column statistics.
Usage
## S4 method for signature 'timeSeries'
colCumsums(x, na.rm = FALSE, ...)
Arguments
method a character string to indicate if geometric (TRUE) or simple (FALSE) returns
should be computed.
na.rm a logical. Should missing values be removed?
x a time series, may be an object of class "matrix", or "timeSeries".
... arguments to be passed.
Value
all functions return an S4 object of class timeSeries.
Examples
## Simulated Return Data -
x = matrix(rnorm(24), ncol = 2)
Description
A collection and description of functions to compute column statistical properties of financial and
economic time series data.
Usage
colStats(x, FUN, ...)
colSds(x, ...)
colVars(x, ...)
colSkewness(x, ...)
colKurtosis(x, ...)
colMaxs(x, ...)
colMins(x, ...)
colProds(x, ...)
colQuantiles(x, prob = 0.05, ...)
colStdevs(x, ...)
colAvgs(x, ...)
Arguments
FUN a function name. The statistical function to be applied.
prob a numeric value, the probability with value in [0,1].
18 comment
Value
See Also
link{rowStats}.
Examples
## Simulated Return Data in Matrix Form -
x = matrix(rnorm(252), ncol = 2)
Description
Usage
Arguments
x a timeSeries object.
value a character string - the comment.
cumulated 19
Examples
Description
Computes a cumulated financial ’timeSeries’, e.g. prices or indexes, from financial returns.
Usage
cumulated(x, ...)
## Default S3 method:
cumulated(x, method = c("continuous", "discrete",
"compound", "simple"), percentage = FALSE, ...)
Arguments
method a character string naming the method how the returns were computed.
percentage a logical value. By default FALSE, if TRUE the series will be expressed in per-
centage changes.
x an object of class timeSeries.
... arguments to be passed.
Details
Note, the function cumulated assumes as input discrete returns from a price or index series. Only
then the cumulatrd series agrees with the original price or index series. The first values of the
cumulated series cannot be computed, it is assumed that the series is indexed to 1.
Value
Examples
## Use the Microsofts' Close Prices Indexed to 1 -
MSFT.CL <- MSFT[, "Close"]
MSFT.CL <- MSFT.CL/MSFT[[1, "Close"]]
head(MSFT.CL)
DataPart,timeSeries-method
DataPart,timeSeries-method
Description
Utilities called to implement object@.Data of timeSeries objects.
Examples
## Load Microsoft Data -
X <- MSFT[1:10, 1:4]
Description
Creates and returns a data and user string.
Usage
description()
Examples
## Show Default Description String -
description()
diff 21
diff diff
Description
Differences a ’timeSeries’ 0bject.
Usage
diff(x, ...)
Arguments
x an object of class ’timeSeries’.
... further arguments to be passed. These may include
Details
Arguments to be passed may include:
Value
Returns a differenced S4 ’timeSeries’ object.
Examples
## Load Microsoft Data Set -
x <- MSFT[1:12, ]
x
## Compute Differences -
diff(x)
## Trimmed Differences -
diff(x, trim=TRUE)
## Padded Differences -
diff(x, trim=FALSE, pad=0)
22 dimnames
Description
Handling columns and rows of ’timeSeries’ objects.
Details
Value
Returns the dimensions and related numbers of a ’timeSeries’ object.
Examples
## Load Swiss Pension Fund Benchmark Data -
X <- LPP2005REC[1:10, 1:3]
## Get Dimension -
dim(X)
## Columns / Rows -
ncol(X); NCOL(X)
drawdowns 23
nrow(X); NROW(X)
## See also -
isUnivariate(X)
isMultivariate(X)
Description
Compute series of drawdowns from financial returns and calculate drawdown statisitcs.
Usage
drawdowns(x, ...)
drawdownsStats(x, ...)
Arguments
x a ’timeSeries’ object of financial returns. Note, drawdowns can be calculated
from an uni- or multivariate time deries object, statistics can only be computed
from an univariate time series object.
... optional arguments passed to the function na.omit.
Details
The code in the core of the function drawdownsStats was was borrowed from the package PerformanceAnalytics
authored by Peter Carl and Sankalp Upadhyay.
Value
drawdowns
returns an object of class ’timeSeries’.
drawdownsStats
returns an object of class ’data.frame’ with the following entries:
"drawdown" - the depth of the drawdown,
"from" - the start date,
"trough" - the trough period,
"to" - the end date,
"length" - the length in number of records,
"peaktrough" - the peak trough, and ,
"recovery" - the recovery length in number of records.
Author(s)
Peter Carl and Sankalp Upadhyay for code from the contributed R package PerformanceAnalytics
used in the function drawdownsStats.
24 durations
Examples
## Use Swiss Pension Fund Data Set of Returns -
head(LPP2005REC)
SPI <- LPP2005REC[, "SPI"]
head(SPI)
## Plot Drawdowns -
dd = drawdowns(LPP2005REC[, "SPI"], main = "Drawdowns")
plot(dd)
dd = drawdowns(LPP2005REC[, 1:6], main = "Drawdowns")
plot(dd)
Description
Computes durations from an object of class ’timeSeries’.
Usage
Arguments
x an object of class timeSeries.
trim a logical value. By default TRUE, the first missing observation in the return series
will be removed.
units a character value or vector which allows to set the units in which the durations
are measured. By default durations are measured in seconds.
Details
Durations measure how long it takes until we get the next record in a timesSeries object. We
return a time series in which for each time stamp we get the length of the period from when we got
the last record. This period is measured in length specified by the argument units, for daily data
use units="days".
filter 25
Value
returns an object of class timeSeries.
Examples
## Compute Durations in days for the MSFT Sereries -
head(durations(MSFT, units = "days"))
head(durations(MSFT, trim = TRUE, units = "days"))
Description
Applies linear filtering to a univariate ’timeSeries’.
Value
A ’timeSeries’ object without missing values.
Examples
## Creata a Dummy Signal 'timeSeries' -
data <- matrix(rnorm(100), ncol = 2)
s <- timeSeries(data, units=c("A", "B"))
head(s)
Description
Print or assign new financial center to a ’timeSeries’ object.
26 is.timeSeries
Usage
getFinCenter(x)
setFinCenter(x) <- value
Arguments
x a ’timeSeries’ object.
value a character with the the location of the financial center named as "continent/city".
See Also
listFinCenter
Examples
## An artificial timeSeries Object -
tS <- dummySeries()
tS
Description
is.timeSeries tests if its argument is a timeSeries. is.timeSeries tests if series has no times-
tamps.
Usage
is.timeSeries(x)
is.signalSeries(x)
isRegular 27
Arguments
x an object of class ’timeSeries’.
Value
Returns TRUE or FALSE depending on whether its argument is an object of class ’timeSeries’ or not.
Examples
## Create an Artificial timeSeries Object -
setRmetricsOptions(myFinCenter = "GMT")
charvec <- timeCalendar()
data <- matrix(rnorm(12))
TS <- timeSeries(data, charvec, units = "RAND")
TS
Description
Checks if a time series is regular.
Usage
## S4 method for signature 'timeSeries'
isDaily(x)
## S4 method for signature 'timeSeries'
isMonthly(x)
## S4 method for signature 'timeSeries'
isQuarterly(x)
Arguments
x an R object of class ’timeSeries’.
... arguments to be passed.
28 isUnivariate
Details
What is a regular time series? If a series is a daily, a monthly, or a weekly time series then we speak
of a regular series. This can be tested calling the functions isDaily, isMonthly, isQuarterly,
or in general isRegular If the series is regular then the frequency of the series can be determined
calling the function frequency.
A time series is defined as daily if the series has not more than one date/time stamp per day.
A time series is defined as monthly if the series has not more than one date/time stamp per month.
A time series is defined as quarterly if the series has not more than one date/time stamp per quarter.
Note, amonthly series is also a daily series, a quarterly series is alsona monthly series.
With these definitions a regular series is either a monthly or a quarterly series.
Value
The is* functions return TRUE or FALSE depending on whether the series fulfills the condition or
not.
The function frequency returns in general 1, for quarterly series 4, and for monthly series 12.
Examples
## None
Description
Checks if a time series o bject or any other rectangular object is univariate or multivariate.
Usage
isUnivariate(x)
isMultivariate(x)
Arguments
x an object of class timeSeries or any other rectangular object.
Details
A rectangular object x is considered to be univariate if the function NCOL(x) returns one, and is
considered to be multivariate if NCOL(x) returns a value bigger than one.
lag 29
Value
isUnivariate
isMultivariate
Examples
## Load Microsoft Data -
setRmetricsOptions(myFinCenter = "GMT")
data(MSFT)
Open = MSFT[, "Open"]
Description
Compute a lagged version of a ’timeSeries’ object.
Usage
## S4 method for signature 'timeSeries'
lag(x, k = 1, trim = FALSE, units = NULL, ...)
Arguments
k [lagSeries] -
an integer value. The number of lags (in units of observations). By default 1.
trim a logical value. By default TRUE, the first missing observation in the return series
will be removed.
units an optional character string, which allows to overwrite the current column names
of a timeSeries object. By default NULL which means that the column names
are selected automatically.
x an object of class timeSeries.
... arguments passed to other methods.
Value
returns a lagged S4 object of class ’timeSeries’.
30 math
Examples
## Load Micsrosoft Data Set -
x = MSFT[1:20, "Open"]
Description
Functions and methods dealing with mathematical ’timeSeries’ operations.
Usage
Arguments
x an object of class timeSeries.
... arguments to be passed.
Details
The math functions include:
Value
Returns the value from a mathematical or logical operation operating on objects of class ’time-
Series[], or the value computed by a mathematical function.
merge 31
Examples
## Create an Artificial timeSeries Object -
setRmetricsOptions(myFinCenter = "GMT")
charvec = timeCalendar()
set.seed(4711)
data = matrix(exp(cumsum(rnorm(12, sd = 0.1))))
TS = timeSeries(data, charvec, units = "TS")
TS
Description
Merges several object types with ’timeSeries’ objects. The number of rows must match.
Details
The following combinations are supported:
timeSeries ANY
timeSeries missing
timeSeries numeric
timeSeries matrix
timeSeries timeSeries
Value
Returns a ’timeSeries’ object of two merged time series.
Examples
## Load Series -
x <- MSFT[1:12, ]
Description
Allow to work with model frames for ’timeSeries’ objects.
Details
The function model.frame is a generic function which returns in the R-ststs framework by default
a data.frame with the variables needed to use formula and any ... arguments. In contrast to this
the method returns an object of class timeSeries when the argument data was not a data.frame
but also an object of class ’timeSeries’.
Value
Returns an object of class ’timeSeries.
Note
This function is preliminary and untested.
See Also
model.frame.
Examples
## Load Microsoft Data -
setRmetricsOptions(myFinCenter = "GMT")
X <- MSFT[1:12, ]
base <- 10
Open <- model.frame(Open ~ log(Open, base = `base`), data = X)
colnames(Open) <- c("X", "log10(X)")
class(Open)
as.timeSeries(Open)
Description
Functions and methods dealing with special monthly ’timeSeries’ objects.
Usage
countMonthlyRecords(x)
Arguments
x a ’timeSeries’ object.
period a character string specifying the rollling period composed by the length of the
period and its unit. As examples: "3m" represents quarterly shifts, and "6m",
]code"12m", and "24m" semi-annual, annual and bi-annual shifts. To determine
the proper start of the series is in the responsibility of the user.
by a character string specifying the rolling shift composed by the length of the
shift and its unit. As examples: "1m" represents monthly shifts, "3m" represents
quarterly shifts, and "6m" semi-annual shifts. To determine the proper start of
the series is in the responsibility of the user.
FUN the function for the statistic to be applied. For example in the case of aggregation
usecolAvgs.
... arguments passed to the function FUN.
Details
The function countMonthlyRecords computes a ’timeSeries’ that holds the number of monthly
counts of the records.
The function rollMonthlyWindows computes start and end dates for rolling time windows.
The function rollMonthlySeries computes a static over rolling periods defined by the function
rollMonthlyWindows.
34 na
Value
Examples
## Load Microsoft Daily Data Set:
x <- MSFT
Description
Usage
removeNA(x, ...)
substituteNA(x, type = c("zeros", "mean", "median"), ...)
interpNA(x, method = c("linear", "before", "after"), ...)
na 35
Arguments
interp, type [nna.omit][substituteNA] -
Three alternative methods are provided to remove NAs from the data: type="zeros"
replaces the missing values by zeros, type="mean" replaces the missing values
by the column mean, type="median" replaces the missing values by the the
column median.
method [na.omit] -
Specifies the method how to handle NAs. One of the applied vector strings:
method="s" na.rm = FALSE, skip, i.e. do nothing, method="r" remove NAs,
method="z" substitute NAs by zeros, method="ir" interpolate NAs and remove
NAs at the beginning and end of the series, method="iz" interpolate NAs and
substitute NAs at the beginning and end of the series, method="ie" interpolate
NAs and extrapolate NAs at the beginning and end of the series, [interpNA] -
Specifies the method how to interpolate the matrix column by column. One of
the applied vector strings: method="linear", method="before" or method="after".
For the interpolation the function approx is used.
object an object of class("timeSeries").
x a numeric matrix, or any other object which can be transformed into a matrix
through x = as.matrix(x,...). If x is a vector, it will be transformed into a
one-dimensional matrix.
... arguments to be passed to the function as.matrix.
Details
Functions for handling missing values in ’timeSeries’ objects and in objects which can be trans-
formed into a vector or a two dimensional matrix.
Note
The functions removeNA, substituteNA and interpNA are older implementations. Please use in
all cases if possible the new function na.omit.
When dealing with daily data sets, there exists another function alignDaily Series which can
handle missing data in un-aligned calendarical ’timeSeries’ objects.
References
Troyanskaya O., Cantor M., Sherlock G., Brown P., Hastie T., Tibshirani R., Botstein D., Altman
R.B., (2001); Missing Value Estimation Methods for DNA microarrays Bioinformatics 17, 520–525.
Examples
## Create a Matrix -
X <- matrix(rnorm(100), ncol = 5)
Description
Find the longest consecutive stretch of non-missing values in a timeSeries object. (In the event of a
tie, the first such stretch.)
Usage
## S4 method for signature 'timeSeries'
na.contiguous(object, ...)
Arguments
object a timeSeries object.
... further arguments passed to or from other methods.
Value
A timeSeries object without missing values.
Examples
## Dummy timeSeries with NAs entries
data <- matrix(sample(c(1:20, rep(NA,4))), ncol = 2)
s <- timeSeries(data, timeCalendar())
Description
Functions and methods dealing with the rearrangement of column names of ’timeSeries’ objects.
Usage
orderColnames(x, ...)
sortColnames(x, ...)
sampleColnames(x, ...)
statsColnames(x, FUN = colMeans, ...)
pcaColnames(x, robust = FALSE, ...)
hclustColnames(x, method = c("euclidean", "complete"), ...)
Arguments
FUN a character string indicating which statistical function should be applied. By
default statistical ordering operates on the column means of the time series.
method a character string with two elements. The first determines the choice of the
distance measure, see dist, and the second determines the choice of the ag-
glomeration method, see hclust.
robust a logical flag which indicates if robust correlations should be used.
x an object of class timesSeries or any other rectangular object which can be
transformed by the function as.matrix into a numeric matrix.
... further arguments to be passed, see details.
Details
Statistically Motivated Rearrangement
The function statsColnames rearranges the column names according to a statical measure. These
measure must operate on the columns of the time series and return a vector of values which can
be sorted. Typical functions ar those listed in in help page colStats but one can also crete his
own functions which compute for example risk or any other statistical measure. The ... argument
allows to pass additional arguments to the underlying function FUN.
Value
returns a vector of character string, the rearranged column names.
orderStatistics 39
Examples
## Load Swiss Pension Fund Benchmark Data -
data <- LPP2005REC[,1:6]
## Sort Alphabetically -
sortColnames(data)
Description
Computes order statistic of a ’timeSeries’.
Usage
orderStatistics(x)
Arguments
x an univariate ’timeSeries’ object.
Value
Function orderStatistics returns the order statistic of an univariate ’timeSeries’ object. The
output is an object of class ’list’.
Examples
## Load Swiss Pension Fund Benchmark Data -
setRmetricsOptions(myFinCenter = "GMT")
X <- LPP2005REC[, "SPI"]
colnames(X)
Description
Computes perodical statistics back to a given period.
Usage
endOfPeriodSeries(x,
nYearsBack = c("1y", "2y", "3y", "5y", "10y", "YTD"))
endOfPeriodStats(x,
nYearsBack = c("1y", "2y", "3y", "5y", "10y", "YTD"))
Arguments
x an end-of-month recorded multivariate ’timeSeries’ object. One of the columns
holds the benchmark series specified by the argument benchmark, By defauklt
this is the last column of x.
nYearsBack a period string. How long back should the series be treated? Options include
values from 1 year to 10 years, and year-to-date: "1y", "2y", "3y", "5y", "10y",
"YTD".
benchmark an integer giving the position of the benchmar series in x.
Details
The function endOfPeriodSeries returns series back to a given period.
The function endOfPeriodStats returns statistics back to a given period.
The function endOfPeriodBenchmarks returns benchmarks back to a given period.
x must be end of month data. Note you can create such series using for example the functions:
align, alignDailySeries, daily2monthly.
Examples
## Load Series: Column 1:3 Swiss Market, Column 8 (4) Benchmark
x <- 100 * LPP2005REC[, c(1:3, 8)]
colnames(x)
x <- daily2monthly(x)
x
endOfPeriodSeries(x, nYearsBack="1y")
Description
Plots ’timeSeries’ objects and add lines and points.
Usage
## S4 method for signature 'timeSeries'
plot(x, y, FinCenter = NULL,
plot.type = c("multiple", "single"), format = "auto",
at = pretty(x), widths = 1, heights = 1, xy.labels,
xy.lines, panel = lines, nc, yax.flip = FALSE,
mar.multi = c(0, 5.1, 0, if (yax.flip) 5.1 else 2.1),
oma.multi = c(6, 0, 5, 0), axes = TRUE, ...)
Arguments
x, y objects of class timeSeries.
FinCenter a character with the the location of the financial center named as "continent/city".
plot.type for multivariate time series, should the series by plotted separately (with a com-
mon time axis) or on a single plot?
format POSIX label format, e.g. "%Y-%m-%d" or "%F" for ISO-8601 standard date
format.
at a timeDate object setting the plot label positions. If at=pretty(x), the pos-
titions are generated automatized calling the function pretty. Default option
at="auto" selects 6 equal spaced time label positions. For the new plot themes
set at="pretty" or at="chic". In this case additional arguments can be passed
through the ... arguments, see details.
42 plot-methods
widths, heights
widths and heights for individual graphs, see layout.
xy.labels logical, indicating if text() labels should be used for an x-y plot, \_or\_ char-
acter, supplying a vector of labels to be used. The default is to label for up to
150 points, and not for more.
xy.lines logical, indicating if lines should be drawn for an x-y plot. Defaults to the
value of xy.labels if that is logical, otherwise to TRUE
panel a function(x,col,bg,pch,type,...) which gives the action to be carried out
in each panel of the display for plot.type="multiple". The default is lines.
nc the number of columns to use when type="multiple". Defaults to 1 for up to
4 series, otherwise to 2.
yax.flip logical indicating if the y-axis (ticks and numbering) should flip from side 2
(left) to 4 (right) from series to series when type="multiple".
mar.multi, oma.multi
the (default) par settings for plot.type="multiple".
axes logical indicating if x- and y- axes should be drawn.
n an integer giving the desired number of intervals.
min.n a nonnegative integer giving the minimal number of intervals.
shrink.sml a positive numeric by a which a default scale is shrunk in the case when range(x)
is very small.
high.u.bias a non-negative numeric, typically > 1. Larger high.u.bias values favor larger
units.
u5.bias a non-negative numeric multiplier favoring factor 5 over 2.
eps.correct an integer code, one of 0,1,2. If non-0, a correction is made at the boundaries.
... additional graphical arguments, see plot, plot.default and par.
Details
The original plotting function plot was build along R’s plotting function plot.ts with an addi-
tional argument to tailor the position marks at user defined position specified by the argument at.
We call this style or theme "ts".
With Verison R 3.1 we have inroduced two new additionol plotting themes called "pretty" and
"chick". They are becoming active when we set at="pretty" or at="chic".
Plot style or theme "pretty" is an extension of our original plotting function.
Plot style or theme "chic" an implementation along the contributed packages xts and PerformanceAnalytics
from the Chicago finance group members. "Chicago" gave the name to call the them "chic".
For both themes, "pretty" and "chic" additional arguments are passed through the ... arguments.
These are:
Concerning the plot elements, the length of these vectors has to be the same as the number of
columns in the time series to be plotted. If their length is only one, then tey are repeated.
There is an almost 70 pages vignette added to the package, with dozens of examples of tailored
plots. Have a look in it.
Value
Displays a plot or plot elements of an object of class ’timeSeries’.
Examples
## Load Swiss Pension Fund Benchmark Data -
LPP <- LPP2005REC[1:12, 1:4]
colnames(LPP) <- abbreviate(colnames(LPP), 2)
finCenter(LPP) <- "GMT"
## Example Plot 1 -
plot(LPP[, 1], type = "o", col = "steelblue",
main = "LPP", xlab = "2005", ylab = "Return")
plot(LPP[, 1], at="auto", type = "o", col = "steelblue",
main = "LPP", xlab = "2005", ylab = "Return")
## Example Plot 2 -
plot(LPP[, 1:2], type = "o", col = "steelblue",
main = "LPP", xlab = "2005", ylab = "Return")
## Example Plot 3 -
plot(LPP[, 1], LPP[, 2], type = "p", col = "steelblue",
main = "LPP", xlab = "Return 1", ylab = "Return 2")
Description
Print ’timeSeries’ pbjects.
Arguments
object an object of class timeSeries.
Value
Prints an object of class timeSeries.
Examples
## Load Micsrosoft Data -
setRmetricsOptions(myFinCenter = "GMT")
LPP <- MSFT[1:12, 1:4]
Description
Returns the sample ranks of the values of a ’timeSeries’ object.
Usage
## S4 method for signature 'timeSeries'
rank(x, na.last = TRUE, ties.method = )
Arguments
x an univariate object of class timeSeries.
na.last for controlling the treatment of NAs. If TRUE, missing values in the data are
put last; if FALSE, they are put first; if NA, they are removed; if "keep" they are
kept with rank NA.
ties.method a character string specifying how ties are treated; can be abbreviated.
Details
If all components are different (and no NAs), the ranks are well defined, with values in seq_len(x).
With some values equal (called ???ties???), the argument ties.method determines the result at the
corresponding indices. The "first" method results in a permutation with increasing values at each
index set of ties. The "random" method puts these in random order whereas the default, "average",
replaces them by their mean, and "max" and "min" replaces them by their maximum and minimum
respectively, the latter being the typical sports ranking.
NA values are never considered to be equal: for na.last = TRUE and na.last = FALSE they are
given distinct ranks in the order in which they occur in x.
Value
returns the ranks of a timeSeries object.
Examples
## Load Microsoft Data -
X <- 100 * returns(MSFT)
Description
Reads a file in table format and creates a timeSeries object from it.
Usage
Arguments
file the filename of a spreadsheet data set from which to import the data records.
FinCenter a character with the the location of the financial center named as "continent/city".
header a logical value indicating whether the file contains the names of the variables as
its first line. If missing, the value is determined from the file format: ’header’
is set to ’TRUE’ if and only if the first row contains one fewer field than the
number of columns.
format a character string with the format in POSIX notation specifying the timestamp
format. Note, the format has not to be specified if the first column in the file
has the timestamp format specifyer, e.g. "%Y-%m-%d" for the short ISO 8601
format.
sep the field seperator used in the spreadsheet file to separate columns. By default
";". Note, if sep=";" is specified, and reading the series fails, then the reading
is automatically repeated with sep=",".
zone the time zone or financial center where the data were recorded. By default
zone="" which is short for GMT.
... Additional arguments passed to read.table() function which is used to read
the file.
Details
The first column of the table must hold the timestamps. Format of the stimestamps can be either
specified in the header of the first column or by the format argument.
Value
Description
Compute financial returns from prices or indexes.
Usage
returns(x, ...)
returns0(x, ...)
getReturns(...)
returnSeries(...)
Arguments
x an object of class timeSeries.
percentage a logical value. By default FALSE, if TRUE the series will be expressed in per-
centage changes.
method a character string. Which method should be used to compute the returns, "con-
tinuous", "discrete", or "compound", "simple". The second pair of methods is a
synonyme for the first two methods.
na.rm a logical value. Should NAs be removed? By Default TRUE.
trim a logical value. Should the time series be trimmed? By Default TRUE.
... arguments to be passed.
Value
all functions return an object of class timeSeries.
returns0 returns am untrimmed series with the first row of returns set to zero(s).
Note
The functions returnSeries, getReturns, are synonymes for the function returns. We do not
recommend to use these functions.
48 rev
Examples
## Load Microsoft Data -
setRmetricsOptions(myFinCenter = "GMT")
data(MSFT)
X = MSFT[1:10, 1:4]
X
## Continuous Returns -
returns(X)
returns0(X)
## Discrete Returns:
returns(X, method = "discrete")
## Don't trim:
returns(X, trim = FALSE)
Description
Reverses an uni- or multivariate ’timeSeries’ object by reversing the order of the time stamps.
Usage
## S4 method for signature 'timeSeries'
rev(x)
Arguments
x an uni- or multivariate ’timeSeries’ object.
Value
Returns a reversed ’timeSeries’ object.
Examples
## Reverse Series -
rev(tS)
rollMean 49
Description
Computes rolling mean, min, max and median for a ’timeSeries’ object.
Usage
rollStats(x, k, FUN=mean, na.pad=FALSE,
align=c("center", "left", "right"), ...)
Arguments
x an uni- or multivariate ’timeSeries’ object.
k an integer width of the rolling window. Must be odd for rollMedian.
FUN the function to be rolled.
na.pad a logical flag. Should NA padding be added at beginning? By default FALSE.
align a character string specifying whether the index of the result should be left- or
right-aligned or centered compared to the rolling window of observations. The
default choice is set to align="center".
... optional arguments to be passed.
Details
The code in the core of the functions rollMean, rollMin, rollMax, and rollMedian was borrowed
from the package zoo authored by Achim Zeileis, Gabor Grothendieck and Felix Andrews.
Value
returns an object of class ’timeSeries’.
Author(s)
Achim Zeileis, Gabor Grothendieck and Felix Andrews for code from the contributed R package
zoo used in the functions rollMean, rollMin, rollMax, and rollMedian.
50 rowCum
Examples
## Use Swiss Pension Fund Data Set of Returns -
head(LPP2005REC)
SPI <- LPP2005REC[, "SPI"]
head(SPI)
## Plot Drawdowns -
rmean <- rollMean(SPI, k = 10)
plot(rmean)
Description
Usage
Arguments
Value
Examples
## Simulated Monthly Return Data -
X = matrix(rnorm(24), ncol = 2)
Description
Usage
runlengths(x, ...)
Arguments
Value
Examples
## random time series -
set.seed(4711)
x <- rnorm(12)
tS <- timeSeries(data=x, charvec=timeCalendar(), units="x")
tS
## return runlengths -
runlengths(tS)
sample sample
Description
Value
Examples
scale scale
Description
Scales a ’timeSeries’ object.
Details
scale is a function to center and/or scale the columns of a ’timeSeries’ object.
The value of center determines how column centering is performed. If center is a numeric vector
with length equal to the number of columns of x, then each column of x has the corresponding
value from center subtracted from it. If center is TRUE then centering is done by subtracting the
column means (omitting NAs) of x from their corresponding columns, and if center is FALSE, no
centering is done.
The value of scale determines how column scaling is performed (after centering). If scale is a
numeric vector with length equal to the number of columns of x, then each column of x is divided
by the corresponding value from scale. If scale is TRUE then scaling is done by dividing the
(centered) columns of x by their standard deviations if center is TRUE, and the root mean square
otherwise. If scale is FALSE, no scaling is done.
Value
Returns a centered and/or scaled ’timeSeries’ object.
Examples
## Load Series:
x <- 100* LPP2005REC[, c("SBI", "SPI")]
Description
series returns the @.Data slot of a timeSeries object in matrix form. New series can also be
assign to an already existing timeSeries.
coredata is a synonyme function nameing for series.
Usage
series(x)
series(x) <- value
Arguments
x a timeSeries object.
value a vector, a data.frame or a matrix object of numeric data.
See Also
timeSeries()
Examples
## A Dummy timeSeries Object
ts <- timeSeries()
ts
Description
Usage
Arguments
Details
Value
returns a bivariate ’timeSeries’ object, the first column holds the original time series data, the second
the smoothed series.
Author(s)
Examples
## Use Close from MSFT's Price Series -
head(MSFT)
MSFT.CLOSE <- MSFT[, "Close"]
head(MSFT.CLOSE)
Description
Sorts a ’timeSeries’ object with respect to its time stamps.
Usage
## S4 method for signature 'timeSeries'
sort(x, decreasing = FALSE, ...)
Arguments
x an uni- or multivariate timeSeries object.
decreasing a logical flag. Should we sort in increasing or decreasing order? By default
FALSE.
... optional arguments passed to other methods.
Details
Sorts a time series either in increasing or decreasing time stamp order. Internally the function order
from R’s base packahe is used. order generates a permutation which rearranges the time stamps in
ascending or descending order.
To find out if the series is unsorted, the function is.unsorted from R’s base package can be called.
56 SpecialDailySeries
Value
Examples
Description
Usage
Arguments
FinCenter a character with the the location of the financial center named as "continent/city".
FUN the function to be applied.
[applySeries] -
a function to use for aggregation, by default colAvgs.
include.weekends
[alignDailySeries] -
a logical value. Should weekend dates be included or removed from the series.
method [alignDailySeries] -
the method to be used for the alignment. A character string, one of "before",
use the data from the row whose position is just before the unmatched position,
or "after", use the data from the row whose position is just after the unmatched
position, or "linear", interpolate linearly between "before" and "after".
period [rollDailySeries] -
a character string specifying the rollling period composed by the length of the
period and its unit, e.g. "7d" represents one week.
units [allignDailySeries] -
an optional character string, which allows to overwrite the current column names
of a timeSeries object. By default NULL which means that the column names
are selected automatically.
x an object of class timeSeries.
zone the time zone or financial center where the data were recorded.
... arguments passed to interpolating methods.
Details
Value
dummyDailySeries
creates from a numeric matrix with daily records of unknown dates a timeSeries object with
dummy daily dates.
alignDailySeries
returns from a daily time series with missing holidays a weekly aligned daily timeSeries object
rollDailySeries
58 splits
returns an object of class timeSeries with rolling values, computed from the function FUN.
Examples
## Use Microsofts' OHLCV Price Series -
head(MSFT)
end(MSFT)
splits splits
Description
Searches for outlier splits in a ’timeSeries’ object.
Usage
splits(x, sd = 3, complement = TRUE, ...)
Arguments
x a ’timeSeries’ object.
sd a numeric value of standard deviations, e.g. 5 means that values larger or smaller
than five times the standard deviation of the series will be detected.
complement a logical flag, should the outlier series or its complements be returned?
... arguments to be passed.
Details
This function is thought to find splits in financial price or index series If a price or index is splitted
we observe in the returns a big jump of several standard deviations which is identified usual as an
outlier.
spreads 59
Examples
## Create a Return Series with a Split -
data <- runif(12, -1, 1)
data[6] <- 20
x <- timeSeries(data, timeCalendar(), units="RUNIF")
x
Description
Compute spreads and midquotes from price streams.
Usage
midquoteSeries(...)
spreadSeries(...)
Arguments
tickSize the default is NULL to simply compute price changes in original price lev-
els. If ticksize is supplied, the price changes will be divided by the value of
inTicksOfSize to compute price changes in ticks.
which a vector with two character strings naming the column names of the time series
from which to compute the mid quotes and spreads. By default these are bid and
ask prices with column names c("Bid","Ask").
x an object of class timeSeries.
... arguments to be passed.
Value
all functions return an object of class timeSeries.
Note
The functions returnSeries, getReturns, midquoteSeries, spreadSeries are synonymes for
returns, midquotes, and spreads.
60 start
Examples
## Load the Microsoft Data -
setRmetricsOptions(myFinCenter = "GMT")
data(MSFT)
X = MSFT[1:10, ]
head(X)
Description
Returns start and/or end time stamps of a ’timeSeries’ object.
Usage
## S4 method for signature 'timeSeries'
start(x, ...)
Arguments
x an uni- or multivariate timeSeries object.
... optional arguments passed to other methods.
Value
returns a timeSeries object.
Examples
Description
Compactly display the structure of a ’timeSeries’ Object.
Usage
## S4 method for signature 'timeSeries'
str(object, ...)
Arguments
object an object of class timeSeries.
... arguments passed to other methods.
Value
returns a str report for an object of class timeSeries.
Examples
## Load Microsoft Data Set -
data(MSFT)
X <- MSFT[1:12, 1:4]
colnames(X) <- abbreviate(colnames(X), 4)
## Display Structure -
str(X)
t timeSeries Transpose
Description
Returns the transpose of a ’timeSeries’ object.
Usage
## S4 method for signature 'timeSeries'
t(x)
62 time
Arguments
x a ’timeSeries’ object.
Value
Examples
## Dummy timeSeries with NAs entries
data <- matrix(1:24, ncol = 2)
s <- timeSeries(data, timeCalendar())
s
## Transpose 'timeSeries' -
t(s)
Description
Usage
getTime(x)
setTime(x) <- value
Arguments
Value
Examples
Description
timeSeries-method-stats
Time Series Correlations
Description
S4 methods of stats package for timeSeries objects.
Usage
## S4 method for signature 'timeSeries'
cov(x, y = NULL, use = "all.obs",
method = c("pearson", "kendall", "spearman"))
Arguments
method a character string indicating which correlation coefficient (or covariance) is to
be computed. One of "pearson" (default), "kendall", or "spearman", can be
abbreviated.
use an optional character string giving a method for computing covariances in the
presence of missing values. This must be (an abbreviation of) one of the strings
"all.obs", "complete.obs" or "pairwise.complete.obs".
x an univariate object of class timeSeries.
y NULL (default) or a timeSeries object with compatible dimensions to x. The
default is equivalent to y = x (but more efficient).
Value
returns the covariance or correlation matrix.
Examples
## Load Microsoft Data Set -
data(MSFT)
X = MSFT[, 1:4]
X = 100 * returns(X)
Description
Functions to generate and modify ’timeSeries’ objects:
Usage
timeSeries(data, charvec, units = NULL, format = NULL, zone = "",
FinCenter = "", recordIDs = data.frame(), title = NULL,
documentation = NULL, ...)
seriesData(object)
Arguments
charvec a character vector of dates and times or any objects which can be coerced to a
timeDate object.
data a matrix object or any objects which can be coereced to a matrix.
documentation optional documentation string, or a vector of character strings.
FinCenter a character with the the location of the financial center named as "continent/city".
format the format specification of the input character vector,
[as.timeSeries] -
a character string with the format in POSIX notation to be passed to the time
series object.
object [is][seriesData][seriesPositions][show][summary] - an object of class timeSeries.
recordIDs a data frame which can be used for record identification information.
[print] -
a logical value. Should the recordIDs printed together with the data matrix and
time series positions?
title an optional title string, if not specified the inputs data name is deparsed.
units an optional character string, which allows to overwrite the current column names
of a timeSeries object. By default NULL which means that the column names
are selected automatically.
zone the time zone or financial center where the data were recorded.
... arguments passed to other methods.
Details
Generation of Time Series Objects:
We have defined a timeSeries class which is in many aspects similar to the S-Plus class with the
same name, but has also some important differences. The class has seven Slots, the ’Data’ slot
which holds the time series data in matrix form, the ’position’ slot which holds the time/date as a
character vector, the ’format’ and ’FinCenter’ slots which are the same as for the ’timeDate’ object,
the ’units’ slot which holds the column names of the data matrix, and a ’title’ and a ’documentation’
slot which hold descriptive character strings. Date and time is managed in the same way as for
timeDate objects.
66 TimeSeriesClass
Value
timeSeries
returns a S4 object of class timeSeries.
seriesData
extracts the @.Data slot from a timeSeries object and is equivalent to as.amtrix.
Note
These functions were written for Rmetrics users using R and Rmetrics under Microsoft’s Windows
operating system where timze zones, daylight saving times and holiday calendars are insuffeciently
supported.
Examples
## Load Microsoft Data -
# Microsoft Data:
setRmetricsOptions(myFinCenter = "GMT")
data(MSFT)
head(MSFT)
## Aggregate Weekly -
TimeSeriesSubsettings 67
GoodFriday(2001)
to <- timeSequence(from = "2001-04-11", length.out = 3, by = "week")
from <- to - 6*24*3600
from
to
applySeries(tsRet, from, to, FUN = sum)
Description
Three data sets used in example files.
The data sets are:
Examples
## Plot LPP2005 Example Data Set -
data(LPP2005REC)
plot(LPP2005REC, type = "l")
Description
Subset a ’timeSeries’ objects due to different aspects.
Usage
Arguments
complement [outlierSeries] -
a logical flag, should the outler series or its complement be returns, by default
TRUE which returns the series free of outliers.
from, to starting date and end date, to must be after from.
start, end starting date and end date, end must be after start.
n [head][tail] -
an integer specifying the number of lines to be returned. By default n=6.
recordIDs [head][tail] -
a logical value. Should the recordIDs returned together with the data matrix
and time series positions?
sd [outlierSeries] -
a numeric value of standard deviations, e.g. 10 means that values larger or
smaller tahn ten times the standard deviation will be removed from the series.
turns 69
Value
Examples
Description
Usage
turns(x, ...)
Arguments
Details
The function turns determines the number and the position of extrema (turning points, either peaks
or pits) in a regular time series.
The function turnsStats calculates the quantity of information associated to the observations in
this series, according to Kendall’s information theory.
The functions are borrowed from the contributed R package pastecs and made ready for working
together with univariate timeSeries objects. You need not to load the R package pastecs, the
code parts we need here are builtin in the timeSeries package.
We have renamed the function turnpoints to turns to distinguish between the original function
in the contributed R package pastecs and our Rmetrics function wrapper.
For further details please consult the help page from the contributed R package pastecs.
Value
turns
returns an object of class timeSeries.
turnsStats
returns an object of class turnpoints with the following entries:
data - The dataset to which the calculation is done.
n - The number of observations.
points - The value of the points in the series, after elimination of ex-aequos.
pos - The position of the points on the time scale in the series (including ex-aequos).
exaequos - Location of exaequos (1), or not (0).
nturns - Total number of tunring points in the whole time series.
firstispeak - Is the first turning point a peak (TRUE), or not (FALSE).
peaks - Logical vector. Location of the peaks in the time series without ex-aequos.
pits - Logical vector. Location of the pits in the time series without ex-aequos.
tppos - Position of the turning points in the initial series (with ex-aequos).
proba - Probability to find a turning point at this location.
info - Quantity of information associated with this point.
Author(s)
Frederic Ibanez and Philippe Grosjean for code from the contributed R package pastecs and Rmet-
rics for the function wrapper.
References
Ibanez, F., 1982, Sur une nouvelle application de la theorie de l’information a la description des
series chronologiques planctoniques. J. Exp. Mar. Biol. Ecol., 4, 619–632
Kendall, M.G., 1976, Time Series, 2nd ed. Charles Griffin and Co, London.
Examples
## Load Swiss Equities Series -
SPI.RET <- LPP2005REC[, "SPI"]
units 71
head(SPI.RET)
## Compute Statistics -
turnsStats(SPI.SMOOTH)
Description
Gets and sets the column names of a ’timeSeries’ object. The column names are also called units or
unit names.
Usage
getUnits(x)
setUnits(x) <- value
Arguments
x a ’timeSeries’ object.
value a vector of unit names.
See Also
timeSeries()
Examples
## A Dummy timeSeries Object
tS <- dummySeries()
tS
Description
Converts an index series to a wealth series normalizing the starting value to one.
Usage
index2wealth(x)
Arguments
x an object of class ’timeSeries’.
Value
returns a time series object of the same class as the input argument x normalizing the starting value
to one.
Examples
## Load MSFT Open Prices -
INDEX <- MSFT[1:20, 1]
INDEX
window window
Description
Extracts a part from a ’timeSeries Object
Examples
## Load LPP Benchmark Returns -
x <- LPP2005REC[, 7:9]
range(time(x))
73
74 INDEX
[,timeSeries,character,missing-method [<-,timeSeries,timeDate,ANY-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[<-,timeSeries,timeDate,character-method
[,timeSeries,index_timeSeries,character-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[<-,timeSeries,timeDate,index_timeSeries-method
[,timeSeries,index_timeSeries,index_timeSeries-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,index_timeSeries,missing-method [<-,timeSeries,timeDate,missing-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,matrix,index_timeSeries-method [<-,timeSeries,timeSeries,character-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,matrix,missing-method [<-,timeSeries,timeSeries,index_timeSeries-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,missing,character-method [<-,timeSeries,timeSeries,missing-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,missing,index_timeSeries-method $,timeSeries-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,missing,missing-method $<-,timeSeries,ANY,ANY-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,timeDate,character-method $<-,timeSeries,ANY,factor-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,timeDate,index_timeSeries-method$<-,timeSeries,ANY,numeric-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
[,timeSeries,timeDate,missing-method $<-,timeSeries,ANY-method
(TimeSeriesSubsettings), 67 (TimeSeriesSubsettings), 67
$<-,timeSeries,factor-method
[,timeSeries,timeSeries,index_timeSeries-method
(TimeSeriesSubsettings), 67
(TimeSeriesSubsettings), 67
$<-,timeSeries,numeric-method
[,timeSeries,timeSeries,missing-method
(TimeSeriesSubsettings), 67
(TimeSeriesSubsettings), 67
%*%,ANY,timeSeries-method (math), 30
[,timeSeries,time_timeSeries,ANY-method
%*%,timeSeries,ANY-method (math), 30
(TimeSeriesSubsettings), 67
%*%,timeSeries,vector-method (math), 30
[,timeSeries,time_timeSeries,character-method
(TimeSeriesSubsettings), 67 aggregate (aggregate-methods), 7
[,timeSeries,time_timeSeries,index_timeSeries-method
aggregate,timeSeries-method
(TimeSeriesSubsettings), 67 (aggregate-methods), 7
[,timeSeries,time_timeSeries,missing-method aggregate-methods, 7
(TimeSeriesSubsettings), 67 aggregate.timeSeries
[<-,timeSeries,character,ANY-method (aggregate-methods), 7
(TimeSeriesSubsettings), 67 align (align-methods), 8
[<-,timeSeries,character,character-method align,timeSeries-method
(TimeSeriesSubsettings), 67 (align-methods), 8
[<-,timeSeries,character,index_timeSeries-method
align-methods, 8
(TimeSeriesSubsettings), 67 alignDailySeries (SpecialDailySeries),
[<-,timeSeries,character,missing-method 56
(TimeSeriesSubsettings), 67 apply, 9
[<-,timeSeries,index_timeSeries,character-method
apply,timeSeries-method (apply), 9
(TimeSeriesSubsettings), 67 applySeries (apply), 9
[<-,timeSeries,matrix,character-method as, 11
(TimeSeriesSubsettings), 67 attach, 13
INDEX 75
timeSeries,matrix,missing-method
(TimeSeriesClass), 64
timeSeries,matrix,numeric-method
(TimeSeriesClass), 64
timeSeries,matrix,timeDate-method
(TimeSeriesClass), 64
timeSeries,missing,ANY-method
(TimeSeriesClass), 64
timeSeries,missing,missing-method
(TimeSeriesClass), 64
timeSeries,missing,timeDate-method
(TimeSeriesClass), 64
timeSeries-class (TimeSeriesClass), 64
timeSeries-deprecated, 63
timeSeries-method-stats, 63
timeSeries-package, 3
TimeSeriesClass, 64
TimeSeriesData, 67
TimeSeriesSubsettings, 67
trunc,timeSeries-method (math), 30
turns, 69
turnsStats (turns), 69
units, 71
USDCHF (TimeSeriesData), 67
var,timeSeries-method
(timeSeries-method-stats), 63
var-methods (timeSeries-method-stats),
63
wealth, 72
window, 72
window,timeSeries-method
(TimeSeriesSubsettings), 67
window.timeSeries
(TimeSeriesSubsettings), 67