Learn R Programming

⚠️There's a newer version (2.1.0) of this package.Take me there.

PortfolioAnalytics (version 1.1.0)

Portfolio Analysis, Including Numerical Methods for Optimization of Portfolios

Description

Portfolio optimization and analysis routines and graphics.

Copy Link

Version

Install

install.packages('PortfolioAnalytics')

Monthly Downloads

3,820

Version

1.1.0

License

GPL-2 | GPL-3

Issues

Pull Requests

Stars

Forks

Last Published

May 17th, 2018

Functions in PortfolioAnalytics (1.1.0)

center

Center
coskewnessMF

Coskewness Matrix Estimate
chart.RiskReward

classic risk reward scatter
create.EfficientFrontier

create an efficient frontier
diversification

Function to compute diversification as a constraint
insert_objectives

Insert a list of objectives into the objectives slot of a portfolio object
gmv_opt_leverage

GMV/QU QP Optimization with Turnover Constraint
gmv_opt

GMV/QU QP Optimization
ac.ranking

Asset Ranking
chart.Concentration

Classic risk reward scatter and concentration
chart.EfficientFrontierOverlay

Plot multiple efficient frontiers
chart.EF.Weights

Chart weights along an efficient frontier
black.litterman

Black Litterman Estimates
covarianceMF

Covariance Matrix Estimate
chart.EfficientFrontier

Chart the efficient frontier and risk-return scatter
chart.Weights

boxplot of the weights of the optimal portfolios
coskewnessSF

Coskewness Matrix Estimate
extractCokurtosis

Cokurtosis Estimate
extractGroups

Extract the group and/or category weights
PortfolioAnalytics-package

Numeric methods for optimization of portfolios
covarianceSF

Covariance Matrix Estimate
check_constraints

check if a set of weights satisfies the constraints
extractObjectiveMeasures

Extract the objective measures
diversification_constraint

constructor for diversification_constraint
equal.weight

Create an equal weight portfolio
is.portfolio

check function for portfolio
get_constraints

Helper function to get the enabled constraints out of the portfolio object When the v1_constraint object is instantiated via constraint, the arguments min_sum, max_sum, min, and max are either specified by the user or default values are assigned. These are required by other functions such as optimize.portfolio and constrained_objective . This function will check that these variables are in the portfolio object in the constraints list. We will default to min_sum=1 and max_sum=1 if leverage constraints are not specified. We will default to min=-Inf and max=Inf if box constraints are not specified. This function is used at the beginning of optimize.portfolio and other functions to extract the constraints from the portfolio object. We Use the same naming as the v1_constraint object.
generatesequence

create a sequence of possible weights for random or brute force portfolios
leverage_exposure_constraint

constructor for leverage_exposure_constraint
inverse.volatility.weight

Create an inverse volatility weighted portfolio
cokurtosisMF

Cokurtosis Matrix Estimate
combine.portfolios

Combine a list of portfolio objects
maxret_milp_opt

Maximum Return MILP Optimization
constraint_ROI

constructor for class constraint_ROI
extractStats

extract some stats and weights from a portfolio run via optimize.portfolio
constraint_v1

constructors for class constraint
meucci.moments

Compute moments
meucci.ranking

Asset Ranking
indexes

Six Major Economic Indexes
extractWeights

Extract weights from a portfolio run via optimize.portfolio or optimize.portfolio.rebalancing
etl_milp_opt

Minimum ETL MILP Optimization
constrained_objective

calculate a numeric return value for a portfolio based on a set of constraints and objectives
optimize.portfolio.rebalancing

Portfolio Optimization with Rebalancing Periods
etl_opt

Minimum ETL LP Optimization
group_constraint

constructor for group_constraint
group_fail

Test if group constraints have been violated
extractCovariance

Covariance Estimate
extractEfficientFrontier

Extract the efficient frontier data points
extractCoskewness

Coskewness Estimate
gmv_opt_ptc

GMV/QU QP Optimization with Proportional Transaction Cost Constraint
maxret_opt

Maximum Return LP Optimization
portfolio.moments.boudt

Portfolio Moments
gmv_opt_toc

GMV/QU QP Optimization with Turnover Constraint
minmax_objective

constructor for class tmp_minmax_objective
insert_constraints

Insert a list of constraints into the constraints slot of a portfolio object
print.optimize.portfolio.rebalancing

Printing output of optimize.portfolio.rebalancing
pHist

Generates histogram
portfolio.spec

constructor for class portfolio
factor_exposure_constraint

