当前位置: 首页 > 知识库问答 >
问题:

熊猫和雅虎金融如何获得“美元兑日元”(汇率)?

华凡
2023-03-14

我正在学习和使用熊猫和蟒蛇。

今天,我想制作一张外汇汇率表,但我在获取美元兑日元的价格时遇到了麻烦。

当我得到‘欧元/美元’的价格时,我会这样编码。

eur = web.DataReader('EURUSD=X','yahoo')['Adj Close']

它起作用了。

但是当我写的时候

jpy = web.DataReader('USDJPY=X','yahoo')['Adj Close']

错误消息如下所示:

---------------------------------------------------------------------------()中的IOError回溯(最近一次调用)----

数据读取器中的C:\Anaconda\lib\site packages\pandas\io\data.pyc(名称、数据源、开始、结束、重试计数、暂停)70返回get\u data\u yahoo(符号=名称,开始=开始,结束=结束,71调整价格=假,chunksize=25---

C:\Anaconda\lib\site-包\熊猫\io\data.pycget_data_yahoo(符号,开始,结束,retry_count,暂停,adjust_price,ret_index,chunksize,名称)388""389返回_get_data_from(符号,开始,结束,retry_count,暂停,--

C:\Anaconda\lib\site packages\pandas\io\data.pyc in_get_data_from(符号、开始、结束、重试计数、暂停、调整价格、检索索引、chunksize、源、名称)334#如果是单个符号,(例如,“GOOG”)335如果是持续的(符号,(basestring,int)):--

C:\Anaconda\lib\site packages\pandas\io\data.pyc在"获取历史"yahoo(符号,开始,结束,重试"计数,暂停)188"

C:\Anaconda\lib\site packages\pandas\io\data.pyc in\u retry\u read\u url(url,retry\u count,pause,name)167 168引发IOError(“在%d次尝试之后,%s没有”--

IOError:尝试3次后,雅虎!没有为url'返回200http://ichart.yahoo.com/table.csv?s=USDJPY=X

其他货币如“英镑美元”也有同样的问题。

你能解决这个问题吗?

你有从雅虎或谷歌获得美元的想法吗???

共有3个答案

仲孙兴平
2023-03-14

从OANDA获取历史汇率http://pandas-datareader.readthedocs.io/en/latest/remote_data.html

In [1]: from pandas_datareader.oanda import get_oanda_currency_historical_rates
In [2]: start, end = "2016-01-01", "2016-06-01"
In [3]: quote_currency = "USD"
In [4]: base_currency = ["EUR", "GBP", "JPY"]
In [5]: df_rates = get_oanda_currency_historical_rates(
            start, end,
            quote_currency=quote_currency,
            base_currency=base_currency
        )
In [6]: print(df_rates)

更新:Oanda最近开始为此收费https://www.oanda.com/fx-for-business/exchange-rates-api

荀金鹏
2023-03-14

雅虎财经没有提供汇率的历史数据

是的,但不是交叉收费。所有与雅虎美元汇率的美元列表

a = web.DataReader("JPY=X", 'yahoo')
柴嘉禧
2023-03-14

Yahoo Finance不提供汇率的历史数据(即页面左上角没有股票、指数等的“历史价格”链接)

你可以使用弗雷德(圣路易斯联邦储备局数据)来获得这些汇率。。。

import pandas.io.data as web

jpy = web.DataReader('DEXJPUS', 'fred')

更新:已移动数据读取器

from pandas_datareader import data
jpy = data.DataReader('DEXJPUS', 'fred')

或者更直接的方式。。。

jpy = web.get_data_fred('DEXJPUS')

FRED每日数据的所有汇率列表可在此处找到:http://research.stlouisfed.org/fred2/categories/94

 类似资料:
  • 问题内容: 我有一个包含布尔值的pandas对象。如何获得包含每个值逻辑的序列? 例如,考虑一个包含以下内容的系列: 我想要获得的系列将包含: 这似乎应该相当简单,但显然我放错了我的mojo =( 问题答案: 要反转布尔系列,请使用: 使用Python2.7,NumPy 1.8.0,Pandas 0.13.1: 从Pandas 0.13.0开始,Series不再是;的子类。它们现在是的子类。这可能

  • 我有一个包含布尔值的pandas对象。如何获得包含每个值的逻辑

  • 我正在使用这个数据帧: 我想通过<code>Name</code>和<code>Fruit</code〕来聚合,以获得每个<code>名称</code>的<code>Fruit<-code>总数。例如: 我尝试按和分组,但如何获取的总数?

  • 问题内容: 如何获得系列中最常出现的物品? 考虑系列 返回值应该是 问题答案: 您可以使用并提取第一个值: 这不一定是低效率的。与往常一样,对您的数据进行测试以查看适合的数据。

  • 我需要能够得到阿达·卡达诺的收盘价在0.10美元到1.00美元之间。我该怎么做?我尝试使用and if语句进行for循环,但似乎不起作用。

  • 问题内容: 我有一个这样的数据框: 呼唤 将返回 现在,我想对列“ C”执行“相同”操作。因为该列包含字符串,所以sum()不起作用(尽管您可能认为它将字符串连接在一起)。我真正想看到的是每个组的字符串列表或一组字符串,即 我一直在尝试找到方法来做到这一点。 尽管Series.unique()(http://pandas.pydata.org/pandas- docs/stable/genic/p