diff options
Diffstat (limited to 'R/load_cf.R')
| -rw-r--r-- | R/load_cf.R | 15 |
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",
|
