時間序列

檢查這兩個時間序列中的差異的正確指標是什麼

  • July 23, 2014

我正在從兩個不同來源獲取同一程式碼和同一天的買/賣價格和成交量市場數據,並檢查它們在時間間隔 X 處“大致相同”。但是,來自兩個不同來源的時間戳並不完全相同,所以我正在做的是每次時間戳跨越一天中的不同秒時拋售價格。有時價格會在那一秒之間變化,有時則不會,但不管我傾倒它在那一秒(或毫秒)開始時的樣子。在對這兩個來源都做了這個之後,我對結果做了一個簡單的繪圖,並且事情在圖形上看起來是一致的:

源 1 全天的所有詢問觀察結果

源 2 全天的所有詢問觀察結果

時間戳並不總是對齊,儘管當我與時間戳列相交並獲得觀察的子集並將它們相互關聯時,我得到的值相對較差。在更高的粒度上更糟,可能是由於類似時間戳的差異。我不確定我是否應該查看其他一些指標來說服自己,這兩個來源都為我提供了關於全天要價/出價的類似資訊,或者將這兩個時間序列相互比較的適當方法是什麼. 我正在尋找它們之間的協整嗎?我想確認的是,假設我知道的第一個來源是準確的數據,我從這些數據中建構我全天的出價/要價視圖——第二個來源並不過分。

發現來自不同來源和數據供應商的歷史價格數據存在顯著差異的情況並不少見。例如,如果您使用免費的雅虎數據和網際網路上的免費 Google 數據查看 2001 年至今期間的 ETF 股票程式碼“EEM”,您會發現在此期間的某些時間他們同意,而在某些時間他們完全不同。使用歷史數據時,問題是:您如何真正“知道”一個系列是“準確的”?

從實際交易的角度來看,一些建議是:

1)警惕免費數據。如果您是一名認真的交易者,那麼從可靠的數據供應商處購買數據可能符合您的最佳利益,該供應商已檢查過數據是否存在錯誤並在最初時對其進行了適當的清理。如果您正在查看連續的期貨合約數據,這一點尤其重要。

  1. 與其在同一數據系列的兩個不同版本不同意時嘗試合併它們(因此至少其中一個可能是錯誤的),不如分別分析它們,然後看看在您的交易中產生的差異是什麼來自兩組的信號。

3)用壞數據污染好數據是沒有意義的。如果你真的知道一個數據集是好的,那麼就照原樣使用它。“少數據但好數據”比“更多數據包括一些壞數據”要好,特別是如果您打算使用某種形式的預測算法。

為了考慮兩個時間序列之間的滯後差異,通常使用DTW(動態時間扭曲)算法。

引用維基 - “一般來說,DTW是一種計算兩個給定序列(例如時間序列)之間的最佳匹配的方法,具有一定的限制。序列在時間維度上非線性地“扭曲”以確定它們相似性的度量獨立於時間維度的某些非線性變化。”

這裡的問題是該算法對於大量輸入可能變得難以處理,因此它通常在分佈式系統上執行。

引用自:https://quant.stackexchange.com/questions/4438