chapter eight

8 Optimization and Portfolio Construction: A first look

 

This chapter covers

  • The basics of convex functions and convex optimization
  • Formulating and solving optimization problems in Python
  • Modern Portfolio Theory and mean-variance portfolio optimization
  • Pitfalls of portfolio optimization to be aware of

Many problems in finance and asset management require the solution of optimization problems. Building portfolios with attractive risk and return trade-offs, determining trades to bring a portfolio that has drifted from its target allocation without incurring painful taxes, and developing a tax-efficient withdrawal strategy are all examples of problems that can be solved using optimization. More importantly, optimization problems, once implemented, can solve these problems extremely quickly without need for manual effort - a key requirement for robo-advisors.

8.1 Convex Optimization in Python

8.1.1 Basics of Optimization

8.1.2 Convexity

8.1.3 Python libraries for optimization

8.2 Mean-variance optimization

8.2.1 The basic problem

8.2.2 Adding more constraints

8.3 Optimization-based asset allocation

8.3.1 Minimal constraints

8.3.2 Enforcing diversification

8.3.3 Creating an efficient frontier

8.3.4 Building an ESG portfolio

8.4 Summary