stress_VaR {SWIM} | R Documentation |
Stressing Value-at-Risk
Description
Provides weights on simulated scenarios from a baseline stochastic model, such that a stressed model component (random variable) fulfils a constraint on its quantile at a given level, also known as Value-at-Risk (VaR). Scenario weights are selected by constrained minimisation of the relative entropy to the baseline model.
Usage
stress_VaR(
x,
alpha,
q_ratio = NULL,
q = NULL,
k = 1,
names = NULL,
log = FALSE
)
Arguments
x |
A vector, matrix or data frame
containing realisations of random variables. Columns of |
alpha |
Numeric vector, the levels of the stressed VaR. |
q_ratio |
Numeric vector, the ratio of the stressed VaR to the
baseline VaR. |
q |
Numeric vector, the stressed VaR at level
|
k |
Numeric, the column of |
names |
Character vector, the names of stressed models. |
log |
Boolean, the option to print weights' statistics. |
Details
The stressed VaR is the quantile of the chosen model component,
subject to the calculated scenario weights.
The VaR at level alpha
of a random variable with
distribution
function F is defined as its left-quantile at alpha:
If one of alpha, q
(q_ratio
) is a vector,
the stressed VaR's of the k
th column of x
, at levels
alpha
, are equal to q
.
The stressed VaR specified, either via q
or q_ratio
, might not equal
the attained empirical VaR of the model component. In this
case, stress_VaR
will display a message
and the specs
contain
the achieved VaR.
Value
A SWIM
object containing:
-
x
, a data.frame containing the data; -
new_weights
, a list of functions, that applied to thek
th column ofx
, generates the vectors of scenario weights. Each component corresponds to a different stress; -
type = "VaR"
; -
specs
, a list, each component corresponds to a different stress and containsk
,alpha
andq
.
See SWIM
for details.
Author(s)
Silvana M. Pesenti
References
Pesenti SM, Millossovich P, Tsanakas A (2019).
“Reverse sensitivity testing: What does it take to break the model?”
European Journal of Operational Research, 274(2), 654–670.
Pesenti S BAMPTA (2020).
“Scenario Weights for Importance Measurement (SWIM) - An R package for sensitivity analysis.”
Annals of Actuarial Science 15.2 (2021): 458-483. Available at SSRN: https://www.ssrn.com/abstract=3515274.
Csiszar I (1975). “I-divergence geometry of probability distributions and minimization problems.” The Annals of Probability, 146–158.
See Also
Other stress functions:
stress_HARA_RM_w()
,
stress_RM_mean_sd_w()
,
stress_RM_w()
,
stress_VaR_ES()
,
stress_mean_sd_w()
,
stress_mean_sd()
,
stress_mean_w()
,
stress_mean()
,
stress_moment()
,
stress_prob()
,
stress_user()
,
stress_wass()
,
stress()
Examples
set.seed(0)
x <- as.data.frame(cbind(
"normal" = rnorm(1000),
"gamma" = rgamma(1000, shape = 2)))
res1 <- stress(type = "VaR", x = x,
alpha = 0.9, q_ratio = 1.05)
## calling stress_VaR directly
## stressing "gamma"
res2 <- stress_VaR(x = x, alpha = 0.9,
q_ratio = c(1.03, 1.05), k = 2)
get_specs(res2)
summary(res2)