全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 MATLAB等数学软件专版
16821 5
2012-02-26
我的程序如下:


alpha=0.0164;
beta=0.1433;
a=0.5271;a0=0.9978;a1=0.05002;a2=0.9567;
b=0.0222;
c=0.01;%std
d=0.5005;rzero=0.015;
e=-0.0676;
k=0.2008;
year=1;
%year=1;
ll=52*year;
Time=10000;
rem=zeros(ll,Time);
%et=randn(1,N);
%GARCH%%%%%%%

%%%%%%%%%%%%%%%
et=random('Normal',0,1,ll,Time);
%'c'defined,c must <=0.1
jt=random('Normal',0,0.05,ll,Time);
%jt=exp(jt0)-1;

for i=1:Time;
   T=ll;N=ll;dt=1/12;
   dw=sqrt(dt)*et;
   
    rtemp=rzero;
  for j=1:N
    pt(j,i)=poissrnd(k);   
    if(pt(j,i)~=1& pt(j,i)~=0);
        pt(j,i)=0;
    end;
  rtemp=rtemp+dt*(alpha-beta*rtemp)+c*(rtemp^d)*dw(j,i)+jt(j,i)*pt(j,i);
rem(j,i)=rtemp;  
    end;
end;
remback=rem;
rem=rem*(7/365);
integrat=sum(rem);
for i=1:Time;
   price(1,i)=exp(-integrat(1,i));
end;
realprice=single(sum(price)/Time)

realprice为什么结果为什么是复数啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2012-2-26 21:28:39
有时间帮你看看再说,这会忙。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-2-26 21:32:04
aibieli731001 发表于 2012-2-26 21:28
有时间帮你看看再说,这会忙。
朋友你好可以加个qq吗 我的:372298044,我在线
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-3-2 13:00:02
这个问题难吗?怎么没人帮我
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-3-3 16:54:22
rtemp^d
就这儿错了 自己查原理
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2012-3-3 17:01:54
1、对于 判断语句

if(pt(j,i)~=1& pt(j,i)~=0)
此地的 & 是否改为 || 更合适? 好像楼主的本意是判断 pt矩阵的元素是 0 1 还是其他值,如果是其他值则置为0.
修改后的计算结果为


realprice =

   0.959991684636214
不知道符合楼主的预期否?

2、 此程序运算有较大的改进余地
3、楼主能否告知 计算的目的,以便能够更好的优化程序的速度。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群