本题选自1998年全国大学生数学建模竞赛A题

例:市场上有种资产(如股票、债券、……)si(i=1,2,...,n)供投资者选择,某公司有数额为M的一笔相当大的资金可用作一个时期的投资。公司财务分析人员对这n种资产进行了评估,估算出在这一时期内购买资产si的平均收益率为ri,并预测出购买si的风险损失率为qi。考虑到投资越分散,总的风险越小,公司确定,当用这笔资金购买若干种资产时,总体风险可用所投资的si中最大的一个风险来度量。

购买si要付交易费,费率为pi,并且当购买额不超过给定ui时,交易费按购买ui计算(不买当然无需付费)。另外,假定同期银行存款利率是r0(r0=5%),且既无交易费又无风险。

已知n=4时的相关数据如表所示。

问题分析

这是一个组合投资问题:已知市场上可供投资的n+1种资产的平均收益率、风险损失率以及购买资产时产生的交易费费率,设计一种投资组合方案,也就是要将可供投资的资金分成数量不等的n+1份分别购买n+1种资产。不同类型的资产的平均收益率和风险损失率也各不相同,因此在进行投资时,要同时兼顾两个目标:投资的净收益和风险。

符号说明

si:可供投资的第i种资产,i=0,1,2,...,n,其中s0表示存入银行;

xi:投资到资产si的资金数量,i=0,1,2,...,n,其中x0表示存到银行的资金数量;

ri:资产si的平均收益率,i=0,1,2,...,n;

qi:资产si的风险损失率,i=0,1,2,...,n,其中q0=0;

pi:资产si的交易费费率,i=0,1,2,...,n,其中p0=0;

ui:资产si的投资阈值,i=1,2,...,n。

模型假设

(1)可供投资的资金数额M相当大;

(2)投资越分散,总的风险越小,总体风险可用所投资的si中最大的一个风险来度量;

(3)可供选择的n+1种资产(含银行存款)之间是相互独立的;

(4)每种资产可购买的数量为任意值;

(5)在当前投资周期内,ri,qi,pi,ui(i=0,1,...,n)固定不变;

(6)不考虑在资产交易过程总产生的其他费用,如股票交易印花税等。

模型建立

(1)总体风险用所投资的si中最大的一个风险来衡量,即

max{qixi|i=1,2,...n}.

(2)购买si(i=1,2,...,n)所付交易费是一个分段函数,即

而题目所给的定值ui(单位:元)相对总投资M很少,piui更小,这样购买si的净收益可以简化为(ri-pi)xi。

目标函数:

约束条件:

模型简化:

①在实际投资中,投资者承担风险的程度不一样,若给定风险一个界限a,使最大的一个风险qixi/M≤a,可找到相应的投资方案。这样把多目标规划变成单目标的线性规划。

模型一:固定风险水平,优化收益。

②若投资者希望总盈利至少达到水平k以上,在风险最小的情况下寻求相应的投资组合。

模型二:固定盈利水平,极小化风险。

③投资者在权衡资产风险和预期两方面时,希望选择一个能令自己满意的投资组合。因此对风险、收益分别赋予权重w(0≤w≤1)和(1-w),w称为投资偏好系数。

模型三:两个目标函数加权求和。

下面求解模型一和模型三,求解时不妨取M=10000元。

模型一的求解与分析

由于a是任意给定的风险度,到底怎样没有一个准则,不同的投资者有不同的风险度。我们从a=0开始,以步长是△a=0.001进行循环搜索,编制程序如下:

clc, clear, close all

prob=optimproblem('ObjectiveSense','max');

x = optimvar('x',5,1,'LowerBound',0);

c=[0.05,0.27,0.19,0.185,0.185]; %净收益率

Aeq=[1,1.01,1.02,1.045,1.065];  %等号约束矩阵

prob.Objective = c*x; M = 10000;

prob.Constraints.con1 = Aeq*x==M; %等号约束条件

q=[0.025,0.015,0.055,0.026]'; %风险损失率

a = 0; aa = []; QQ = []; XX = []; hold on

while a<0.05

prob.Constraints.con2 = q.*x(2:end)<=a*M;

[sol,Q,flag,out]= solve(prob);

