ExtMO2FParam-class: Two-factor extendible Marshall-Olkin calibration parameters

ExtMO2FParam-classR Documentation

Two-factor extendible Marshall-Olkin calibration parameters

Description

CalibrationParam-class with two parameters for the extendible Marshall-Olkin model for the (average) default counting process. Extends ExtMOParam.

Usage

## S4 method for signature 'ExtMO2FParam'
initialize(.Object, dim, lambda, nu, rho, tau, alpha)

## S4 method for signature 'ExtMO2FParam'
expected_pcds_equation(
  object,
  times,
  discount_factors,
  recovery_rate,
  coupon,
  upfront,
  ...,
  method = c("default", "prob", "mc")
)

## S4 method for signature 'ExtMO2FParam'
show(object)

## S4 method for signature 'ArmageddonExtMO2FParam'
simulate_dt(object, ..., n_sim = 10000L)

## S4 method for signature 'ArmageddonExtMO2FParam'
simulate_adcp(object, times, ..., n_sim = 10000L)

Arguments

.Object

An object: see the “Initialize Methods” section.

dim

Dimension.

lambda

Marginal intensity.

nu

(Internal) bivariate dependence parameter.

rho

Bivariate Spearman's Rho.

tau

Bivariate Kendall's Tau.

alpha

Bivariate lower tail-dependence coefficient.

object

A CalibrationParam-object.

times

A non-negative numeric vector of timepoints.

discount_factors

Non-negative numeric vector for the discount factors for the timepoints.

recovery_rate

Non-negative number between zero and one for the recovery rate..

coupon

Numeric number for the running coupon.

upfront

Numeric number for the upfront payment.

...

arguments to specify properties of the new object, to be passed to initialize().

method

Calculation method (either "default", "prob" (requires implementation of probability_distribution), or "mc").

n_sim

Number of samples.

Details

The model is defined by the assumption that the multivariate default times τ = (τ_1, …, τ_d) are extendible Marshall-Olkin, see ExtMOParam for the details. This class provides an interface for easy-to-use, 2-factor families for this model. For all implemented families, the marginal rate can be specified by lambda and the dependence can be specified by the internal parameter nu. For all implemented families, the (internal) dependence parameter nu has a one-to-one relationship, and can be replaced by, Spearman's Rho rho, Kendall' Tau tau or the (lower) tail dependence coefficient alpha. The possible range for rho, tau, and alpha is from zero to one (boundaries might not be included). The link between lower tail-dependence coefficient α and Spearman's Rho and Kendall's Tau is

  • α = 4 ρ / (3 + ρ) and ρ = 3 α / (4 - α)

  • α = 2 τ / (1 + τ) and τ = α / (2 - α)

Functions

  • initialize(ExtMO2FParam): Constructor

  • expected_pcds_equation(ExtMO2FParam): calculates the payoff equation for a portfolio CDS (vectorized w.r.t. the argumentes recovery_rate, coupon, and upfront).

  • show(ExtMO2FParam): Display the object.

  • simulate_dt(ArmageddonExtMO2FParam): simulates the vector of default times and returns a matrix x with dim(x) == c(n_sim, getDimension(object)).

  • simulate_adcp(ArmageddonExtMO2FParam): simulates the average default counting process and returns a matrix x with dim(x) == c(n_sim, length(times)).

Slots

lambda

A non-negative number for the marginal rate.

nu

A numeric number for the model specific dependence parameter (range depends on specific model, use rho, tau, or alpha to set dependence parameter).

Expected portfolio CDS loss

The expected portfolio CDS loss for recovery rate R is calculated using that

\mathbb{E}[g(L_t)] = (1 - R) \cdot F(t)

with g(x) = (1 - R) \cdot x and F being the Exponential distribution function for rate λ.

Armageddon-shock calibration parameter class

Corresponds to a Lévy subordinator which is a convex combination of a pure-killing subordinator and a pure-drift subordinator.

  • ψ(x) = ν + (1 - ν) x

  • α = ν

Simulation

The default times are sampled using algorithms from rmo::rmo-package.

The default times are sampled using rmo::rexmo().

Alpha-stable calibration parameter class

Corresponds to an α-stable subordinator.

  • ψ(x) = x^ν

  • ν = \log_2(2 - α) and α = 2 - 2^ν

Poisson calibration parameter class

Corresponds to a Lévy subrodinator which is a convex combination of a Poisson subordinator with jump size nu and a pure-drift subordinator.

  • ψ(x) = \operatorname{e}^{-ν}x + (1 - \operatorname{e}^{-x ν})

  • ν = -log(1 - sqrt(α)) and α = (1 - \operatorname{e}^{-ν})^2

Exponential calibration parameter class

Corresponds to a Lévy subordinator which is a convex combination of an Exponential-jump compound Poisson process with rate nu and unit-intensity and a pure-drift subordinator.

  • ψ(x) = (1 - 1 / (1 + ν))x + x / (x + ν)

  • ν = 0.5 \cdot (-3 + √{1 + 8 / α}) and α = 2 / (1 + ν) - 2 / (2 + ν)

Examples

ArmageddonExtMO2FParam()
ArmageddonExtMO2FParam(dim = 5L, lambda = 8e-2, rho = 4e-1)
AlphaStableExtMO2FParam()
AlphaStableExtMO2FParam(dim = 5L, lambda = 8e-2, rho = 4e-1)
PoissonExtMO2FParam()
PoissonExtMO2FParam(dim = 5L, lambda = 8e-2, tau = 4e-1)
ExponentialExtMO2FParam()
ExponentialExtMO2FParam(dim = 5L, lambda = 8e-2, alpha = 4e-1)
parm <- ArmageddonExtMO2FParam(dim = 75L, lambda = 0.05, rho = 0.4)
expected_pcds_equation(
  parm, times = seq(25e-2, 5, by = 25e-2), discount_factors = rep(1, 20L), recovery_rate = 0.4,
  coupon = 1e-1, upfront = 0)
expected_pcds_equation(
  parm, times = seq(25e-2, 5, by = 25e-2), discount_factors = rep(1, 20L), recovery_rate = 0.4,
  coupon = 1e-1, upfront = 0, method = "mc", n_sim = 1e1)

parm <- ArmageddonExtMO2FParam(dim = 5L, lambda = 8e-2, rho = 4e-1)
simulate_dt(parm, n_sim = 5L)

parm <- ArmageddonExtMO2FParam(dim = 5L, lambda = 8e-2, rho = 4e-1)
simulate_adcp(parm, times = seq(25e-2, 5, by = 25e-2), n_sim = 5L)


hsloot/cvalr documentation built on Sept. 24, 2022, 9:25 a.m.