我的程序如下:
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为什么结果为什么是复数啊



雷达卡




京公网安备 11010802022788号







