diff options
Diffstat (limited to 'loan_universe.R')
| -rw-r--r-- | loan_universe.R | 70 |
1 files changed, 0 insertions, 70 deletions
diff --git a/loan_universe.R b/loan_universe.R deleted file mode 100644 index 821022a3..00000000 --- a/loan_universe.R +++ /dev/null @@ -1,70 +0,0 @@ -source("cds_utils.R")
-source("cds_functions_generic.R")
-source("index_definitions.R")
-source("tranche_functions.R")
-source("yieldcurve.R")
-source("etdb.R")
-library(ggplot2)
-
-##source("optimization.R")
-MarkitData <- getMarkitIRData()
-L1m <- buildMarkitYC(MarkitData, dt = 1/12)
-L2m <- buildMarkitYC(MarkitData, dt = 1/6)
-L3m <- buildMarkitYC(MarkitData)
-L6m <- buildMarkitYC(MarkitData, dt = 1/2)
-setEvaluationDate(as.Date(MarkitData$effectiveasof))
-
-library(RQuantLib)
-loan.data <- dbGetQuery(dbCon, "select * from latest_markit_prices where lower(facility) in (select distinct lower(facility) as lf from latest_markit_prices where lower(facility) like 'tl%') order by maturity")
-flatshape <- splinefun(c(0,20),rep(1,2))
-loan.data.clean <- loan.data[loan.data$depth>=10,]
-loan.data.clean <- loan.data.clean[loan.data.clean$latestdate==as.Date("2012-09-11"),]
-loan.data.clean <- loan.data.clean[-(1:4),]
-SC.universe <- c()
-Rvec <- c()
-maturityvec <- as.Date(character(0))
-indexvec <- c()
-w1 <- c()
-w2 <- c()
-for(i in 1:nrow(loan.data.clean)){
- if(i%%10==0){
- cat(i, sep="\n")
- }
- collateral <- loan.data.clean[i,]
- collateral$frequency <- "Q"
- collateral$fixedorfloat <- "FLOAT"
- collateral$grosscoupon <- 0
- collateral$spread <- collateral$spread/100
- collateral$price <- (collateral$bid+collateral$offer)/2
- if(is.na(collateral$spread)){
- next
- }
- ## negative hazard rate
- if(collateral$price-100-
- (yearFrac(today(), collateral$maturity) * collateral$spread)>=0){
- next
- }
- if(collateral$price<=50){
- next
- }
- recov <- min(collateral$price/100-0.2, 0.6)
- sc <- bondhazardrate.shaped(collateral, flatshape, recov)
- if(sc@h<=0){
- next
- }
- SC.universe <- c(SC.universe, sc)
- Rvec <- c(Rvec, recov)
- maturityvec <- c(maturityvec, collateral$maturity)
- indexvec <- c(indexvec, i)
- w1 <- c(w1, collateral$amount)
- w2 <- c(w2, collateral$amount * collateral$price/100)
-}
-
-hvec <- sapply(SC.universe, attr, "h")
-spreads <- hvec*(1-Rvec)
-T <- yearFrac(today(), maturityvec)
-test <- loess(spreads~T)
-
-loan.data2 <- loan.data.clean[!is.na(loan.data.clean$stm),]
-maturities <- yearFrac(today(),loan.data2$maturity)
-test2 <- loess(loan.data2$stm~maturities)
|
