2020年五一数学建模竞赛B题-基于系统性风险角度的基金资产配置策略分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

五 一 数 学 建 模 竞 赛
题 目: 基于系统性风险角度的基金资产配置策略分析
关键词:层次聚类模型 均值-方差模型 动态规划模型 旋转算法 摘 要:本文建立相应的模型对基金资产配置策略问题进行分析,旨在得出最优组合策略,并求出风险价值等数据,对于公司选购股票有着一定的借鉴意义。

针对问题一,建立层次聚类模型,按照算法流程利用SPSS 进行聚类,画出系谱图,利用肘部法则确定聚类数量,最终将10家公司分为5类,其中公司A,G,C,F 分别各为一类,公司E,J,D,B,H,I 为一类,即投资组合策略存在相似性。

针对问题二,建立均值-方差模型,确定目标函数:
1
min 2
T x Gx
计算出协方差矩阵等一系列相关数据,利用旋转算法对模型进行求解,经过构建初始表-预处理-主迭代步骤后得出结果,对于一个给定的最低期望标准0.05,最优的股票投资组合策略为股票3,股票7,股票10,股票22,股票27,股票41分别投资占比7.22%,25.14%,17.46%,28.32%,6.25%,5.61%,对于其他股票不进行投资。

针对问题三,给出风险价值的计算公式:
()0VaR w Z σμ=+
将95%的置信水平和相关数据,最终算出各个公司的风险价值,风险价值最大是公司H ,为-1075700000,在未来一段时间内的最大可能损失最大,风险价值最小的是公司A ,为-2382100,在未来一段时间内的最大可能损失最小。

针对问题四,建立动态规划模型,确定目标函数:
()()01001
max 0.30.7n
i
i w x z p p w Z p σμ==⨯−−⨯+∑
并根据给出的约束条件进行求解,得出结果最优的投资组合策略为:公司A,B,C,D,E,F,G,H,I,J 分别投资股票5,14,12,32,14,14,45,14,55,14。

一、问题背景与重述
1.1背景分析
金融活动是国家经济活动中的一个重要领域。

金融交易的频繁度是衡量国家经济繁荣水平的重要指标,因此必须保证金融市场的正常有序运转。

随着国家经济发展,越来越多的生产生活领域与金融业产生了联系,改革开放后,我国经济运行中的各类风险逐渐明显并集中体现在金融市场上。

为使国家经济持续健康发展,必须通过各种金融经济政策对其进行规范调整,降低金融风险发生的可能,促进经济平稳。

资产管理业务是金融系统的重要组成部分,而公募基金又是典型的资产管理形态。

根据各类研究、探讨资料显示,公募基金具有投资项目明确易估值、信息透明度高;基金财产独立性强、各类监管制度严格;服务费和固定管理成本低三大基本特征,因此更受欢迎并发展迅速,且快速聚集了大量的资金。

各基金公司在股票市场上的投入和资金配置应当进行合理规划和计算,避免金融市场震荡,导致风险提高。

目前国内针对公募基金的资产配置问题主要研究的是基于基金公司的长远发展角度该如何配置以及整体基金市场环境和行情下该如何选择分配份额等问题。

1.2问题重述
本文通过建立数学模型,解决以下问题:
1.对于给出的2019年十家公募基金公司在股市中的一部分资产配置信息,建立合适的数学模型,分析不同公司间资产配置策略的相似性;
2.将所有基金的持股市值总和作为初始财富,建立合适的数学模型,求解出以投资效用最大化为目标的投资组合策略;
3.在与2019年的资产配置策略相同的前提下进行投资,建立合适的模型求解2020年各个公司在95%置信水平下的风险价值并排序;
4.要求所有样本基金公司组成的系统在2020年的投资效用最大化,风险价值最低,根据这两个目标建立合适的数学模型,求解出最优的股票投资组合策略,并给出投资效用和风险价值。

