I would like perform a simulation of Bitcoin future prices given a sample of the 4 past years (2014-2018). My problem is that I do not know what model to use! For common stocks I used the geometric Brownian motion dynamics which I implemented in C++, but I am not sure if this model also applies for assets like Bitcoin. Does anybody know how to model this kind of asset and how to implement it in C++ ?

Every contribution highly appreciated! Thank in advance!

  • 3
    $\begingroup$ Every model is wrong, as it's just a simplified representation of a complex system. Even Heston model could be too simple for describing the behavior of an asset with such fat tails and jumps, even moving to Poisson jumps wouldn't help that much. My two cents: as you have historical data and are working under physical measure, use Filtered Historical Simulation by using a proper GARCH model. $\endgroup$ – Lisa Ann Apr 22 '19 at 10:50

It is a big topic but here is a simplistic recipe! The starting point would be to check the distribution of the historical returns. Histogram would give an idea of how the shifts are distributed. Have a look at the tails, if the tails are fat or don’t ‘tail-off’ then that would be indicative of jumps or non constant volatility.

If you decide that a simple arithmetic or geometric Brownian motion is sufficient, then you can analyse the volatility by the level of underlying. If the volatility happened to be proportional to the level of the underlying then geometric brownian would be more appropriate. And if you are worried about fat tails then you can add Jump to the dynamics or introduce non-constant volatility.

You can also have a look at the historical price series to see if the series is mean reverting, meaning if the price frequently reverts back to some mean which could be non constant, then it would be better to model it as Ornstein Uhlenbeck process.

| improve this answer | |
  • $\begingroup$ Hello and thank you a lot for your respones! My question is: How do we analyse the volatility by the level of underlying? Is there a particular method to do that? Thank you! $\endgroup$ – CLBJ_23 Apr 24 '19 at 13:25
  • $\begingroup$ For a start, you can just plot the changes in the price $S_t - S_{t-1}$ against the price $S_{t-1}$. You will get a scatter plot, but see if there is any trend in the points, e.g., more variation at higher price. $\endgroup$ – Magic is in the chain Apr 24 '19 at 21:54

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.