Constructor for factor exposure constraint
fn_map

mapping function to transform or penalize weights that violate constraints
name.replace

utility function to replace awkward named from unlist
mult.portfolio.spec

Multple Layer Portfolio Specification
randomize_portfolio_v1

Random portfolio sample method
randomize_portfolio

version 2 generate random permutations of a portfolio seed meeting your constraints on the weights of each asset
pos_limit_fail

function to check for violation of position limits constraints
quadratic_utility_objective

constructor for quadratic utility objective
is.objective

check class of an objective object
is.constraint

check function for constraints
trailingFUN

apply a function over a configurable trailing period
random_portfolios

version 2 generate an arbitary number of constrained random portfolios
portfolio_risk_objective

constructor for class portfolio_risk_objective
objective

constructor for class 'objective'
print.portfolio

Printing Portfolio Specification Objects
regime.portfolios

Regime Portfolios
random_portfolios_v1

generate an arbitary number of constrained random portfolios
transaction_cost_constraint

constructor for transaction_cost_constraint
return_constraint

constructor for return_constraint
optimize.portfolio

Constrained optimization of portfolios
random_walk_portfolios

deprecated random portfolios wrapper until we write a random trades function
summary.portfolio

Summarize Portfolio Specification Objects
print.constraint

print method for constraint objects
position_limit_constraint

constructor for position_limit_constraint
summary.optimize.portfolio.rebalancing

summary method for optimize.portfolio.rebalancing
summary.efficient.frontier

Summarize an efficient frontier object
meanetl.efficient.frontier

Generate the efficient frontier for a mean-etl portfolio
update_constraint_v1tov2

Helper function to update v1_constraint objects to v2 specification in the portfolio object
summary.optimize.portfolio

Summarizing output of optimize.portfolio
var.portfolio

Calculate portfolio variance
turnover_objective

constructor for class turnover_objective
meanvar.efficient.frontier

Generate the efficient frontier for a mean-variance portfolio
portfolio.moments.bl

Portfolio Moments
plot.optimize.portfolio.DEoptim

plot method for objects of class optimize.portfolio
print.efficient.frontier

Print an efficient frontier object
scatterFUN

Apply a risk or return function to asset returns
optimize.portfolio.parallel

Execute multiple optimize.portfolio calls, presumably in parallel
update.constraint

function for updating constrints, not well tested, may be broken
print.summary.optimize.portfolio

Printing summary output of optimize.portfolio
print.summary.optimize.portfolio.rebalancing

Printing summary output of optimize.portfolio.rebalancing
set.portfolio.moments

Portfolio Moments
rp_sample

Generate random portfolios using the sample method
rp_grid

Generate random portfolios based on grid search method
print.optimize.portfolio.ROI

Printing output of optimize.portfolio
turnover

Calculates turnover given two vectors of weights. This is used as an objective function and is called when the user adds an objective of type turnover with add.objective
rp_simplex

Generate random portfolios using the simplex method
turnover_constraint

constructor for turnover_constraint
return_objective

constructor for class return_objective
risk_budget_objective

constructor for class risk_budget_objective
rp_transform

Transform a weights vector to satisfy constraints
set.portfolio.moments_v1

set portfolio moments for use by lower level optimization functions
statistical.factor.model

Statistical Factor Model
weight_concentration_objective

Constructor for weight concentration objective
weight_sum_constraint

constructor for weight_sum_constraint
HHI

Concentration of weights
EntropyProg

Entropy pooling program for blending views on scenarios with a prior scenario-probability distribution
add.sub.portfolio

Add sub-portfolio
centroid.buckets

Buckets Centroid
applyFUN

Apply a risk or return function to a set of weights
centroid.complete.mc

Complete Cases Centroid
barplotGroupWeights

barplot of group weights by group or category
chart.GroupWeights

Chart weights by group or category
centroid.sectors

Multiple Sectors Centroid
add.objective

General interface for adding optimization objectives, including risk, return, and risk budget
centroid.sign

Positive and Negative View Centroid
add.constraint

General interface for adding and/or updating optimization constraints.
chart.RiskBudget

Generic method to chart risk contribution
cokurtosisSF

Cokurtosis Matrix Estimate
combine.optimizations

Combine objects created by optimize.portfolio
BlackLittermanFormula

Computes the Black-Litterman formula for the moments of the posterior normal.
CCCgarch.MM

compute comoments for use by lower level optimization functions when the conditional covariance matrix is a CCC GARCH model
box_constraint

constructor for box_constraint.