機器學習能預測加密貨幣價格嗎?以片段插值法為例解析
本文發布於加密谷Live,作者:Michel Kana,翻譯:Jeremy。
這份實用指南提供了你預測加密貨幣價格飛速上漲所需的基礎知識。
十五年前,我開始探索數字貨幣的世界,並為一個只使用短信的點對點移動貨幣平台做了原型。
最近,我的一位合作者問我,人工智慧是否可以預測加密貨幣的價格。她對區塊鏈的炒作很好奇。
經過研究,我發現預測加密貨幣價格是一個可以解決的問題,但絕對不是針對所有市場條件。
加密資產的典型預測模型將利用時間序列預測(如 ARIMA、Facebook Prophet)、機器學習(如隨機森林算法、線性回歸)或深度學習方法(如 LSTM)。
在本文中,我研究了在預測給定日期的 Litecoin 平均價格時,片段插值的表現如何。
數據
我們將關注 2013 年 4 月至 2021 年 2 月期間 Litecoin 的歷史價格。這些數據取自 coinmarketcap,並且是可以免費使用的。我將數據分為 80% 的訓練數據集和 20% 的測試數據集。後者用於評估我們預測收盤價的準確性。
加密貨幣 Litecoin 的價格歷史 (Source: Kaggle)
短暫的探索性數據分析顯示,平均收盤價在年初和年末是最高的。10 月份最低。
多項式回歸
你可能聽說過多項式回歸,這可以說是創建一個階數為 d 的基礎來近似一個非線性函數(在我們的例子中,加密貨幣價格波動)的最簡單例子。
我對 Litecoin 的歷史價格進行了簡單的多項式回歸,使用 5、25 和 80 的階數。在每種情況下,R2 值將提供一些關於模型在測試數據集上的擬合度好壞的信息。
從下面的藍線與訓練數據的擬合度來看,我們可以觀察到隨著多項式階數的增加,曲線越來越陡峭。這是由於模型複雜性增加,因為高階多項式試圖追逐訓練集中的每一個單一數據點。
第 0 天代表 2013 年 4 月 30 日,第 2800 天代表 2021 年 2 月 28 日。
特別是在有離群值的區域(圖的中間部分),高階多項式往往會向這些離群值的方向發展。因此,80 階多項式的模型具有最高的方差。
它在訓練數據上的偏差也是最低的,這體現在最高的 R2 值上,相比之下,低階多項式的 R2 更低,意味著更高的偏差但更低的方差。低階多項式對訓練數據的敏感性較低。
分片插值
我發現一個更靈活的方法是使用片段多項式來預測加密貨幣價格。
分片插值用低階多項式擬合大量的數據點。由於我們只使用低階多項式,我們消除了過度的振盪和非收斂性。
給定一組數據點,分片插值的工作原理是在每一部分數據中使用不同的多項式。
特別是,我們使用連接的分片多項式,也稱為樣條。
樣條的一個例子是下面的截斷線性函數。它在 4 的左邊是平的,稱為函數的結。
給定幾個結點,我們可以將多個線性基函數組合起來,並將其擬合到非線性數據中。
為了檢測加密貨幣價格中存在的高度曲線關係,我使用了一個截斷的三次函數,也叫三次樣條。
使用三次樣條,我們將數據分割成塊,並對每個塊擬合一個三次樣條。每個樣條函數在結點處連接到下一個函數。
三次樣條是加密貨幣價格變化的一個非常好的選擇,因為連接是平滑的。三次樣條的斜率和它們的第一和第二導數都是匹配的。三次樣條是 3 階的多項式函數,它仍然足夠小,以避免差異性。
三次 B-樣條是三次樣條的一個更容易的變體,用於高效計算,因為最多有 5 個基函數參與貢獻插值。下面我們可以看到三次 B-樣條在 Litecoin 價格上的表現,將結點放在四分位數上之後。
通過手動選擇結點,即在我們有一堆數據點的情況下,與根據四分位數放置結點時的值相比,我們在測試數據集上實現了更好的 R2。
在邊界附近的三次樣條可能表現得很奇怪,你能夠在上面的紅色圖中注意到。所謂的自然三次樣條通過在每個極限處將一個三次多項式改為線性來強制要求函數在極限結點之外是線性的。
自然三次樣條需要選擇一個自由度。對於 Litecoin 的價格,我通過交叉驗證找到了最佳自由度:挑選了合適的 174 個結點的量子作為預測器的日期。結果與三次 B-樣條相比,邊緣的差異性更小,但測試數據集的 R2 略差。
最後,我實現了平滑樣條,在懲罰價格變化的同時,使均方誤差最小化。
平滑樣條似乎是 Litecoin 價格最合適的分片插值。該模型在測試數據集上實現了迄今為止獲得的最佳 R2 值。
三次樣條模型令人興奮的部分是如何超越用於訓練模型的數據範圍進行推斷。
根據以預測和時間序列工作而聞名的著名統計學家 Rob Jhyndman 的說法,三次平滑樣條模型在預測方面可以作為與 ARIMA 模型等效的模型,但其參數空間受到限制。Rob 聲稱,樣條模型提供了一個平滑的歷史趨勢以及線性預測函數。
我邀請你進一步試驗這個想法。我的計算機代碼可以在網上以 Jupyter Python/R Notebook 形式查看。
本文中使用的 Google Colab Notebook
數字貨幣和加密貨幣,如 Litecoin,是現代全球經濟中最具爭議和最複雜的技術創新。本文旨在使用一種不太流行的方法:三次樣條來預測 Litecoin 價格的變化。