aboutsummaryrefslogtreecommitdiffstats
path: root/R
diff options
context:
space:
mode:
Diffstat (limited to 'R')
-rw-r--r--R/load_cf.R15
1 files changed, 13 insertions, 2 deletions
diff --git a/R/load_cf.R b/R/load_cf.R
index 7703e87f..22c5386a 100644
--- a/R/load_cf.R
+++ b/R/load_cf.R
@@ -178,7 +178,8 @@ getcusipcf <- function(cusips, cfdata, workdate=Sys.Date()){
for(field in fields){
cleanfield <- tryCatch(sanitize.column(data[,field]),
warning = function(w)w)
- if(inherits(cleanfield, "warning")){
+ if(inherits(cleanfield, "warning")||any(is.na(cleanfield))){
+ cat(sprintf("file: %s is messed up", filename), "\n")
flag <- TRUE
break
}else{
@@ -232,11 +233,21 @@ getcusipcf <- function(cusips, cfdata, workdate=Sys.Date()){
cfdata <- getdealcf(dealnames, workdate)
availablecusips <- cusips[dealnamefromcusip(cusips) %in% names(cfdata)]
cusipdata <- getcusipcf(availablecusips, cfdata, workdate)
+## upload wapbasis
+for(dealname in names(cfdata)){
+ sqlstring <- sprintf(paste0("UPDATE et_deal_model_numbers SET ",
+ "wapbasis = '%s' WHERE dealname= '%s' AND updatedate = '%s'"),
+ cfdata[[dealname]]$wapbasis*100,
+ dealname,
+ strftime(workdate))
+ dbSendQuery(dbCon, sqlstring)
+}
+## upload model data
for(cusip in names(cusipdata)){
columns <- c("Cusip", "price", "wal", "duration", "updatedate")
values <- c(cusip, cusipdata[[cusip]]$price, cusipdata[[cusip]]$wal,
- cusipdata[[cusip]]$duration, workdate)
+ cusipdata[[cusip]]$duration, strftime(workdate))
colstring <- paste(columns[!is.na(values)], collapse=",")
valstring <- paste(values[!is.na(values)], collapse="','")
sqlstring <- sprintf(paste0("INSERT INTO et_cusip_model_numbers",