0

我最近尝试使用 Alpha Vantage(一种金融 API)来获取有关所提供股票 Microsoft 的股票市场信息;为了完成这个,我使用了官方模块文档网站上提供的模块信息,如下所示:

https://alpha-vantage.readthedocs.io/en/latest/source/alpha_vantage.html#module-alpha_vantage

在这个特定的网站中,调用特定股票每日数据的官方标准参考如下:

“get_daily(*args, **kwargs)

返回两个 json 对象中的每日时间序列作为数据和元数据。出现问题时会引发 ValueError

关键字参数:

symbol – 我们想要获取其数据的权益的符号 outputsize – 调用的大小,支持的值是 'compact' 和 'full; 第一个返回数据序列中的最后 100 个点,'full' 返回完整的每日时间序列,通常在 1MB 以上(默认为 'compact')"

除此之外,我还遵循了网站上之前引用的说明,该说明要求建立一个环境或条件变量来放置用于访问 Alpha Vantage API 的 API 密钥。使用这样的密钥,我通过 MacOS 终端使用命令“python”进入 Python shell。在此之后,我使用列出的所有条件变量编写了以下代码行:

>>> from alpha_vantage.timeseries import TimeSeries
>>> API_KEY = '9DE8M4Z80PTU2272'
>>> import matplotlib.pyplot as plt
>>> stock = TimeSeries.get_daily(key = API_KEY, symbol = 'MSFT', outputsize = 'full')

但是,终端内的 shell 提供了以下错误消息:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: _format_wrapper() missing 1 required positional argument: 'self'

正如官方网站上所述,提供了模块使用所需的所有变量后,我不确定上述程序的此错误的来源。会不会碰巧知道它为什么会提供以下错误?我正在通过 MacOS 终端在 Python shell 中使用 alpha_vantage 库。谢谢您的帮助。

4

1 回答 1

1

关闭,正如 Bailey Kocin 所提到的,您必须创建 TimeSeries 对象的实例,然后在该实例上调用函数。

试试这个:

>>> from alpha_vantage.timeseries import TimeSeries
>>> API_KEY = 'XXXXXXXX'
>>> import matplotlib.pyplot as plt
>>> ts = TimeSeries(key=API_KEY)
>>> ts.get_daily(symbol = 'MSFT', outputsize = 'full')
于 2019-12-31T20:02:37.760 回答