如何使用带有句号的股票代码从 Quandl 获取股票数据?蟒



由于Python的pandas_datareader API不再能够提取雅虎财经股票数据,我正在使用quandl。这需要设置一个帐户并在命令终端中执行"pip install quandl"。 如果我有一个不寻常的股票代码,比如说BRK。B,使用pandas_datareader API从Google提取股票数据工作得很好。

import pandas as pd
import datetime
from pandas_datareader import data, wb
start = datetime.datetime(2016, 1, 1)
end = datetime.datetime(2017, 1, 1)
brk = data.DataReader("BRK.B", "google", start, end)["Close"]
brk

但是,由于股票代码BRK,这不适用于Quandl。B内部有一个句号。

import quandl
brk = ["BRK.B"]
for stk in brk:
b = quandl.get("WIKI/{}".format(stk),
authtoken = "Mixture of numbers, and lower/upper case letters",
start, end)["Adj. Close"]

这会导致代码中断。但是,如果我交换["BRK。B"]对于任何正常的股票行情,比如["AAPL"],它工作得很好。 但是,我想使用 quandl API 从标准普尔 500 指数中提取所有 505 只股票,因为某些股票代码中有一个".",它不起作用。 我试过format(stk.replace(".", "-")),但也没有用。

任何帮助将不胜感激。顺便说一句,对于那些不知道的人。您必须设置一个 quandl 帐户,然后从您的 quandl 帐户设置中获取您的 API 密钥代码,然后将其复制并粘贴为您的身份验证令牌。

您是否尝试用下划线替换它?

"WIKI/{}".format(stk.replace(".", "_"))  # replacing . with _ instead of -

如果我没记错的话,点用于从数据中切片特定列。

最新更新