2014-04-01 52 views
3

這工作:國內庫存Python的大熊貓谷歌金融國際股市 - 尋找方式來獲得國際股票價格的歷史與谷歌

gticker='NYSE:IBM' 
import pandas.io.data as web 
dfg = web.DataReader(gticker, 'google', '2013/1/1', '2014/3/1') 

這不:國際股票

gticker='HKG:0700' 
import pandas.io.data as web 
dfg = web.DataReader(gticker, 'google', '2013/1/1', '2014/3/1') 

即使兩個,您可以轉到「歷史價格」鏈接並查看歷史數據。

有什麼建議嗎?

+4

人列出0 https://www.google.com/finance/historical?q=NYSE%3AHSEA

匯豐銀行的股票,不知道爲什麼這是封閉的,問題是非常具體的用正確的示例代碼。 – citynorman

回答

2

谷歌的DataReader希望下載一個csv文件。因此,對於「goog」它需要以下網址獲取該CSV文件:

http://www.google.com/finance/historical?q=GOOG&startdate=Jan+1%2C+2013&enddate=Mar+1%2C+2014&output=csv

這是所有國內股票(如IBM)真。但對於「HKG:0700」它請求:

http://www.google.com/finance/historical?q=HKG%3A0700&startdate=Jan+01%2C+2014&enddate=Mar+01%2C+2014&output=csv

,併產生一個「的請求的URL沒有此服務器上找到。」錯誤。你可以看一下歷史數據爲:

http://www.google.com/finance/historical?q=HKG%3A0700&startdate=Jan+01%2C+2014&enddate=Mar+01%2C+2014

但它並不像你可以得到一個CSV文件。

你看它是什麼做的熊貓/ IO/data.py時,它創建的網址:

# www.google.com/finance/historical?q=GOOG&startdate=Jun+9%2C+2011&enddate=Jun+8%2C+2013&output=csv 
url = "%s%s" % (_HISTORICAL_GOOGLE_URL, 
       urlencode({"q": sym, 
          "startdate": start.strftime('%b %d, ' '%Y'), 
          "enddate": end.strftime('%b %d, %Y'), 
          "output": "csv"})) 
+0

感謝您的解釋。但我想我正在問如何使用熊貓獲得谷歌的國際股票。 – jason

3

看來谷歌財​​經僅支持CSV下載美國和英國市場爲紐帶「下載到電子表格」下的‘歷史圖表’只出現在下面的示例中這兩個市場上市的股票:

在英國上市

匯豐股票 https://www.google.com/finance/historical?q=LON%3AHSBA

匯豐股票在美國上市香港 https://www.google.com/finance/historical?q=HKG%3A0005

+1

除了在英國工作(例如LSE:ULVR),它也適用於德國(例如ETR:HEN)和瑞士(例如VTX:NESN)。它似乎對法國(例如EPA:BN)和西班牙(例如BME:ITX)無效。 –