Alpha Vantage异步(股票代码)


from alpha_vantage.async_support.techindicators import TechIndicators
import asyncio
symbols = ['ADI', 'ADMA', 'ADMP', 'ADMS', 'ADNC', 'ADP', 'ADRA', 'ADRD', 'ADRE', 'ADRU', 
'ADSK', 'ADTN', 'ADUS', 'ADVS',
'ADXS', 'ADXSW', 'AEGN', 'AEGR', 'AEHR', 'AEIS', 'AEPI', 'AERI', 'AETI', 'AEY', 'AEZS']
key = open('alphavantageAPI').read()
async def get_data(symbol):
ti = TechIndicators(key, output_format='pandas')
data, _ = await ti.get_sma(symbol=symbol, interval='daily', series_type='close')
await ti.close()
return data
if __name__ == '__main__':
loop = asyncio.get_event_loop()
tasks = [get_data(symbol) for symbol in symbols]
group1 = asyncio.gather(*tasks)
results = loop.run_until_complete(group1)
loop.close()
print(results)

我有25个符号(股票代码(。在Alpha Vantage,您每分钟可以收到5个股票行情。

我需要收到5个股票行情,等待1分钟,然后再收到5个。也许有人可以告诉我在这个代码中需要添加或更改什么。谢谢你,

p.S我知道Premium,但这是我需要解决的任务。

您可以使用sleep函数为每个请求等待12到15秒。

这是伪代码:

import numpy as np
from time import sleep
symbols = ['ADI', 'ADMA', 'ADMP', 'ADMS', 'ADNC', ...]
...
for symbol in symbols:
data = getDataFrom(symbol)
sleep(np.random.randint(12, 15))
...

最新更新