Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks...

42
1 © 2016 The MathWorks, Inc. Optimizers everywhere - Optimization in Financial Applications with MATLAB Dr. Sarah Drewes MathWorks Consulting Services

Transcript of Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks...

Page 1: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

1© 2016 The MathWorks, Inc.

Optimizers everywhere -

Optimization in Financial Applications with MATLAB

Dr. Sarah DrewesMathWorks Consulting Services

Page 2: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

2

Optimization

Page 3: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

3

Optimization in Financial Applications with MATLAB

§ Financial Optimization

§ Optimization Methods

§ Customized optimization models

Page 4: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

4

Financial Optimization

Page 5: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

5

Financial Applications and Optimization

Asset Management

Trading

Risk Management

Portfolio Optimization

Machine Learning

Regression

Maximum Likelihood Estimation

Distribution Fitting

Curve Fitting

ALM

Econometrics

Pricing & Valuation

Page 6: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

6

MATLAB – The Financial Development Platform

Financial

Statistics Optimization

Financial Instruments Econometrics

MATLAB

Parallel Computing MATLAB Distributed Computing Server

Files

Databases

Datafeeds

AccessReporting

Applications

Production

ShareData Analysis and Visualization

Financial Modeling

Application Development

Research and Quantify

Datafeed

Database

Spreadsheet Link EX

MATLAB Compiler

SDK

MATLAB Compiler

Report Generator

Production Server

Trading Toolbox

Neural Network Toolbox

Page 7: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

7

– Mean-Variance Portfolio Optimization– Conditional Value-at-Risk Portfolio Optimization– Mean-Absolute Deviation Portfolios

– Time Series Regression Models– Conditional Mean Variance Models– Multivariate Models

– Linear/ Nonlinear Regression– Probability disribution fitting– Machine Learning, e.g., SVM, NN,...

– Nonlinear Regression, Convolutional NeuralNetworks

Financial Optimization within MATLAB

Financial

Statistics

Econometrics

Neural Network

Optimization

Page 8: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

8

Optimization Methods

Page 9: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

9

OptimizationProblem

ObjectiveFunction

uxl

eqbxeqA

bAx

≤≤

