#python #pandas #bloomberg #blpapi
Вопрос:
Я использую xbbg и blpapi для извлечения временных рядов непосредственно из Bloomberg и хотел бы превратить их в фрейм данных pandas, чтобы иметь возможность выполнять некоторый анализ временных рядов. Я был бы очень признателен за любые предложения, так как я очень начинающий пользователь. Мой код выглядит следующим образом:
Я застрял с тем, как передать вывод blp в фрейм данных pandas! Огромное спасибо.
#Import Bloomberg API
import blpapi as BBG
#Import xbbg
from xbbg import blp
#Import pandas
import pandas as pd
#Pull monthly price time series
blp.bdh(
tickers='SPX Index', flds=['Last_Price','EQY_FUND_CRNCY=CAD'],
start_date='2020-12-31', end_date='2021-05-31',
Per='M',
)
#?Now how to pass into pandas DataFrame???
Комментарии:
1. У меня есть одна файловая оболочка, которая, я думаю, проще, чем xbbg, и должна достичь того, чего вы хотите github.com/alex314159/blpapiwrapper
2. @ alex314159 — Спасибо за ваш ответ, но, к сожалению, у меня нет прав администратора и я не могу загружать новые библиотеки. Мне потребовалась пара недель, чтобы получить одобрение для blpapi, xbbg, numpy и pandas. Я надеялся найти решение, используя то, что у меня есть.
3. Разве blp.bdh() уже не возвращает фрейм данных?
df=blp.bdh(...)
затемprint(type(df))
Ответ №1:
Функция blp.bdh() уже возвращает фрейм данных, содержащий результаты. Дополнительная обработка не требуется:
from xbbg import blp
#Pull monthly price time series
df = blp.bdh(tickers='SPX Index', flds=['Last_Price','EQY_FUND_CRNCY=CAD'],
start_date='2020-12-31', end_date='2021-05-31',Per='M')
print(df)
доходность:
SPX Index
Last_Price
2020-12-31 3756.07
2021-01-29 3714.24
2021-02-26 3811.15
2021-03-31 3972.89
2021-04-30 4181.17
2021-05-31 4204.11