|
From: U.Mutlu <um...@mu...> - 2023-09-13 00:56:11
|
The said table is intended for this practical situation:
You know (or will know) the stock price only at the end
of the timesteps, and are interested to know from these
datapoints the expectancy% at end for the pre-calculated
range from -1SD to +1SD for t of the initial stock price.
It's the same procedure like for timeSteps=1 (which is easier to understand).
Normally you are interested in the outcome after t (ie. timeSteps=1 giving the
usual 68.27%).
But then you would also like to know the result if you
watch more datapoints than just the one at the end,
ie. in your example timeSteps=12 in t=1y.
Your observation below is correct I think (except
the sentence "But that makes no sense"), but that
all is already counted for in the table, IMO.
For timeSteps=12 in your example the expectancy is 83.5962% (ie. p=0.835962).
Ie. 68.27% now suddenly becomes 83.5982% only b/c we watch the stock price
more times (1 vs 12 times, at end of equal time intervals).
Do you get a different value for the above said situation?
Or asked differently: how should the table ideally be made up instead?
I'll also create a cumulative version for 0 to t_i.
Maybe you mean that one.
This method can be important for bots who watch the
stock price at such fixed intervals, like weeks or months,
and need to know the probability... and/or for (auto-)trading
systems based on such stochastics.
Luigi Ballabio wrote on 09/11/23 19:01:
> in your sample implementation, you generate paths from 0 to t using
> a number of timesteps. For the sake of example, let's say t=1 year and you
> use 12 timesteps, so one step per month. You calculate the price plus or
> minus 1SD, where 1SD is the standard deviation of the expected distribution at
> t=1. Then you do the following to calculate percentage hits:
>
> for (size_t j = 1; j <= timeSteps; ++j)
> {
> const auto Sx = samplePath.at(j);
> if (Sx >= m1SD && Sx <= p1SD) ++cHit;
> }
>
> that is, for every point in the path you check whether it's between S - 1SD
> and S + 1SD. But that makes no sense. You can only check the point at the
> end of the path, because it's the only point that belongs to the expected
> distribution at t=1 year. In the case of 12 timesteps, the point at j=1
> belongs to the expected distribution at t=1 month, which has a different, much
> smaller SD. The point at j=2 belongs to the expected distribution at t=2
> months, which has a different SD. Of course your percentages increase with
> the timesteps, because you're sampling points from all times between 0 and 1
> (which belong to much narrower distributions) and compare them with the SD at
> t=1 year. If you compare the points at each timestep with their correct
> respective distributions, you'll find about the same percentage (the usual
> 68%) falling within the respective SDs.
>
> Hope this helps clear this up—I won't be able to give much more time to this,
> if at all.
|