aa = [aa; a]; QQ = [QQ,Q];

XX = [XX; sol.x']; a=a+0.001;

end

plot(aa, QQ, '*k')

xlabel('$a$','Interpreter','Latex'),

ylabel('$Q$','Interpreter','Latex','Rotation',0)

(2)结果分析

风险a与收益Q之间的关系见图。

从图中可以看出:

①风险大,收益也大。

②当投资越分散时,投资者承担的风险越小,这与题意一致。冒险的投资者会出现集中投资的情况,保守的投资者则尽量分散投资。

③在a=0.006附近有一个转折点,在这一点左边风险增加很少时,利润增长很快。在这一点右边,风险增加很大时,利润增加很缓慢,所以对于风险和收益没有特殊偏好的投资者来说,应选择曲线的转折点作为最优投资组合,大约是a=0.6%,Q=2000,所对应投资方案为

风险度a=0.006,收益Q=2019元,x0=0元,x1=2400元,x2=4000元,x3=1091元,x4=2212元。

模型三的求解及分析

(1)线性化

具体求解时,我们需要把目标函数线性化,引进变量xn+1=max{qixi}(1≤i≤n},则模型可线性化为:

(2)求解及分析

可以得到当w取不同值时风险和收益的计算结果如表所示

从以上数据可以看出,当投资偏好系数w≤0.7时所对应的收益和风险均达到最大值。此时,收益为2673.27元,风险为247.52元,全部资金均用来购买资产si;当w由0.7增加到1.0时,收益和风险均呈下降趋势,特别,当w=1.0时,收益和风险均达到最小值,收益为500元,风险为0,此时应将所有资金全部存入银行。

为更好地描述收益与风险的对应关系,可将w的取值进一步细化,重新计算的部分数据如表所示

绘制收益和风险的函数关系图像如图所示

从图可以看出,投资的收益越大,风险也越大。投资者可以根据自己对风险喜好的不同,选择合适的投资方案。曲线的拐点坐标约为(59.4,2016.24),此时对应的投资方案是购买资产s1、s2、s3、s4的资金分别为2375.84元、3959.73元、1079.93元和2284.46元,存入银行的资金为0元,这对于风险和收益没有明显偏好的投资者是一个比较合适的选择。

clc, clear, close all, format long g

M =10000; prob = optimproblem;

x = optimvar('x',6,1,'LowerBound',0);

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]'; %风险损失率

%w = 0:0.1:1

w = [0.766, 0.767, 0.810, 0.811, 0.824, 0.825, 0.962, 0.963, 1.0]

V = []; %风险初始化

Q = []; %收益初值化

X = []; %最优解的初始化

prob.Constraints.con1 = (1+p)*x(1:end-1)==M;

prob.Constraints.con2 = q(2:end).*x(2:end-1)<=x(end);

for i = 1:length(w)

prob.Objective = w(i)*x(end)-(1-w(i))*(r-p)*x(1:end-1);

[sol,fval,flag,out]=solve(prob);

xx = sol.x; V=[V,max(q.*xx(1:end-1))];

