题目

image-20220110155805500

image-20220110155822896

数学建模

符号规定

siii=0,1,2,..,ns_i表示第i种投资项目,i = 0,1,2,..,n

risir_i表示s_i的平均收益率

pisip_i表示s_i的交易费率

qisiq_i表示s_i的风险损失率

uisiuiu_i表示交易定额,即s_i产品最少也要花u_i元

xisix_i表示投资项目s_i的资金

aa表示投资风险度,越小越好

QQ表示总体收益,越大越好

模型假设

  • 投资数额M相当大

  • 投资越分散,总风险越小

  • 总体风险用投资项目sis_i中最大的风险度量

  • n+1n+1种资产sis_i相互独立

  • 在投资时期内,ri,pi,qir_i,p_i,q_i均为定值,不受其他因素影响,p0=0,q0=0p_0=0,q_0=0

  • 净收益和总体风险只受ri,pi,qir_i,p_i,q_i的影响,不受其他因素的干扰

模型建立

  1. 总体风险用所投资的sis_i中最大的一个风险来度量,即

max{qixii=1,2,3,...,n}max\{ q_i x_i | i=1,2,3,...,n \}

  1. 购买sis_i所付的交易费是一个分段函数,即

={pixi, xi>uipiui, xiui交易费= \left\{ \begin{array}{l} p_i x_i, \space x_i > u_i \\ p_i u_i, \space x_i \leq u_i \\ \end{array} \right.

故购买sis_i==rixi净收益=平均收益-交易费=r_i x_i - 交易费,由于uiu_i相对于总投资MM相当小,故净收益可简化为(ripi)xi(r_i-p_i)x_i

  1. 规划目标是使净收益增大,总体风险尽量小,故本模型为多目标规划模型。

得到初步的多目标规划模型如下

{max i=0n(ripi)ximin max{qixi}s.t.={i=0n(1+pi)xi=Mxi0, i=0,1,...,n\left\{ \begin{array}{l} max \space \sum_{i=0}^{n} {(r_i-p_i)x_i} \\ min \space max\{ q_i x_i \} \end{array} \right. \\ s.t. = \left\{ \begin{array}{l} \sum_{i=0}^{n} {(1+p_i)x_i} = M \\ x_i \geq 0, \space i=0,1,...,n \end{array} \right.

模型一

该模型的目标函数(2)表示总体风险尽可能的小,那么多小是小呢?此时可以设定一个界限,当小于等于某个数值时表示可接受的风险水平。这种条件下,可导出模型一如下,

固定风险水平,引入一个参数α<1\alpha < 1,设实际投资中,投资者能够承担的最大风险为αM\alpha M,则有max{qixi}αMmax\{q_i x_i\} \leq \alpha M,即对于任意的ii均有qixiαMq_i x_i \leq \alpha M,则原模型可简化为

max i=0n(ripi)xis.t.={qixiαMi=0n(1+pi)xi=Mxi0, i=0,1,...,nmax \space \sum_{i=0}^{n} {(r_i-p_i)x_i} \\ s.t. = \left\{ \begin{array}{l} q_i x_i \leq \alpha M \\ \sum_{i=0}^{n} {(1+p_i)x_i} = M \\ x_i \geq 0, \space i=0,1,...,n \end{array} \right.

模型二

该模型目标函数(1)表示要使得净收益最大,设定界限,只要总的净收益不低于k即可接受净收益。这种条件下,可导出模型二如下,

min max{qixi}s.t.={i=0n(ripi)xiki=0n(1+pi)xi=Mxi0, i=0,1,...,nmin \space max\{ q_i x_i \} \\ s.t. = \left\{ \begin{array}{l} \sum_{i=0}^{n} {(r_i-p_i)x_i} \geq k \\ \sum_{i=0}^{n} {(1+p_i)x_i} = M \\ x_i \geq 0, \space i=0,1,...,n \end{array} \right.

模型三

权衡投资风险与预期收益时,对风险与收益给予权重分别为s, (1s),s(0,1]s,\space(1-s),s \in (0,1],这反映了投资者重视风险还是重视收益,s为投资偏好系数。则目标可转化为使得风险-收益最小,或收益-风险最大,可导出模型三如下,

min {s(max{qixi})(1s)i=0n(ripi)xi}s.t.={i=0n(1+pi)xi=Mxi0, i=0,1,...,nmin \space \{s(max\{q_i x_i\})-(1-s)\sum_{i=0}^{n} {(r_i-p_i)x_i}\} \\ s.t. = \left\{ \begin{array}{l} \sum_{i=0}^{n} {(1+p_i)x_i} = M \\ x_i \geq 0, \space i=0,1,...,n \end{array} \right.

模型求解

由于建模时为了简化模型,将uiu_i不考虑了,故导出的数学模型与uiu_i无关,那么M便不受约束了,为了方便期间这里假设M=1

模型一求解

模型一如下,

max i=0n(ripi)xis.t.={qixiαMi=0n(1+pi)xi=Mxi0, i=0,1,...,nmax \space \sum_{i=0}^{n} {(r_i-p_i)x_i} \\ s.t. = \left\{ \begin{array}{l} q_i x_i \leq \alpha M \\ \sum_{i=0}^{n} {(1+p_i)x_i} = M \\ x_i \geq 0, \space i=0,1,...,n \end{array} \right.

根据题目可得,

  • r = (0.05, 0.28, 0.21 ,0.23 ,0.25)
  • p = (0, 0.01, 0.02, 0.045, 0.065)
  • q = (0, 0.025, 0.015, 0.055, 0.026)
  • M = 1
  • a从0到0.05步长0.001遍历搜索答案

首先编写如下函数用于根据给定参数,求解规划目标

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function [x,Q] = fun(r,p,q,M,a)
% 目标函数系数列向量
f = -(r-p)';

% 不等式约束系数矩阵
A = diag(q);
% 不等式约束常数列向量
b = a*ones(5,1);

% 等式约束系数矩阵
Aeq = 1+p;
% 等式约束常数列向量
beq = [M];

% 目标解约束下界
lb = zeros(5,1);
% ub = ((a * M)./q)';
ub = [];
[x,fval] = linprog(f,A,b,Aeq,beq,lb,ub);

x = x;
Q = -fval;
end

编写以下代码,用于给定参数与遍历a来搜索答案并绘制a-Q散点图

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

clc,clear;
hold on;
% 输入参数
r = [0.05, 0.28, 0.21 ,0.23 ,0.25];
p = [0, 0.01, 0.02, 0.045, 0.065];
q = [0, 0.025, 0.015, 0.055, 0.026];
M = 1;

for a = 0:0.001:0.05
[x,Q] = fun(r,p,q,M,a);
plot(a,Q,'.k');
end
xlabel('a'),ylabel('Q');


运行结果输出如下散点图

image-20220110202555410

image-20220110203040856

从结果可以看出,随着投资风险接受度a的提升,总体收益不断上涨,存在两个明显的拐点0.006与0.025,可得出如下结论

  • 在一定的投资风险接受程度以内,风险越大,收益越大

  • 0<a<=0.006,总体收益随着投资风险接受程度的增长而迅速上涨

  • 0.006<a<=0.025,总体收益随着投资风险接受程度的增长而稳定上涨,较之前缓慢

  • 0.025<a<=1,总体收益随着投资风险接受程度的增长而不再增长