Financial Toolbox provides a comprehensive suite of portfolio optimization and analysis tools for performing capital allocation, asset allocation, and risk assessment. With these tools, you can:
The portfolio optimization object provides a simplified interface for defining and solving portfolio optimization problems that include descriptive metadata. You can specify a portfolio name, the number of assets in an asset universe, and asset identifiers. Additionally, you can define an initial portfolio allocation.
The toolbox supports two approaches to portfolio optimization:
Supported constraints include: linear inequality, linear equality, bound, budget, group, group ratio, average turnover, and one-way turnover.
Additionally, you can work with transaction costs in the portfolio optimization problem definition. You apply transaction costs on either gross or net portfolio return optimization. Transaction costs can be proportional or fixed, and they are incorporated as units of total return.
The portfolio optimization object provides error checking during the portfolio construction phase. For complex problems defined with multiple constraints, validating your inputs to or outputs from the portfolio optimization can reduce error-checking time prior to solving the optimization problem. Methods to estimate bounds and check problem feasibility are available.
Depending on your goals, you can identify efficient portfolios or efficient frontiers. The portfolio optimization object provides methods for both. You can solve for efficient portfolios by providing one or more target risks or returns.
To obtain optimal portfolios on the efficient frontier, you can
Additionally, you can model long-short portfolios with or without turnover constraints.
After you identify a portfolio’s risk and return, you can use the portfolio optimization object methods to:
The portfolio object supports the generation of a trade record as a dataset array. You can use the dataset array to keep track of purchases and sales of assets and to capture trades to execute.