matlab实验报告模板

合集下载

MATLAB实验报告

MATLAB实验报告

MATLAB实验报告一、实验目的本次 MATLAB 实验旨在深入了解和掌握 MATLAB 软件的基本操作和应用,通过实际编程和数据处理,提高解决问题的能力,培养编程思维和逻辑分析能力。

二、实验环境本次实验使用的是 MATLAB R2020a 版本,运行在 Windows 10 操作系统上。

计算机配置为英特尔酷睿 i5 处理器,8GB 内存。

三、实验内容(一)矩阵运算1、矩阵的创建使用直接输入、函数生成和从外部文件导入等方式创建矩阵。

例如,通过`1 2 3; 4 5 6; 7 8 9` 直接输入创建一个 3 行 3 列的矩阵;使用`ones(3,3)`函数创建一个 3 行 3 列元素全为 1 的矩阵。

2、矩阵的基本运算包括矩阵的加减乘除、求逆、转置等。

例如,对于两个相同维度的矩阵`A` 和`B` ,可以进行加法运算`C = A + B` 。

3、矩阵的特征值和特征向量计算通过`eig` 函数计算矩阵的特征值和特征向量,加深对线性代数知识的理解和应用。

(二)函数编写1、自定义函数使用`function` 关键字定义自己的函数,例如编写一个计算两个数之和的函数`function s = add(a,b) s = a + b; end` 。

2、函数的调用在主程序中调用自定义函数,并传递参数进行计算。

3、函数的参数传递了解值传递和引用传递的区别,以及如何根据实际需求选择合适的参数传递方式。

(三)绘图功能1、二维图形绘制使用`plot` 函数绘制简单的折线图、曲线等,如`x = 0:01:2pi; y = sin(x); plot(x,y)`绘制正弦曲线。

2、图形的修饰通过设置坐标轴范围、标题、标签、线条颜色和样式等属性,使图形更加清晰和美观。

3、三维图形绘制尝试使用`mesh` 、`surf` 等函数绘制三维图形,如绘制一个球面`x,y,z = sphere(50); surf(x,y,z)`。

(四)数据处理与分析1、数据的读取和写入使用`load` 和`save` 函数从外部文件读取数据和将数据保存到文件中。

MATLAB实验报告(打印版)

MATLAB实验报告(打印版)

MATLAB实验报告班别:09电气3班姓名:李嘉明学号:200924122301实验一/二 MATLAB的基础操作3.自定义一个变量,然后分别用8种不同的数字显示格式显示查看。

>> a=[1.1,1.2,1.3;1.4,1.5,1.6;1.7,1.8,1.9]a =1.1000 1.2000 1.30001.4000 1.5000 1.60001.7000 1.8000 1.9000>> format long>> aa =1.100000000000000 1.200000000000000 1.3000000000000001.400000000000000 1.500000000000000 1.6000000000000001.700000000000000 1.800000000000000 1.900000000000000>> format short e>> aa =1.1000e+000 1.2000e+000 1.3000e+0001.4000e+000 1.5000e+000 1.6000e+0001.7000e+000 1.8000e+000 1.9000e+000>> format long e>> aa =1.100000000000000e+000 1.200000000000000e+000 1.300000000000000e+0001.400000000000000e+000 1.500000000000000e+000 1.600000000000000e+0001.700000000000000e+000 1.800000000000000e+000 1.900000000000000e+000 >> format hex>> aa =3ff199999999999a 3ff3333333333333 3ff4cccccccccccd3ff6666666666666 3ff8000000000000 3ff999999999999a3ffb333333333333 3ffccccccccccccd 3ffe666666666666>> format +>> aa =+++++++++>> format rat>> aa =11/10 6/5 13/107/5 3/2 8/517/10 9/5 19/10>> format short>> aa =1.1000 1.2000 1.30001.4000 1.5000 1.60001.7000 1.8000 1.90005、己举例比较给矩阵的全行赋值,取出矩阵中某一个或几个元素,然后组成一个新的矩阵。

MATLAB实验报告(四份!!!)

MATLAB实验报告(四份!!!)

