股票
Bloomberg & R:在 R 中使用 getBars() 訪問多種證券
我正在嘗試使用 Bloomberg API (rblpapi) 訪問 50 種證券的 1 分鐘交易數據。以下是我從 CRAN 獲得的程式碼:
con <- blpConnect() security<- "NIFTY Index" field<- "INDX_MEMBERS"sec<- bds( security, field) getBars("XYZ IS EQUITY", eventType = "TRADE", barInterval = 01, startTime = Sys.time() - 1360 * 60 * 6, endTime = Sys.time(), options = NULL, verbose = FALSE, returnAs = getOption("blpType","matrix"), tz= Sys.getenv("TZ", unset = "UTC"))
我想在不重複我的程式碼的情況下訪問所有 50 種證券。有沒有辦法直接從彭博社呼叫指數的成員證券列表,並使用它一次性訪問盤中數據。此外,當我輸入特定日期時,例如:
getBars("XYZ IS EQUITY", eventType = "TRADE", barInterval = 01, startTime = as.Date("2014-01-01 03:30:00"), endTime = as.Date(" 2014-02-04 09:30:00"), options = NULL, verbose = FALSE, returnAs = getOption("blpType", "matrix"), tz = Sys.getenv("TZ", unset = "UTC"))
表明:
Error: startTime and endTime must be Datetime objects
提前致謝。
簡要地:
- 有些函式根本沒有向量化。如果要循環
getBars()
符號向量,請編寫另一個包裝器進行循環。- 正如我們的文件所說:startTime:一個帶有開始時間的 Datetime 對象,預設為目前時間前一小時(endTime 也是如此),您需要提供一個 DateTime 對象,
as.POSIXct()
這是一種方法。堅持日期和時間as.Date()
不是。