连接到“Iex”或“morningstar”并检索数据

G.M*_*G.M 3 python-3.x pandas pandas-datareader elixir-iex

我尝试从 iex 或 Morningstar 检索历史财务数据。为此,我使用以下代码。

import pandas as pd
pd.core.common.is_list_like = pd.api.types.is_list_like
import pandas_datareader.data as web
import datetime

start = datetime.datetime(2019, 1, 1)
end = datetime.datetime(2019, 1, 10)
facebook = web.DataReader("FB", 'morningstar', start, end)

print(facebook.head())
Run Code Online (Sandbox Code Playgroud)

不幸的是我收到错误消息:

NotImplementedError:data_source='morningstar' 未实现

或者

ValueError:必须通过 api_key 变量或环境变量 IEX_API_KEY 提供 IEX Cloud API 密钥

取决于我使用的两个来源中的哪一个。

我尝试过了

pip uninstall pandas-datareader
pip install pandas-datareader
Run Code Online (Sandbox Code Playgroud)

多次并重新启动内核,但没有任何变化。这个 API 是否有任何变化或者我做错了什么?

小智 5

从文档中:

\n\n

您需要获取IEX_API_KEYfromIEX并将其传递给os.environ["IEX_API_KEY"]。( https://pandas-datareader.readthedocs.io/en/latest/remote_data.html#remote-data-iex )\n我不知道 IEX API 是否仍然有效。

\n\n

morningstar实施。以下数据源(在撰写本文时)是:

\n\n
    Tiingo\n    IEX\n    Alpha Vantage\n    Enigma\n    Quandl\n    St.Louis FED (FRED)\n    Kenneth French\xe2\x80\x99s data library\n    World Bank\n    OECD\n    Eurostat\n    Thrift Savings Plan\n    Nasdaq Trader symbol definitions\n    Stooq\n    MOEX\n
Run Code Online (Sandbox Code Playgroud)\n