0380160815880001449451490168779983287916534749293454515731] >> double(x) ans = -33.5325 60.6078 -54.7098 27.3192 实验三 MATLAB 绘图
一 实验环境 计算机 MATLAB 软件 二 实验目的 1. 掌握 MATLAB 的基本绘命令。 2. 掌握运用 MATLAB 绘制一维、二维、三维的图形方法。 3. 给图形加以修饰。 三 预备知识 特殊的二维图形函数有:直方图、柄图、阶梯图、饼图、频数累计柱状 图、极坐标图 四 实验内容和步骤
3.创建一个 3x3 矩阵,并求其转置,逆矩阵。 >> A=magic(3) A= 8 3 4 >> A' ans = 8 1 6 >> inv(A) 3 5 7 4 9 2 1 5 9 6 7 2
ans = 0.1472 -0.0611 -0.0194 -0.1444 0.0222 0.1889 0.0639 0.1056 -0.1028
3. 画出 y=的曲线(x(-5,5)) 。在这曲线上加入相同区间里的 y=的曲线,并且采用绿色折 线标识。 >> x=linspace(-5,5,100); >> y=x.^2; >> plot(x,y) >> hold on >> z=x.^(1/3); >> plot(x,z,'g--')
4. 在同一窗口不同坐标系里分别绘出 y1=sinx,y2=cosx,y3=cinh(x),y4=cosh(x)4 个图形。 >> x=linspace(0,2*pi,30); >> subplot(2,2,1);plot(x,sin(x)); >> subplot(2,2,2);plot(x,cos(x)); >> subplot(2,2,3);plot(x,sinh(x)); >> subplot(2,2,4);plot(x,cosh(x));

matlab实验报告模板

matlab实验报告模板

《高等数学》实验报告(二)实验项目名称:多元函数积分学分组第八组组员姓名学号专业班级实验软件Matlab2010b完成日期实验成绩一、实验目的:加强对Matlab 软件的基本操作,会利用符号计算中int 积分嵌套命令求二重积分、三重积分。

会合理运用int 嵌套命令求解第一类、第二类曲线积分及第一类、第二类曲面积分以及Green 公式及Gauss 公式解题。

结合已经学习的内容,学会分析上述有关内容的综合问题并利用软件给出正确的解答。

二、 实验内容、步骤与结果:8. 计算二重积分 arctan D y d xσ⎰⎰ 其中D 是由圆224x y += 、 及直线y=0, y=x 所围成的在第一象限内的闭区域。

>> syms x y rho theta>> i=int(int(atan(tan(theta))*rho,rho,1,2),theta,0,(0.25)*pi)i =(3*pi^2)/6418. 计算三重积分 e x y z dxdydz ++Ω⎰⎰⎰,其中, 是平面x+y+z=1与三个坐标面围成的立体。

>> syms x y z;>> i=int(int(int(exp(x+y+z),z,0,1),y,0,1-x),x,0,1)i =exp(1) - 128. 计算曲线积分 2()()L x y dx x y dy ++-⎰,其中,L 沿直线从(1,0) 到(0,1), 再沿直线从(0,1)到(-1,0)。

过程syms x y;p=x^2+y;q=x-y;fun=(x^2+y)*diff(p,x)+(x-y)*diff(q,y);I=int(fun,x,1,0);I=int(fun,y,0,1)I =1/2+2*x^3I=int(fun,x,0,-1);I=int(fun,y,1,0)I =-1/2-2*x^3结果由(1,0)到(0,1)I =1/2+2*x^3由(0,1)到(-1,0)I =-1/2-2*x^338求半径为a的球面面积。

程序设计实验报告(matlab)

程序设计实验报告(matlab)

程序设计实验报告(matlab)实验一: 程序设计基础实验目的:初步掌握机器人编程语言Matlab。

实验内容:运用Matlab进行简单的程序设计。

实验方法:基于Matlab环境下的简单程序设计。

实验结果:成功掌握简单的程序设计和Matlab基本编程语法。

实验二:多项式拟合与插值实验目的:学习多项式拟合和插值的方法,并能进行相关计算。

实验内容:在Matlab环境下进行多项式拟合和插值的计算。

实验方法:结合Matlab的插值工具箱,进行相关的计算。

实验结果:深入理解多项式拟合和插值的实现原理,成功掌握Matlab的插值工具箱。

实验三:最小二乘法实验目的:了解最小二乘法的基本原理和算法,并能够通过Matlab进行计算。

