backtestSummary: Summary of portfolio backtest

View source: R/backtestSummary.R

backtestSummaryR Documentation

Summary of portfolio backtest

Description

Summarize the results from a portfolio backtest.

Usage

backtestSummary(
  bt,
  portfolio_indexes = NA,
  portfolio_names = NA,
  summary_fun = median,
  show_benchmark = TRUE
)

Arguments

bt

Backtest results as produced by the function portfolioBacktest.

portfolio_indexes

Numerical vector of portfolio indexes whose performance will be summarized, e.g., c(1, 2) means to summarize the performance of the first and second portfolios recorded in bt.

portfolio_names

String vector of portfolio names whose performance will be summarized, e.g., c("EWP", "GMVP") means to summarize the performance of portfolios with names "EWP" and "GMVP" in bt (default is names(bt) except the benchmark names). Only considered when portfolio_indexes is not passed.

summary_fun

Summary function to be employed (e.g., median or mean).

show_benchmark

Logical value indicating whether to include benchmarks in the summary (default is TRUE).

Value

List with the following elements:

performance_summary

Performance criteria: "Sharpe ratio", "max drawdown", "annual return", "annual volatility", "Sterling ratio", "Omega ratio", "ROT bps", "VaR (0.95)", "CVaR (0.95)", "cpu time", and "failure rate". Default is "Sharpe ratio".

error_message

Error messages generated by each portfolio function over each dataset. Useful for debugging purposes.

Author(s)

Rui Zhou and Daniel P. Palomar

Examples


library(portfolioBacktest)
data(dataset10)  # load dataset

# define your own portfolio function
EWP_portfolio <- function(dataset, ...) {
  N <- ncol(dataset$adjusted)
  return(rep(1/N, N))
}

# do backtest
bt <- portfolioBacktest(list("EWP" = EWP_portfolio), dataset10)

# show the summary
bt_sum <- backtestSummary(bt)
names(bt_sum)
bt_sum$performance_summary



dppalomar/portfolioBacktest documentation built on April 27, 2022, 3:27 a.m.