正常化

標準化不同股票基於價格的特徵以進行監督學習的正確方法

  • May 22, 2022

假設我們有一個用於股票領域的 OHLCV 數據集。我們希望根據這些價格數據創建特徵。由於每隻股票的價格範圍可能與另一隻股票的價格範圍非常不同,如果我們僅採用對數增量(例如開盤收盤),那麼價格範圍在 1000-2000 左右的股票看起來與價格範圍為1-10左右。這也會發生在價格隨時間發生劇烈變化的股票(或任何工具)上。例如,BTC 最近的價值急劇上升。

在不同價格範圍的不同股票中標準化或規範化這些特徵的好方法是什麼?

對數回報通常足以將不同的股票放在相同的規模上。是的,有些股票可能有 100% 的回報,而其他股票只有 1%。您可以將它們標準化(mean=0,stdev=1)。但是,這不是您希望模型擷取而不是通過規範化或標準化刪除的功能嗎?

@休。您可以嘗試通過將價格除以標準差來標準化股票價格來添加一個特徵,類似於在比較歷史收益時如何使用夏普比率來考慮波動性。在查看歷史價格數據時,您需要估計每個價格數據點存在的波動性。您可以通過計算前 x 天的歷史數據點的標準偏差來做到這一點,或者使用隱含波動率。我還會在模型中保留原始股票價格,因為價格/標準偏差對於每個股票價格來說不是唯一的,而是作為一個特徵增加價值。

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