首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将BDS excel公式转换为XBBG API for Python

如何将BDS excel公式转换为XBBG API for Python
EN

Stack Overflow用户
提问于 2021-08-31 06:37:31
回答 1查看 288关注 0票数 0

我有以下Bloomberg BDS excel公式:(由于excel中的设置不同,“;”被替换为",“)

代码语言:javascript
运行
复制
=@BSD(”TSLA US Equity”;”CHAIN_TICKERS”;”CHAIN_EXP_DT_OVRD=20210917”;”CHAIN_PUT_CALL_TYPE_OVRD=CALL”;”CHAIN_POINTS_OVRD=1000”)

在本例中,我从中获得了TSLA的所有看涨期权报价器的列表,到期时间为17/09/2021 (DDMMYYYY)。

在尝试将其转换为Bloomberg的XBBG API时,我做了以下工作(基于之前来自SO的有用建议):

代码语言:javascript
运行
复制
import xbbg as blp
df = blp.bds(['TSLA US Equity'],
['CHAIN_TICKERS'],
CHAIN_EXP_DT_OVRD='CHAIN_EXP_DT_OVRD=20210917',
CHAIN_PUT_CALL_TYPE_OVRD='CHAIN_PUT_CALL_TYPE_OVRD=CALL',
CHAIN_POINTS_OVRD='CHAIN_POINTS_OVRD=1000')

但我只返回了一个数据点,而不是整个列表。

我做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-08-31 13:52:52

您指定的参数不正确。该函数不理解DataFrame值,因此会回退到默认值1,这就是为什么返回的CHAIN_POINTS_OVRD只有一个值。

对于xbbg,您通常可以提供Python类型,覆盖名称将成为bds调用中的参数名称(没有引号)。因此,在这种情况下,日期替代可以是datetime值,链点替代可以是数字。

代码语言:javascript
运行
复制
from xbbg import blp
from datetime import datetime

df = blp.bds('TSLA US Equity',
             'CHAIN_TICKERS',
             CHAIN_EXP_DT_OVRD=datetime(2021,9,17),
             CHAIN_PUT_CALL_TYPE_OVRD='CALL',
             CHAIN_POINTS_OVRD=1000)

print(df)

输出:

代码语言:javascript
运行
复制
                                ticker
TSLA US Equity     TSLA US 09/17/21 C1
TSLA US Equity     TSLA US 09/17/21 C2
TSLA US Equity     TSLA US 09/17/21 C3
TSLA US Equity     TSLA US 09/17/21 C4
TSLA US Equity     TSLA US 09/17/21 C5
...                                ...
TSLA US Equity  TSLA US 09/17/21 C1600
TSLA US Equity  TSLA US 09/17/21 C1625
TSLA US Equity  TSLA US 09/17/21 C1650
TSLA US Equity  TSLA US 09/17/21 C1675
TSLA US Equity  TSLA US 09/17/21 C1700

[334 rows x 1 columns]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68993926

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档