二、问题分析
2.1对于问题一的分析
针对问题一,需要分析不同公司之间资产配置策略的相似性,需要先分别求出不同公司对于不同股票的侧重程度,然后根据侧重程度进行聚类分析,计算公司策略的相似程度,最终求解出冉公司之间资产配置的相似性。

2.2对于问题二的分析
针对问题二,由于所给的数据中存在缺失值问题,因此需要先补全数据,然后在根据计算投资效用最大化给出相应的约束条件,并建立相关的模型进行求解,得出最优的股票投资组合策略。

2.3对于问题三的分析
针对问题三,要度量各个公司的风险价值,需要按照2019年的资产配置策略进行
投资,将需要的数据直接代入到求解投资组合风险价值的公式中即可求出,然后在按照一定的顺序进行排序。

2.4对于问题四的分析
针对问题四,由于投资效用的并不是一个明确可以计算的对象,因此可以选择一个代理变量代表投资效用从而进行分析,将投资效用和风险价值进行组合作为目标,然后给出相应的约束条件,分析并求出最终结果。

三、模型假设
结合本题的实际,为确保模型求解的准确性和合理性,本文排除一些因素的干扰,提出以下几点假设:
1.假设不考虑交易成本与税收;
2.假设资产是无限可分的;
3.假设股票不允许卖空。

四、符号说明
为便于问题的求解,本文给出以下符号说明:
符号说明
G协方差矩阵
R股票收益率
p股票价格
x投资占比
i
VaR风险价值
置信水平
J畸变程度
五、模型的建立与求解
经过以上的分析和准备,本文将逐步建立以下数学模型,进一步阐述模型的实际建立过程。

5.1问题一模型的建立与求解
本题采用聚类模型来分析不同公司之间策略的相似性,由于事先并不清楚需要划分的类别数量,考虑到层次聚类模型不需要人为地确定聚类数量,可以减小误差,因此本文选择层次聚类模型。

层次聚类算法是基于各个节点之间的距离大小从而进行聚类的一种方法,距离的大小按照有小到大分别对应着相似性的由低到高。

5.1.1模型的建立步骤
算法流程如下:
图5-1 层次聚类算法流程图
5.1.2层次聚类模型的建立与求解
(a )求出不同公司对于不同股票的持股占比
()1
1,2,,===∑i n i
i a
x i n a
汇总如下表所示:
表5-1 持股占比
股票1 股票2 股票3 ...... 股票57 公司A 0.150172664
0.114563726 0.105916491
0 公司B 0
0.080814247
0 …… 公司J
0.04273
完整表格见附录
(b )利用软件SPSS 进行分析,画出聚类谱系图
由于单位一致,因此可以跳过标准化处理直接济宁分析,类与类之间的聚类方法采用间平均连接法(5-1),点与点之间的距离的计算采用闵可夫斯基距离法(5-2)。

()1234,4
d d d d
D x y +++= (5-1)
()1234,,,,(表示与y 两类的距离,分别表示两类间点的距离)
D x y x d d d d ()11,p
p
n p q i D p q x x =⎛⎫
=− ⎪ ⎪⎝⎭
∑ (5-2)
((),,D p q p q 表示两点间的距离)
图5-2 谱系图
由上述谱系图可知按照不同的标准10个公司可以换分为不同的种类。

(c )估计聚类数量
采用肘部法则对聚类数量进行估计,用k C 表示第k 个类,第k 类的畸变程度为:
2
∈−∑
k
i j i C x x
所有类的总畸变程度(聚合系数):
2
1=∈=−∑∑k
K
i j K i C J x x
图5-3 聚合系数与聚类数k 关系图
根据聚合系数折线图可知,k 值从1到5时,畸变程度变化最大,超过5以后畸变程度变化降低,因此肘部就是5,因此可以将类别数设置为5。

5.1.3结论分析
图5-4 聚类结果
因此按照5个类别对谱系图进行划分,可以得到,公司E ,公司J ,公司D ,公司
B ,公司H ,公司I 为一类,即这些公司之间资产配置策略的的相似性较高,公司F ,公司
C ,公司G ,公司A 分别为一类,即与别的公司之间资产配置策略不存在较高的相似性。

