[Returnanalytics-commits] r3554 - in pkg/FactorAnalytics: . R data man
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Thu Nov 20 05:38:48 CET 2014
Author: pragnya
Date: 2014-11-20 05:38:47 +0100 (Thu, 20 Nov 2014)
New Revision: 3554
Added:
pkg/FactorAnalytics/R/Misc.R
pkg/FactorAnalytics/data/managers.rda
pkg/FactorAnalytics/man/managers.Rd
Modified:
pkg/FactorAnalytics/DESCRIPTION
pkg/FactorAnalytics/NAMESPACE
pkg/FactorAnalytics/R/CornishFisher.R
pkg/FactorAnalytics/R/fitTsfm.R
pkg/FactorAnalytics/R/fmEsDecomp.R
pkg/FactorAnalytics/R/fmVaRDecomp.R
pkg/FactorAnalytics/R/paFm.r
pkg/FactorAnalytics/R/plot.pafm.r
pkg/FactorAnalytics/R/plot.tsfm.r
pkg/FactorAnalytics/R/predict.tsfm.r
pkg/FactorAnalytics/R/summary.tsfm.r
pkg/FactorAnalytics/man/CornishFisher.Rd
Log:
All packages (except xts) in the depends field moved to Imports. Functions and Namespace changed accordingly. Managers.rda and related help directly imported/copied into factorAnalytics.
Modified: pkg/FactorAnalytics/DESCRIPTION
===================================================================
--- pkg/FactorAnalytics/DESCRIPTION 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/DESCRIPTION 2014-11-20 04:38:47 UTC (rev 3554)
@@ -17,16 +17,17 @@
License: GPL-2
Depends:
R (>= 3.0.0),
- xts (>= 0.9),
+ xts (>= 0.9)
+Imports:
PerformanceAnalytics(>= 1.1.0),
- lmtest,
- sandwich
-Imports:
corrplot,
robust,
leaps,
lars,
- strucchange
+ strucchange,
+ lmtest,
+ sandwich,
+ lattice
Suggests:
testthat, quantmod, knitr
LazyLoad: yes
Modified: pkg/FactorAnalytics/NAMESPACE
===================================================================
--- pkg/FactorAnalytics/NAMESPACE 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/NAMESPACE 2014-11-20 04:38:47 UTC (rev 3554)
@@ -26,3 +26,23 @@
export(paFm)
export(qCornishFisher)
export(rCornishFisher)
+importFrom(PerformanceAnalytics,Return.cumulative)
+importFrom(PerformanceAnalytics,VaR)
+importFrom(PerformanceAnalytics,chart.ACFplus)
+importFrom(PerformanceAnalytics,chart.Histogram)
+importFrom(PerformanceAnalytics,chart.QQPlot)
+importFrom(PerformanceAnalytics,chart.TimeSeries)
+importFrom(PerformanceAnalytics,checkData)
+importFrom(corrplot,corrplot)
+importFrom(lars,cv.lars)
+importFrom(lars,lars)
+importFrom(lattice,barchart)
+importFrom(lattice,panel.barchart)
+importFrom(lattice,panel.grid)
+importFrom(leaps,regsubsets)
+importFrom(lmtest,coeftest.default)
+importFrom(robust,lmRob)
+importFrom(robust,step.lmRob)
+importFrom(sandwich,vcovHAC.default)
+importFrom(sandwich,vcovHC.default)
+importFrom(strucchange,efp)
Modified: pkg/FactorAnalytics/R/CornishFisher.R
===================================================================
--- pkg/FactorAnalytics/R/CornishFisher.R 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/CornishFisher.R 2014-11-20 04:38:47 UTC (rev 3554)
@@ -1,20 +1,21 @@
-#' @title Density, distribution function, quantile function and random
-#' generation for the Cornish-Fisher distribution.
+#' @title Cornish-Fisher expansion
+#'
+#' @aliases Cornish-Fisher dCornishFisher pCornishFisher
+#' qCornishFisher rCornishFisher
+#'
+#' @description Density, distribution function, quantile function and random
+#' generation using Cornish-Fisher approximation.
#'
#' @details CDF(q) = Pr(sqrt(n)*(x_bar-mu)/sigma < q)
-#' \itemize{
-#' \item \code{dCornishFisher} Computes Cornish-Fisher density from two term
+#' \code{dCornishFisher} Computes Cornish-Fisher density from two term Edgeworth
+#' expansion given mean, standard deviation, skewness and excess kurtosis.
+#' \code{pCornishFisher} Computes Cornish-Fisher CDF from two term Edgeworth
+#' expansion given mean, standard deviation, skewness and excess kurtosis.
+#' \code{qCornishFisher} Computes Cornish-Fisher quantiles from two term
#' Edgeworth expansion given mean, standard deviation, skewness and excess
#' kurtosis.
-#' \item \code{pCornishFisher} Computes Cornish-Fisher CDF from two term
-#' Edgeworth expansion given mean, standard deviation, skewness and excess
-#' kurtosis.
-#' \item \code{qCornishFisher} Computes Cornish-Fisher quantiles from two term
-#' Edgeworth expansion given mean, standard deviation, skewness and excess
-#' kurtosis.
-#' \item \code{rCornishFisher} simulate observations based on Cornish-Fisher
-#' quantile expansion given mean, standard deviation, skewness and excess
-#' kurtosis.}
+#' \code{rCornishFisher} simulates observations based on Cornish-Fisher quantile
+#' expansion given mean, standard deviation, skewness and excess kurtosis.
#'
#' @param n scalar; number of simulated values in random simulation, sample
#' length in density, distribution and quantile functions.
Added: pkg/FactorAnalytics/R/Misc.R
===================================================================
--- pkg/FactorAnalytics/R/Misc.R (rev 0)
+++ pkg/FactorAnalytics/R/Misc.R 2014-11-20 04:38:47 UTC (rev 3554)
@@ -0,0 +1,16 @@
+#' @title Miscellaneous Imported functions
+#'
+#' @details Only unique directives are saved to the ‘NAMESPACE’ file, so one
+#' can repeat them as needed to maintain a close link between the functions
+#' where they are needed and the namespace file.
+#'
+#' @importFrom PerformanceAnalytics checkData VaR chart.TimeSeries chart.ACFplus
+#' chart.Histogram chart.QQPlot Return.cumulative
+#' @importFrom robust lmRob step.lmRob
+#' @importFrom leaps regsubsets
+#' @importFrom lars lars cv.lars
+#' @importFrom lmtest coeftest.default
+#' @importFrom sandwich vcovHC.default vcovHAC.default
+#' @importFrom lattice barchart panel.barchart panel.grid
+#' @importFrom corrplot corrplot
+#' @importFrom strucchange efp
\ No newline at end of file
Modified: pkg/FactorAnalytics/R/fitTsfm.R
===================================================================
--- pkg/FactorAnalytics/R/fitTsfm.R 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/fitTsfm.R 2014-11-20 04:38:47 UTC (rev 3554)
@@ -165,8 +165,13 @@
#' factor.names=colnames(managers[,(7:9)]),
#' rf.name="US 3m TR", data=managers,
#' variable.selection="lars", lars.criterion="cv")
-#'
-#' @export
+#'
+#' @importFrom PerformanceAnalytics checkData
+#' @importFrom robust lmRob step.lmRob
+#' @importFrom leaps regsubsets
+#' @importFrom lars lars cv.lars
+#'
+#' @export
fitTsfm <- function(asset.names, factor.names, mkt.name=NULL, rf.name=NULL,
data=data, fit.method=c("OLS","DLS","Robust"),
@@ -317,8 +322,8 @@
lm.args$weights <- WeightsDLS(nrow(reg.xts), decay)
reg.list[[i]] <- do.call(lm, c(list(fm.formula,data=reg.xts),lm.args))
} else if (fit.method == "Robust") {
- reg.list[[i]] <- do.call(robust::lmRob, c(list(fm.formula,data=reg.xts),
- lmRob.args))
+ reg.list[[i]] <- do.call(lmRob, c(list(fm.formula,data=reg.xts),
+ lmRob.args))
}
}
reg.list
@@ -349,10 +354,8 @@
lm.fit <- do.call(lm, c(list(fm.formula,data=reg.xts),lm.args))
reg.list[[i]] <- do.call(step, c(list(lm.fit),step.args))
} else if (fit.method == "Robust") {
- lmRob.fit <- do.call(robust::lmRob, c(list(fm.formula,data=reg.xts),
- lmRob.args))
- reg.list[[i]] <- do.call(robust::step.lmRob, c(list(lmRob.fit),
- step.args))
+ lmRob.fit <- do.call(lmRob, c(list(fm.formula,data=reg.xts), lmRob.args))
+ reg.list[[i]] <- do.call(step.lmRob, c(list(lmRob.fit), step.args))
}
}
reg.list
@@ -381,8 +384,8 @@
}
# choose best subset of factors depending on specified subset size
- fm.subsets <- do.call(leaps::regsubsets, c(list(fm.formula,data=reg.xts),
- regsubsets.args))
+ fm.subsets <- do.call(regsubsets, c(list(fm.formula,data=reg.xts),
+ regsubsets.args))
sum.sub <- summary(fm.subsets)
names.sub <- names(which(sum.sub$which[as.character(subset.size),-1]==TRUE))
reg.xts <- na.omit(dat.xts[,c(i,names.sub)])
@@ -394,8 +397,8 @@
lm.args$weights <- WeightsDLS(nrow(reg.xts), decay)
reg.list[[i]] <- do.call(lm, c(list(fm.formula,data=reg.xts),lm.args))
} else if (fit.method == "Robust") {
- reg.list[[i]] <- do.call(robust::lmRob, c(list(fm.formula,data=reg.xts),
- lmRob.args))
+ reg.list[[i]] <- do.call(lmRob, c(list(fm.formula,data=reg.xts),
+ lmRob.args))
}
}
reg.list
@@ -424,12 +427,11 @@
# convert to matrix
reg.mat <- as.matrix(reg.xts)
# fit lars regression model
- lars.fit <- do.call(lars::lars, c(list(x=reg.mat[,factor.names],
- y=reg.mat[,i]),lars.args))
+ lars.fit <- do.call(lars, c(list(x=reg.mat[,factor.names],y=reg.mat[,i]),
+ lars.args))
lars.sum <- summary(lars.fit)
- lars.cv <-
- do.call(lars::cv.lars, c(list(x=reg.mat[,factor.names],y=reg.mat[,i],
- mode="step"),cv.lars.args))
+ lars.cv <- do.call(cv.lars, c(list(x=reg.mat[,factor.names],y=reg.mat[,i],
+ mode="step"),cv.lars.args))
# including plot.it=FALSE to cv.lars strangely gives an error: "Argument s
# out of range". And, specifying index=seq(nrow(lars.fit$beta)-1) resolves
# the issue, but care needs to be taken for small N
Modified: pkg/FactorAnalytics/R/fmEsDecomp.R
===================================================================
--- pkg/FactorAnalytics/R/fmEsDecomp.R 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/fmEsDecomp.R 2014-11-20 04:38:47 UTC (rev 3554)
@@ -78,6 +78,8 @@
#' # get the component contributions
#' ES.decomp$cES
#'
+#' @importFrom PerformanceAnalytics VaR
+#'
#' @export
fmEsDecomp <- function(object, ...){
Modified: pkg/FactorAnalytics/R/fmVaRDecomp.R
===================================================================
--- pkg/FactorAnalytics/R/fmVaRDecomp.R 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/fmVaRDecomp.R 2014-11-20 04:38:47 UTC (rev 3554)
@@ -73,6 +73,8 @@
#' # get the component contributions
#' VaR.decomp$cVaR
#'
+#' @importFrom PerformanceAnalytics VaR
+#'
#' @export
fmVaRDecomp <- function(object, ...){
Modified: pkg/FactorAnalytics/R/paFm.r
===================================================================
--- pkg/FactorAnalytics/R/paFm.r 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/paFm.r 2014-11-20 04:38:47 UTC (rev 3554)
@@ -40,6 +40,8 @@
#' # without benchmark
#' fm.attr <- paFm(fit)
#'
+#' @importFrom PerformanceAnalytics Return.cumulative
+#'
#' @export
#'
@@ -85,8 +87,7 @@
xts(rep(NA, length(date)), dates))
} else {
attr.ret.xts <- actual.xts -
- xts(as.matrix(fit.lm$model[i])%*%as.matrix(fit.lm$coef[i]),
- dates)
+ xts(as.matrix(fit.lm$model[i])%*%as.matrix(fit.lm$coef[i]), dates)
cum.attr.ret[k, i] <- cum.ret -
Return.cumulative(actual.xts-attr.ret.xts)
attr.ret.xts.all <- merge(attr.ret.xts.all, attr.ret.xts)
Modified: pkg/FactorAnalytics/R/plot.pafm.r
===================================================================
--- pkg/FactorAnalytics/R/plot.pafm.r 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/plot.pafm.r 2014-11-20 04:38:47 UTC (rev 3554)
@@ -3,7 +3,6 @@
#' Generic function of plot method for paFm.
#' Either plot all assets or choose a single asset to plot.
#'
-#'
#' @param x object of class \code{"pafm"} created by
#' \code{paFm}.
#' @param which.plot Integer indicates which plot to create: "none" will
@@ -23,7 +22,9 @@
#' 3 = time series of attributed returns
#' @param ... more arguements for \code{chart.TimeSeries} used for plotting
#' time series
+#'
#' @author Yi-An Chen.
+#'
#' @examples
#' \dontrun{
#' data(managers)
@@ -37,12 +38,15 @@
#' plot(fm.attr, plot.single=TRUE, fundName="HAM1")
#' }
#'
+#' @importFrom PerformanceAnalytics chart.TimeSeries
+#'
#' @method plot pafm
#' @export
#'
plot.pafm <- function(x, which.plot=c("none","1L","2L","3L"),max.show=6,
date=NULL,plot.single=FALSE,fundName,
which.plot.single=c("none","1L","2L","3L"),...) {
+
# ... for chart.TimeSeries
if (is.null(date)){
date = index(x[[3]][[1]])[1]
@@ -63,12 +67,14 @@
"1L" = {
bar <- c(x$cum.spec.ret[fundName],x$cum.ret.attr.f[fundName,])
names(bar)[1] <- "specific.returns"
- barplot(bar, horiz=TRUE, main="cumulative attributed returns", las=1)
+ barplot(bar, horiz=TRUE, main="cumulative attributed returns",
+ las=1)
},
"2L" ={
bar <- coredata(x$attr.list[[fundName]][as.Date(date)])
tryCatch({barplot(bar, horiz=TRUE, main=fundName, las=1)},
- error=function(e){cat("\this date is not available for this asset.\n")})
+ error=function(e){cat("\this date is not available for
+ this asset.\n")})
},
"3L" = {
chart.TimeSeries(x$attr.list[[fundName]],
@@ -77,6 +83,7 @@
},
invisible())
}
+
# plot all assets
else {
which.plot<-which.plot[1]
Modified: pkg/FactorAnalytics/R/plot.tsfm.r
===================================================================
--- pkg/FactorAnalytics/R/plot.tsfm.r 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/plot.tsfm.r 2014-11-20 04:38:47 UTC (rev 3554)
@@ -115,6 +115,13 @@
#' # group plot; type selected from menu prompt; auto-looped for multiple plots
#' # plot(fit.macro)
#'
+#' @importFrom PerformanceAnalytics chart.TimeSeries chart.ACFplus
+#' chart.Histogram chart.QQPlot
+#' @importFrom lattice barchart panel.barchart panel.grid
+#' @importFrom corrplot corrplot
+#' @importFrom strucchange efp
+#' @importFrom robust lmRob
+#'
#' @method plot tsfm
#' @export
@@ -219,8 +226,7 @@
if (!x$fit.method=="OLS") {
stop("CUSUM analysis applicable only for 'OLS' fit.method.")
}
- cusum.rec <- strucchange::efp(formula(fit), type="Rec-CUSUM",
- data=fit$model)
+ cusum.rec <- efp(formula(fit), type="Rec-CUSUM", data=fit$model)
plot(cusum.rec, main=paste("Recursive CUSUM test:",i), las=las,
col=colorset, ...)
}, "11L" = {
@@ -228,8 +234,7 @@
if (!x$fit.method=="OLS") {
stop("CUSUM analysis applicable only for 'OLS' fit.method.")
}
- cusum.ols <- strucchange::efp(formula(fit), type="OLS-CUSUM",
- data=fit$model)
+ cusum.ols <- efp(formula(fit), type="OLS-CUSUM", data=fit$model)
plot(cusum.ols, main=paste("OLS-based CUSUM test:",i), las=las,
col=colorset, ...)
}, "12L" = {
@@ -237,8 +242,7 @@
if (!x$fit.method=="OLS") {
stop("CUSUM analysis applicable only for 'OLS' fit.method.")
}
- cusum.est <- strucchange::efp(formula(fit), type="RE",
- data=fit$model)
+ cusum.est <- efp(formula(fit), type="RE", data=fit$model)
plot(cusum.est, functional=NULL, col=colorset, las=0,
main=paste("RE test (Recursive estimates test):",i), ...)
}, "13L" = {
@@ -269,8 +273,7 @@
width=24, by.column=FALSE, align="right")
} else if (x$fit.method=="Robust") {
rollReg.Rob <- function(data.z, formula) {
- coef(robust::lmRob(formula=formula,
- data=as.data.frame(data.z)))
+ coef(lmRob(formula=formula, data=as.data.frame(data.z)))
}
reg.z <- zoo(fit$model, as.Date(rownames(fit$model)))
rollReg.z <- rollapply(reg.z, width=24, FUN=rollReg.Rob,
@@ -372,13 +375,13 @@
"6L" = {
## Factor Model Residual Correlation
cor.resid <- cor(residuals(x), use="pairwise.complete.obs")
- corrplot::corrplot(cor.resid, ...)
+ corrplot(cor.resid, ...)
# mtext("pairwise complete obs", line=0.5)
},
"7L" = {
## Factor Model Return Correlation
cor.fm <- cov2cor(fmCov(x))
- corrplot::corrplot(cor.fm, ...)
+ corrplot(cor.fm, ...)
# mtext("pairwise complete obs", line=0.5)
},
"8L" = {
Modified: pkg/FactorAnalytics/R/predict.tsfm.r
===================================================================
--- pkg/FactorAnalytics/R/predict.tsfm.r 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/predict.tsfm.r 2014-11-20 04:38:47 UTC (rev 3554)
@@ -30,6 +30,8 @@
#' rownames(newdata) <- rownames(fit$data)
#' pred.fit2 <- predict(fit, newdata, interval="confidence")
#'
+#' @importFrom PerformanceAnalytics checkData
+#'
#' @method predict tsfm
#' @export
#'
Modified: pkg/FactorAnalytics/R/summary.tsfm.r
===================================================================
--- pkg/FactorAnalytics/R/summary.tsfm.r 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/R/summary.tsfm.r 2014-11-20 04:38:47 UTC (rev 3554)
@@ -53,6 +53,9 @@
#' # summary of lm fit for a single asset
#' summary(fit$asset.fit[[1]])
#'
+#' @importFrom lmtest coeftest.default
+#' @importFrom sandwich vcovHC.default vcovHAC.default
+#'
#' @method summary tsfm
#' @export
@@ -74,11 +77,11 @@
# extract coefficients separately for "lars" variable.selection method
for (i in object$asset.names) {
if (se.type=="HC") {
- sum[[i]]$coefficients <- coeftest(object$asset.fit[[i]],
- vcov.=vcovHC)[,1:4]
+ sum[[i]]$coefficients <- coeftest.default(object$asset.fit[[i]],
+ vcov.=vcovHC.default)[,1:4]
} else if (se.type=="HAC") {
- sum[[i]]$coefficients <- coeftest(object$asset.fit[[i]],
- vcov.=vcovHAC)[,1:4]
+ sum[[i]]$coefficients <- coeftest.default(object$asset.fit[[i]],
+ vcov.=vcovHAC.default)[,1:4]
}
}
Added: pkg/FactorAnalytics/data/managers.rda
===================================================================
(Binary files differ)
Property changes on: pkg/FactorAnalytics/data/managers.rda
___________________________________________________________________
Added: svn:mime-type
+ application/octet-stream
Modified: pkg/FactorAnalytics/man/CornishFisher.Rd
===================================================================
--- pkg/FactorAnalytics/man/CornishFisher.Rd 2014-11-19 10:00:09 UTC (rev 3553)
+++ pkg/FactorAnalytics/man/CornishFisher.Rd 2014-11-20 04:38:47 UTC (rev 3554)
@@ -1,11 +1,11 @@
% Generated by roxygen2 (4.0.1): do not edit by hand
\name{dCornishFisher}
+\alias{Cornish-Fisher}
\alias{dCornishFisher}
\alias{pCornishFisher}
\alias{qCornishFisher}
\alias{rCornishFisher}
-\title{Density, distribution function, quantile function and random
-generation for the Cornish-Fisher distribution.}
+\title{Cornish-Fisher expansion}
\usage{
dCornishFisher(x, n, skew, ekurt)
@@ -38,23 +38,19 @@
}
\description{
Density, distribution function, quantile function and random
-generation for the Cornish-Fisher distribution.
+generation using Cornish-Fisher approximation.
}
\details{
CDF(q) = Pr(sqrt(n)*(x_bar-mu)/sigma < q)
-\itemize{
-\item \code{dCornishFisher} Computes Cornish-Fisher density from two term
+\code{dCornishFisher} Computes Cornish-Fisher density from two term Edgeworth
+expansion given mean, standard deviation, skewness and excess kurtosis.
+\code{pCornishFisher} Computes Cornish-Fisher CDF from two term Edgeworth
+expansion given mean, standard deviation, skewness and excess kurtosis.
+\code{qCornishFisher} Computes Cornish-Fisher quantiles from two term
Edgeworth expansion given mean, standard deviation, skewness and excess
kurtosis.
-\item \code{pCornishFisher} Computes Cornish-Fisher CDF from two term
-Edgeworth expansion given mean, standard deviation, skewness and excess
-kurtosis.
-\item \code{qCornishFisher} Computes Cornish-Fisher quantiles from two term
-Edgeworth expansion given mean, standard deviation, skewness and excess
-kurtosis.
-\item \code{rCornishFisher} simulate observations based on Cornish-Fisher
-quantile expansion given mean, standard deviation, skewness and excess
-kurtosis.}
+\code{rCornishFisher} simulates observations based on Cornish-Fisher quantile
+expansion given mean, standard deviation, skewness and excess kurtosis.
}
\examples{
\dontrun{
Added: pkg/FactorAnalytics/man/managers.Rd
===================================================================
--- pkg/FactorAnalytics/man/managers.Rd (rev 0)
+++ pkg/FactorAnalytics/man/managers.Rd 2014-11-20 04:38:47 UTC (rev 3554)
@@ -0,0 +1,37 @@
+\name{managers}
+\docType{data}
+\alias{managers}
+\title{Hypothetical Alternative Asset Manager and Benchmark Data}
+\description{
+This dataset and it's documentation have been duplicated from
+\code{\link[PerformanceAnalytics]{managers}} in the \code{PerformanceAnalytics} package. \code{managers} is used in the examples and vignette of the
+\code{factorAnalytics} package.
+
+A xts object that contains columns of monthly returns for six hypothetical
+asset managers (HAM1 through HAM6), the EDHEC Long-Short Equity hedge
+fund index, the S\&P 500 total returns, and total return series for
+the US Treasury 10-year bond and 3-month bill. Monthly returns for
+all series end in December 2006 and begin at different periods starting
+from January 1996.
+
+Note that all the EDHEC indices are available in \code{\link{edhec}}.
+}
+\usage{managers}
+\details{
+ Please note that the `managers' data set included with PerformanceAnalytics will be periodically updated with new managers and information. If you intend to use this data set in automated tests, please be sure to subset your data like \code{managers[1:120,1:6]} to use the first ten years of observations on HAM1-HAM6.
+}
+\format{CSV conformed into an xts object with monthly observations}
+\examples{
+data(managers)
+
+#preview the data
+head(managers)
+
+#summary period statistics
+summary(managers)
+
+#cumulative returns
+tail(cumprod(1+managers),1)
+}
+\keyword{datasets}
+\keyword{ ts }
\ No newline at end of file
More information about the Returnanalytics-commits
mailing list