Calculate IR.DV01

Share:

Description

IR_DV01 calculate the amount of change in upfront when there is a 1/1e4 increase in interest rate for a data frame of CDS contracts.

Usage

1
2
3
4
IR_DV01(x, date.var = "date", currency.var = "currency",
  maturity.var = "maturity", tenor.var = "tenor", spread.var = "spread",
  coupon.var = "coupon", recovery.var = "recovery",
  notional.var = "notional", notional = 1e+07, recovery = 0.4)

Arguments

x

data frame, contains all the relevant columns.

date.var

character, column in x containing date variable.

currency.var

character, column in x containing currency.

maturity.var

character, column in x containing maturity date.

tenor.var

character, column in x containing tenors.

spread.var

character, column in x containing spread in basis points.

coupon.var

character, column in x containing coupon rates in basis points. It specifies the payment amount from the protection buyer to the seller on an annual basis.

recovery.var

character, column in x containing recovery rates. ISDA model standard recovery rate asscumption is 0.4.

notional.var

character, column in x containing the amount of the underlying asset on which the payments are based.

notional

numeric, the notional amount for all pricing if there isn't a notional.var

recovery

numeric, the recovery rate for all pricing if there isn't a recovery.var

Value

a vector containing the change in upfront when there is a 1/1e4 increase in interest rate, for each corresponding CDS contract.

Examples

1
2
3
4
5
6
7
8
9
x <- data.frame(date = c(as.Date("2014-04-22"), as.Date("2014-04-22")),
                currency = c("USD", "EUR"),
                tenor = c(5, 5),
                spread = c(120, 110),
                coupon = c(100, 100),
                recovery = c(0.4, 0.4),
                notional = c(10000000, 10000000),
                stringsAsFactors = FALSE)
IR_DV01(x)