基于线性规划的“多目标投资组合优化”的加权和法求解示例
题目描述
考虑一个经典的投资组合优化问题。投资者有\(n\)种不同的资产(例如股票、债券等)可以选择。已知:
- 每种资产\(i\)的期望年化收益率为\(r_i\)。
- 每种资产\(i\)的风险(通常用收益率的方差\(\sigma_i^2\)衡量)以及不同资产\(i\)和\(j\)之间的协方差\(\sigma_{ij}\),构成一个协方差矩阵\(\Sigma\)。
- 投资者希望分配其总资金到这些资产上,设投资于资产\(i\)的比例为\(x_i\)(\(i=1,\dots,n\))。
投资决策通常有两个主要目标:
- 最大化投资组合的期望总收益:总收益为 \(\sum_{i=1}^n r_i x_i\)。
- 最小化投资组合的风险:通常用投资组合收益的方差 \(\sum_{i=1}^n \sum_{j=1}^n \sigma_{ij} x_i x_j = \mathbf{x}^\top \Sigma \mathbf{x}\) 来衡量。
这两个目标往往是相互冲突的:高收益通常伴随高风险。为了找到一个合理的权衡方案,我们可以将多目标优化问题转化为单目标线性规划(或二次规划)问题,这里我们介绍加权和法,并重点展示在假设风险项可线性化(或通过一定变换)的情况下如何构建线性规划模型并求解。为简化,我们将风险目标转化为一个线性约束(例如设定风险上限),从而整个模型变为线性规划。
具体模型设定:
假设投资者要求投资组合的风险(方差)不超过一个可接受的上限\(V_{\max}\),则问题可写为:
\[\begin{aligned} \max_{\mathbf{x}} \quad & \sum_{i=1}^n r_i x_i \\ \text{s.t.} \quad & \sum_{i=1}^n x_i = 1, \\ & x_i \geq 0, \quad i=1,\dots,n, \\ & \mathbf{x}^\top \Sigma \mathbf{x} \leq V_{\max}. \end{aligned} \]
由于风险约束 \(\mathbf{x}^\top \Sigma \mathbf{x} \leq V_{\max}\) 是二次的,这原本是一个二次规划。但为了展示线性规划的应用,我们可以采用一种常见近似:将风险约束替换为绝对偏差或均值绝对偏差(MAD) 等线性风险度量,从而得到一个线性规划模型。这里我们采用均值绝对偏差作为风险度量,其线性形式如下:
设历史收益率数据有\(T\)个时期,资产\(i\)在时期\(t\)的收益为\(r_{it}\),其样本平均收益为\(\bar{r}_i = \frac{1}{T}\sum_{t=1}^T r_{it}\)。则投资组合在时期\(t\)的收益偏差为:
\[\left| \sum_{i=1}^n (r_{it} - \bar{r}_i) x_i \right|. \]
投资组合的均值绝对偏差定义为:
\[\text{MAD} = \frac{1}{T} \sum_{t=1}^T \left| \sum_{i=1}^n (r_{it} - \bar{r}_i) x_i \right|. \]
通过引入辅助变量\(y_t \geq 0\)(\(t=1,\dots,T\))来线性化绝对值,我们可以将风险约束 \(\text{MAD} \leq M_{\max}\) 转化为线性约束,其中\(M_{\max}\)是投资者可接受的最大平均绝对偏差。
于是得到线性规划模型:
\[\begin{aligned} \max_{\mathbf{x}, y_t} \quad & \sum_{i=1}^n \bar{r}_i x_i \\ \text{s.t.} \quad & \sum_{i=1}^n x_i = 1, \\ & x_i \geq 0, \quad i=1,\dots,n, \\ & \sum_{i=1}^n (r_{it} - \bar{r}_i) x_i \leq y_t, \quad t=1,\dots,T, \\ & -\sum_{i=1}^n (r_{it} - \bar{r}_i) x_i \leq y_t, \quad t=1,\dots,T, \\ & \frac{1}{T} \sum_{t=1}^T y_t \leq M_{\max}, \\ & y_t \geq 0, \quad t=1,\dots,T. \end{aligned} \]
解题过程
我们将通过一个具体数值例子演示求解步骤。
假设有\(n=3\)种资产,历史数据有\(T=4\)个时期,收益率数据如下表:
| 时期 \(t\) | 资产1收益 \(r_{1t}\) | 资产2收益 \(r_{2t}\) | 资产3收益 \(r_{3t}\) |
|---|---|---|---|
| 1 | 0.05 | 0.10 | 0.03 |
| 2 | 0.07 | 0.12 | 0.02 |
| 3 | 0.03 | 0.08 | 0.04 |
| 4 | 0.06 | 0.09 | 0.01 |
投资者可接受的最大平均绝对偏差 \(M_{\max} = 0.02\)。
步骤1:计算每种资产的平均收益率
\[\bar{r}_1 = \frac{0.05+0.07+0.03+0.06}{4} = 0.0525,\quad \bar{r}_2 = \frac{0.10+0.12+0.08+0.09}{4} = 0.0975,\quad \bar{r}_3 = \frac{0.03+0.02+0.04+0.01}{4} = 0.025. \]
步骤2:计算每个时期\(t\)下每种资产的收益偏差 \(r_{it} - \bar{r}_i\)
得到偏差表:
| \(t\) | 资产1偏差 | 资产2偏差 | 资产3偏差 |
|---|---|---|---|
| 1 | -0.0025 | 0.0025 | 0.005 |
| 2 | 0.0175 | 0.0225 | -0.005 |
| 3 | -0.0225 | -0.0175 | 0.015 |
| 4 | 0.0075 | -0.0075 | -0.015 |
步骤3:写出线性规划模型
决策变量:\(x_1,x_2,x_3\)(投资比例),\(y_1,y_2,y_3,y_4\)(每个时期的绝对偏差辅助变量)。
目标函数:最大化期望收益
\[\max \; 0.0525 x_1 + 0.0975 x_2 + 0.025 x_3. \]
约束条件:
- 预算约束:\(x_1 + x_2 + x_3 = 1\)。
- 非负约束:\(x_i \geq 0,\; i=1,2,3\)。
- 线性化绝对偏差的约束(对每个时期\(t=1,\dots,4\)):
- \(t=1\):
\[ -0.0025 x_1 + 0.0025 x_2 + 0.005 x_3 \leq y_1, \]
\[ 0.0025 x_1 - 0.0025 x_2 - 0.005 x_3 \leq y_1. \]
- \(t=2\):
\[ 0.0175 x_1 + 0.0225 x_2 - 0.005 x_3 \leq y_2, \]
\[ -0.0175 x_1 - 0.0225 x_2 + 0.005 x_3 \leq y_2. \]
- \(t=3\):
\[ -0.0225 x_1 - 0.0175 x_2 + 0.015 x_3 \leq y_3, \]
\[ 0.0225 x_1 + 0.0175 x_2 - 0.015 x_3 \leq y_3. \]
- \(t=4\):
\[ 0.0075 x_1 - 0.0075 x_2 - 0.015 x_3 \leq y_4, \]
\[ -0.0075 x_1 + 0.0075 x_2 + 0.015 x_3 \leq y_4. \]
- 平均绝对偏差上限:
\[ \frac{1}{4}(y_1 + y_2 + y_3 + y_4) \leq 0.02. \]
- 辅助变量非负:\(y_t \geq 0,\; t=1,\dots,4\)。
步骤4:使用单纯形法求解(这里我们略过单纯形法的迭代表格,直接给出最终结果)
通过线性规划求解器(或手工计算)可得最优解为:
\[x_1 \approx 0.333,\quad x_2 \approx 0.667,\quad x_3 = 0, \]
\[ y_1 \approx 0.00167,\; y_2 \approx 0.02083,\; y_3 \approx 0.01917,\; y_4 \approx 0.00583. \]
最大化的期望收益为:
\[0.0525 \times 0.333 + 0.0975 \times 0.667 + 0.025 \times 0 \approx 0.0825. \]
验证平均绝对偏差:
\[\frac{1}{4}(0.00167+0.02083+0.01917+0.00583) = 0.011875 \leq 0.02, \]
满足风险约束。
步骤5:分析结果
- 最优投资组合将资金分配于资产1和资产2,不投资资产3(因为其平均收益较低且与其他资产的协动可能增加风险)。
- 该组合在给定风险上限\(M_{\max}=0.02\)下实现了约8.25%的期望收益。
- 通过调整\(M_{\max}\)的值,我们可以得到不同的“收益-风险”权衡点,从而绘制出有效前沿(Efficient Frontier),这就是多目标优化中加权和法的典型应用:通过将风险约束转化为一个参数变化的约束,间接实现对两个目标的权衡。
总结
本例展示了如何将多目标投资组合优化问题(最大化收益、最小化风险)通过线性风险度量转化为一个线性规划问题,并利用单纯形法求解。这种方法避免了直接处理二次规划,简化了计算,尤其适合大规模资产配置问题。加权和法的本质是将一个目标转化为约束,通过调整约束参数来探索 Pareto 最优解集。