Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
![]() |
#1 |
初级会员
注册日期: 2009-07-08
年龄: 39
帖子: 1
声望力: 0 ![]() |
![]()
现在要解这个非线性方程组,程序好像错了,请各位大虾指点哪里有错误?
两个方程是 V_E= V_A N(d_1 )-De^(-rt) N(d_2 )=f(V,σ_A,r,D,t) σ_E=(N(d_1)V_A σ_A)/V_E =g(V,σ_A,r,D,t) 其中 d_1=[ln(V_A/D)+(r+1/2 (σ_A)^2 )t]/(σ_A √t) d_2=d_1-σ_A √t V_E:公司股权价值 σ_E:公司股权价值波动率 r:无风险利率 t:债务期限,一般是一年 D:违约点 求未知数:V_A,σ_A。 Matlab程序: 第一个文件 a: function f=fun(x) d=118705.48;------d应该是违约点 t=1;----应该债务期限 r=0.02;----应该是无风险利率 e=1568160.00;---应该是公司股权价值 a=0.186;---应该是公司股权价值波动率 d1=(log(x(1)/d)+(x(1)+x(2)/2)^2*t)/x(2)*sqrt(t); d2=d1-x(2)*sqrt(t); f(1)=x(1)*normcdf(d1,0,1)-d*exp(-r*t)*normcdf(d2,0,1)-e; f(2)=(normcdf(d1,0,1)*x(1)*x(2))/e-a; 第二个文件b: [x,f,h]=fsolve(@a,[100000 0.1]) 小女子接触matlab不久,现急用此方程组解决问题,在此求助各位大侠们了~ |
![]() |
![]() |