You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过XBBG的blp.bdh批量获取多国多期限国债收益率曲线?

一次性获取多国家多期限国债收益率的Bloomberg API方案

核心思路:批量构造代码列表 + 单次blp.bdh调用

Bloomberg的F476XXy Index系列代码可通过批量整理后,一次性传入blp.bdh接口获取数据,无需多次调用。


步骤1:整理/生成目标代码列表

先从Bloomberg终端搜索F476XXy Index,把需要的国家、期限对应的代码整理成列表。示例:

from xbbg import blp

# 手动整理的目标收益率代码
target_tickers = [
    'F47603M Index',  # 墨西哥3个月国债收益率
    'F47601Y Index',  # 墨西哥1年国债收益率
    'F47605Y Index',  # 墨西哥5年国债收益率
    'F47610Y Index',  # 墨西哥10年国债收益率
    'FXXX03M Index'   # 替换为其他国家对应期限的代码
]

若需批量生成多国家+多期限的代码,可通过字典映射动态生成(需根据实际代码规则调整前缀/后缀):

# 国家-代码规则映射
country_term_config = {
    'Mexico': {'prefix': 'F476', 'terms': ['03M', '01Y', '05Y', '10Y']},
    'Brazil': {'prefix': 'FXXX', 'terms': ['03M', '01Y', '05Y']}
}

# 动态生成完整代码列表
target_tickers = []
for _, config in country_term_config.items():
    for term in config['terms']:
        target_tickers.append(f"{config['prefix']}{term} Index")

步骤2:单次调用blp.bdh获取数据

将代码列表传入blp.bdh,指定所需字段(常用PX_LAST或YLD_YTM_MID)和时间范围:

# 获取2024年全年的收益率数据
yield_data = blp.bdh(
    tickers=target_tickers,
    flds=['PX_LAST'],
    start_date='2024-01-01',
    end_date='2024-12-31'
)

# 输出数据前5行(行是日期,列是代码+字段的MultiIndex结构)
print(yield_data.head())

注意事项

  • 代码有效性:所有传入的代码需在Bloomberg终端验证可用,避免返回空值或调用错误。
  • 批量上限:blp.bdh单次支持约100个ticker,若超过需分批次调用后合并数据。
  • 字段适配:不同代码的可用字段可能有差异,可在终端用FLDS命令查询目标代码的支持字段。

内容的提问来源于stack exchange,提问作者Fróis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 07:13:14