5.2问题二模型的建立与求解
由于本题所涉及到的数据量较大,为了方便之后的计算,只选择对2019.1.2-2019.1.31的数据进行分析。

5.2.1缺失数据的补全
题目所给出的数据存在缺失情况,因此需要先补全数据,由于三次样条插值具有计算简单,有很好的稳定性与收敛性,准确等优点,本题选择采用三次样条插值算法来进行缺失数据的求解,可直接利用软件MATLAB 进行求解。

结果如下:
表5-2 缺失的数据
股票1 股票2 股票3 …… 股票57
2019-1-2 8.28 25.65 11.5 59.8 2019-1-3 7.94 25.32 11.27 56.98 2019-1-4 8.08 25.91 11.47 57.1 2019-1-5 8.2575 26.5799 11.616 57.304
……
2019-1-31 10.26 30.03 12.34 54.5
(由于数据量过大且无太大作用,为了版面美观因此不详细列出。

) 5.2.2模型的建立与求解
本题采用改良之后的均值-方差模型来求解最优投资组合策略,由于最终投资组合策略与初始财富无太大关系,只与不同股票投资比重有关,因此初始财富可以先不同分析。

本题涉及到57种股票,设()()1,2,571,2,,30it p i i t t ==表示第,中股票在第天的
股票价格,第i 种股票在第t 天的收益率it R 为:
()
1it i t it it
p p R p −−=
第i 种股票的收益率i R 为:
1
1T
i it t R r T ==∑
()30T =
i R 的期望i r 为:
()i i r E R =

()12,,,T
n R R R R = ()12,,
,T
n r r r r =
协方差矩阵G 为:
()
ij n n
G σ⨯=
(),ij i j COV R R σ=
()[],i j i j i j COV R R E R R E R E R ⎡⎤⎡⎤=−⎣⎦⎣⎦
设i x 表示对于第i 种股票的投资比例,有
1i x ≤
1
1n
i
i x
==∑(n=57)
设e 为分量全为1的n 维列向量,则
1T e x =
因此将所有投资组合之后的收益率在第t 天的收益率t R 为:
1
==∑n
t i it i R x R
投资组合的期望收益率p R 为:
1
==∑n
p i i i R x r
其均值p r 为:
T p r R x =
方差2σ为:
2T x Gx σ=
建立不允许卖空情况下的均值-方差模型
1
min 2
T x Gx
0..10T T r x r s t e x x ⎧≥⎪=⎨⎪≥⎩
(1) (其中0r 代表期望的最低标准)
模型(1)为凸二次规划问题,应满足的库恩-塔克(K-T )条件为:
()()()()()
11121101
1111
11120,1,,1
0,i 1,,n ,00
01,,i in n n n n n i
n n i in n i i x x x i n r x r x r x x x r x r x x x r x i n σσμμμμσσμμ++−+≥=⎧⎪
++≥⎪⎪++=⎪⎨
≥=≥⎪⎪++=⎪⎪++−+==⎩ (2) ((2)中12,μμ为(1)中的拉格朗日乘子) 对于此模型可利用旋转算法计算:
(a )构建初始表
初始基本不等式组由()120,i 1,
,n ,00i x μμ≥=≥≥,构成,初始基本解为
()()00,,020=+个T
y n ,()()1,
,,,11,
,=−=,i i in a r i n σσ,()11,
,,0,0+=n n a r r ,
()21,
,1,0,0n a +=,偏差为()0,1,,i i n σ==,10n r σ+=−,21n σ+=−,将所求数据代入可
得到模型初始表如下图所示:
表5-3 初始表
1e … n e 1n e + 2n e + i σ
1a 0.0006 … -0.0007 1−r 1 0 …

… … …
… … n a -0.0007
… 0.0042
−n r 1 0
1+n a 1r … n r 0 0 0r − 2+n a 1

