《金融计算》实验报告Word文档格式.docx
- 文档编号:18057038
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:24
- 大小:160.36KB
《金融计算》实验报告Word文档格式.docx
《《金融计算》实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《《金融计算》实验报告Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。
doublep;
doubleb=0;
//收益
p=1+r;
for(t=1;
t<
=10;
t++)
b=(c+b)*p;
System.out.println(b);
}
四、测试结果
教师评价
20160325
固定收益证券定价算法
掌握固定收益证券定价公式,并能够进行实际应用。
假设有一种面值为100,票面利率是10%,当时的市场年利率是9%,期限是3年,每年支付一次利息的债券,试计算该债券的价格。
doublep=0;
//债卷价格
doubler=0.09;
//利率
doubleT=3;
//债卷期限
doubleCt=100*0.1;
//利息
T;
p=p+Ct/(Math.pow(1+r,t));
p=p+(Ct+100)/(Math.pow(1+r,T));
System.out.println(p);
测试结果
20160325
普通股定价算法
掌握普通股票定价公式,并能够进行实际应用。
假设贴现率5%,每期的股息如下图所示,计算该股票的价格?
publicclassjisuan{
doublev=0;
//股票价格
intt;
doubler=0.05;
//贴现率
doubleT=7;
//期限
double[]Ct={0.1,0.2,0.5,0.5,0.8,0.6,0.7};
//股息
=T;
v=v+Ct[t-1]/(Math.pow(1+r,t));
System.out.println(v);
20160401
个人房贷的两种还款算法
掌握等额本金和等额本息两种还款算法,并能够进行实际应用。
韩女士打算在保定源盛嘉禾二期买一套三居室住房,已经看好的户型面积啊131平米,目前单价7300元/平米。
韩女士在某高校工作,个人月收入8000,每年有公积金收入25000,孩子上幼儿园开销15000,家庭开销30000。
首套房首付款比例30%,公积金贷款利率4%,最多贷40万;
商业银行贷款利率5.9%,贷款额度不能超过100万,贷款期限30年。
给出你的购房建议以及还款方式!
等额本息还款:
#include"
stdio.h"
math.h"
voidmain()
{floats,p,V,R1,R2,B,r1,r2,m,m1=0.0,m2=0.0;
intT;
intG;
printf("
住房面积:
"
);
scanf("
%f"
&
s);
单位面积价格:
p);
公积金贷款额:
%d"
G);
商业性贷款年利率:
R1);
公积金贷款年利率:
R2);
贷款时间(月):
T);
V=s*p*0.7;
B=V-G;
贷款总额为%f元\n"
V);
公积金贷款额为%d元\n"
G);
商业性贷款额为%f元\n"
B);
r1=R1/12;
r2=R2/12;
m1=B*r1*(pow((1+r1),T))/(pow((1+r1),T)-1);
m2=G*r2*(pow((1+r2),T))/(pow((1+r2),T)-1);
m=m1+m2;
每月还款额为%f元\n"
m);
等额本金还款:
{floats,p,V,R1,R2,B,r1,r2,m,Gpermoney,Bpermoney,Bperbenjin,Gperbenjin,ALLpermoney,Glefthuankuane,Blefthuankuane;
intT,t,G;
Gperbenjin=G/T;
Bperbenjin=B/T;
Glefthuankuane=G;
Blefthuankuane=B;
t++){
Gpermoney=Gperbenjin+Glefthuankuane*r1;
//Gpermoney公积金每月还款额Gperbenjin公积金每月还款本金额
Bpermoney=Bperbenjin+Blefthuankuane*r2;
//Glefthuankuane公积金剩余还款本金额以B开头的同样的意思
ALLpermoney=Gpermoney+Bpermoney;
每个月还款额为%f元\n"
ALLpermoney);
Glefthuankuane-=Gperbenjin;
Blefthuankuane-=Bperbenjin;
}
20160408
远期定价公式的算法
掌握无收益远期远期定价算法和有收益的远期定价算法,并能够进行实际应用。
案例1:
考虑一个6个月的远期多头情况,标的资产是1年期贴现债券,远期的交割价为950元。
假设6个月的无风险利率为6%,债券的现价为930元。
试求远期的价值及远期合约生效时远期的价格分别是多少?
案例2:
考虑一种5年期债券,价格为900元。
假设这种债券的1年期远期的交割价格为910元。
在6个月后和12个月后,预计都将收到60元的利息。
第二个付息日正好在远期交割日之前。
已知6个月和12个月的无风险利率分别是9%和10%。
试计算这种远期的价值和价格?
案例一:
{
floatf,F,S,K,r,t;
远期的现价:
S);
远期的交割价格:
K);
远期的期限(年):
t);
远期的利率:
r);
f=S-K*exp(-r*t);
远期的价值为%f\n"
f);
F=S*exp(r*t);
远期的价格为%f"
F);
案例二:
floatf,F,S,K,r,r1,r2,t,t1,t2,I,I1,I2;
远期的利息:
I);
远期的期限对应的利率:
远期的第一种付息时间(年):
t1);
远期的第二种付息时间(年):
t2);
远期的第一种付息时间对应的利率:
r1);
远期的第二种付息时间对应的利率:
r2);
I1=I*exp(-r1*t1);
I2=I*exp(-r2*t2);
f=S-I1-I2-K*exp(-r*t);
F=(S-I1-I2)*exp(r*t);
20160408
外汇期货的定价算法
掌握外汇期货的定价算法,并能够进行实际应用。
考虑一外汇期货,其标的资产价格是$100,交割价格是$99,本国无风险年利率是10%,外汇的无风险年利率是0.2%,到期时间是6个月,试计算该外汇期货的价格。
#include"
floatf,F,S,K,t,r1,r2;
外汇期货标的资产的现价:
外汇期货标的资产的交割价格:
外汇期货的到期时间(年):
外汇期货的本国无风险利率:
外汇的无风险年利率:
f=S*exp(-r2*t)-K*exp(-r1*t);
F=S*exp((r1-r2)*t);
20160415
对数正态分布的算法
掌握对数正太分布的算法,并能够进行实际应用。
一只初始价格为40美元的股票,该股票的收益率期望为每年16%,波动率为每年20%,则6个月之后的股票价格的概率分布是什么?
{
doublea,b,r,k,S,qw,fc,T,bzc,min,max;
股票的初始价格:
%lf"
期望收益率:
波动率:
k);
周期:
qw=log(S)+(r-k*k/2)*T;
fc=k*k*T;
股票的期望值为%lf,方差为%lf\n"
qw,fc);
bzc=sqrt(fc);
a=qw-1.96*bzc;
b=qw+1.96*bzc;
min=exp(a);
max=exp(b);
股票价格的概率分布为(%lf,%lf)\n"
min,max);
Black-Scholes期权定价模型的算法
掌握Black-Scholes期权定价的算法,并能够进行实际应用。
通过二分法,确定隐含波动率。
某金融机构卖出100000份无股息股票的欧式看涨期权,收入300000美元,假设股票价格49美元,期权执行价格为50美元,无风险利率5%,股票价格波动率每年20%,期权期限20周,股票的收益率期望为每年13%。
根据期权定价公式,该期权的理论价格应是多少?
某欧式看涨期权价格1.875,标的资产价格21,执行价格20,无风险利率10%,期限3个月,计算隐含波动率?
#include"
#definepi3.14
#defineR0.2316
doublen(doublex){
doublev1;
v1=1.0/sqrt(2*pi)*exp(-x*x/2);
returnv1;
doubleN(doublex){
doublea1=0.3194;
doublea2=-0.3566;
doublea3=1.7815;
doublea4=-1.8213;
doublea5=1.3303;
doublek,v2;
k=1/(1+R*x);
if(x>
=0)
v2=1-n(x)*(a1*k+a2*k*k+a3*k*k*k+a4*pow(k,4)+a5*pow(k,5));
else
v2=1-N(-x);
returnv2;
doubled1,d2,X,S,r,k,T,c;
看涨期权的价格:
行权价格:
X);
无风险利率:
价格波动率:
d1=(log(S/X)+(r+k*k/2)*T)/(k*sqrt(T));
d2=d1-k*sqrt(T);
c=S*N(d1)-X*exp(-r*T)*N(d2);
看涨期权的价格为%lf元"
c);
#include<
stdio.h>
math.h>
iostream>
usingnamespacestd;
//voidoption_price_partials_call_black_scholes(double&
S,double&
X,double&
r,double&
sigma,double&
Delta,double&
Gamma,double&
Theta,double&
Vega,double&
time,double&
Rho)
//{
//doubletime_sqrt=sqrt(time);
//doubled1=(log(S/X)+r*time)/(sigma*time-sqrt)+0.5*sigma*time_sqrt;
//doubled2=d1-(sigma*time_sqrt);
//Delta=N(d1);
//Gamma=N(d1)/(S*sigma*time_sqrt);
//Theta=-(S*sigma*N(d1)/(2*time_sqrt)-r*X*exp(-r*time)*N(d2));
//Vega=S*time_sqrt*N(d1);
//Rho=X*time*exp(-r*time)*N(d2);
//}
doubleN(constdouble&
x)
if(x>
6.0){
return1.0;
};
if(x<
-6.0){
return0.0;
doubleb1=0.31938153;
doubleb2=-0.356563782;
doubleb3=1.781477937;
doubleb4=-1.821255978;
doubleb5=1.330274429;
doublep=0.2316419;
doublec2=0.3989423;
doublea=fabs(x);
doublet=1.0/(1.0+a*p);
doubleb=c2*exp((-x)*(x/2.0));
doublen=((((b5*t+b4)*t+b3)*t+b2)*t+b1)*t;
n=1.0-b*n;
0.0)n=1.0-n;
returnn;
doubleoption_price_call_black_scholes(constdouble&
S,constdouble&
X,constdouble&
r,constdouble&
sigma,constdouble&
time)
doubletime_sqrt=sqrt(time);
doubled1=(log(S/X)+r*time)/(sigma*time_sqrt)+0.5*sigma*time_sqrt;
doubled2=d1-(sigma*time_sqrt);
doublec=S*N(d1)-X*exp(-r*time)*N(d2);
returnc;
}
doubleoption_price_impied_volatility_call_black_scholes_bisections(constdouble&
time,constdouble&
option_price)
constdoubleACCURACY=1.0e-5;
constintMAX_ITERATIONS=100;
constdoubleERROR=-1e40;
doublesigma_low=1e-5;
doublesigma_high=0.3;
for(inti=0;
i<
MAX_ITERATIONS;
i++)
{
doublesigma=(sigma_low+sigma_high)*0.5;
doubleprice=option_price_call_black_scholes(S,X,r,sigma,time);
doubletest=(price-option_price);
//cout<
<
sigma<
endl;
if(fabs(test)<
ACCURACY){
returnsigma;
}
if(test<
0.0){
sigma_low=sigma;
else{
sigma_high=sigma;
returnERROR;
intmain()
{doubleS=21;
doubleX=20;
doubler=0.10;
doubletime=0.25;
doublec=1.875;
cout<
隐含波动率:
;
option_price_impied_volatility_call_black_scholes_bisections(S,X,r,time,c)<
return0;
四、}测试结果
20160429
蒙特卡洛模拟算法的期权定价
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 金融计算 金融 计算 实验 报告