使用YahooDailyReader获取XAUUSD数据失败,求正确黄金交易代码及途径
解决Yahoo Finance黄金数据获取的RemoteDataError问题
我来帮你搞定这个获取黄金数据的报错问题~你提到的XAUUSD=X确实是Yahoo Finance上GOLD 1 OZ的正确交易代码,不过运行代码出错可能有几个小细节需要调整,下面给你一步步说明:
修正后的可运行代码
先直接给你能用的代码,核心就是用对XAUUSD=X这个代码,同时注意版本适配:
import pandas_datareader as pdr import datetime from ta import * # 使用正确的Yahoo黄金代码XAUUSD=X gold_data = pdr.get_data_yahoo('XAUUSD=X', start=datetime.datetime(1980, 1, 3), end=datetime.datetime(2019, 5, 15), interval='m') # 打印前几行数据验证 print(gold_data.head())
报错的常见原因及解决办法
- API版本不兼容:旧版的
pandas_datareader可能对接不上Yahoo Finance的新API,建议你先升级到最新版本:pip install --upgrade pandas-datareader - 历史数据区间限制:Yahoo Finance可能没有1980年这么早的黄金月度公开数据,你可以先把起始时间改成2000年左右测试,确认能获取数据后再逐步调整区间。
怎么找正确的交易代码?
要确认Yahoo上各类资产的正确代码其实很简单:
- 打开Yahoo Finance,直接搜索你要找的资产名称(比如“GOLD 1 OZ”)
- 找到对应的资产页面后,看浏览器地址栏里的路径,比如黄金页面的地址里,
XAUUSD=X就是你要的代码 - 另外在页面的“Summary”区域,资产名称旁边也会标注这个代码,一眼就能看到。
内容的提问来源于stack exchange,提问作者Rudolf Morkovskyi
相关产品推荐
相关产品推荐