实验内容:利用Matlab进行最小二乘法计算。

实验方法:基于Matlab的线性代数计算库,进行最小二乘法的计算。

实验结果:成功掌握最小二乘法的计算方法,并了解其在实际应用中的作用。

实验六:常微分方程实验目的:了解ODE的基本概念和解法,并通过Matlab进行计算。

实验内容:利用Matlab求解ODE的一阶微分方程组、变系数ODE、高阶ODE等问题。

实验方法:基于Matlab的ODE工具箱,进行ODE求解。

实验结果:深入理解ODE的基本概念和解法,掌握多种ODE求解方法,熟练掌握Matlab的ODE求解工具箱的使用方法。

总结在Matlab环境下进行程序设计实验,使我对Matlab有了更深刻的认识和了解,也使我对计算机科学在实践中的应用有了更加深入的了解。

通过这些实验的学习,我能够灵活应用Matlab进行各种计算和数值分析,同时也能够深入理解相关的数学原理和算法。

这些知识和技能对我未来的学习和工作都将有着重要的帮助。

matlab实验报告

matlab实验报告

实验一1.设x=-74°,y=-27°,求22的值。

√tan⁡|x+y|+π2.当a取-3.0,-2.9,-2.8,…,2.8,2.9,3.0时,求e−0.3a sin(a+0.3)在各点的函数值。

3. 设x=24−0.455,求12In(x+√1+x ²)的值,并分析结果矩阵中各元素的含义。

4. 已知A=354234−457879015,B=1−2672874930求下面的表达式的值。

(1)A*B和A.*B。

(2)A^3和A.^3.。

(3)A/B和A\B。

(4)[A,B]和[A([1,3],:);B^2]。

实验二一、实验步骤:1)新建脚本2)在编辑器中输入相应程序3)在命令窗口执行文件,得到结果1. 根据π²6=11²+12²+13²+…+1n ²,求π的近似值。

当n 分别取100、1000、10000时,结果是多少?要求:分别用循环结构和向量运算(使用sum 函数)来实现。

1)循环结构一、实验步骤二、1)新建脚本2)在编辑器中输入相应程序3)保存文件,将文件命名为PI.m4)在命令窗口输入PI执行文件,得到结果三、实验代码四、实验结果2.根据y=1+13+15+⋯+12n−1,求(1)y<3时的最大n值(2)与(1)的n值对应的y值一、实验步骤1)打开matlab,新建脚本2)在脚本文件中输入实验代码3)保存文件,存名字为value.m4)在命令窗口中输入value,得到实验结果二、实验代码三、实验结果。

MATLAB实验报告3(1)

MATLAB实验报告3(1)

