2020年五一杯数学建模B题基于系统性风险角度的基金资产配置策略分析解题全过程文档及程序

176 篇文章 14 订阅
23 篇文章 8 订阅

2020年五一杯数学建模

B题 基于系统性风险角度的基金资产配置策略分析

原题再现

  近年来,随着改革开放程度的不断提高,我国经济运行中的各种风险逐渐暴露并集中传导和体现于金融领域。党的“十九大”报告提出“守住不发生系统性金融风险的底线”要求,并将防范化解重大风险看成决胜全面建成小康社会三大攻坚战的首要战役。
  作为金融系统的重要组成部分之一,资产管理业务的风险状况同样是我国金融体制改革过程中值得关注的问题。因此,中国人民银行于2018年出台了《关于规范金融机构资产管理业务的指导意见》,旨在规范金融机构资产管理业务,有效防控金融风险,引导社会资金流向实体经济,更好地支持经济结构调整和转型升级。
公募基金是最具代表性的资产管理业务形态。由于采取相对绩效考核制度,竞争压力使得公募基金资产配置变得非常复杂,持股集中度也相对较高,成为影响系统性风险的潜在因素。因此如何平衡基金投资收益和系统性风险之间的关系值得深入探究。
  请考虑下列问题:
  1. 附件1提供了2019年十家公募基金公司在股市中的一部分资产配置信息。请以此样本为例,建立合适的数学模型,度量不同基金公司之间资产配置策略的相似性。
  2. 附件2提供了2019年样本股票价格数据,假设以所有基金的持股市值总和作为初始财富,以投资效用最大化为目标,请建立合适的数学模型,确定最优的股票投资组合策略(不考虑股票之间的相关性且不允许卖空)。
  3. 假设2020年所有基金公司仍然按照2019年的资产配置策略进行投资。请根据附件1和附件2建立合适的数学模型,度量每个基金公司2020年95%置信水平下的风险价值,并进行排序。
  4. 如果要求2020年整个系统(所有样本基金公司组成)既能保证投资效用最大化,同时又能使风险价值最低,请建立合适的数学模型,确定最优的股票投资组合策略,并给出投资效用和风险价值。

整体求解过程概述(摘要)

  针对本文给出的基金资产配置策略问题,本文建立了结合小波分析算法,均值-方差模型,蒙特卡罗模拟方法以及遗传算法的资产配资投资效益优化模型,对企业购买股票以及合理进行资金的配置具有一定的指导作用。
  针对问题一 本文使用皮尔逊相关系数与系统聚类的方法对基金公司的资产配置策略相似性进行度量,将每个公司购买的每种股票的总股价占所有股票总股价的比例作为指标,计算皮尔逊相关系数矩阵,再将比例作为指标进行系统聚类,与相关系数大小做对比,得到基金公司 A、B、C 的资产配置策略相似性较强,基金公司 D、F、G、H、I资产配置相似性较强,基金公司 E、G 与的资产配置策略与其他公司并没有强烈的相关性。
  针对问题二 本文结合小波分析算法与均值-方差模型确定使投资效用最大化的股票投资策略,首先补全股价缺失值,使用小波分析算法对数据进行降噪,再使用样条插值补全数据。之后计算协方差矩阵代入均值方差模型求解确定了投资效用最大的策略:总资金的 11.67% 购买股票 7,14.01% 购买股票 16,22.12% 购买股票 22,1.36% 购买股票 32,11.84% 购买股票 43,30.54% 购买股票 50,8.47% 购买股票 57。
  针对问题三 本文使用历史模拟法、蒙特卡罗方法,参数模拟法度量每个基金公司2020 年 95% 置信水平下的风险价值,首先检验各股票价格是否服从正态分布,之后用三种方法进行多次模拟,得到平均风险价值最高的基金公司为公司 H,其用三种方法计算得到的风险价值分别为 9832885917 元,1194423950 元,1075206716 元,平均风险价值最低的基金公司为公司 F,其用三种方法计算得到的风险价值分别为 201389015 元,274851565 元,238205436 元。
  针对问题四 本文建立了整个系统的兼顾投资效益以及风险价值的投资策略优化模型,并且使用遗传算法,改变初始参数多次进行求解,得到最佳适应度收敛时所对应的股票投资策略,得到当等比例投资股票 5、股票 13、股票 14、股票 19、股票 22、股票 28、股票 37、股票 38、股票 39、股票 54 时,整体适应度最高,其股票收益率期望为 0.0037,整个系统的风险价值为 4088819938 元。

模型假设:

  1 假设 2020 年无金融危机、重大自然灾害、卫生事故等影响股票价格及投资者投资策略决策的因素。
  2 假设所有决策者的市场信息公开透明并且准确。
  3 假设所有投资者均可以根据市场的变化以自身利益最大化、风险最小化为目标进行选股投资。

问题分析:

  问题一分析
  首先应该解决的是如何将公司的资产配置策略定量表示,之后再考虑如何用数学模型衡量两个公司之间的资产配置的相似性。
  问题二分析
  首先要理解股票价格变动的规律,用合理的方法补全数据,之后再用已有数据指标定义投资效用,建立约束条件灵活的规划模型,以投资效用最大化为目标,用软件求解。
  问题三分析
  首先要建立合适的模型对 2020 年的的风险价值进行评估,由于 2019 年的历史数据可以利用,可以用历史模拟法或蒙特卡罗法进行模拟,多次模拟后计算出 95% 置信水平下的风险价值并进行排序。
  问题四分析
  首先需要建立兼顾效益与风险的投资效益模型,其中问题二的结果可以作为参考,之后再选用合适的方法求解模型,例如 Lingo、智能算法等。

模型的建立与求解整体论文缩略图

