aboutsummaryrefslogtreecommitdiffstats
path: root/R/build_portfolios.R
diff options
context:
space:
mode:
Diffstat (limited to 'R/build_portfolios.R')
-rw-r--r--R/build_portfolios.R8
1 files changed, 6 insertions, 2 deletions
diff --git a/R/build_portfolios.R b/R/build_portfolios.R
index a365e8e4..f7da2e25 100644
--- a/R/build_portfolios.R
+++ b/R/build_portfolios.R
@@ -56,6 +56,10 @@ for(i in seq_along(dealnames)){
}
deal.portfolio <- buildSC.portfolio(deal.name, deal.data, cusipdata, global.params, workdate)
##deal.portfolio$SC <- tweakportfolio(deal.portfolio$SC, -cashspread.discount, multiplicative=FALSE)
+ mv <- crossprod(deal.portfolio$notional, deal.portfolio$price)/100
+ nullcurves <- unlist(lapply(deal.portfolio$SC, is.null))
+ deal.portfolio$SC <- deal.portfolio$SC[!nullcurves]
+ deal.portfolio$notional <- deal.portfolio$notional[!nullcurves]
A <- SPmatrix2(deal.portfolio$SC, deal.data, freq="3 months", workdate)
S <- 1 - sapply(deal.portfolio$SC, attr, "recov")
deal.weights <- deal.portfolio$notional/sum(deal.portfolio$notional)
@@ -79,7 +83,7 @@ for(i in seq_along(dealnames)){
deal.spreadatmaturity,
deal.portfolio$cdopercentage,
deal.portfolio$stale,
- crossprod(deal.portfolio$notional, deal.portfolio$price)/100,
+ mv,
deal.name,
as.Date(workdate))
dbSendQuery(dbCon, sqlstring)
@@ -92,7 +96,7 @@ for(i in seq_along(dealnames)){
deal.portfolio$cdopercentage,
deal.portfolio$stale,
deal.spread5y,
- crossprod(deal.portfolio$notional, deal.portfolio$price)/100,
+ mv,
workdate,
deal.spreadatmaturity
)