View source: R/performance_portfolios.R
add_performance | R Documentation |
Add a new performance measure to backtests
add_performance(bt, name, fun, desired_direction = 1)
bt |
Backtest results as produced by the function |
name |
String with name of new performance measure. |
fun |
Function to compute new performance measure from any element returned by
|
desired_direction |
Number indicating whether the new measure is desired to be larger (1), which is the default, or smaller (-1). |
List with the portfolio backtest results, see portfolioBacktest
.
Daniel P. Palomar
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) # add a new performance measure bt <- add_performance(bt, name = "SR arithmetic", fun = function(return, ...) PerformanceAnalytics::SharpeRatio.annualized(return, geometric = FALSE)) bt <- add_performance(bt, name = "avg leverage", desired_direction = -1, fun = function(w_bop, ...) if(anyNA(w_bop)) NA else mean(rowSums(abs(w_bop))))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.