bounds_VaR

rearrangement_algorithm.bounds_VaR(level: float, quant, num_steps: int = 10, abstol: float = 0, lookback: int = 0, max_ra: int = 0, method: str = 'lower', sample: bool = True, cost_func=<function sum>)

Computing the lower/upper bounds for the best and worst VaR

This function performs the RA and calculates the lower and upper bounds on the worst or best case VaR for a given confidence level. For mathematical details, see 1.

Parameters
  • level (float) – Confidence level between 0 and 1.

  • quant (list) – List of marginal quantile functions

  • num_steps (int) – Number of discretization points

  • abstol (float) – Absolute convergence tolerance

  • lookback (int) – Number of column rearrangements to look back for deciding about convergence. Must be a number in \(\{1, ..., \text{max_ra}-1\}\). If set to zero, it defaults to len(quant).

  • max_ra (int) – Number of column rearrangements. If zero, it defaults to infinitely many.

  • method (str) –

    Risk measure that is approximated. Valid options are:

    • lower or best.VaR: for best VaR

    • upper or worst.VaR: for worst VaR

  • sample (bool) – Indication whether each column of the two working matrices is randomly permuted before the rearrangements begin

Returns

  • bound_low (float) – Lower bound on the VaR

  • x_ra_low (numpy.array) – Rearranged matrix for the lower bound on the VaR

  • bound_up (float) – Upper bound on the VaR

  • x_ra_up (numpy.array) – Rearranged matrix for the upper bound on the VaR

References

1

P. Embrechts, G. Puccetti, and L. Rüschendorf, “Model uncertainty and VaR aggregation,” Journal of Banking & Finance, vol. 37, no. 8, pp. 2750-2764, Aug. 2013.