Case Study: Portfolio Credit-Risk Optimization Modeled by Scenarios and Mixtures of Normal Distributions

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_var_LLN
Minimize Var_risk (minimizing Value-at-Risk)
subject to
Linear = 1 (budget constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Var = VaR Risk for Loss
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,000 10,000 2.808627866 18.57
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data
R R Code Data

PROBLEM 2: problem_cvar_LLN
Minimize Cvar_risk (minimizing Conditional Value-at-Risk)
subject to
Linear = 1 (budget constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Cvar_risk = CVaR Risk for Loss
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,000 10,000 3.41392772129 1.16
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data
R R Code Data

PROBLEM 3: problem_avg_var_CLT
Minimize Avg_var_risk_ni (minimizing Average Value-at-Risk for Normal Independent Distribution)
subject to
Linear = 1 (budget constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Avg_var_risk_ni = Average Value-at-Risk for Multivariate Normal Independent Distribution
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,000 10,000 3.13761873657 371.68
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data
R R Code Data

PROBLEM 4: problem_avg_cvar_CLT
Minimize Avg_cvar (minimizing Average Conditional Value-at-Risk for Normal Independent Distribution)
subject to
Linear = 1 (budget constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Avg_cvar_risk_ni = Average Conditional Value-at-Risk for Multivariate Normal Independent Distribution
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,000 10,000 3.648889845209 241.56
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data
R R Code Data

PROBLEM 5: problem_avg_var_CLT (alternative formulation)
Minimize Xvar (minimizing Average Value-at-Risk for Normal Independent Distribution using alternative formulation of Problem 3)
subject to
Linear = 1 (budget constraint)
Avg_pr_pen_ni ≤ 1-α (probability constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Xvar = additional variable which is equal to VaR at optimality
Avg_pr_pen_ni = Average Probability Exceeding Penalty for Loss Normal Independent
Box constraints = constraints on individual decision variables
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,001 10,000 3.13761873657 371.68
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data
R R Code Data


PROBLEM 6: problem_avg_cvar_CLT (alternative formulation)
Minimize Xvar + 1/(1-α )*Avg_pm_pen_ni (minimizing Average Conditional Value-at-Risk for Normal Independent Distribution using alternative formulation of Problem 4)
subject to
Linear = 1 (budget constraint)
Linear ≥ Const (portfolio return constraint)
Box constraints (bounds on decision variables)
——————————————————————–
Xvar = additional variable which is equal to VaR at optimality
Avg_pm_pen_ni = Average Partial Moment Penalty for Loss Normal Independent
Box constraints = constraints on individual decision variables
——————————————————————–

NOTE: LARGE DATA FILES; SEVERAL MINUTES MAY BE NEEDED FOR DOWNLOADING

# of Variables # of Scenarios Objective Value Solving Time, PC 3.14GHz (sec)
Dataset 3,001 10,000 3.648903768121 192.91
Environments
Run-File Problem Statement Data Solution
Matlab Toolbox Data
Matlab Subroutines Matlab Code Data

CASE STUDY SUMMARY
This case study evaluates several alternative formulations of optimization problems for minimizing credit risk of a portfolio of financial contracts with different counterparties. The formulations and numerical runs (both models and data) are motivated by paper Iscoe et al. (2009). This paper considers various approximations to the conditional portfolio loss distribution and formulate VaR and CVaR minimization problems for each case. Formulations exploit the conditional independence of counterparties under a structural credit risk model. The case studies consider the “conventional” scenarios and the mixture of normal distribution approaches for modeling the conditional loss distribution.
Similar to Iscoe et al. (2009) we find four optimal portfolios for minimization problems with different but closely risk measures. Problems 1,2 consider quantile-based risk measures, var_risk, cvar_risk with “conventional” scenarios and Problems 3,4 consider avg_var_risk_ni, avg_cvar_risk_ni calculating mixtures of normal independent distributions.
Additionally, Problems 3,4 involving avg_var_risk_ni and avg_cvar_risk_ni were equivalently reformulated with functions avg_pr_pen_ni, avg_pm_pen_ni. These formulations help to understand relation between “avg_…” functions.
Case study demonstrates that PSG optimization provides results comparable to Iscoe, I., et al. (2009).