使用时alpha_vantage由于某种原因,批量提取股票报价get_batch_stock_quotes
不会返回符号“ARRS”的报价。但是,如果仅使用符号列表中的“ARRS”调用该函数,则会返回报价。如果我可以在一个请求中返回所有报价,我不想进行多次单独的调用。
以下是测试代码:
import pandas as pd
from alpha_vantage.timeseries import TimeSeries
import time
api_key = '12BHXD9VVA9M1PUM'
ts = TimeSeries(key=api_key, output_format = 'pandas')
stocklist = ("ARRS","PCG","AAPL","ACB")
STOCK=""
PRICE=0
data, meta_data =ts.get_batch_stock_quotes(symbols=stocklist)
for label, row in data.iterrows():
STOCK=row[0]
PRICE=p=round(float(row[1]),2)
print (STOCK,PRICE)
结果:
$ python3 test8.py
PCG 11.67
AAPL 212.3
ACB 5.79
如果我只是使用 stocklist = ("ARRS")
结果是:
$ python3 test8.py
ARRS 31.64
为什么会发生这种情况?提前致谢。
答案1
为什么会发生这种情况?
不幸的是,这似乎可能是您环境特有的问题。在 Windows 7 上使用 Python 3.7.4 复制并粘贴代码后,正如预期的那样,产生了所有四个带有价格的符号:
ARRS 31.64
PCG 11.03
AAPL 202.79
ACB 5.64