# Modelling returns in the real world measure with or without drift

What I would like to discuss is the following. I don't think that this is a pure duplicate, so I would be happy about comments:

On one hand it is reasonable to model log-returns as Gaussian: $$\log(S_{t+\Delta}/{S_t}) = \sigma B_{\Delta t} \tag{1}$$ with a Gaussian random variable $B_{\Delta t} \sim N(0,\Delta t)$.

On the other hand as e.g. in the calculations of the equivalent Gaussian volatility for PRIIPS we model $$S_{t+\Delta} = S_t \exp \left( - \sigma^2/2 \Delta + \sigma \left( B_{t+ \Delta t} - B_{t } \right) \right),$$ and thus $$\log(S_{t+\Delta}/{S_t}) = - \sigma^2/2 \Delta + \sigma \left( B_{t+ \Delta t} - B_{t } \right), \tag{2}$$ which leads to a non-centered Gaussian.

I know that $(2)$ is the natural model if we want to use the SDE $$dS_t = \sigma S_t dB_t,$$ whose discretized version is $$S_{t+ \Delta t} - S_{t } \approx \sigma S_t \left( B_{t+ \Delta t} - B_{t } \right),$$ which can be reformulated as $$\frac{S_{t+ \Delta t} - S_{t }}{S_t} \approx \sigma \left( B_{t+ \Delta t} - B_{t } \right).$$

So how does all this fit together? In risk management we often assume that log-returns are Gaussian $(1)$ and the regulator of PRIIPS assumes that arithmetic returns are approximately Gaussian? How can we interpret the correction term intuitively in $(2)$?

EDIT: Hopefully doing the right maths:

In setting (A) which gives us equation (1) we have the following stochastic model: $$S_{t + \Delta t} = S_t \exp \left( \sigma (B_{t + \Delta t} - B_t) \right)$$ then for the log return $R_t$ we have $$R_t = \log\left(S_{t + \Delta t}/S_t \right) = \sigma (B_{t + \Delta t} - B_t).$$ Then $R_t$ has a Gaussian distribution with expectation $0$ and variance $\sigma^2 \Delta t$.

Setting (B): $$S_{t + \Delta} = S_t \exp \left( -\frac{\sigma^2}{2} \Delta t + \sigma (B_{t + \Delta t} - B_t) \right)$$ and get for $\log(S_{t + \Delta}/S_t)$ again something Gaussian with expectation $-\frac{\sigma^2}{2} \Delta t$ and variance $\sigma^2 \Delta t$.

For $\Delta t$ small (one or just a couple of days) the difference is negligible but for longer terms (e.g. recommended holding periods) we have to model many $\Delta t$ steps leading to a larger term there. So there is a difference on the long run.

• $(2)$ is more theoretically correct. However, since $\sigma^2/2 \Delta$ is usually small, you can ignore it. Note also that $$\ln(S_{t_\Delta}/S_t) \approx \frac{S_{t+ \Delta t} - S_{t }}{S_t} - \frac{1}{2}\left(\frac{S_{t+ \Delta t} - S_{t }}{S_t} \right)^2 \approx \frac{S_{t+ \Delta t} - S_{t }}{S_t} - \frac{1}{2}E\left(\left(\frac{S_{t+ \Delta t} - S_{t }}{S_t} \right)^2\right).$$ – Gordon May 5 '17 at 15:42
• For us non-illuminati, can you briefly explain what PRIIPS is and why anyone would care about it? – David Addison May 5 '17 at 17:47
• @DavidAddison this is some regulation what an information document for the sale of packaged retail investment and insurance products has to contain. This applies to unit linked insurance and later to mutual funds. – Richard May 6 '17 at 8:01
• @Gordon or is it simply that $\sigma$ in one case is just a constant and in the other case it is $\sigma(S_t) = \sigma S_t$ and if I assume that volatility is proportional to the price (and then I can interpret it as percentage vol) then I need version (2)? – Richard May 8 '17 at 14:42
• @Gordon in your equaton the last term is equla to the Ito correction term $1/2 \sigma^2 dt$, right? – Richard May 8 '17 at 14:43

After editing my queston several times I decided to write an answer.

In setting (B) we have the Ito correction term. As Gordon mentions this makes the expected value vanish.

In setting (A) we introduce a positive drift of the size $\sigma^2 \Delta t/2$ even if we stay in discrete time. It is there.

The following code illustrates this in R. The setting mu=0 corresponds to (A) and mu = -sigma^2/2to (B). In A after 10 years and using 1000 paths we have an average of 12% gain which is what we can expect if we have the drift of $0.15^2/2$ ($15\%$ vol in the example below) for 10 years which equals $11.25 \%$ (!)

In B we have -3% which I think is just a sampling error and it should be zero. In a second run I got the 0 expected growth.

Both processes reach similar maxima and do not explode.

Bottom line: on the long run not accounting for the drift correction will lead to overestimates of your performance ... which is a basic point in stochastic analysis.

S_0 = 100
nr_paths = 1000
delta_t = 1/250 # nr steps per year
nr_years = 10
sigma = 0.15

mu = 0
#mu = -sigma^2/2

paths = matrix(S_0, nrow = nr_paths, ncol = nr_years/delta_t)
dBt = matrix(rnorm(nr_paths*(nr_years/delta_t-1), mean = 0, sd = 1), nrow = nr_paths, ncol = nr_years/delta_t-1)

for (i in 2: (nr_years/delta_t)) {
paths[,i] = paths[,i-1]*exp(mu*delta_t + sigma*sqrt(delta_t)*dBt[,i-1])
}
plot( paths[1,], type="n", ylim = range(paths), main = paste("Drift =", toString(mu)))

for(i in 1:nr_paths) {
lines( paths[i,], col = rgb(0,0,1,0.05) )
}

lines( apply(paths, 2, mean), col ="red")
tail(apply(paths, 2, mean))


Setting (A) (no drift correction) leads to $$E[\log(S_t/S_u)|\mathcal{F_u}] = 0$$ thus the expectation of the (conditional) logreturn is 0, while Setting (B) drift correction as in PRIIPS leads to $$E[\frac{S_t-S_u}{S_u}|\mathcal{F_u}] = 0$$ thus the expectation of the (conditional) arithmetic return is zero. In this setting the price $S_t$ is a martingale.
• fyi. you can set the colour in matplotlib to be an rgba colour -> set it to something like (r,g,b,10/nr_paths) and your plot will be much nicer. – will May 10 '17 at 9:45
• Didn't realise it was R at first. Just add do col = rgb(0,0,1,0.05) to the bit where you plot the paths. – will May 10 '17 at 9:51