收藏 分销(赏)

金融衍生工具试验参考指导书.doc

上传人:a199****6536 文档编号:2713217 上传时间:2024-06-04 格式:DOC 页数:26 大小:365.04KB 下载积分:10 金币
下载 相关 举报
金融衍生工具试验参考指导书.doc_第1页
第1页 / 共26页
金融衍生工具试验参考指导书.doc_第2页
第2页 / 共26页


点击查看更多>>
资源描述
《金融衍生工具 》实验指引书 电子科技大学经济与管理学院 教师姓名 夏晖 12月 第一某些 实验教学概述 本课程实验总体简介 1、实验教学规定: 本实验是《金融衍生工具》课程实验课程,其目是规定学生通过完毕本实验,达到熟悉金融市场、理解和纯熟掌握《金融衍生工具》中期权定价原理和各种数值定价办法,培养学生编程独立解决问题能力,为此后从事金融数量分析工作奠定基本。 2、实验内容简介: 本实验课程由3个实验项目构成: (1) 期权定价蒙特卡罗模仿和有限差分办法为设计性实验 (2) 风险价值VaR计算为设计性实验 (3) 资产组合保险方略模仿及分析为综合性实验 3、本课程合用专业: 本课程合用于金融学、金融工程专业。 4、考核方式: 编写程序和实验成果以作业方式提交给任课教师,实验完毕状况计入《金融衍生工具》课程习题作业考核。 5、总学时: 本实验共计8学时。 6、教材名称及教材性质(统编): 本实验以“John C. Hull. Options,Futures and Other Derivatives. 4th Edition,Prentice-Hall,;清华大学出版社,影印版,.”为辅导教材。 7、参照资料: 1. Keith Cuthbertson,Dirk Nitzsche. Financial Engineering – Derivatives and Risk Management. John Wiley & Sons,Ltd,. 中译本:张陶伟,彭永江译. 金融衍生工具——衍生品与风险管理. 中华人民共和国人民大学出版社,. 第二某些 实验项目指引 实验项目1 一、基本状况 1、 实验项目名称:期权定价蒙特卡罗和有限差分办法 2、 实验项目目和规定: 目:使学生熟悉蒙特卡罗和有限差分办法应用。 规定: (1)运用Matlab软件编写蒙特卡罗仿真程序求解期权价格; (2)运用Matlab软件编写有限差分程序求解期权价格。 3、实验内容: 依照实验作业规定,完毕下面实验内容: (1)采用蒙特卡罗模仿办法编程计算欧式回望期权价格; (2)采用有限差分办法编程计算欧式奇异期权价格; (3)采用对偶变量技术和控制变量技术提高蒙特卡罗计算精度,分析有限差分定价成果也许不收敛因素,并尝试画出初始时刻(t = 0)Delta随股票价格变动图形。 4、项目需用仪器设备名称:计算机和Matlab或Excel。 5、所需重要元器件及耗材:无。 6、学时数:3 二、本实验项目知识点 蒙特卡罗模仿办法: 依照几何布朗运动公式: 或 对无股息股票,可令,r为无风险利率,,依照如下环节进行模仿计算。 1. Simulate 1 path for the stock price in a risk neutral world 2. Calculate the payoff from the stock option 3. Repeat steps 1 and 2 many times to get many sample payoff 4. Calculate mean payoff 5. Discount mean payoff at risk free rate to get an estimate of the value of the option 有限差分办法: 依照B—S偏微分方程: 内具有限差分法 令,上式为: ƒi +1,j ƒi ,j ƒi ,j –1 ƒi ,j +1 外推有限差分办法: 令,有 ƒi ,j ƒi +1,j ƒi +1,j –1 ƒi +1,j +1 三、实验操作环节 (1)蒙特卡罗模仿:考虑标物资产为某股票欧式亚式期权,股票当前价格为50,波动率为40%,无风险利率为5%,期权到期期限为1年,期权发行到当前已经3个月了,剩余期限尚有9个月,且期权发行到当前为止股票平均价格为55。求该期权价格。股票平均价格由每天收盘价平均值来计算。 用蒙特卡罗办法生成股价样本途径。程序如下: function s=my_monto_carlo_path(s0,sigma,T,r,N_T,N_path) deltaT=T/N_T; s=zeros(N_path,N_T+1); s(:,1)=s0; eta=randn(N_path,N_T); for i=2:N_T+1 s(:,i)=s(:,i-1).*exp((r-0.5*sigma^2)*deltaT+sigma*sqrt(deltaT)*eta(:,i-1)); end :主程序如下 s=my_monto_carlo_path(50,0.4,3/4,0.05,round(250*3/4),200); h=figure; set(h,'color','w') plot(s') 计算成果如下: 求解以上亚式期权价格: function price=my_asian_option_mc(ASt,r,sigma,t,T,K,St,N_T,N_path) s=my_monto_carlo_path(St,sigma,T-t,r,N_T,N_path); AST=t/T*ASt+(T-t)/T*mean(s,2); f_T=max(AST-K,0); price=mean(f_T)*exp(-r*(T-t)); end 在MATLAB命令窗口输入: price=my_asian_option_mc(55,0.05,0.4,0.25,1,50,50,round(250*3/4),1e5) 得到期权价格为: price = 3.8897 欧式回望看涨期权在到期日钞票流为max(ST-Smin,0),而欧式回望看跌期权在到期日钞票流为max(Smax-ST,0)。 实验作业:考虑标物资产为某股票欧式回望期权,股票当前价格为50,波动率为40%,无风险利率为5%,期权到期期限为1年,期权发行到当前已经3个月了,剩余期限尚有9个月,且期权发行到当前为止股票最低价格为45,最高价格为55。分别求欧式回望看涨和看跌期权价格。尝试使用对偶变量技术和控制变量技术来减小期权价格原则误差。 (2)采用显式(外推)有限差分办法求美式看跌期权价值,有关参数如下:股票现价为50,执行价格为50,无风险利率为10%,期限为5个月,股票收益波动率为40%。Matlab程序如下: clear all ds=5; dt=1/24; sigma=0.4; r=0.1; x=50; for j=1:21 f(11,j)=max(x-ds*(j-1),0); end for i=1:11 f(i,21)=0; end for i=1:11 f(i,1)=x; end for i=10:-1:1 for j=20:-1:2 a=[1/(1+dt*r)]*(0.5*sigma^2*dt*(j-1)^2-0.5*r*(j-1)*dt); b=[1/(1+dt*r)]*(1-sigma^2*dt*(j-1)^2); c=[1/(1+dt*r)]*(0.5*r*(j-1)*dt+0.5*sigma^2*dt*(j-1)^2); f(i,j)=a*f(i+1,j-1)+b*f(i+1,j)+c*f(i+1,j+1); f(i,j)=max(f(i,j),x-(j-1)*ds); end end rotf=f' s=(0:ds:100)'; value=interp1(s,rotf(:,1),50) delta=diff(rotf(:,1))/ds; h=figure; set(h,'color','w') plot(s(2:end),delta) 计算成果如下: 实验作业:考虑标物资产为某购票欧式期权,股票当前价格为50,波动率为40%,无风险利率为5%,期权到期期限为1年,到期日期权钞票流入下: 求该欧式期权理论价格。通过增长时间阶段数N和股价阶段数M来提高计算精度,并分析计算成果也许不收敛因素。尝试画出初始时刻(t = 0)该期权价格Delta随股票价格变动图形。 四、对实验所需软件熟悉和理解 重点:蒙特卡罗仿真和有限差分办法 难点:Mablab编程 教学办法:教师先对实验所需基本知识(编程技术、随机数产生)进行解说和演示,由学生完毕实验。 五、实验报告填写规定 掌握蒙特卡罗模仿办法和环节,以及有限差分办法基本原理,明的确验目,掌握实验内容和详细实验环节,用Mablab编程实现期权定价,并依照实验大纲规定和原则实验报告书内容及格式,按期提交实验报告。 实验项目2 一、 基本状况 1、 实验项目名称:风险价值VaR计算 2、 实验项目目和规定: 目:使学生掌握VaR计算办法 规定: (1)理解VaR基本概念 (2)掌握历史模仿法 (3)掌握模型构建法 3、实验内容: 依照教师提供资产组合VaR计算过程,计算资产组合10天展望期置信水平99%VaR,规定: (1)通过历史模仿法计算组合VaR; (2)通过模型构建法计算组合VaR; (3)分析两种办法计算成果差别因素。 4、项目需用仪器设备名称:计算机、Matlab和Excel。 5、所需重要元器件及耗材:无。 6、学时数:3 二、本实验项目知识点 VaR指在正常市场条件下和一定置信水平上,测算出给定期间内资产组合价值预期发生最坏状况损失。 假设W0为初始投资组合价值,10天后投资组合价值为:,,并且;Ŵ为10天后投资组合在为置信水平为c状况下最小价值。为在置信水平上最小回报率,有。 VaR可表达为:。 其中,置信水平,为资产组合价值分布密度函数。 由于将来数据尚未发生,历史模仿办法计算VaR核心思想是历史将会重演,即运用过去数据模仿市场变量将来变化。然后依照市场变量将来价格水平对头寸进行重新预计,计算出头寸价值变化(损益)。最后,将组合损益从最小到最大排序,得到资产组合将来价值损益分布,通过给定置信度下分位数求出VaR。 采用模型构建办法计算VaR基本思想是运用证券组合价值函数与市场变量间近似关系,推断市场变量记录分布(方差-协方差矩阵),进而简化VaR计算。该办法数据易于收集,计算办法简朴,计算速度快,也比较容易为监管机构接受。模型构建办法缺陷是对将来资产组合价值分布假设过强。 三、实验操作环节 资产组合是总价值1000万三只基金,涉及400万博时主题行业(160505)、300万嘉实沪深300(160706)以及300万南方绩优成长(20)。历史数据是-基金日收盘价,数据文献名为funddata.xls。计算该资产组合在10天展望期,置信水平99%条件下VaR。 (1) 数据准备 %读取数据 [data,textdata,raw]=xlsread('funddata.xls'); funddata=data; %将数据保存在funddata.mat文献中 save funddata funddata %载入数据 load funddata %funddata数据序列 %'Hs300','博时主题','嘉实300','南方绩优' (2) 历史模仿法 bszt=funddata (:,2); js300=funddata (:,3); nfjy=funddata (:,4); daynum=length(funddata); %计算模仿情境下资产组合明天也许损失 for i=1:daynum-1 num(i)=i; loss(i)=400.*bszt(i+1)./bszt(i)+300.*js300(i+1)./js300(i)+ 300.*nfjy(i+1)./nfjy(i)-1000; end ascend=sort(loss); onevar=-interp1(num,ascend,(daynum-1).*0.01) tenvar=sqrt(10).*onevar 计算成果如下: onevar = 56.2933 tenvar = 178.0151 (3) 模型构建法 %将资产价格转换为资产收益率 Rate=price2ret(funddata); bszt=Rate(:,2); js300=Rate(:,3); nfjy=Rate(:,4); %每年交易日数量, %若一共488个数据,假设前244个为数据,后244为数据 daynum=fix(length(Rate)/2); %计算Var值 funddata=[bszt(daynum+1:2*daynum) js300(daynum+1:2*daynum) nfjy(daynum+1:2*daynum)]; %计算日均收益盼望、日收益率原则差 BsPortReturn=mean(funddata(:,1)); BsPortRisk=std(funddata(:,1)); JsPortReturn=mean(funddata(:,2)); JsPortRisk=std(funddata(:,2)); NfPortReturn=mean(funddata(:,3)); NfPortRisk=std(funddata(:,3)); %计算资产组合日均收益盼望、日收益率原则差 ExpReturn=[BsPortReturn JsPortReturn NfPortReturn]; ExpCovariance=cov(funddata); PortWts=[0.4 0.3 0.3]; [PortRisk,PortReturn]=portstats(ExpReturn,ExpCovariance,PortWts); %置信水平99% RiskThreshold=0.01; BsValueAtRisk = portvrisk(BsPortReturn,BsPortRisk,RiskThreshold,400) JsValueAtRisk = portvrisk(JsPortReturn,JsPortRisk,RiskThreshold,300) NfValueAtRisk = portvrisk(NfPortReturn,NfPortRisk,RiskThreshold,300) PortVar= portvrisk(PortReturn,PortRisk,RiskThreshold,1000) Tenvar=sqrt(10).*PortVar 计算成果如下: BsValueAtRisk = 21.6607 JsValueAtRisk = 21.8380 NfValueAtRisk = 15.5779 PortVar = 58.2315 Tenvar = 184.1441 成果阐明:“BsValueAtRisk=21.6607”表达博时主题在置信度阈值为1%VaR值,即每个交易日在99%置信水平下单日最大损失为21.6607。此外,单独计算三只基金1天展望期置信水平99%VaR加总为59.0766,不不大于三只基金构成资产组合1天置信水平99%VaR(58.2315),阐明资产组合会导致某些风险被分散化解。最后,用模型构建法计算VaR比历史模仿法计算VaR偏大,是由于模型构建法只用了数据,而各只基金比体现明显差,因而,计算VaR较大。 实验作业:自行构造涉及至少三种资产投资组合,并收集近来2年有关历史数据,采用历史模仿法和模型构建法分别计算资产组合10天展望期置信水平99%VaR,要体现通过资产组合投资可以分散化解某些风险,并分析两种办法计算成果差别因素。 四、对实验所需软件熟悉和理解 重点:理解VaR基本原理、计算办法; 难点:Matlab编程; 教学办法:在基于课堂教学基本上,教师演示。 五、实验报告填写规定 掌握VaR概念和历史模仿办法和模型构建办法计算VaR,明的确验目,掌握实验内容和详细实验环节,用Matlab编程完毕本实验详细内容,依照实验大纲规定和原则实验报告书内容及格式,准时提交实验报告。 实验项目3 一、基本状况 1、 实验项目名称:资产组合保险方略模仿及分析 2、 实验项目目和规定: 目:使学生掌握固定比例投资组合保险方略CPPI设计办法及分析过程 规定: (1)使学生熟悉资产组合保险方略基本原理; (2)纯熟掌握资产组合保险方略设计及分析过程。 3、实验内容: (1)编写正态分布随机数发生程序; (2)预计波动率; (3)资产组合价值动态模仿。 4、项目需用仪器设备名称:计算机和Matlab和Excel。 5、所需重要元器件及耗材:无。 6、学时数:2学时 二、 本实验项目知识点 组合保险方略按构成重要分为基于期权投资组合保险方略(Option-Based Portfolio Insurance,OBPI)和固定比例投资组合保险方略(Constant Proportion Portfolio Insurance,CPPI),这是两种广泛应用投资组合保险方略。 基于期权投资组合保险产品使用债券和期权组合构建产品,这样构建办法与股票挂钩产品中保本票据构建办法一致。在利率较低或者期权价格较高状况下,基于期权投资组合保险方略较难实现。 OBPI方略原理:假定市场无磨擦(即无交易成本和税收)、资产无限可分、无卖空限制、可以相似无风险持续复利rf借贷。在一种无套利分析框架,欧式看跌期权(Put Option)Black-Scholes定价模型为: (1) 其中, 式中,St是当前t时刻股票价格,X是期权执行价格;rf是持续复利下无风险利率,T期权到期时间,σ是股票价格波动率。N (·)是累积正态分布函数。 式(1)等式两边同步加St可得: (2) 式(2)意义是,期初拥有数量为资金投资者,把资金投入风险资产(股票或指数基金),把投入无风险资产(国债),等价于把所有资金投入风险资产St和购买了一种以St为标资产卖权,卖权具备对风险资产保险作用,其中风险资产比例为: (3) 无风险资产比例为: 随着时间t和St变化,投资者可依照式(3)动态调节风险资产比例wt,即,当风险资产价格上涨时,增大投资于风险资产比例wt;当风险资产价格下跌时,减少投资于风险资产比例wt。 另一种通用保本方略是固定比例投资组合保险方略CPPI,它也是通过动态调节投资组合无风险品种与风险品种投资比例,达到既规避高收益投资品种价格下跌风险,又享有到其价格上涨收益。 CPPI方略基本公式如下: (4) (5) (6) 式中,At表达t时刻投资组合资产价值;Et表达t时刻可投资于风险资产上限;Gt表达t时刻可投资于无风险资产下限;Mt表达t时刻风险乘数;Ft表达t时刻组合安全底线;λ为初始风险控制水平(保本线);(T-t)为产品剩余期限;r为无风险收益率。 CPPI方略模型涉及风险控制水平(保本线)、风险乘数、资产配备调节周期等各种核心参数。 波动率预计:普通使用股价历史资料求得收益率原则差(历史波动率)作为风险资产波动率。历史波动率基本假设是相信过去波动性会延续到将来,且不会产生大幅变动,因而用过去资料算出波动率可视为将来股价波动率。惯用估算历史波动率办法有GARCH类模型、移动平均法、指数平滑法等。本实验采用历史数据样本原则差来预计波动率,参见B_S公式关于波动率小节。 三、实验操作环节 假设某金融产品采用组合保险方略CPPI进行资产投资: (1)风险资产为沪深300指数组合; (2)无风险资产为国债,国债利率为3%; (3)产品保本率为100%; (4)调节周期为10天; (5)调节组合单位交易成本为c = 0.0002; (6)初始资金W = 1,000百万元; (7)产品期限为1年(250个交易日)。 固定比例组合保险方略CPPIMatlab函数CPPIStr.m: function [F,E,A,G,SumTradeFee,portFreez]=CPPIStr(PortValue,Riskmulti,GuarantRatio,TradeDayTimeLong,TradeDayOfYear,adjustCycle,RisklessReturn,TradeFee,SData) %-12-24 %intput: %PortValue:产品组合初始价值; %Riskmulti:CPPI方略风险乘数; %GuarantRatio:产品保本率; %TradeDayTimeLong:产品期限,以交易日计算; %TradeDayOfYear:模仿每年交易日,大体为250天; %adjustCycle:调节周期; %RisklessReturn:无风险利率; %TradeFee:风险资产交易费用; %SData is simulation index data %output %F:t时刻安全底线;E:t时刻可投资于风险资产上限; %A:t时刻组合价值;G:t时刻可投资于无风险资产上限。 %SumTradeFee:总交易费用 %portFreez default is 0, if portFreez=1,portfolio freez there would have no risk--investment %% SumTradeFee=0; F=zeros(1,TradeDayTimeLong+1); E=zeros(1,TradeDayTimeLong+1); A=zeros(1,TradeDayTimeLong+1); G=zeros(1,TradeDayTimeLong+1); A(1)=PortValue; F(1)=GuarantRatio*PortValue*exp(-RisklessReturn*TradeDayTimeLong/TradeDayOfYear); E(1)=max(0,Riskmulti*(A(1)-F(1))); G(1)=A(1)-E(1); %% portFreez=0;%if portFreez=1,portfolio freez there would have no risk--investment %% for i=2:TradeDayTimeLong+1 E(i)=E(i-1)*(1+(SData(i)-SData(i-1))/(SData(i-1))); G(i)=G(i-1)*(1+RisklessReturn/TradeDayOfYear); A(i)=E(i)+G(i); F(i)=GuarantRatio*PortValue*exp(-RisklessReturn*(TradeDayTimeLong-i+1)/TradeDayOfYear); if mod(i-1,adjustCycle)==0 temp=E(i); E(i)=max(0,Riskmulti*(A(i)-F(i)) ); SumTradeFee=SumTradeFee + TradeFee*abs(E(i)-temp); G(i)=A(i)-E(i)-TradeFee*abs(E(i)-temp); end if E(i)==0 A(i)=G(i); portFreez=1; end end 函数RandnPrice.m:生成均值方差为mu,sigma正态分布随机收益率。 function Price=RandnPrice(Price0,mu,sigma,N) Rate=normrnd(mu,sigma,N,1); %使用cumprod函数进行累乘 Price=Price0*cumprod(Rate+1); CPPI方略模仿: %%初始参数设立 %set value PortValue=100;%Portfoilo Value Riskmulti=2; GuarantRatio=1.00; TradeDayTimeLong=250; TradeDayOfYear=250; adjustCycle=10; RisklessReturn=0.03; TradeFee=0.0002; %%依照参数生成符合布朗运动收益率序列 %to generate random number Mean=1.2^(1/TradeDayOfYear)-1; Std=0.4/sqrt(TradeDayOfYear); Price0=100; SData=RandnPrice(Price0,Mean,Std,TradeDayOfYear); SData=[Price0;SData]; %%调用CPPIStr函数 %to computer [F,E,A,G,SumTradeFee,portFreez]=CPPIStr(PortValue,Riskmulti,GuarantRatio,... TradeDayTimeLong,TradeDayOfYear,adjustCycle,RisklessReturn,TradeFee,SData); %%成果以及画图显示 %to plot figure; subplot(2,1,1) plot(SData) xlabel('t'); ylabel('price') legend('Hs300-Simulation') subplot(2,1,2) plot(A,'-.') hold on %plot(E,'-x') plot(F,'-k') plot(G,'--') legend('PortValue','RiskAssect','GuarantLine','RisklessAssect') xlabel('t'); ylabel('price') SumTradeFee SumTradeFee = 0.0013 A(251) = 100.9913 实验作业:某金融产品采用组合保险方略CPPI进行资产投资,产品组合初始价值为1亿,期限为1年,无风险资产收益率为3%,投资标是沪深300指数组合,风险资产交易费用为0.02%,其她参数如下:风险乘数可选:2,2.5,3,3.5,4五种;保本率可选:95%,100%两种;调节周期可选1,5,10,20四种,参数如何设立使得产品盼望收益最大?(模仿1000次,取平均值) 四、对实验所需软件熟悉和理解 重点:掌握固定比例投资组合保险方略CPPI; 难点:Matlab编程; 教学办法:在基于课堂教学基本上,教师先演示,然后学生编程,让学生在分析过程中不断改进。 五、实验报告填写规定 熟悉资产组合保险方略基本原理,掌握资产组合保险方略设计及分析过程,明的确验目,掌握实验内容和详细实验环节,用Matlab分析资产组合保险方略模仿设计过程,并报告成果。依照实验大纲规定和原则实验报告书内容及格式,准时提交实验报告。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 管理财经 > 金融保险

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服