diff options
Diffstat (limited to 'R')
| -rw-r--r-- | R/calibration.R | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/R/calibration.R b/R/calibration.R index 0b54590f..ee9a53e1 100644 --- a/R/calibration.R +++ b/R/calibration.R @@ -36,11 +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,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] * 1e-4, - upfront = quotes$upfront_curve[i, tenor] * 0.01, - recovery = as.double(quotes$recovery[i,tenor][1])) - index$portfolio <- c(index$portfolio, buildSC(quote, cds.cs$cs, cds.cs$cdsdates)) + 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])) } index$issuerweights <- rep(1/length(index$portfolio), length(index$portfolio)) index$recov <- sapply(index$portfolio, attr, "recovery") |