四、实验内容与步骤:1.绘制下列曲线.(1) y=x-(x^3)/6程序输入如下:fplot('x-(x^3)/6',[-5,5],'r.');程序输出:(2) x^2+2*y^2=64程序输入如下:ezplot(' x^2+2*y^2-64',[-8,8]) 程序输出:2.设y=1/(1+exp(-t)) –pi<=t<=pi在同一图形窗口采用子图的形式绘制条形图阶梯图杆图和对数坐标图等不同图形,并对不同图形加标注说明.程序输入如下:t=-pi:pi/10:pi;y=1./(1+exp(-t));subplot(2,2,1);bar(t,y,'r');title('条形图');axis([-4,4,0,1]);subplot(2,2,2);stairs(t,y,'b');title('阶梯图');axis([-4,4,0,1]);subplot(2,2,3);stem(t,y,'g');title('杆图');axis([-4,4,0,1]);subplot(2,2,4);semilogx(t,y,'k');title('对数坐标图');axis([-4,4,0,1]);程序输出:3.绘制下列极坐标图.(1) y=5*cos(x)+4(2) y=(5*sin(x)*sin(x))/cos(x) (1)程序输入:x=0:pi/50:2*pi;y=5*cos(x)+4;polar(x,y,'-*');程序输出:(2)程序输入:x=-pi/3:pi/50:pi/3;y=(5.*sin(x).*sin(x))./cos(x);polar(x,y,'-*');程序输出:4.绘制下列三维图形(1)x=exp(-t/20).*cos(t)y=exp(-t/20).*sin(t)z=t0<=t<=2*pi(2)z=5abs(x)<=5abs(y)<=5要求应用插值着色处理(1)程序输入:t=0:pi/10:2*pi;x=exp(-t/20).*cos(t);y=exp(-t/20).*sin(t);z=t;plot3(x,y,z);title('三维图形4-1');xlabel('x');ylabel('y');zlabel('z'); grid on;程序输出:(2)程序输入:[x,y]=meshgrid(-5:0.5:5); z=0*(x-y)+5;surf(x,y,z);shading interp;title('三维图形4-2');程序输出:五、实验总结:2.绘制下列曲线,(1) y=exp(-x*x/2)/(2*pi)程序输入:fplot('exp(-x*x/2)/(2*pi)',[0,5],'r.')程序输出:(2) x=t*sin(t)y=t*cos(t)程序输入:t=0:0.1:2*pi;x=t.*sin(t);y=t.*cos(t);plot(x,y);程序输出:3.在同一坐标轴中绘制下列两条曲线并标注两曲线交叉点(1) y=2*x-0.5(2) x=sin(3*t).*cos(t)y= sin(3*t).*sin(t)0<=t<=pi程序输入:t=0:pi/100:pi;x=sin(3*t).*cos(t);y2=sin(3*t).*sin(t);y1=2*x-0.5;plot(x,y1,'m',x,y2,'g');hold onk=find(abs(y2-y1)<1e-4);x1=x(k);y3=2*x1-0.5;plot(x1,y3,'bp');程序输出:4.分别用plot和fplot函数绘制函数y=sin(1/x)的曲线,分析两曲线的差别程序输入:x=-1:pi/100:1;y=sin(1./x);subplot(2,1,1);plot(x,y,'g');subplot(2,1,2);fplot('sin(1./x)',[-1,1],'m');程序输出:两曲线的差别plot函数在取数据点时一般都是等间隔采样,fplot函数可自适应地对函数进行采样,能更好的反应函数的变化规律6.绘制曲面图形(1)x=3*u*sin(v)y=2*u*cos(v)z=4*u*u程序输入:[u,v]=meshgrid(0:pi/100:2*pi);x=3*u.*sin(v);y=2*u.*cos(v);z=4*u.*u;mesh(x,y,z);程序输出:严重觉得对细节方面很重要,,差一个点就能导致整个程序的不能运行。

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

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

主题:投资组合问题指导教师: 阮小娥老师制作时间:—学院:机械学院小组成员:机自07 赵磊 80机自07 周策 81机自07 邹业兵 82目录一、引言: (3)二、实验问题: (3)三、问题分析 (4)(1)、已知和股票有关的一些概念(实验所涉及的理论知识):4(2)、数学建模: (5)数学模型: (6)(3)、求解方法: (6)四、程序设计: (7)第一步: (7)第二、三、四步: (7)第五步: (8)五、程序运行结果(实验结果)为: (9)第一步: (9)A股49个周末的收盘价的变化情况 (9)B股49个周末的收盘价的变化情况 (9)C股49个周末的收盘价的变化情况 (10)第二、三、四步: (10)第五步: (11)六、问题的进一步拓展与实验 (12)实验过程 (12)1:条件假设 (12)2:建立模型 (12)3:模型求解 (13)程序设计 (14)程序运行结果 (14)七、实验的总结与体会: (19)赵磊: (19)周策: (19)邹业兵: (19)一、引言:现在社会,随着社会的发展和生产力的提升,人们的生活水平日益提高。

人们不仅仅满足于吃饱穿暖,人们对财富的追求也愈来愈强烈,此时股票作为社会化大生产的产物,股票至今已有将近似400年的历史,它的发展与人类经济的发展可以说是和谐统一的,而它集惊险刺激和可能存在的巨额经济效益的特点更是牢牢的牵住了现代人的心,毕竟,在已经不愁衣食的前提下,谁不想像股神巴菲特一样,动动脑筋便收拢全世界的财富呢所以,研究股票自然而然就成了现代人生活中极为重要的一部分。

二、实验问题:企业(或政府)或个人进行投资的目的是为了取得利润,在现代市场经济中,由于投资环境瞬息万变,任何一项投资的收益总是不能确定的,也就是说具有一定的风险,如何度量收益和风险呢下面给出一个实际问题进行分析:表9-1给出3只股票(A、B、C股)49个周末的收盘价,表9-1 股票49个周末的收盘价问题:(1) 分别计算这三只股票的周收益率的时间序列,平均收益率和他们收益率分布的方差;(2)允许卖空的条件下给出这3只股票风险最小的投资策略。

