# Estimate Efficient Portfolios and Frontiers

Analyze efficient portfolios and efficient frontiers for portfolio

## Objects

 `PortfolioMAD` Create PortfolioMAD object for mean-absolute deviation portfolio optimization and analysis

## Functions

expand all

 `estimateFrontier` Estimate specified number of optimal portfolios on the efficient frontier `estimateFrontierByReturn` Estimate optimal portfolios with targeted portfolio returns `estimateFrontierByRisk` Estimate optimal portfolios with targeted portfolio risks `estimateFrontierLimits` Estimate optimal portfolios at endpoints of efficient frontier `plotFrontier` Plot efficient frontier
 `estimatePortStd` Estimate standard deviation of portfolio returns `estimatePortReturn` Estimate mean of portfolio returns `estimatePortRisk` Estimate portfolio risk according to risk proxy associated with corresponding object
 `setSolver` Choose main solver and specify associated solver options for portfolio optimization `setSolverMINLP` Choose mixed integer nonlinear programming (MINLP) solver for portfolio optimization

## Examples and How To

Estimate Efficient Portfolios Along the Entire Frontier for PortfolioMAD Object

The most basic way to obtain optimal portfolios is to obtain points over the entire range of the efficient frontier.

Obtaining Endpoints of the Efficient Frontier

Use the `estimateFrontierLimits` function to obtain the endpoint portfolios.

Obtaining Efficient Portfolios for Target Returns

To obtain efficient portfolios with targeted portfolio returns, the `estimateFrontierByReturn` function accepts one or more target portfolios returns and obtains efficient portfolios.

Obtaining Efficient Portfolios for Target Risks

To obtain efficient portfolios with targeted portfolio risks, the `estimateFrontierByRisk` function accepts one or more target portfolio risks and obtains efficient portfolios.

Estimate Efficient Frontiers for PortfolioMAD Object

Given efficient portfolios, the functions `estimatePortReturn` and `estimatePortRisk` provide estimates for the return and risk.

Plotting the Efficient Frontier for a PortfolioMAD Object

The `plotFrontier` function creates a plot of the efficient frontier for a given portfolio optimization problem.

Portfolio Optimization with Semicontinuous and Cardinality Constraints

This example shows how to use a `Portfolio` object to directly handle semicontinuous and cardinality constraints when performing portfolio optimization.

## Concepts

When solving portfolio optimizations for a PortfolioMAD object, all variations of `fmincon` from Optimization Toolbox™ are supported.