首页 > 解决方案 > Alpha Vantage 扩展盘中数据

问题描述

我正在为一个项目使用 Alpha Vantage 扩展的日内数据,它为您提供了 2 年的数据。它的工作方式是你可以通过 slice 方法逐月拉取。这样做是为了使其更快、更高效。为了我的研究目的,我需要将整整两年的时间都提取出来并将其保存在数据框中。我想知道是否有办法使用 for 循环方法来做到这一点。这个切片的问题,因为我允许每个请求 1 个月。就像这样,过去 2 年的盘中数据平均分为 24 个“切片”-year1month1、year1month2、year1month3、...、year1month11、year1month12、year2month1、year2month2、year2month3、...、year2month11、year2month12。每个切片是一个 30 天的窗口,其中 year1month1 是最近的,year2month12 是离今天最远的。默认情况下,切片 = 年 1 月 1。

# replace the "demo" apikey below with your own key from https://www.alphavantage.co/support/#api-key
import csv
import requests
import pandas as pd 
symbol='tsla'
CSV_URL = f'https://www.alphavantage.co/query?function=TIME_SERIES_INTRADAY_EXTENDED&symbol={symbol}&interval=1min&slice=year1month2&apikey={api_key}' 

with requests.Session() as s:
    download = s.get(CSV_URL)
    decoded_content = download.content.decode('utf-8')
    cr = csv.reader(decoded_content.splitlines(), delimiter=',')
    my_list = list(cr)   
    df=pd.DataFrame(my_list)
    print(df)

 

标签: pythonpandasalpha-vantage

解决方案


推荐阅读