三、问题分析(1)、已知和股票有关的一些概念(实验所涉及的理论知识):记AtP为证券A在第t周末的价格,定义11---=At AtAt P PPrAt为证券A当周的证券收益率,由于投资初期不可能知道将来的收益率,因此收益率是一个随机变量,At A A A r r r r ........3,2,1为证券A 在某一时间段内收益率分布,且定义该收益率分布的均值T r E A ∑==T 1t At r )(为证券A 的期望收益率,并用该收益率分布的方差T r E r T t At At A ∑=-=122))((σ度量该证券A 期望收益的偏差称为风险,同样可以计算证券B 的期望收益率)(B r E 及方差2B σ两证券收益率分布间的协方差为∑=---==T t B Bt A At B A AB r E r r E r T r r 1))())(((11),cov(σ 协方差给出了证券A 和证券B 收益率分布相互影响的程度,协方差的大小依赖于收益所的单位,相关系数B A AB B A B A AB r r σσσσσρ==),cov(反映了证券A 和证券B 投资比率分为多少时风险比率最小,受益最大,这就是证券A 和证券B 的投资组合问题。

(2)、数学建模:用决策变量X1,X2,X3分别表示投资股票A ,B ,C 的投资比率,记股票A ,B ,C 的投资比率,记股票A ,B ,C 的收益率分别为Ea 、Eb 、Ec,根据题意, Ea、Eb、Ec是随机变量,投资的总收益率为S=X1*Ea+X2*Eb+X3*Ec也是随机变量,用E和D分别表示随机变量的数学期望和方差,则有(以下结果是经过第一、二、三、四步操作所得)Ea = , Eb= , Ec=Da = , Db= , Dc=Dab=、 Dac= 、 Dbc= ;由概率论知识可知covAC=Dac*Da^*Dc^covAB=Dab*Da^*Db^covBC=Dbc*Db^*Dc^投资的总期望收益率为:y=E=x1*Ea+x2*Eb+x3*Ec用总收益的方差衡量投资风险是,投资总收益的方差为:Z=D(x1*Ea+x2*Eb+x3*Ec)=Da*x1^2+Db*x2^2+Dc*x3^2+2covAB*x1*x2+2covAC*x1*x3+2covBC*x2*x3由于x1、x2、x3分别表示投资股票A、B、C的投资比例,所以x1+x2+x3=1数学模型:Minz(x1,x2,x3)=*x1^2+*x2^2+*x3^2+*x1*x2++*x2*x3x1+x2+x3=1(3)、求解方法:第一步:画出A、B、C三只股票49个周末收盘价的变化情况的图像(便于分析问题);第二步:求出A、B、C三只股票49个周末收盘价的期望收益率Ea、Eb、Ec ;第三步:求出A、B、C三只股票49个周末收盘价的方差Da、Db、Dc ;第四步:求出A、B、C三只股票收益率分布直间的协方差:Dab、Dac、Dbc;第五步:求出投资风险最小和此时的收益率。

四、程序设计:第一步:1、A股:x = 1:1:49;y = [,,,,,,,,11,,,,,,,,12,,,,,,,12,,,,,,,,,,,,,,,,,12,,12,12,12 ,,12,12,];plot(x,y)2、B股:x = 1:1:49;y = [,,,,,,,,1,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,]plot(x,y)3、C股:x = 1:1:49;y = [,,,,,11,,,,,,,,,,,,,15,,,14,,,,,,,,,,,,,,,14,,,,14,,,,,,,,]plot(x,y)第二、三、四步:PA=[ 11 12 12 12 12 1212 12 12 ];PB=[ .9 .93 .961 ];PC=[ 11 15 14 14 14 ];for i=2:1:49ra(i-1)=(PA(i)-PA(i-1))/(PA(i-1));rb(i-1)=(PB(i)-PB(i-1))/(PB(i-1));rc(i-1)=(PC(i)-PC(i-1))/(PC(i-1));endrA=[ra];rB=[rb];rC=[rc];T=48;Ea=sum(rA(1:T))/T;Eb=sum(rB(1:T))/T;Ec=sum(rC(1:T))/T;Dab=(1/(T-1))*sum((rA(1:T)-Ea).*(rB(1:T)-Eb)); Dac=(1/(T-1))*sum((rA(1:T)-Ea).*(rC(1:T)-Ec)); Dbc=(1/(T-1))*sum((rC(1:T)-Ec).*(rB(1:T)-Eb)); Da=sum((rA(1:T)-Ea).^2)/T;Db=sum((rB(1:T)-Eb).^2)/T;Dc=sum((rC(1:T)-Ec).^2)/T;covAB=Dab*((Da)^*((Db)^;covAC=Dab*((Da)^*((Dc)^;covBC=Dab*((Db)^*((Dc)^;第五步:h=[2*Da^2 2*covAB 2*covAC;2*covAB 2*Db^2 2*covBC;2*covAC 2*covBC 2*Dc^2];c=[0,0,0];a1=-[Ea,Eb,Ec];b1=0;A2=[1,1,1];b2=1;[x,fv,ef,out,lag]=quadprog(h,c,a1,b1,A2,b2)F=sqrt(fv)S=-a1*x五、程序运行结果(实验结果)为:第一步:A股49个周末的收盘价的变化情况.B股49个周末的收盘价的变化情况C股49个周末的收盘价的变化情况第二、三、四步:Ea= Eb = Ec =Dab =Dac =Dbc =Da =Db =Dc =covAB =covAC =covBC =第五步:x =fv =ef =1out =iterations: 1 constrviolation:algorithm: 'medium-scale: active-set' firstorderopt:cgiterations: []message: 'Optimization terminated.' lag =lower: [3x1 double]upper: [3x1 double]eqlin:ineqlin: 0F =S =由此可知(1)A、B、C的平均收益率分别为Ea= , Eb= , Ec= 收益率分布的方差分别为 Da= , Db= , Dc=(2)、投资A、B、C股票的投资比例分别为:%、% 、%,此时风险最小为%,收益率为%六、问题的进一步拓展与实验类似地,还可以引入四种以上数量的股票及股票不同时间的投资问题。

一般来说,投资人希望投资风险小而收益大,是一个多目标的优化问题。

我们可以将风险和收益的变化关系图像画出来。

给投资者最感官的认识。

最佳投资组合示例5 如表8-7给出4只股票在同一时期内的平均收益率r%,购买股票是交易率为p%,风险损失率q%,投资越分散,总的风险越小。

假定总风险用投资中最大一种股票的风险来度量,且同期银行存款利率是r%=5%,既无交易费有无风险,由于投资者承担风险的程度不一样,若给定风险一个界限a,季最大风险不超过a的情况下,为投资者建议一种投资策略,使其尽可能获得最大收益。

表8-7 股票信息实验过程为了建立最佳投资组合模型。

我们分以下三个步骤来完成次实验。

1:条件假设假设投资四种股票的资金分别为x,总投资金额为M.并设四种购票之间是相互独立的,且在投资的同一时间内都为定值。

不受意外因素影响。

2:建立模型投资四种股票的风险度为,i=1,2,3,4;购买四种股票时所付交易费分别为,i=1,2,3,4,则购买四种股票的收益分别为(),i=1,2,3,4,为使投资者获的更大利益,在总风险度不超过a的情况下,可建立如下模型:max∑=-4) (iiiixpr;.∑=+4) (iiiiixxpx= M iqix/M≤a, i=1,2,3,4ix≥0, i=0,1,2,3 3:模型求解模型简化为max∑=-4) (iiiixpr,.∑=+4) 1(iiixp= 1i q i x ≤a ,i=0,1,2,3,4 i x ≥0, i=0,1,2,3,4其中 i x =i X /M , i=0,1,2,3,4 将表8-7给定的数据带入模型的 minF=0x 1x 2x 3x 4x . 0x +1x +2x +3x +4x =1 1x ≤a 2x ≤a 3x ≤a 4x ≤ai x ≥0, i=0,1,2,3,4如何给定风险度a 没有一定的准则,不同的投资者承受风险度的能力不同,本次试验从a=0开始,以步长△a=编写下面的程序进行循环搜索。

相关文档
最新文档