Data
有人可以從哪裡獲得免費(或非常便宜)的高頻分時外匯數據?
我目前正在研究一個大型數據集(10 年內大約有 8000 萬個數據點)。我想要另一組具有一種共同貨幣的數據。例如,我有歐元/美元,想要美元/人民幣或歐元/澳元等。不需要超過整個 10 年,1 年就足夠了。
我在網上找到了一些出售這些數據的地方,但我能找到的最便宜的是大約 60 歐元,這對學生來說很多。
有沒有人可以更便宜地獲得這樣的數據?
杜高斯貝提供歷史報價數據。通過他們的歷史數據網站你可以下載你想要的,但是需要註冊,並且需要大量的手動點擊。
但是,如果您對腳本編寫感到滿意,您可以自己直接下載報價數據。URL 模式是
http://www.dukascopy.com/datafeed/{currency}/{year}/{month}/{day}/{hour}h_ticks.bi5
,因此例如http://www.dukascopy.com/datafeed/AUDCAD/2017/00/01/23h_ticks.bi5
從 2017 年 1 月 1 日 23:00-23:59:59.999 UTC 獲取 AUDCAD 的報價。請注意,月份是從零開始的(我不知道為什麼),所以 Jan-Dec 是 00-11(兩位數)。即使市場關閉,每小時也會以文件的形式存在。
文件格式是 LZMA 壓縮的二進制打封包件,因此您需要根據需要將其解壓縮為 CSV 或其他格式。每個刻度是 20 個字節,五個四字節欄位:
- (long) 從一小時開始的相對時間,以毫秒為單位
- (多頭)要價,以點為單位
- (多頭)買入價,以點為單位
- (浮動)賣出量
- (浮動)投標量
在 python 中,我使用 a
struct.unpack('>LLLff', bytes)
來提取欄位。數據格式在傳輸和儲存方面非常節省空間,但在處理方面效率不高,因此我將其轉換為時間序列以進行儲存。
我的程式碼基於本指南,並且有很多 GitHub 儲存庫可以提供幫助。