- 阅读权限
- 255
- 威望
- 0 级
- 论坛币
- 1329 个
- 通用积分
- 0
- 学术水平
- 0 点
- 热心指数
- 0 点
- 信用等级
- 0 点
- 经验
- 442 点
- 帖子
- 11
- 精华
- 0
- 在线时间
- 53 小时
- 注册时间
- 2012-4-16
- 最后登录
- 2019-8-19
高中生
还不是VIP/贵宾
- 威望
- 0 级
- 论坛币
- 1329 个
- 通用积分
- 0
- 学术水平
- 0 点
- 热心指数
- 0 点
- 信用等级
- 0 点
- 经验
- 442 点
- 帖子
- 11
- 精华
- 0
- 在线时间
- 53 小时
- 注册时间
- 2012-4-16
- 最后登录
- 2019-8-19
| 开心 2016-12-9 01:14:48 |
---|
签到天数: 2 天 连续签到: 1 天 [LV.1]初来乍到
|
5论坛币
代码:如何改动可以算出C,delta,vega 的值,用自己输入的数值
- clear all;
- syms S0 k r T sigma
- d1=(log(S0/k)+(r+0.5*sigma^2)*T)/(sigma*sqrt(T));
- d2=(log(S0/k)+(r-0.5*sigma^2)*T)/(sigma*sqrt(T));
- C=S0*normcdf(d1)-k*exp(-r*T)*normcdf(d2);
- dCdS0=diff(C,S0);
- dCdsigma=diff(C,sigma);
- S0=input('请输入S0=');
- k=input('请输入k=');
- r=input('请输入r=');
- T=input('请输入T=');
- sigma=input('请输入sigma=');
- d1=subs(d1);
- d2=subs(d2);
- C=subs(C)
- delta=subs(dCdS0)
- vega=subs(dCdsigma)
复制代码 这段代码运行出错结果:
- 错误使用 symfun>validateArgNames (line 211)
- Second input must be a scalar or vector of unique symbolic variables.
- 出错 symfun (line 45)
- y.vars = validateArgNames(inputs);
- 出错 sym/subsasgn (line 762)
- C = symfun(B,[inds{:}]);
- 出错 normcdf>localnormcdf (line 100)
- p(sigma==0 & x<mu) = 0;
- 出错 normcdf (line 46)
- [varargout{1:max(1,nargout)}] = localnormcdf(uflag,x,varargin{:});
- 出错 Untitled6 (line 5)
- C=S0*normcdf(d1)-k*exp(-r*T)*normcdf(d2);
复制代码
|
|