diff options
Diffstat (limited to 'R/calibration.R')
| -rw-r--r-- | R/calibration.R | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/R/calibration.R b/R/calibration.R index 566b0052..9ef99a83 100644 --- a/R/calibration.R +++ b/R/calibration.R @@ -26,7 +26,7 @@ get.cdsSchedule <- function(tradedate, indexmaturity){ break } } - return( list(cs=couponSchedule(IMMDate(tradedate), cdsdates[length(cdsdates)], "Q", "FIXED", + return( list(cs=couponSchedule(IMMDate(tradedate, noadj=TRUE), cdsdates[length(cdsdates)], "Q", "FIXED", 1, tradedate, IMMDate(tradedate, "prev")), cdsdates=cdsdates) ) } @@ -36,13 +36,13 @@ set.singlenamesdata <- function(index, tradedate){ tenor <- names(cds.cs$cdsdates) index$portfolio <- list() for(i in seq_along(quotes$tickers)){ - sanequotes <- which(yearFrac(tradedate+2,cds.cs$cdsdates)*quotes$spread_curve[i, tenor]*1e-4+ + sane.quotes <- which(yearFrac(tradedate+2,cds.cs$cdsdates)*quotes$spread_curve[i, tenor]*1e-4+ quotes$upfront_curve[i, tenor] * 0.01>0) quote <- list(ticker = quotes$ticker[i], - running = quotes$spread_curve[i, tenor[sanequotes]] * 1e-4, - upfront = quotes$upfront_curve[i, tenor[sanequotes]] * 0.01, - recovery = as.double(quotes$recovery[i,tenor[sanequotes]][1])) - index$portfolio <- c(index$portfolio, buildSC(quote, cds.cs$cs, cds.cs$cdsdates[sanequotes])) + running = quotes$spread_curve[i, tenor[sane.quotes]] * 1e-4, + upfront = quotes$upfront_curve[i, tenor[sane.quotes]] * 0.01, + recovery = as.double(quotes$recovery[i,tenor[sane.quotes]][1])) + index$portfolio <- c(index$portfolio, buildSC(quote, cds.cs$cs, cds.cs$cdsdates[sane.quotes])) } index$issuerweights <- rep(1/length(index$portfolio), length(index$portfolio)) index$recov <- sapply(index$portfolio, attr, "recovery") |