在这里插入图片描述
在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

程序代码:(代码和文档not free)

%根据信号计算噪声强度,给出全局阈值
[thr,sorh,keepapp]=ddencmp('den','wv',x);
%根据全局阈值对信号去噪
xd=wdencmp('gbl',x,'sym4',2,thr,sorh,keepapp);
%用sym4小波对信号做4层分解
[c,l]=wavedec(x,4,'sym4');
%得到每个层次的分层阈值
[thr1,nkeep]=wdcbm(c,l,2);
%根据分层阈值使用软阈值方法对信号去噪
[xd1,cxd,lxd,perf0,perfl2]=wdencmp('lvd',c,l,'sym4',4,thr1,'s');
%绘制原始信号和去噪后信号的图形
subplot(3,1,1);plot(x);title('原始股票单价');
subplot(3,1,2);plot(xd);title('使用全局阈值去噪后的股票单价');
subplot(3,1,3);plot(xd1);title('使用分层阈值去噪后的股票单价');
%gushu为附件一中每家公司的投资股票的股数
%closeprice为补全后的股票每日的收盘价
%%历史模拟法
value=0;
for i=1:10
value = value+gushu(i).*closeprice(:,i);
end
% 投资组合收益率
ret = price2ret(value);
figure;
subplot(2,1,1);
x=1:244;
plot(x,value);
xlabel('时间');
ylabel('组合市值');
title('投资组合市值')
subplot(2,1,2);
plot(x(2:end),ret,'*');
xlabel('时间');
ylabel('收益率');
title('投资组合日收益率')
%绘制投资组合收益率直方图
figure;
histogram(ret,20);
ylabel('天数');
xlabel('投资组合日收益率');
title('历史模拟法投资组合日收益率直方图');
%在5%置信度时,市值亏损的最大比率
Var = -prctile(ret,5) * value(end);
disp(['历史模拟法投资组合VaR为',num2str(Var)]);
%% 蒙特卡罗模拟
%计算日收益率均值和方差
mu = mean(ret);
vol = std(ret);
% 模拟间隔点
nStep = 250;
% 年化波动率
vol = vol * sqrt(nStep);
%资产初始值
s0 = value(1);
% 模拟时长
T = 1;
% 模拟路径数
nPath = 1000;
%用蒙特卡洛模拟1000次
sPath = simulatePath(s0,mu,vol,T,nStep,nPath);
% 绘制蒙特卡罗法模拟路径
figure;
plot(sPath);
xlabel('模拟时间点');
ylabel('组合市值');
title('蒙特卡罗法模拟路径');
% 计算每条模拟路径的var
ret_mc = price2ret(sPath);
Var = -mean(prctile(ret_mc,5)) * value(end);
disp(['蒙特卡罗法投资组合VaR为',num2str(Var)]);
%% 参数模型法
vol = std(ret);
ValueAtRisk = portvrisk(mu,vol);
Var = ValueAtRisk * value(end);
disp(['参数模型法投资组合VaR为',num2str(Var)]);
%%simulatePath函数
function sPath = simulatePath(S0,mu,sigma,T,nStep,nPath)
%S0资产初始值
%T模拟时长
%nStep模拟间隔点
%nPath模拟路径数
%日收益率均值
% mu=r-q
% time step
deltaT = T / nStep;
% initialize stock price matrix
sPath = nan(nStep+1,nPath);
sPath(1,:) = S0;
% Simulated according to ITO's lemma
p1 = (mu - 0.5 * sigma ^ 2 ) * deltaT;
p2 = sigma * sqrt(deltaT);
for i = 1:nPath
for j = 1:nStep
sPath(j+1,i) = sPath(j,i) * exp(p1 + p2 * randn);
end
end
end
全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
国赛 终于到了国赛的日子,不过凑巧的是当时本人学院上学期疫情的考试安排在的本学期开始,这意味着我要开始边备考边建模,顶着挂科的压力放肆复习。 选的话,之前说过了果断选的新颖B(穿越沙漠)。 简单说下我们的思路: 我们对赛的理解是这情景非常具体,数据需要少,感觉三问都是优化模型,而且需要很强的编程。 首先我们分析目,对游戏规则摸清楚,没有急着建模。 涉及到路线、事件的选择,使用 0-1 变量等定义模型。 最短路径用Floyd算法或者基本可以数出来,考察的是最优路径以及路径前对资源的购买(收益最大)。 第一问: 在第一关和第二关的探险过程中,运用初始的资金对于资源进行合理的分配,可以通过线性规划,确定好在未来一段时间的消耗与收益,制定好合理的规划,通过 MATLAB 计算出需要使用的资源。经过多次训练对比,最终计算出最优策略,对比资金数量。因为不确定答案是否正确,后来我们又用excel表格进行了推导,最后得到是12730,与优秀论文中的12760相比小了30块,估计大概因为这个答案的问,没有国一。 第二问: 第二问与第一问相比提升了难度,如果玩家在进行策略安排的时候, 不知道天气的状况那么小伙伴们可以自己商讨给出何种方案,比如多买水,多买食物等等方法,再这之后通过选择最优路径进行合理的方法选择并讨论,具体的解决方法是通过编程和启发式算法的excel解决的。 第三问: (1) 对于n 名相同的初始资金,且同时从起点出发的玩家来说,游戏规则需要进一步注意规范,为了保证多方共赢,在天气状况已知的情况下, 可以通过先前 MATLAB 中的神经网络算法算出的最优旅行路线,计算多次的结果进行对比,保证不会出现重复的状况, 剔除掉重复出现的次数。因为天气状况已知,所以相对比较好安排合理的路线,对于安排好的路线分别进行编号,再依次进行合理的计算,最终确定结果,

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值