aboutsummaryrefslogtreecommitdiffstats
path: root/R/script_calibrate_tranches.R
diff options
context:
space:
mode:
Diffstat (limited to 'R/script_calibrate_tranches.R')
-rw-r--r--R/script_calibrate_tranches.R15
1 files changed, 9 insertions, 6 deletions
diff --git a/R/script_calibrate_tranches.R b/R/script_calibrate_tranches.R
index 44e6fe1c..44b5c7b5 100644
--- a/R/script_calibrate_tranches.R
+++ b/R/script_calibrate_tranches.R
@@ -23,13 +23,16 @@ if(length(args) >= 1){
workdate <- Sys.Date()
}
+futurequotes <- read.csv(file.path(root.dir, "data", "Yield Curves",
+ sprintf("futures-%s.csv", workdate)), header=F)
#retrieve yield curve data
MarkitData <- getMarkitIRData(workdate)
-L1m <- buildMarkitYC(MarkitData, dt = 1/12)
-L2m <- buildMarkitYC(MarkitData, dt = 1/6)
-L3m <- buildMarkitYC(MarkitData)
-L6m <- buildMarkitYC(MarkitData, dt = 1/2)
+L1m <- buildMarkitYC(MarkitData, futurequotes[,2], dt = 1/12)
+L2m <- buildMarkitYC(MarkitData, futurequotes[,2], dt = 1/6)
+L3m <- buildMarkitYC(MarkitData, futurequotes[,2])
+L6m <- buildMarkitYC(MarkitData, futurequotes[,2], dt = 1/2)
setEvaluationDate(as.Date(MarkitData$effectiveasof))
+setCalendarContext("UnitedStates/GovernmentBond")
## calibrate HY21
## calibrate the single names curves
@@ -47,11 +50,11 @@ hy21portfolio <- c()
for(i in 1:nrow(nondefaulted)){
SC <- new("creditcurve",
recovery=nondefaulted$recovery[i]/100,
- startdate=today(),
+ startdate=workdate,
issuer=as.character(nondefaulted$ticker[i]))
quotes <- data.frame(maturity=cdsdates, upfront = as.numeric(nondefaulted[i,4:8]) /100,
running=rep(nondefaulted$running[i] * bps, 5))
- SC@curve <- cdshazardrate(quotes, nondefaulted$recovery[i]/100)
+ SC@curve <- cdshazardrate(quotes, nondefaulted$recovery[i]/100, workdate)
hy21portfolio <- c(hy21portfolio, SC)
}