matlab编程

[复制链接]
查看11 | 回复2 | 2009-4-15 11:04:35 | 显示全部楼层 |阅读模式
联立四个方程用matlab求解
E=A*N(d1)-X*e^(-rt)*N(d2)
d1=(ln(A/X)+(r+0.5*B^2)*t)/(B*sqrt(t))(sqrt为根号)
d2=d1-(B*sqrt(t))(sqrt为根号)
C=N(d1)*A*B/E
其中A,B,d1,d2为未知数,其它均为已知数,N()为标准正态分布函数。求A,B。
要是不用matlab用C、C++也可以,谢谢。

回复

使用道具 举报

千问 | 2009-4-15 11:04:35 | 显示全部楼层
首先定义函数fc:(由于E、rt等已知,所以我都给赋值为1)function y=fc(p) E=1;rt=1;X=1;r=1;t=1;C=1;A=p(1);B=p(2);d1=p(3);d2=p(4);y=[E-A*normpdf(d1)-X*exp(-rt)*normpdf(d2);
d1-(log(A/X)+(r+0.5*B^2)*t)/(B*sqrt(t));
d2-d1-(B*sqrt(t));
C-normpdf(d1)*A*B/E;];命令行输入:fsolve('fc',[1 1 1 1])结果:ans = 4...
回复

使用道具 举报

千问 | 2009-4-15 11:04:35 | 显示全部楼层
....不懂~~~...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行