diff options
Diffstat (limited to 'R/cds_utils.R')
| -rw-r--r-- | R/cds_utils.R | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/R/cds_utils.R b/R/cds_utils.R index 90c71d28..9e5a44ae 100644 --- a/R/cds_utils.R +++ b/R/cds_utils.R @@ -72,12 +72,14 @@ couponSchedule <- function(nextpaydate=NULL, maturity, frequency, coupontype, cu }
names(dates) <- NULL
- DC <- switch(frequency,
- S = DiscountCurve(L6m$params, L6m$tsQuotes, yearFrac(L6m$params$tradeDate, dates)),
- Q = DiscountCurve(L3m$params, L3m$tsQuotes, yearFrac(L3m$params$tradeDate, dates)),
- M = DiscountCurve(L1m$params, L1m$tsQuotes, yearFrac(L1m$params$tradeDate, dates)),
- B = DiscountCurve(L2m$params, L2m$tsQuotes, yearFrac(L2m$params$tradeDate, dates)),
- A = DiscountCurve(L12m$params, L12m$tsQuotes, yearFrac(L12m$params$tradeDate, dates)))
+ dt <- switch(frequency,
+ S = 1/2,
+ Q = 1/4,
+ M = 1/12,
+ B = 1/6,
+ A = 1)
+ DC <- DiscountCurve(c(YC$params, list(dt=dt)),
+ YC$tsQuotes, yearFrac(YC$params$tradeDate, dates), YC$legparams)
if(toupper(coupontype)=="FLOAT" && !is.na(margin)){
## if is.na(margin) probably letter of credit
|