1
-1
进行两次旋转运算,分别使1a 入基2+n e 出基,2+n a 入基1e 出基,然后删除基向量2
+n a
所在的列和基向量2+n e 所在的行。

(c )主迭代
使非基不等式与基不等式交换,直到所有非基向量的偏差为非负时停止,模型的最优解为初始基本解和偏差的和,即0=+i y y σ。

给定00.05=r 时求得的最优解为: 表5-4 组合策略最优解
股票3 股票7 股票10 股票22 股票27
股票41 i x
0.0722
0.3514 0.1746 0.2832
0.0625
0.0561
由上表可知投资效用最大化时,最优的股票投资组合策略为对股票3,股票7,股票10,股票22,股票27,股票41分别投资占比7.22%,25.14%,17.46%,28.32%,6.25%,5.61%,对于其他股票不进行投资。

5.3问题三模型的建立与求解
由于第二问求解最终资产配置策略时出现问题,致使没有得出结果,但此类问题具有较强的相似性,资产配置策略只是影响到最终结果,队友求解过程并无影响,因此为了求解本题,本题中的数据均为自己拟定,可以在正常求解时进行借鉴。

5.3.1风险价值计算模型的建立
投资组合中风险价值VaR 一般的计算公式为:
()0=+VaR w Z σμ 对于本题,对公式进行修改后得到模型:
()1n
i i i i i VaR x w Z σμ==+∑ (3)
(1)中0w 代表初始投资财富,
σ代表投资收益率的标准差,μ代表投资收益率的均值,Z 代表正太分布的抽样分位数,由下式确定
2
2
1x Z dx α−−=⎰
其中α为95%的置信水平。

5.3.2模型的求解
(a )数据的正态分布检验
采用夏皮洛-威尔克检验,原假设0H :该随机变量服从正态分布;备择假设1H :该随机变量不服从正态分布,利用SPSS 求解得到p 值大部分都是大于0.05的,只有三个p 值是小于0.05的,我们无法拒绝原假设,为了方便运算因此数据可以看做都是服从正态分布的,详细数据见附录II 。

(b )模型求解
将投资组合策略拟定之后,代入数据求解并按照风险价值从小到达对10个公司进行排序,得到结果:
表5-5 风险价值表
公司 风险价值 A -2382100 G -25096000 F -284130000 C -310320000 B -311220000 D -408930000 E -535450000 I -678400000 J -979100000 H -1075700000 5.4问题四模型的建立与求解
5.4.1模型的建立
本题选择股票收益作为投资效用的代理变量来对题目进行求解分析,用m 表示一个公司的股票收益,
()01010
n
i i w x
m p p p ==−∑
其中01,p p 分别代表股票的初始价格和最终价格;
用n 表示风险价值,与第三问的风险价值求解过程相同,
()01n
i i i i n x w Z σμ==+∑
在查阅相关资之后可知公司对风险价值的重视程度比对投资效用的重视程度要高,因此对变量m,n 分别赋予0.3,0.7的权重,最终确定目标函数为:
()10
1
max 0.30.7j z m n ==−∑
由于我国不允许存在股票卖空,所以股票投资占比不为负数,即
0i x ≥
()1
=1,57n
i i x n ==∑
建立最终动态规划模型为;
()()10
01001110max 0.30.7n n
i
i i i j i i w x z p p x w Z p σμ===⎛⎫=⨯−−⨯+ ⎪⎝⎭
∑∑∑ (4)
()1
0..=1,57i n i i x s t x n =≥⎧⎪⎨=⎪⎩∑
5.4.2模型的求解
利用MATLAB编程后得到结果为:
表5-6 汇总结果
公司投资组合(股票)投资占比投资效用风险价值
A5100%0.1309-2382100
B14100%0.1239-25096000
C12100%0.0114-284130000 D32100%0.0801-310320000 E14100%0.1568-311220000 F14100%-0.1459-408930000 G45100%0.1185-535450000 H14100%0.1366-678400000
I55100%0.1384-979100000 J14100%0.1378-1075700000汇总0.8885-4610728100
六、模型的检验
6.1模型的检验
6.1.1层次聚类模型结果的检验
将数据进行归一化,把归一化值加和作为综合评价指标,并按照5类进行分类,结果汇总如下:
表6-1 归一化后的结果
…归一化值加和所属类别公司股票1(标准
化)
A 1 …8.9634 1
B 0 … 4.0717 5
C 0 …7.1352 2
D 0 … 6.1057 5
E 0 … 2.3762 5
F 0 … 6.8268 3
G 0 …7.1725 4
H 0 … 3.7680 5
I 0 … 4.9622 5
J 0 … 3.9291 5
与南高齿聚类得到的结果相同,因此结果较为准确,通过模型检验。

