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
|
library(Rbbg)
if(.Platform$OS.type == "unix"){
root.dir <- "/home/share/CorpCDOs"
bbgCon <- blpConnect(host='192.168.1.108', port=8194, throw.ticker.errors=FALSE)
}else{
root.dir <- "//WDSENTINEL/share/CorpCDOs"
bbgCon <- blpConnect(throw.ticker.errors=FALSE)
}
load(file.path(root.dir, "data", "bloomberg_data.RData"))
fields.corp <- c("PX_LAST","LAST_UPDATE_DT","ISSUER","MATURITY","CPN","CPN_TYP",
"CPN_FREQ","FLT_SPREAD","LIBOR_FLOOR","LN_CURRENT_MARGIN",
"LN_COVENANT_LITE","SECOND_LIEN_INDICATOR","DEFAULTED", "PRICING_SOURCE")
corpcusips <- scan(file = file.path(root.dir, "data", "bbgcusips.txt"), what="char")
corpcusips <- unique(corpcusips)
secCorp <- paste(corpcusips, "Corp")
dataCorp <- bdp(bbgCon, secCorp, fields.corp)
corpcusips <- substr(rownames(dataCorp[which(!is.na(dataCorp$ISSUER)),]),1,9)
dataCorp <- dataCorp[which(!is.na(dataCorp$ISSUER)),]
rownames(dataCorp) <- substr(rownames(dataCorp), 1, 9)
dataCorp <- data.frame(CUSIP=rownames(dataCorp), dataCorp, stringsAsFactors=FALSE)
fh <- file(file.path(root.dir, "data", "bloomberg",
paste0("bloomberg_datacorp_", Sys.Date(), ".csv")),"wb")
write.csv(dataCorp, file=fh, row.names=F)
close(fh)
strdate <- format(Sys.Date(), "%Y-%m-%d")
system(paste("python", file.path(root.dir, "code/python/load_bloomberg_data.py"), strdate))
blpDisconnect(bbgCon)
|