I am trying to model the future prices of a number of commodities. For this, I am applying geometric Brownian motion, writing a Monte Carlo code in Python. Given that I want to estimate tommorows price $S_t$ of a commodity, I am using the equation:
$S_{t}=S_{t-1}\exp((\mu-\frac{\sigma^2}{2})+z\sigma)$
Where $z$ is determined from a stochastic number from a normal distribution. $\sigma$ and $\mu$ I have calculated using the log-"returns" based on annual price data from the respective commodity, i.e. from $t_0$ to $t$. The data I have is between 1950-2015.
Now, I want to model future prices until 2050, counting from 2015. So I have applied the aforementioned formula for each year, starting from 2015 until 2050. For instance, the price year 2041 would be:
$S_{2041}=S_{2040}\exp((\mu-\frac{\sigma^2}{2})+z\sigma)$
I have performed 1000 simulations, obtaining a wide range for the price in 2050. I understand this method is not appropiate for forecasting, but what can I do with my results to say something about the future price? If I take the mean of my results, and I run many simulations, it is equivalent to just apply the formula $S_t=S_{t-1}\exp(\mu*\Delta t)$, right? I cannot assume that this mean is a good forecast estimate, or can I?
Assume that I will buy this commodity in 2050, and there is a risk that the real price will increase, how can I apply this Monte Carlo simulation model to determine how much money I need to save in order to afford the commodity in 2050? I think that it is something like a risk calculation that I am looking for.
No comments:
Post a Comment