七、模型的评价及改进
7.1模型的评价
7.1.1模型的优点
1.层次聚类模型对先验信息的依赖较少,比较适合解决信息不太完整的问题;
2.层次聚类模型可以综合多种特征影响因素对聚链进行判断,且不必考虑特征阀值的设置;
3.均值-方差法方法灵活性强、便于实施操作,是用于测量风险的统一常用方法。

7.1.2模型的缺点
1.采用层次聚类模型进行运算时效率会随着数据的增加而下降,不太适合带大量数据问题的分析与解决;
2.均值-方差模型具有结果差别大、不具备次可加性和凸性、尾部损失测量不够充分等缺点。

7.2模型的改进
在层次聚类时可以选择多种类与类,点与点之间距离的计算方法进行计算。

在建立均值-方差模型时可以添加约束条件使模型更加精准。

在求解风险价值时,可以建立一些更加复杂、实用性更强的模型。

八、模型的推广
层次聚类模型因其对先验信息依赖少而广泛应用于许多方面,包括数据挖掘、商业数据分析、生物医药、大数据平台推送、图像处理等等方面。

典型的应用实例有短视频软件的对用户的喜好分析而形成的视频推荐。

短视频提供平台可以通过层次聚类分析模型推测在用户减少情绪化明显的评论以及视频投放方可能恶意刷评的情况下的对视频的喜爱程度,从而精确为用户提供符合他们胃口的视频。

均值-方差模型在投资金融行业应用十分普遍。

运用这一方法可以有效地解决如何测定组合投资的风险与收益和如何平衡这两项指标进行资产分配的问题。

除此以外,均值-方差模型还可以解决土地利用规划问题、特殊性质货物的运输策略选择等等。

文中涉及的第三个模型,动态规划模型在生活中常用的领域有公司动态财务规划、水库生态水的调度、森林资源的预测等领域。

比如,通过对森林资源的动态预测,可以为森林未来几年的消长态势做出预估,便于森林管理部门对森林资源的开发保护都形成一个较为清醒的认识。

为国家森林资源的良好和有效利用打下了坚实基础。

