chart.RollingRegression {PerformanceAnalytics} | R Documentation |
A wrapper to create a chart of relative regression performance through time
A group of charts in charts.RollingRegression
displays alpha, beta, and R-squared estimates in three aligned charts in a single device.
chart.RollingRegression(Ra, Rb, width = 12, Rf = 0, attribute = c("Beta", "Alpha", "R-Squared"), main=NULL, na.pad = TRUE, ...) chart.RollingQuantileRegression(Ra, Rb, width = 12, Rf = 0, attribute = c("Beta", "Alpha", "R-Squared"), main=NULL, na.pad = TRUE, ...) charts.RollingRegression(Ra, Rb, width = 12, Rf = 0, main = NULL, legend.loc = NULL, event.labels = NULL, ...)
Ra |
an xts, vector, matrix, data frame, timeSeries or zoo object of asset returns |
Rb |
return vector of the benchmark asset |
Rf |
risk free rate, in same period as your returns |
width |
number of periods to apply rolling function window over |
attribute |
one of "Beta","Alpha","R-Squared" for which attribute to show |
main |
set the chart title, same as in plot |
event.labels |
TRUE/FALSE whether or not to display lines and labels for historical market shock events |
legend.loc |
places a legend into one of nine locations on the chart: bottomright, bottom, bottomleft, left, topleft, top, topright, right, or center. |
na.pad |
TRUE/FALSE If TRUE it adds any times that would not otherwise have been in the result with a value of NA. If FALSE those times are dropped. |
... |
any other passthru parameters to chart.TimeSeries |
The attribute parameter is probably the most confusing. In mathematical terms, the different choices yeild the following:
Alpha - shows the y-intercept
Beta - shows the slope of the regression line
R-Squared - shows the degree of fit of the regression to the data
chart.RollingQuantileRegression
uses rq
rather than
lm
for the regression, and may be more robust to outliers in the data.
A timeseries line chart of the calculated series
Most inputs are the same as "plot
" and are principally included so that some sensible defaults could be set.
Peter Carl
# First we load the data data(managers) chart.RollingRegression(managers[, 1, drop=FALSE], managers[, 8, drop=FALSE], Rf = .04/12) charts.RollingRegression(managers[, 1:6], managers[, 8, drop=FALSE], Rf = .04/12, colorset = rich6equal, legend.loc="topleft")