雅虎财经API为一些股票行情返回NAN



我试图使用雅虎金融做一些非常简单的分析,只是为了习惯使用它。我试图从雅虎金融导入数据,然后让它显示在图表上。在代码中,你可以看到我添加了一些股票代码来获取数据,但我似乎永远无法获取道琼斯、标普等指数的数据;500或纳斯达克。它一直在为所有这些返回NaN。

我的问题是,雅虎金融的API是否不包含这些数据,或者我是否需要做其他事情来获取指数数据?

(jbtw在我寻找ETF数据时遇到了同样的问题(

from pandas_datareader import data
import matplotlib.pyplot as plt
import pandas as pd
start_date = '2000-06-30'
end_date = '2020-06-30'
stocks = ['OMC','PUB','WPP','IXIC']
panel_data = data.DataReader(stocks,'yahoo',start_date,end_date)
panel_data = panel_data[['Adj Close']]
print(panel_data)
panel_data.plot(y = 'Adj Close')
plt.show()

Output:
Attributes  Adj Close                           
Symbols           OMC        PUB        WPP IXIC
Date                                            
2000-06-30  29.635815        NaN  39.444866  NaN
2000-07-03  30.093342        NaN  39.275150  NaN
2000-07-05  29.822983        NaN  39.512760  NaN
2000-07-06  29.407042        NaN  39.852219  NaN
2000-07-07  28.284004        NaN  39.241199  NaN
  • 注意:在上面的例子中,列"PUB"获取的数据不在我粘贴的行中,IXIC是不返回任何内容的列

好吧。当我尝试时,这个效果很好。我所做的唯一改变是将你的股票代码从IXIC更新为^IXIC,这就是它在雅虎金融上的表现。纳斯达克综合指数。我希望这就是你想要得到的。

from pandas_datareader import data
import matplotlib.pyplot as plt
import pandas as pd
start_date = '2000-06-30'
end_date = '2020-06-30'
stocks = ['OMC','PUB','WPP','^IXIC']
panel_data = data.DataReader(stocks,'yahoo',start_date,end_date)
panel_data = panel_data[['Adj Close']]
print(panel_data)
panel_data.plot(y = 'Adj Close')
plt.show()

最新更新