С помощью Rblpapi и функции bdp я могу получить необходимую информацию для многих тикеров с одним переопределением.
override0<-c("CDS_FLAT_SPREAD"="110", "SWPN_IMPLIED_VOL"="35")
ticker<-as.vector("SP9U2DHG Corp")
test<-(bdp(ticker, "SW_OPTION_PREMIUM", overrides = override0))
Это занимает приблизительно 1,2 секунды.Теперь я могу сделать то же самое с вектором разных тикеров.
tickertest<-(c("SP9U2DHG Corp", "SP2S0G8R Corp", "SP9U2DHM Corp", "SPA04J3R Corp", "SP180I5C Corp"))
test<-(bdp(tickertest, "SW_OPTION_PREMIUM", overrides = override0))
Удивительно, но это занимает 1,3 секунды, поэтому совершенно очевидно, что интерфейс и передача данных занимает все время, а не фактическоерасчет.
Моя проблема в том, что фактические переопределения, которые я хотел бы использовать, различны для каждого тикера.(Те же поля, но разные значения).Есть ли способ сделать это без зацикливания на тикерах и отправки запроса на каждый тикер, что очень медленно?Я попытался структурировать переопределения как таблицу с тем же количеством строк или таким же количеством столбцов, что и количество тикеров, но каждый раз получал:
Error in bdp_Impl(con, securities, fields, options, overrides, verbose, :
Request overrides must be named.