ystockquote.get_historical_prices无法处理动态日期

时间:2013-11-19 14:52:14

标签: python python-2.7 anaconda yahoo-finance

我正在尝试使用ystockquote构建项目组合管理程序。

我可以使用

来降价
ystockquote.get_historical_prices(y, '2013-11-01', '2013-11-11')

其中y循环遍历符号列表,即。 ('MSFT','F','MMM') 我希望日期是动态的,但是以下代码

print sDate
print eDate

for y in depot_sym:
print ystockquote.get_historical_prices(y, sDate, eDate)

产生以下

2013-09-30
2013-11-19                                                                      
Traceback (most recent call last):                                                
File "C:\***\deriv4\test.py", line 26, in <module>       
print ystockquote.get_historical_prices(y, sDate, eDate)                      
File "C:\Anaconda\lib\site-packages\ystockquote.py", line 156, in get_historical_prices                                                                           
'a': int(start_date[5:7]) - 1,                                              
TypeError: 'datetime.date' object has no attribute '__getitem__'                

为什么会这样?

1 个答案:

答案 0 :(得分:2)

ystockquote.get_historical_prices()期望格式为“YYYY-MM-DD”的字符串,而不是date个对象,作为第二个和第三个参数。尝试使用

投射日期
sDate.strftime("%Y-%m-%d")