九、参考文献
[1]张鹏.不允许卖空情况下均值-方差和均值-VaR投资组合比较研究[J].中国管理科学,2008(04):30-35.
[2]刘燕武.二次规划Wolfe算法和旋转算法的比较[J].中国水运(理论版),2007(03):146-147.
[3]刘艳欣. 基金投资组合模型优化及应用研究[D].曲阜师范大学,2019.
[4]张鹏,张忠桢,岳超源.基于效用最大化的投资组合旋转算法研究[J].财经研
究,2005(12):116-125.
[5]张鹏,张忠桢,岳超源.限制性卖空的均值-半绝对偏差投资组合模型及其旋转算法研究[J].中国管理科学,2006(02):7-11.
[6]张忠桢,唐小我.线性不等式组的一种新算法[J].电子科技大学学报,2002(06):642-647.
[7]陈铁英,张忠桢.自融资均值方差投资组合模型的旋转算法[J].系统工程理论与实
践,2004(06):98-103.
[8]朱得糠. 基于估计理论的层次聚类算法及应用研究[D].国防科学技术大学,2016.
[9]金亮. 基于聚类层次模型的视频推荐算法[D].新疆大学,2018.
[10]郭力飞. 基于四叉树网格的快速层次聚类热图可视化研究[D].燕山大学,2016.
[11]王光甫. 基于交互平台的复杂背景图像文字检测及其应用[D].电子科技大学,2016.
[12]蒋望东. 基于CVaR的投资组合优化问题[D].浙江大学,2007.
[13]叶继红,潘俊山.基于BIM和元胞自动机的建筑火灾救援路径动态规划研究[J/OL].土
木工程学报:1-10[2020-05-04].https:///10.15951/j.tmgcxb.20200420.001.
附录
附录I 持股占比
附录II
附录III
问题二
三次样条插值的MATLAB代码
其中一例
clc;clear;
X=[2,3,4,7,8,9,10,11,14,15,16,17,18,21,22,23,24,25,28,29,30,31];
Y=[8.28,7.94,8.08,8.5,8.48,8.31,8.92,8.75,8.75,9.1,9.17,9.26,9.74,9.58,9.31,9.41,10.1,10.12,1 0.05,10.1,10.26,10.26];
x=1:31;
y=spline(X,Y,x);
a=[y(5);y(6);y(12); y(13);y(19); y(20);y(24);y(25);y(26);y(27);y(28); y(29);y(30);y(31)] clc;clear;
w=0;
A=zeros(57,57);
E=mean(S);%E代表每支股票在1月2号-1月31号的价格期望,共得57个数据
%S代表由一月份内57支股票的价格组成的30x57的矩阵
for i=1:57;
for t=1:29;
r(i,t)=(S(t+1,i)-S(t,i))/S(t+1,i);%r代表i支股票第t天的收益率
w=w+1; %w用于检测循环次数
r;
end
R=sum(S(:,i))/30 ;%R代表每一支股票在一月份的收益率
R
for j=1:57;
A(i,j)=mean(S(:,i).*S(:,j));
cov(i,j)= A(i,j)-E(i)*E(j);%cov代表问题二中的协方差矩阵
end
end
问题三
clc;clear;
syms x y Z;
y=(@(x)1/sqrt(2*pi))*exp((-x^2)/2);
int(y,-inf,Z)
得erf((2^(1/2)*(-1.645))/2)/2 + 1/2
令(erf((2^(1/2)*(-1.645))/2)/2 + 1/2)=0.05
二分法得Z=-1.645
求VaR的代码
a=[];
R=[];
sum(a)*((-1.645)*std(R)+mean(R))
问题四的代码
p0=[8.28 25.65 11.5 27.05 5.72 5.6 27.33 5.32 17.77 3.01 55.18 598.98 35.8 49.94 23.9 15.94 22.48 14.14 9.56 11.13 34.4 66.46 103.78 21.05 19.56 59.8 29.68 24.57 29.32 72.86 11.6 12.67 36.44 15.84 52.97 14.74 5.61 3.59 170.1 29.01 20.93 36.03 7.9 11.71 17.37 28.44 2.48 8.05 39.6 50.38 29.89 13.53 14.28 19.52 7.4 16.8 59.8
];
p1=[10.26 30.03 12.34 29.85 8.51 6.03 25.4 5.42 19.83 2.98 62.98 689.6 41.75 60.3 27.75 15.8 24.18 16.37 10.66 9.81 28.19 72.99 106.73 20.57 20.11 67.69 30.5 29.21 26.19 60.69 11.5 12.2 43.53 16.95 59.05 16.4 -3.5353 4.31 185.87 34.55 20.54 32.2 8.06 12.88 22.18 32.7 2.57 9.12 42.67 49.3 33.61 16 15.25 19.45 9.24 18.64 54.5
20
];
s=[0,0,0,0,0,0,0,0,0,0];
for j=1:10;
for i=1:57;
a=(B(j,i)/p0(i))*(p1(i)-p0(i));
s(j)=s(j)+a;
end
z(j)=0.3*s(j)-0.7*sum(B(j,:))*(-1.645*std(fi(:,j))+mean(fi(:,j))); end
qq=max(z)
21。

相关文档
最新文档