Quandl股票API历史数据

Quandl stock API historical data

所以我使用 Quandl API 来获取股票数据,我想获得上个月收盘价的列表。这是我的代码:

import quandl
import datetime as dt

quandl.ApiConfig.api_key = '<API_KEY>'


today=dt.date.today()
thirty_days=dt.timedelta(days=30)   

thirty_days_ago=today-thirty_days



my_list=[]

data = quandl.get("WIKI/AAPL", start_date=str(thirty_days_ago), end_date=str(today),column_index=4)
print '================================================='
my_list.append(data)
print my_list

输出为:

=================================================
[               Close
Date                
2017-04-20  142.4400
2017-04-21  142.2700
2017-04-24  143.6400
2017-04-25  144.5400
2017-04-26  143.6508
2017-04-27  143.7900
2017-04-28  143.6500
2017-05-01  146.6000
2017-05-02  147.5100
2017-05-03  147.0600
2017-05-04  146.5300
2017-05-05  148.9600
2017-05-08  153.0000
2017-05-09  153.9600
2017-05-10  153.2600
2017-05-11  153.9500
2017-05-12  156.1000
2017-05-15  155.7000
2017-05-16  155.4700
2017-05-17  150.2500
2017-05-18  152.5400
2017-05-19  152.9600]

大部分都不错。但是,我无法将这些数据转化为可以在图表中绘制的内容。它在一个列表中,但是如果我打印 my_list[0] 它会打印整个内容,如果我打印 my_list[1] 它会说它超出范围。我知道列表在技术上有一个元素,因为没有逗号,我只是想知道是否有一种方法可以将它拆分(.split 不起作用)到我可以在列表中使用的每个收盘价. (即 [日期 1、价格 1、日期 2、价格 2 等])

quandl return as pandas DataFrame 对象,可以很容易地绘制,即:

import quandl
import datetime as dt
import matplotlib.pyplot as plt

today=dt.date.today()
thirty_days=dt.timedelta(days=30)
thirty_days_ago=today-thirty_days
data = quandl.get("WIKI/AAPL", start_date=str(thirty_days_ago), end_date=str(today),column_index=4)
data.plot();
plt.show()

如果需要,您可以使用以下方法将 return 值更改为 numpy array

data = quandl.get("WIKI/AAPL", returns="numpy")

我认为不需要新列表,放弃它,除非您有充分的理由。