aboutsummaryrefslogtreecommitdiffstats
path: root/R/cds_functions_generic.R
diff options
context:
space:
mode:
Diffstat (limited to 'R/cds_functions_generic.R')
-rw-r--r--R/cds_functions_generic.R5
1 files changed, 3 insertions, 2 deletions
diff --git a/R/cds_functions_generic.R b/R/cds_functions_generic.R
index f5afd0f5..53432c5b 100644
--- a/R/cds_functions_generic.R
+++ b/R/cds_functions_generic.R
@@ -561,10 +561,11 @@ indexpv <- function(index, epsilon=0, tradedate=Sys.Date(), clean=TRUE,
cl.list <- unlist(lapply(portfolio, function(x){couponleg(cs, x@curve, startdate)}))
pl.list <- unlist(lapply(portfolio, function(x){defaultleg(cs, x@curve, x@recovery, startdate)}))
spread <- index$quotes$spread[index$quotes$maturity==maturity]
- accrued <- cdsAccrued(tradedate, spread)
- r <- list(cl = mean(cl.list) - accrued, pl = mean(pl.list), bp = 1+mean(cl.list-pl.list))
+ r <- list(cl = spread * mean(cl.list), pl = mean(pl.list), bp = 1+mean(spread*cl.list-pl.list))
if(clean){
+ accrued <- cdsAccrued(tradedate, spread)
r$bp <- r$bp-accrued
+ r$cl <- r$cl-accrued
}
return(r)
}