Z Skrypty dla studentów Ekonofizyki UPGOW
m (→Rozwiązanie analityczne) |
(→Rozwiązanie analityczne) |
||
Linia 43: | Linia 43: | ||
Równanie definiujące geometryczny proces Wienera można przetransformować do równania na proces Wienera z dryfem. Transformacją jest: | Równanie definiujące geometryczny proces Wienera można przetransformować do równania na proces Wienera z dryfem. Transformacją jest: | ||
- | <math>y=log(x)</math>. | + | <math>y=\log(x)</math>. |
Korzystając ze [[PIZL:Stochastyczne_r%C3%B3wnania_r%C3%B3%C5%BCniczkowe#Rachunek_r.C3.B3.C5.BCniczkowy_Ito|formuły Ito]] na | Korzystając ze [[PIZL:Stochastyczne_r%C3%B3wnania_r%C3%B3%C5%BCniczkowe#Rachunek_r.C3.B3.C5.BCniczkowy_Ito|formuły Ito]] na |
Wersja z 14:46, 8 maj 2010
Spis treści |
Geometryczny proces Wienera
Definicja
Geometryczny proces Wienera jest procesem losowym, który jest rozwiązaniem równania stochastycznego Ito:
\(dX(t) = \mu X(t) dt + \sigma X(t) d W(t)\,\).
Część deterministyczna część tego równania jest liniowa, podobnie jak w przypadku Ornsteina-Uhlenbecka. Rozwiązanie dla przypadku \(\sigma=0\) wyraża się w postaci eksponencjalnej
\(x(t)\simeq e^{\mu t}\),
Symulacja numeryczna
Człon stochastyczny jest proporcjonalny o wartości procesu, czyli mamy do czynienia z tzw. "szumem multiplikatywnym". Ponieważ równanie jest w interpretacji Ito, moża je bezpośrednio rozwiązać numerycznie. Interpretacja Ito dla \(\sigma X(t) d W(t)\) oznacza, że w schemacie aproxymacyjnym bierzemy wartość procesu X(t) "przed skokiem". W takim przypadku możemy zastosować schemat numeryczny Eulera podobnie jak np. dla procesu Ornsteina-Uhlenbecka. Krok czasowy może być zapisany w postaci wektorowej jako:
x(:,i)=x(:,i-1) + mu*x(:,i-1)*h + sigma*sqrt(h)*x(:,i-1).*normrnd (0,1,M,1);
Jako warunek początkowy dla symulacji należy przyjąć wartość x>0. Łatwo zauważyć własność równania definiującego proces, że startując w \(x(0)=0\) rozwiązaniem jest funkcja stała \(x(t)=0\). Poniższy program generuje 20 trajektori geometrycznego procesu Wienera:
clear all close all N=400; M=20; T=14; h=T/N; clear x x=zeros(M,N); x(:,1)=1*ones(M,1); # log(1)=0 sigma=.1; mu=0.1; for i=2:N x(:,i)=x(:,i-1) + mu*x(:,i-1)*h + sigma*sqrt(h)*x(:,i-1).*normrnd (0,1,M,1); endfor plot((1:N)*h,x,'r-')
Rozwiązanie analityczne
Równanie definiujące geometryczny proces Wienera można przetransformować do równania na proces Wienera z dryfem. Transformacją jest:
\(y=\log(x)\).
Korzystając ze formuły Ito na
\(f_y(y)=\frac{f_x(x_1)}{|g'(x_1)|}+...+ \frac{f_x(x_n)}{|g'(x_n)|}\)
clear all close all N=100; M=20000; T=14; h=T/N; clear x x=zeros(M,N); x(:,1)=1*ones(M,1); # log(1)=0 sigma=.1; mu=0.1; for i=2:N x(:,i)=x(:,i-1) + mu*x(:,i-1)*h + sigma*sqrt(h)*x(:,i-1).*normrnd (0,1,M,1); endfor hold on for idx=1:4 n=5+(idx-1)*20; t=n/N*T xmax=5; h1=.1; hist(x(:,n),[0:h1:xmax],1/h1) fplot(@(xx) lognpdf(xx,(mu-0.5*sigma^2)*t,sigma*sqrt(t)),[0.0,xmax],200,'ro-') endfor hold off