# Geometric Brownian Motion (GBM)

21 views (last 30 days)
Martina Della Monica on 11 Aug 2019
Answered: Samatha Aleti on 14 Aug 2019
Dear all,
I wrote this code to simulate stock price scenarios by using Geometric Brownian Motion for each business day in one year.
S_0=55.8; % initial price
drift= (mu_oil-sigma_daily_oil^2/2); % drift
npaths= 3000 ; % number of simulations
nsteps=252;
dt=1/252; % time sequence (ti-ti+1)
epsilon=randn(nsteps,npaths);
Weiner= [zeros(1,npaths); cumsum(epsilon).*sqrt(dt)] ;
S_t= bsxfun(@plus, drift*dt, sigma_daily_oil*Weiner);
S_t=S_0*exp(S_t) ;
I would like to compute stock price scenarios only for grid points 1Y 2Y 3Y 4Y 5Y . Is correct to consider dt=1 and nsteps=5? Does anyone can help me , please?
Thank you
Martina

Samatha Aleti on 14 Aug 2019
Hi,
There is MATLAB class “gbm to create Geometric Brownian Motion object. There are functions like simulate, simByEuler, simBySolution that can be used with gbm object for simulation. Here is the link for the documentation for further details:
Also, you may set the parameters to get your desired behaviour as follows:
dt=1;
nPeriods = 5;
T = nPeriods * dt;