Case Study: Portfolio Optimization with Exponential, Logarithmic, and Linear-Quadratic Utilities

Back to main page

Case study background and problem formulations

Instructions for optimization with PSG Run-File, PSG MATLAB Toolbox, PSG MATLAB Subroutines and PSG R.

PROBLEM 1: problem_1
Maximize Exp_eut (maximizing Exponential Utility)
subject to
Linear = Const (budget constraint)
Box constraints (bounds on positions)
——————————————————————–
Exp_eut = xponential Utility
Box constraints = constraints on individual decision variables
——————————————————————–

Data and solution in Run-File Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 2.66GHz (sec)
Dataset1 Problem Statement Data Solution 12 199,554 -15.030566742946 1.56
Data and solution in MATLAB Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 Matlab code Data Solution 12 199,554 -15.031 0.98
Data and solution in R Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 R code Data 12 199,554 -15.031 0.98

PROBLEM 2: problem_2
Maximize Linear-Quadratic Utility
subject to
Linear = Const (budget constraint)
Box constraints (bounds on positions)
——————————————————————–
Linear_Quadratic_Utility(Return) = expected value of piecewise linear-quardatic-linear function of Return
Box constraints = constraints on individual decision variables
——————————————————————–

Data and solution in Run-File Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 2.66GHz (sec)
Dataset1 Problem Statement Data Solution 12 199,554 20.033358148852 0.17
Data and solution in MATLAB Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 Matlab code Data Solution 12 199,554 20.033358148852 0.28
Data and solution in R Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 R code Data 12 199,554 20.033358148852 0.28

PROBLEM 3: problem_3
Maximize Log_eut (maximizing Logarithmic Utility)
subject to
Linear = Const (budget constraint)
Box constraints (bounds on positions)
——————————————————————–
Log_eut = Logarithmic Utility
Box constraints = constraints on individual decision variables
——————————————————————–

Data and solution in Run-File Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 2.66GHz (sec)
Dataset1 Problem Statement Data Solution 12 199,554 0.224365972673 0.18

Data and solution in MATLAB Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 Matlab code Data Solution 12 199,554 0.224365972673 0.14

Data and solution in R Environment
Problem Datasets # of Variables # of Scenarios Objective Value Solving Time, PC 3.50GHz (sec)
Dataset1 R code Data 12 199,554 0.224365972673 0.14
CASE STUDY SUMMARY
Utility functions are quite popular in various financial applications. This case study compares portfolio optimization problems with Exponential, Logarithmic, and Linear-Quadratic utility functions. The rate of return dataset for a portfolio is provided for benchmarking purposes by EpiRisk Research company via Drs. Roger Wets and Michael Tian. The EpiRisk Research relies on letting the manager of a fixed-income portfolio solve a sequence of so-called tacking (optimization) models, described below, to shape the returns’ distribution. The shape of the distribution is adjusted by selecting the coefficients of the appraisal (~ utility) function.