diff options
Diffstat (limited to 'R/intex_deal_functions.R')
| -rw-r--r-- | R/intex_deal_functions.R | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/R/intex_deal_functions.R b/R/intex_deal_functions.R index 2ed3f2fa..91a4960a 100644 --- a/R/intex_deal_functions.R +++ b/R/intex_deal_functions.R @@ -198,10 +198,12 @@ buildSC <- function(line.item, reinvdate, dealmaturity, global.params, startdate line.item$price <- 100
SC@startdate <- startdate + global.params$defaultedlag
- line.item$maturity <- min(dealmaturity, SC@startdate + global.params$rollingmaturity)
- line.item$nextpaydate <- SC@startdate
- ## automatic reinvest
- SC<- stackcurve(SC, line.item, global.params, SC@startdate)
+ if(SC@startdate<reinvdate && global.params$reinvflag){
+ line.item$maturity <- min(dealmaturity, SC@startdate + global.params$rollingmaturity)
+ line.item$nextpaydate <- SC@startdate
+ ## automatic reinvest
+ SC<- stackcurve(SC, line.item, global.params, SC@startdate)
+ }
}else if(line.item$maturity <= startdate){#matured asset
SC <- buildSC.matured(SC, line.item, reinvdate, dealmaturity, global.params, startdate)
if(is.na(line.item$price))line.item$price <- 100
@@ -274,7 +276,6 @@ buildSC.portfolio <- function(dealname, dealdata, cusipdata, global.params, star cdonotional <- cdonotional + line.item$currentbalance
}else{
if(is.na(line.item$price)){
- browser()
missingpricenotional <- missingpricenotional + line.item$currentbalance
}
}
|
