Comparing Square-Root-Scaled VaR with Simulated Portfolio Losses
Summary
The document investigates how the square-root-of-time VaR approximation compares with empirical VaR from simulated returns. It describes scaling one-period VaR by the square root of the horizon, then simulating a sequence of normally distributed returns and compounding them to produce terminal portfolio values. The author proposes comparing the resulting tail loss estimates while varying initial value, volatility, horizon, confidence level, and simulation count.
The reported experiments say that the difference grows linearly with initial value, rises sharply with volatility, and increases with the square root of the horizon; the author also observes non-monotonic behavior as confidence level changes and little apparent dependence on simulation count once there are several thousand paths. The post asks whether the approximation is genuinely poor and why practitioners use it. These findings are presented as exploratory observations rather than a validated general result: the code’s parameter choices, percentile convention, and return assumptions matter, and the document supplies no formal analysis or answers to its questions.
Key ideas
- The square-root-of-time approximation scales one-period VaR by the square root of the horizon.
- The proposed simulation compounds normally distributed one-period returns to estimate a terminal loss quantile.
- The author reports that the approximation gap changes with portfolio value, volatility, horizon, and confidence level.
- The observed confidence-level pattern is non-monotonic in the tested range.
- The comparison is exploratory and depends on the return model, simulation setup, and quantile convention.
Tags
Full text
# Scaled VaR: approximation vs reality
# Scaled VaR: approximation vs reality
Previous question: Understanding VaR rescaling
After understanding the usual VaR scaling formula $$\text{VaR}_{T,\alpha}=\sqrt{T}\text{VaR}_{1,\alpha}$$ I wanted to know by how much it deviates from the real (simulated) value.
That is,
- Calculate $\text{VaR}_{T,\alpha}=V_0\sigma\Phi^{-1}(\alpha)\sqrt{N}$
- Simulate $V_T-V_0=V_0(1+R_1)(1+R_2)\dots(1+R_T)-V_0$ with $R_i$ normally distributed and get the empirical/simulated VaR
I coded this in Python
```
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
def VaR_Scaled(V0, alpha, sigma, T):
return V0*sigma*np.sqrt(T)*norm.ppf(1-alpha) # Var scaling formula
def VaR_Simulated(V0, alpha, sigma, T, NumSimul):
V = np.full((NumSimul, T+1), V0)
for i in range(1, T+1):
V[:,i] = np.multiply(V[:,i-1], np.full((1, NumSimul), 1) + np.random.normal(loc = 0, scale = sigma, size = (1, NumSimul)))
return -np.percentile(V[:,T]-np.full((NumSimul, 1), V0), 1-alpha)
Scaled = VaR_Scaled(100.000, 1.0, 1.0, 2)
Simulated = VaR_Simulated(100.000, 1.0, 1.0, 2, 10000)
print('The scaled VaR is ', Scaled,', the simulated VaR is ', Simulated)
print('their difference is ', np.abs(Scaled-Simulated))
```
and tried to plot the size of this difference against $V_0$, $\sigma$, $T$ and $\alpha$
- It increases linearly with $V_0$
- It increases exponentially with $\sigma$ (tried $0\le\sigma\le 1$)
- It increases with the square root of $T$ (as expected)
- With $0\le\alpha\le 1000/10000$ it decreases at first and then increases (logarithmically? Picture below)
- It doesn't depend on the number of simulations (assuming we do at least a few thousand)
In any case, the approximation doesn't seem good most of the time.
Questions:
- Is the approximation really this bad or am I missing something? The derivation comes from using only the first-order terms in the taylor expansions of $\log$ and $\exp$ so maybe this easily explains the bad approximation
- If the approximation is in fact bad, why do we keep using it (other than simplicity)? Do banks really use this formula?
- Why the strange behaviour (first decrease then increase) with respect to the confidence $\alpha$?
Thanks in advance!Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.