使用する場合アルファバンテージ何らかの理由で、バッチ株価情報を取得しようとすると、get_batch_stock_quotes
シンボル「ARRS」の株価情報が返されません。ただし、シンボル リストで「ARRS」のみを使用して関数を呼び出すと、株価情報が返されます。1 回のリクエストですべての株価情報が返されるのであれば、個別に複数の呼び出しを行う必要はありません。
テストコードは次のとおりです。
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 を使ってコードをコピーして貼り付けると、予想どおりに 4 つのシンボルすべてに価格が表示されました。
ARRS 31.64
PCG 11.03
AAPL 202.79
ACB 5.64