shortfall_de_test {tstests} | R Documentation |
Expected Shortfall DE Test
Description
The expected shortfall test of Du and Escanciano (2017).
Usage
shortfall_de_test(x, alpha = 0.05, lags = 1, boot = FALSE, n_boot = 2000, ...)
Arguments
x |
the probability integral transformed series (pit). |
alpha |
the quantile level for calculating the forecast value at risk and expected shortfall. |
lags |
the numbers of lags to use for the conditional test. |
boot |
whether to use bootstrap simulation for estimating the p-values. |
n_boot |
the bootstrap replications used to calculate the p-value. |
... |
not currently used. |
Details
The test of Du and Escanciano (2017) combines ideas from Berkowitz (2001) and Christoffersen (1998) to create an unconditional and conditional shortfall test based on the probability integral transformed actuals conditioned on the forecast distribution to evaluate the severity and independence of the residuals shortfall (based on violations of VaR). The unconditional test (severity) checks for the mean of cumulative violations using a t-test, whilst the conditional test (independence) is a Portmanteau test applied to estimated cumulative violations. A bootstrap approach to calculating the distribution of the test statistics is available for finite samples, similar to the suggestions of McNeil (2000).
Value
An object of class “tstest.shortfall_de” which has a print and as_flextable method.
References
Du Z, Escanciano JC (2017). “Backtesting expected shortfall: accounting for tail risk.” Management Science, 63(4), 940–958.
Berkowitz J (2001). “Testing density forecasts, with applications to risk management.” Journal of Business & Economic Statistics, 19(4), 465–474.
Christoffersen PF (1998). “Evaluating interval forecasts.” International Economic Review, 841–862.
McNeil,A.J., Frey,R. (2000). “Estimation of tail-related risk measures for heteroscedastic financial time series: An extreme value approach.” Journal of Empirical Finance, 7(3-4), 271–300.
Examples
library(tsdistributions)
data("garch_forecast")
x <- pdist("jsu", q = garch_forecast$actual, mu = garch_forecast$forecast,
sigma = garch_forecast$sigma, skew = garch_forecast$skew,
shape = garch_forecast$shape)
print(shortfall_de_test(x, alpha = 0.05, lags = 4))