H2ExtArch3FParam-class: Three-factor H2-extendible Archimedean calibration parameter

H2ExtArch3FParam-classR Documentation

Three-factor H2-extendible Archimedean calibration parameter

Description

CalibrationParam for the H2-extendible Archimedean copula with Exponential margin model for the (average) default counting process with 3 parameter. Extends H2ExCalibrationParam and related to ExtArch2FParam.

Usage

## S4 method for signature 'H2ExtArch3FParam'
initialize(
  .Object,
  composition = c(2L, 3L),
  lambda = 0.1,
  nu = c(0.2, 0.3),
  rho = NULL,
  tau = NULL,
  survival = TRUE,
  family = c("Clayton", "Frank", "Gumbel", "Joe")
)

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

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

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

## S4 method for signature 'ClaytonH2ExtArch3FParam'
initialize(.Object, ..., survival = FALSE)

## S4 method for signature 'FrankH2ExtArch3FParam'
initialize(.Object, ..., survival = TRUE)

## S4 method for signature 'GumbelH2ExtArch3FParam'
initialize(.Object, ..., survival = TRUE)

## S4 method for signature 'JoeH2ExtArch3FParam'
initialize(.Object, ..., survival = TRUE)

Arguments

.Object

An object: see the “Initialize Methods” section.

composition

Positive integerish vector for the component-composition.

lambda

Marginal intensity.

nu

Dependency parameter (see copula::archmCopula and copula::nacopula).

rho

Spearman's Rho.

tau

Kendall's Tau.

survival

Flag if survival copula is specified (default, except for Clayton)

family

Name of the Archimedean copula family (see copula::archmCopula).

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.

...

Pass-through parameters.

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 from a H2-extendible Archimedean copula model with Exponential margins. Per default, the Archimedean copula is used as a survival copula, except for the Clayton-family. The model is specified by three parameters (in addition to the composition): The marginal rate lambda and the (internal) outer and inner dependency parameters nu (see outer_nacopula). The dependency parameter nu should not be set by the uesr; instead they should provide either rho (Spearman's Rho) or tau (Kendall's Tau). The parameters rho or tau should be between zero and one, of length 2, and non-decreasing; the first value represents the outer dependence between components of different partition elements and the second value represents the inner dependence between components of the same partition element.

For details on the underlying extendible model, see ExtArch2FParam.

Functions

  • initialize(H2ExtArch3FParam): Constructor

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

  • show(H2ExtArch3FParam): Display the object.

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

  • initialize(ClaytonH2ExtArch3FParam): Constructor

  • initialize(FrankH2ExtArch3FParam): Constructor

  • initialize(GumbelH2ExtArch3FParam): Constructor

  • initialize(JoeH2ExtArch3FParam): Constructor

Slots

lambda

A non-negative number for the marginal rate.

nu

A numeric vector of length 2 for the model specific dependence parameters (global and component specific; range depends on specific model). Use rho or tau in the constructor to set dependence parameter.

Simulation

The default times are sampled in a two-stage procedure: First a sample is drawn from the copula::outer_nacopula copula whose dependence reflect the inner- and outer-dependency parameters; then the results are transformed using stats::qexp().

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 λ.

Examples

H2ExtArch3FParam(
  composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, tau = c(3e-1, 5e-1), survival = TRUE)

parm <- ClaytonH2ExtArch3FParam(c(3, 3, 4, 5), 8e-2, rho = c(3e-1, 6e-1))
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 <- FrankH2ExtArch3FParam(composition = c(2L, 4L, 2L), lambda = 8e-2, rho = c(2e-1, 7e-1))
simulate_dt(parm, n_sim = 5L)

ClaytonH2ExtArch3FParam()
ClaytonH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, tau = c(3e-1, 5e-1))
ClaytonH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, rho = c(3e-1, 5e-1))
FrankH2ExtArch3FParam()
FrankH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, tau = c(3e-1, 5e-1))
FrankH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, rho = c(3e-1, 5e-1))
GumbelH2ExtArch3FParam()
GumbelH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, tau = c(3e-1, 5e-1))
GumbelH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, rho = c(3e-1, 5e-1))
JoeH2ExtArch3FParam()
JoeH2ExtArch3FParam(composition = c(3L, 3L, 4L, 5L), lambda = 8e-2, tau = c(3e-1, 5e-1))

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