I have learnt two versions of Monte Carlo simulations to do stock price, and can someone help check if I am thinking this right.

The first one is the most common one: $\frac{\Delta S_t}{St}-1 = \mu dt + \sigma dW$, where the $\mu$ is average of stock return, $\sigma$ is also for return, not price.

The second one: $S_t = S_{t-1} \exp\left[(r- \frac{1}{2} \sigma^2) dt + \sigma dW\right]$, where $r$ is the return of stock and $\sigma$ is for return.

From my perspective, the first one is based on the return of stock, where return is normal distributed under BS. However the second one is from a price point, because the price is lognormal distributed according to BS.

Am I thinking this right? Are they actually same?


1 Answer 1


As the name indicates, the purpose of your Monte Carlo simulation is to simulate the solution $(S_t)_{t\geq 0}$ of the following SDE (dynamics of the risky-asset under Black-Scholes) $$ dS_t/S_t = \mu dt + \sigma dW_t;\quad S(0)=S_0 \tag{1} $$ at discrete points in time, typically a uniform partition of the interval $[0,T]$ with time step $\Delta t$, $$ t_0=0,\,\dots, t_i=i\Delta t,\,\dots,\, t_N = T $$ Let's denote the simulated values at the different times $t_i$ by $(\tilde{S}_{t_i})_{i=0,\dots,N}$

  • The second approach you mention, i.e. $$\tilde{S}_{t_i} = \tilde{S}_{t_{i-1}} \exp\left( (\mu - \sigma^2/2)\Delta t + \sigma \sqrt{\Delta t} z \right) \tag{2} $$ simulates the exact solution of the SDE, expressed at discrete times, hence $$\tilde{S}_{t_i} = S_{t_i} $$ It can be obtained by applying Itô's lemma to the function $\ln(S_t)$.

  • The first approach you mention relies on what's called an Euler-Maruyama discretisation of the stochastic differential equation $(1)$ and indeed simulates $$ \tilde{S}_{t_i} = \tilde{S}_{t_{i-1}} \left( 1 + \left( \mu \Delta t + \sigma \sqrt{\Delta t} z \right) \right) \tag{3} $$ Because of the discretisation, the sequence of simulated values will merely constitute an approximation of the exact solution to $(1)$ which is $(2)$, i.e. $$ \tilde{S}_{t_i} \approx S_{t_i} $$ This approximate solution will converge to the true one as the time step of the simulation tends towards zero though ($\Delta t \to 0$).

You might ask yourself, why would one use the second approach above while we could directly use the first which is exact.

The answer is obviously that not all SDEs admit analytical solutions. This means that in general SDEs needs to be discretised to numerically simulate their solutions.

In addition to the simple Euler-Maruyama method, plenty of different discretisation schemes exist, notably the famous Milstein family. They essentially differ by their convergence properties as $\Delta t \to 0$.

  • 1
    $\begingroup$ Note that it is exactly the same situation as for ODE. Sometimes (rarely) an ODE has an analytical solution ($\frac{dy}{dx}=x \Rightarrow y=\frac{1}{2}x^2+C$) but more often you have to use numerical methods (euler, runge-kutta, etc.) to get an approximate answer. $\endgroup$
    – nbbo2
    Mar 1, 2017 at 13:57
  • $\begingroup$ Could you pls further explain here what discretization is? Also I'm thinking if the second approach is the exact solution to SDE, why would I use the other one, the approximation one? $\endgroup$
    – Aria
    Mar 8, 2017 at 17:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.