Ao usarvantagem_alfaextrair cotações de ações em lote por algum motivo get_batch_stock_quotes
não retorna a cotação para o símbolo "ARRS". Porém, se a função for chamada usando apenas "ARRS" na lista de símbolos, a cotação será retornada. Não quero fazer várias ligações individuais se conseguir que todas as cotações sejam retornadas em uma única solicitação.
Aqui está o código de teste:
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)
Resultados:
$ python3 test8.py
PCG 11.67
AAPL 212.3
ACB 5.79
Se eu apenas usar stocklist = ("ARRS")
o resultado é:
$ python3 test8.py
ARRS 31.64
Por que isso acontece? Desde já, obrigado.
Responder1
Por que isso acontece?
Infelizmente, isso parece ser algo específico do seu ambiente. Copiar e colar seu código no Windows 7 com Python 3.7.4 rendeu todos os quatro símbolos com preços, conforme esperado:
ARRS 31.64
PCG 11.03
AAPL 202.79
ACB 5.64