cm.cs {CreditMetrics}R Documentation

Computation of credit spreads

Description

cm.cs computes the credit spreads for each rating of a one year empirical migration matrix. The failure limit is the quantile of the failure probability.

Usage

cm.cs(M, lgd)

Arguments

M one year empirical migration matrix, where the last row gives the default class.
lgd loss given default

Details

This function computes the credit spreads for each rating of a given one year empirical migration matrix with a default class in the last row. The credit spread is the risk premium demanded by the market.

According migration the nominal is differently calculated

V_0 = V_t e^{-(r_t + CS_t) t}

where t is the time. Under a riskless probability measure the value of a credit position at time t is computed as

V_0 = E[V_t] e^{-r_t t}

The default event is bernoulli distributed, so the expected value is

E[V_t] = V_t (1 - PD_t) + V_t (1 - LGD) PD_t

By using the above equations and following transforming we get the formula for the credit spread

CS_t = - (ln(1 - LGD PD_t)) / t

This function computes the credit spread for t = 1, this is the credit spread for one year is calculated.

Value

Return value is the credit spread for time t = 1 of each rating in the migration matrix.

Author(s)

Andreas Wittmann andreas_wittmann@gmx.de

References

Glasserman, Paul, Monte Carlo Methods in Financial Engineering, Springer 2004

See Also

cm.matrix

Examples

  lgd <- 0.45
  
  # one year empirical migration matrix form standard&poors website
  rc <- c("AAA", "AA", "A", "BBB", "BB", "B", "CCC", "D")
  M <- matrix(c(90.81,  8.33,  0.68,  0.06,  0.08,  0.02,  0.01,   0.01,
                 0.70, 90.65,  7.79,  0.64,  0.06,  0.13,  0.02,   0.01,
                 0.09,  2.27, 91.05,  5.52,  0.74,  0.26,  0.01,   0.06,
                 0.02,  0.33,  5.95, 85.93,  5.30,  1.17,  1.12,   0.18,
                 0.03,  0.14,  0.67,  7.73, 80.53,  8.84,  1.00,   1.06,
                 0.01,  0.11,  0.24,  0.43,  6.48, 83.46,  4.07,   5.20,
                 0.21,     0,  0.22,  1.30,  2.38, 11.24, 64.86,  19.79,
                    0,     0,     0,     0,     0,     0,     0, 100
              )/100, 8, 8, dimnames = list(rc, rc), byrow = TRUE)

  cm.cs(M, lgd)

[Package CreditMetrics version 0.0-1 Index]