2
$\begingroup$

I wrote a simulation of a geometric Brownian motion which works like this:

  1. ${ t }_{ i }-{ t }_{ i-1 } \sim Exp(\lambda )$
  2. ${ Z }_{ i }\sim N(0,1)$
  3. ${ Y }_{ i }\sim { e }^{ \sigma \sqrt { { t }_{ i }-{ t }_{ i-1 } } { Z }_{ i }+\left( \mu -\frac { { \sigma }^{ 2 } }{ 2 } \right) \left( { t }_{ i }-{ t }_{ i-1 } \right) }$
  4. $S({ t }_{ 1 })=S({ t }_{ 0 })\times { Y }_{ 1 }$
  5. $S({ t }_{ 2 })=S({ t }_{ 1 })\times { Y }_{ 2 }=S({ t }_{ 0 })\times { Y }_{ 1 }\times { Y }_{ 2 }$
  6. $S({ t }_{ k })=S({ t }_{ k-1 })\times { Y }_{ k }=S({ t }_{ 0 })\times { Y }_{ 1 }\times { Y }_{ 2 }\times\dots \times{ Y }_{ k }$

In order to verify that my code is correct, I tried to estimate the parameters of my simulation from samples taken from it.

My parameter estimation strategy was like this:

I knew $\mathrm{E}[{ t }_{ i }-{ t }_{ i-1 }] = \frac{1}{\lambda}$

Since $\ln { \frac { S({ t }_{ i+1 }) }{ S({ t }_{ i }) } \sim N(\tilde { \mu } ,\tilde { \sigma } ) } $, I just used the parameter estimation techniques for normal distributions to estimate $\tilde { \mu }$ and $\tilde { \sigma }$.

Since $\tilde { \sigma } = \sigma \sqrt{ { t }_{ i }-{ t }_{ i-1 }}$, I reasoned that $\sigma = \frac { \tilde { \sigma } }{ \sqrt{ \mathrm{E}[{ t }_{ i }-{ t }_{ i-1 }]} } $

Since $\tilde { \mu } = \left( \mu -\frac { { \sigma }^{ 2 } }{ 2 } \right) \left( { t }_{ i }-{ t }_{ i-1 } \right) $, I reasoned that $\mu = \frac { \tilde { \mu } }{ \mathrm{E}[{ t }_{ i }-{ t }_{ i-1 }] } + \frac { { \sigma }^{ 2 } }{ 2 }$ where I used the $\sigma$ estimated from above.

Is my logic correct? I did not use any formal reasoning, so I am not confident my method for estimating parameters is correct. Can someone help me?

This is not homework. I am just trying to write program which behaves like the financial markets.

$\endgroup$
1
$\begingroup$

First to point this out. You do not simulate standard geometric Brownian motion but time-changed GBM where the distribution of time is an exponential distribution with parameter $\lambda$ independent of the GBM.

Using the technique of time change one usually assumes that the expected time is unbiased. If you write each time interval as $$ (t_i - t_{i-1}) \Lambda_i $$ with $\Lambda_i \sim Exp(\lambda)$ one usually assumes that $E[ (t_i - t_{i-1}) \Lambda_i] = t_i - t_{i-1}$, and thus in short that $E[\Lambda_i ] = 1$. This can only be achieved if you use $\Lambda_i \sim Gamma(1/\lambda,1/\lambda)$.

You end up with a Variance-Gamma process for the Brownian motion.

You were on the right track. Define $X_i = \ln(S_{t_i}/S_{t_{i-1}}))$. This process is a variance-gamma process with drift. You find ways to calibrate this process on the mentioned wikipedia page.

With the additional parameter $\lambda$ it does not suffice to look at expected value and variance only. You need one higher moment - usually kurtosis.

$\endgroup$
  • $\begingroup$ Thanks for the response. So I don't have to change my simulation, right? I just need to recognize that the process is a variance gamma process, and need to estimate the parameters for it using the Wikipedia page. Is this what you mean? $\endgroup$ – louzer Dec 30 '13 at 14:41
  • $\begingroup$ yes .. and the time increment can not have exponential law but gamma. Otherwise the expected value of time is biased. $\endgroup$ – Ric Dec 30 '13 at 15:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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