CreditRisk (version 0.1.0)

at1p: Analytically - Tractable First Passage (AT1P) model

Description

at1p calculates the survival probability \(Q(\tau > t)\) and default intensity for each maturity according to the structural Analytically - Tractable First Passage model.

Usage

at1p(V0, H0, B, sigma, r, t)

Arguments

V0

firm value at time t = 0 (it is a constant value).

H0

value of the safety level at time t = 0.

B

free positive parameter used for shaping the barrier Ht.

sigma

a vector of constant stepwise volatility \(\sigma_t\).

r

a vector of constant stepwise risk-free rate.

t

a vector of debt maturity structure (it is a numeric vector).

Value

at1p returns an object of class data.frame containing the firm value, safety level \(H(t)\) and the survival probability for each maturity. The last column is the default intensity calculated among each interval \(\Delta t\).

Details

In this function the safety level Ht is calculated using the formula: $$H(t) = \frac{H0}{V0} * E_0[V_t] * \exp^{- B \int_0^t \sigma_u du}$$ The backbone of the default barrier at \(t\) is a proportion, controlled by the parameter H0, of the expected value of the company assets at \(t\). H0 may depend on the level of the liabilities, on safety covenants, and in general on the characteristics of the capital structure of the company. Also, depending on the value of the parameter B, it is possible that this backbone is modified by accounting for the volatility of the company assets. For example, if B > 0 corresponds to the interpretation that when volatility increases - which can be independed of credit quality - the barrier is slightly lowered to cut some more slack to the company before going bankrupt. When B = 0 the barrier does not depend on the volatility and the "distance to default" is simply modelled through the barrier parameter H0.

References

Damiano Brigo, Massimo Morini, Andrea Pallavicini (2013) Counterparty Credit Risk, Collateral and Funding. With Pricing Cases for All Asset Classes.

Examples

Run this code
# NOT RUN {
mod <- at1p(V0 = 1, H0 = 0.7, B = 0.4, sigma = rep(0.1, 10), r = cdsdata$ED.Zero.Curve,
t = cdsdata$Maturity)
mod

plot(cdsdata$Maturity, mod$Ht, type = 'b', xlab = 'Maturity', ylab = 'Safety Level H(t)',
main = 'Safety level for different maturities', ylim = c(min(mod$Ht), 1.5),
col = 'red')
lines(cdsdata$Maturity, mod$Vt, xlab = 'Maturity', ylab = 'V(t)',
main = 'Value of the Firm \n at time t', type = 's')

plot(cdsdata$Maturity, mod$Survival, type = 'b',
main = 'Survival Probability for different Maturity \n (AT1P model)',
xlab = 'Maturity', ylab = 'Survival Probability')

matplot(cdsdata$Maturity, mod$Default.Intensity, type = 'l', xlab = 'Maturity',
ylab = 'Default Intensity')

# }

Run the code above in your browser using DataLab