感謝CIDA跟濟民
我有稍微調整一下
感覺這樣子mean跟std的線才會在最後收斂
但也不一定保證對
要用的話要改一下不要太像
給大家參考囉
randn('state',100)
clf
T=0.5;
L=100;
dt=T/L;
S=1;
mu=0.05;
sigma=0.5;
M=50;
tvals=[0:dt:T];
Svals=S*cumprod(exp((mu-0.5*sigma^2)*dt + sigma*sqrt(dt)*randn(M,L)),2);
Svals=[S*ones(M,1) Svals];
SvalsLg=[S*ones(M,1) Svals(1:M,1:L)];
length(SvalsLg)
SR2=((Svals-SvalsLg)./Svals).^2;
SSR2=cumsum(SR2,2);
Mean=mean(SSR2);
SD=std(SSR2);
subplot(2,2,1);
plot(tvals,Svals)
xlabel('ti'),ylabel('Asset paths')
xlim([0 0.5])
set(gca,'xtick',[0.1,0.2,0.3,0.4,0.5])
subplot(2,2,2);
plot(tvals,Mean)
hold on
sig=sigma^2*T*ones(M,L+1);
plot(tvals,sig,':')
xlabel('ti'),ylabel('Mean of SSR')
xlim([0 0.5])
set(gca,'xtick',[0.1,0.2,0.3,0.4,0.5])
subplot(2,2,3);
plot(tvals,SSR2)
hold on
sig=sigma^2*T*ones(M,L+1);
plot(tvals,sig,':')
xlabel('ti'),ylabel('Sum-of-square-returns')
xlim([0 0.5])
set(gca,'xtick',[0.1,0.2,0.3,0.4,0.5])
subplot(2,2,4);
plot(tvals,SD)
hold on
sigg=sqrt(2*sigma^4*T*dt*ones(M,L+1));
plot(tvals,sigg,':')
xlabel('ti'),ylabel('Standard deviation of SSR')
xlim([0 0.5])
set(gca,'xtick',[0.1,0.2,0.3,0.4,0.5])
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.195.50.21
※ 編輯: brent0424 來自: 123.195.50.21 (04/17 23:46)