%Simulation de plusieurs trajectoires du mouvement brownien géométrique (méthode 2) clear all; n = 50 %le nombre de trajectoires simulées m = 10000 %le nombre de périodes de temps Delta_t = 0.001 %la longueur d'une période de temps mu = 0.1 sigma = 0.2 Szero = 1 Z = normrnd(0,1,m,n); %matrice composée de mxn variables aléatoires iid N(0,1) %initialisation de la matrice contenant les trajectoires du mouvement brownien %chacune des colonnes de cette matrice contiendra une trajectoire du mouvement brownien W = zeros(m+1,n); %initialisation %initialisation de la matrice contenant les trajectoires de S %chacune des colonnes de cette matrice contiendra une trajectoire de S S = zeros(m+1,n); %initialisation S(1,:) = Szero * ones(1,n); %valeur initiale de S temps = zeros(m+1,1); %initialisation du vecteur temps %Approximation du mouvement brownien géométrique for i = 1 : m W(i+1,:) = W(i,:) + sqrt(Delta_t)*Z(i,:); S(i+1,:) = S(i,:) + mu*S(i,:)*Delta_t + (sigma*S(i,:)) .* (W(i+1,:) - W(i,:)); temps(i+1,1) = temps(i,1) + Delta_t; end plot(temps,S); title('trajectoires du mouvement brownien geometrique');