Q=[Q,(r-p)*xx(1:end-1)]; X=[X; xx'];

plot(V, Q, '*-'); grid on

xlabel('风险(元)'); ylabel('收益(元)')

end

V, Q, format

微信公众号 | 数模or机械舵手

关于投资收益和风险的例题(线性规划)相关推荐

  1. 保本≠不亏钱!巴菲特教你如何平衡投资收益与风险

    阅读原文:http://club.jr.jd.com/quant/topic/1408655 京东金融官方资讯QQ群:456448095 有什么想咨询的都可以来询问我们 巴菲特有句投资名言,有异曲同工 ...

  2. 关于投资收益(工薪青年投资理财买房炒股必看)

    (本文内容整理自我在鸿学金信赢在青年-工薪青年投资理财培训中所讲的部分内容,希望能给广大的工薪青年白领们在规划解决人生财富及投资理财时提供一定的参考意见!) 投资收益非常关键,他会影响到我们投资的最终 ...

  3. 好用的记事本陈列 tree/f

    卷 bigdata 的文件夹 PATH 列表 卷序列号为 2089-3679 E:. │ 1.txt │ └─优秀论文 │ 优秀论文.zip │ ├─2004-2020美赛O奖论文 │ │ 1.txt ...

  4. texlive+texstudio数学建模排版

    ** 2020.3.10 内容与格式分离是latex文档本质 ** CteX与LaTeX有什么区别 1.导言区(进行全局设置)+正文区(有且只有一个document环境) 2.解决中文包问题 :用ct ...

  5. 【美赛学习记录】模型

    美赛学习记录-2022年2月7日 代码! 线性回归 数据拟合 插值 最优化求极值 插值 ARIMA 复杂网络实验 模型验证 K-Fold Cross-validation k折交叉验证 [基础模型] ...

  6. 证券从业资格证-考前复习-金融市场基础知识

    备考2023年6月证券从业资格证,每章思维导图及相关概念,用于考前复习,只包含[金融市场基础知识]部分 1. 金融市场基础知识 1.1 第一章 金融市场体系 #mermaid-svg-olEXDXH2 ...

  7. 1万块钱如何理财可以获得最高收益?

    任何时候收益跟风险是成正比的,想要博取最大化的收益可以投资股票,说不定一年就张几倍了. 但是股市风险很大,像10000元这样的小资金只能沦为庄家的韭菜,所以不建议投资股票. 在投资收益和风险中寻找平衡 ...

  8. 大数据先行 传统金融转型需从体制上创新

    经过几年发展,互联网金融成为金融行业一股鲜活的力量.同时,行业也意识到,这条鲶鱼不会在大众市场对银行构成威胁.日前,德勤的一份报告也指出,P2P的市场价值高达1800亿美元,但并没有在成本.风险和速度 ...

  9. 量化投资中的特征工程

    导语:近年来,国内量化投资迎来了发展的黄金期,但涉及机器学习的量化投资还比较少.机器学习领域的大神Andrew Ng(吴恩达)老师曾经说过机器学习很大程度上就是特征工程,因此本文主要介绍下特征工程在量 ...

  10. 金融投资理财基础知识

    随着当前金融互联网的兴起,当前的投资理财方式较以前相比,更加的多样化.就不说银行存款了,当下风险最低,收益最低的理财方式,因为通货膨胀,可能存的越久就钱越不值钱.下面主要介绍一下当下比较流行的投资方式 ...

最新文章

  1. D.Digits 思维dp 取log乘积变成加法
  2. 聊聊Unsafe的一些使用技巧
  3. asp.net mysql 读写分离_.NET Core实现分表分库、读写分离的通用 Repository功能
  4. linux 下使用 curl 访问带多参数,GET掉参数解决方案
  5. 五层架构(MVC+biz+lib)
  6. 结合人脸识别元辅助学习的AU单元检测
  7. Java生产环境下性能监控与调优详解 第7章 JVM层GC调优
  8. 树、森林、二叉树的转换
  9. tcp 四次挥手_TCP三次握手,四次挥手,你真的懂吗?
  10. [N1盒子] Phicomm-N1 斐讯 N1 NAS 打造指南
  11. 体验火热的Python抢票神器,先让你50个加速包
  12. 一键下载大学慕课等课程视频
  13. cenntos7安装Nginx添加passenger模块
  14. Ruby ERB注入反序列化
  15. 江西应用技术职业学院计算机协会,江西应用技术职业学院47个学生社团陆续召开动员大会...
  16. 高强度间歇训练(HIIT)
  17. 电子信息要学c语言嘛,电子信息工程专业主要学什么 一般工资是多少
  18. NR PRACH (七)Type 2(2-step) RA 参数及相关规定
  19. 希尔排序(附C语言实现)
  20. PHP单例模式与常驻内存(总结)

热门文章

  1. APP端上通用安全体系建设
  2. AWVS12 docker版本安装
  3. java+整合handwrite_cnn handwrite使用原生的TensorFlow进行预测
  4. 车载多传感器融合定位方案:GPS +IMU+MM
  5. ToStringBuilder用法
  6. android TextWatcher 学习
  7. 新手怎么入门电子电路设计?
  8. Windows7安装PADS2007详细步骤____亲自实验总结
  9. 《JSP程序设计》手机销售网
  10. Python 编程的最好搭档—VSCode 详细指南