1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
if(.Platform$OS.type == "unix"){
root.dir <- "/home/share/CorpCDOs"
}else{
root.dir <- "//WDSENTINEL/share/CorpCDOs"
}
source(file.path(root.dir, "code", "R", "intex_deal_functions.R"))
source(file.path(root.dir, "code", "R", "index_definitions.R"))
source(file.path(root.dir, "code", "R", "etdb.R"))
getdealdata <- function(dealnames){
sqlstring <- sprintf("select * from latest_clo_universe where dealname in ('%s')",
paste(dealnames, collapse="','"))
return( dbGetQuery(dbCon, sqlstring) )
}
workdate <- as.Date("2013-01-23")
files <- list.files(path=file.path(root.dir, "Scenarios", paste("Portfolios", workdate, sep="_")), pattern="*.RData")
currdealnames <- dbGetQuery(dbCon, "select updatedate, dealname from latest_deal_model_numbers")
for(file in files){
load(file.path(root.dir, "Scenarios", paste("Portfolios", workdate, sep="_"), file))
dealname <- strsplit(file, "\\.")[[1]][1]
dealupdatedate <- currdealnames$updatedate[currdealnames$dealname %in% dealname]
if(length(dealupdatedate) && dealupdatedate == workdate){
sqlstring <- sprintf(paste0("UPDATE et_deal_model_numbers SET dealspread = %s, cdopercentage = %s,",
"stalepercentage= %s WHERE dealname= '%s' and updatedate = '%s'"),
deal.spread,
deal.portfolio$cdopercentage,
deal.portfolio$stale,
dealname,
as.Date(workdate))
dbGetQuery(dbCon, sqlstring)
}else{
sqlstring <- sprintf(paste0("INSERT INTO et_deal_model_numbers ",
"VALUES('%s', %s, %s, %s, %s, '%s')"),
dealname,
deal.portfolio$cdopercentage,
deal.portfolio$stale,
deal.spread,
crossprod(deal.portfolio$notional, deal.portfolio$price)/100,
workdate)
dbGetQuery(dbCon, sqlstring)
currdealnames <- c(currdealnames, dealname)
}
}
|