=

)(min xfx

Typicallyalinearornonlinearfunction

Linearconstraints- inequalities- equalities- bounds

Nonlinearconstraints- inequalities- equalities

Decisionvariables(canbediscreteorinteger)

0)(

0)(

=

xeqc

xc

SubjecttoConstraints

Page 10: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

10

How to solve an optimization problem ?

What do you know about your optimization problem ?

information

accuracy

information

runtime

Page 11: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

11

Variables & Constraints

VariablesContinuous Discrete

0 0.2 0.4 0.6 0.8 10

10

20

30

40

50

60

70

80

90

100

0 5 10 15 200

10

20

30

40

50

60

70

80

90

100

Integer Programming

00.2

0.40.6

0.81

00.2

0.4

0.60.8

1-1

-0.5

0

0.5

1

1.5

2

2.5

3

ConstraintsLinear Nonlinear

Page 12: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

12

00.2

0.40.6

0.81

00.2

0.4

0.60.8

1-1

-0.5

0

0.5

1

1.5

2

2.5

3

00.2

0.40.6

0.81

00.2

0.4

0.60.8

10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

-2-1

01

2

-2

-1

0

1

2-8

-6

-4

-2

0

2

4

6

8

10

Objective Function

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120

Least-squares/curve fitting

Quadratic f(x)=xTAxLinear f(x)=ATx

General f(x)

f(c)=Σ[g(xk;c)– yk]2

Page 13: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

13

Numerical optimization

xxxfxxfxf

ΔΔ−−Δ+

≈ʹ2

)()()(

function [f,df] = objective(x)f = ... % function valuedf = ... % gradient vector

ü Fewer function evaluationsü More accurate

Whenever possible, provide gradient/hessian information!

Page 14: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

14

Derivative-Free Optimization

?=∇f fmincon

Repeatedly sampleseveral pointsDirect Search

Genetic Algorithm

Page 15: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

15

ApproachesinMATLAB

§ LocalOptimization– Findslocalminima/maxima- Usessuppliedgradientsorestimatesthem- Applicable forlargescaleproblemswith

smoothobjectivefunction– Faster/fewerfunctionevaluations

§ GlobalOptimization– Nogradientinformationrequired– Solveproblemswithnon-smooth,

discontinuousobjective function

Page 16: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

16

Solvers

Variables

Continuous0 0.2 0.4 0.6 0.8 10

10

20

30

40

50

60

70

80

90

100

0 5 10 15 200

10

20

30

40

50

60

70

80

90

100

00.2

0.40.6

0.81

00.2

0.4

0.60.8

1-1

-0.5

0

0.5

1

1.5

2

2.5

3

Constraints

Linear

NonlinearDiscrete

00.2

0.40.6

0.81

00.2

0.4

0.60.8

1-1

-0.5

0

0.5

1

1.5

2

2.5

3

00.2

0.40.6

0.81

00.2

0.4

0.60.8

10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

-2-1

01

2

-2

-1

0

1

2-8

-6

-4

-2

0

2

4

6

8

10

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

20

40

60

80

100

120 Least-squares

Quadratic f(x)=xTAx

Linear f(x)=ATx

General f(x)

f(c)=Σ[g(xk;c)– yk]2

Objective function Solver

linprog

quadprog

intlinprog

lsqlin

lsqnonlin

fminunc

fmincon

Optimization Toolbox

Page 17: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

17

Solvers

Variables

Continuous

0 0.2 0.4 0.6 0.8 10

10

20

30

40

50

60

70

80

90

100

0 5 10 15 200

10

20

30

40

50

60

70

80

90

100

Constraints

Discrete

Nonlinear f(x)

Objective function Solver

GlobalSearch,MultiStart

Non-smooth patternsearch,ga,simulannealbnd

ga

Global Optimization Toolbox

Page 18: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

18

Customized Optimization Models

Page 19: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

19

Supported Portfolio Optimization Models

§ Mean-Variance Portfolio Optimization

§ Conditional Value-at-Risk Portfolio Optimization

§ Mean-Absolute Deviation Portfolio Optimization

Financial Toolbox

Page 20: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

20

Customized Objective - Smart Beta

Page 21: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

21

Customized Portfolio Optimization -Smart Beta

Smart Beta Example – Risk Parity:

Generate a portfolio where each asset’s marginal contribution to risk is equal

§ Marginal Contributions for N assets

§ Minimize distance between all contributions 𝑓 𝑥 =$$|𝑀𝐶( 𝑥 −𝑀𝐶) 𝑥 |)*(

+

(,-

𝑀𝐶( 𝑥 = 𝑥(×∑ 𝑥)𝐶𝑜𝑣(𝑅(,𝑅))+),-

𝜎

Page 22: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

22

Customized Portfolio Optimization -Smart Beta

§ Create marginal risk contributions

§ Create a distance matrix

§ Minimize the total distance between all the contributions

𝑓 𝑥 =$$|𝑀𝐶( 𝑥 −𝑀𝐶) 𝑥 |)*(

+

(,-

𝑀𝐶( 𝑥 = 𝑥(×∑ 𝑥)𝐶𝑜𝑣(𝑅(,𝑅))+),-

𝜎

Page 23: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

23

Customized Portfolio Optimization -Smart Beta

Smart Beta Example – Risk Parity:

𝑚𝑖𝑛;

𝑓 𝑥 ≔$$|𝑀𝐶( 𝑥 −𝑀𝐶) 𝑥 |)*(

+

(,-

s.t. 𝑥=e = 1lb ≤ x ≤ ub

à Nonlinear objective function with linear equality and bound constraints

Page 24: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

24

Customized Portfolio Optimization -Smart Beta

§ Solve with fmincon from MATLAB® Optimization Toolbox™

totaldistancebetweenmarginalriskcontributions

budgetconstraint

bounds

Page 25: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

25

Customized Portfolio Optimization -Smart Beta

Assets

Time

Marginal RiskContribution

Time

Portfolio Risk

Page 26: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

26

Customized Constraints - Robust Constraints

Page 27: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

27

Customized Portfolio Optimization -Robust Constraints

Mean-Variance Portfolio Optimizationmin;𝑥=𝐶𝑥

𝑠. 𝑡. 𝑚= 𝑥 ≥ 𝑅𝑥=𝑒 = 1

x ≥ 0

Covariancematrix

meanofassetreturns

Financial Toolbox

lower bound

budget constraint

Page 28: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

28

Customized Portfolio Optimization -Robust Constraints

Additional constraints supported by

§ Linear inequality constraints§ Linear equality constraints§ Group constraints§ Group ratio constraints§ Average turnover constraints§ One-way turnover constraints

Financial Toolbox

Page 29: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

29

Extend standard model by individual constraints, e.g. robust constraints

𝑃𝑟𝑜𝑏(𝜉=x≥ 𝑅)≥ p

àDeterministic approximation (Chebychev’s inequality)

P. Bonami, M.A. Lejeune, ‚An Exact Solution Approach for Portfolio Optimization Problems Under Stochastic and Integer Constraints’, Operations Research 2009, Vol. 57,Issue 3

Customized Portfolio Optimization-Robust Constraints

randomvectorofreturns

probabilitylevel

𝑚=𝑥 − T-UT

𝑥=𝐶𝑥 ≥ 𝑅

returnlevel

meanvectorofreturns

covarianceofreturns

Page 30: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

30

Customized Portfolio Optimization -Robust Constraints

Mean-Variance Portfolio Optimization with robust constraint

min;𝑓 𝑥 ≔ 𝑥=𝐶𝑥

𝑠. 𝑡𝑥=𝑒 = 1x ≥ 0 lower bound

budget constraint

𝑚=𝑥 − T-UT 𝑥=𝐶𝑥 ≥ 𝑅

robust constraint

à Robust mean variance model is a nonlinear, convex NLP

𝑐 𝑥 ≔ 𝑅 −𝑚= 𝑥 +𝑝

1 − 𝑝𝑥=𝐶𝑥 ≤ 0

Page 31: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

31

Customized Portfolio Optimization-Robust Constraints

§ Solve with fmincon from MATLAB® Optimization Toolbox™

mean-varianceriskproxy

budgetconstraint

robustconstraint

Page 32: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

32

Customized Portfolio Optimization-Robust Constraints

Provide gradients

𝛻𝑓 𝑥𝛻𝑐 𝑥

𝑓 𝑥𝑐 𝑥

Page 33: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

33

Customized Portfolio Optimization-Robust Constraints

Provide Hessian

𝛻Z𝑓 𝑥 +$𝛻Z𝑐( 𝑥 [ 𝜆( +$𝛻Z𝑐𝑒𝑞) 𝑥 [ 𝜆)

Page 34: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

34

Customized Portfolio Optimization -Robust Constraints

information

accuracy

information

runtime

Page 35: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

35

Customized Portfolio Optimization -Robust Constraints

Without gradients With gradients

Page 36: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

36

Customized Portfolio Optimization -Robust Constraints

Without gradients With gradients

Page 37: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

37

Customized Portfolio Optimization -Robust Constraints

R

Page 38: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

38

Customized Portfolio Optimization

R =

Page 39: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

39

MATLAB – The Financial Development Platform

Financial

Statistics Optimization

Financial Instruments Econometrics

MATLAB

Parallel Computing MATLAB Distributed Computing Server

Files

Databases

Datafeeds

AccessReporting

Applications

Production

ShareData Analysis and Visualization

Financial Modeling

Application Development

Research and Quantify

Datafeed

Database

Spreadsheet Link EX

MATLAB Compiler

SDK

MATLAB Compiler

Report Generator

Production Server

Trading Toolbox

Neural Network Toolbox

Page 40: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

40

Customized Portfolio Optimization -Deployment

§ Compile your MATLAB optimization model for your dedicated platform

§ Make it available for your enterprise environment

Page 41: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

41

Summary

§ Optimization for financial applications is built within MATLAB toolboxescovering many standard applications

§ A large variety of optimization algorithms available in MATLAB® Optimization Toolbox™ and Global Optimization Toolbox™

§ Customized optimization models made easy by quick modeling, advanced optimization process diagnostics and rapid deployment.

§ Enhance optimization performance and accuracy by adding maximal information.

Page 42: Optimizers everywhere - Optimization in Financial Applications … › content › dam › mathworks › math... · Discrete Nonlinear f(x) Objective function Solver GlobalSearch,

42

Thank you !