單元 5 / 6 · 5 分鐘閱讀

AI 交易的風險:過度擬合與黑天鵝事件

過度擬合會讓一套策略在舊數據上看來出色、在新數據上卻毫無用處;而黑天鵝則是任何機器人都未曾為之設計的罕見衝擊,這正是為何需要有人的手一直放在停止開關上。

Flash crash with and without a kill switch An account equity line drifts gently up, peaks, then a black-swan crash drives it down. With the kill switch off the line falls to almost zero; with it on the line stops at the chosen loss limit and goes flat as trading halts. $10,000$0黑天鵝虧損上限 −20% ($8,000) 時間 →
熔斷開關
虧損上限−20%
無熔斷開關−99%$120 / $10,000 剩餘,帳戶清零
硬性 −20% 上限−20%$8,000 / $10,000 剩餘,帳戶保全
同一隻黑天鵝,同一套策略。唯一的差別,在於是否事先設定硬性上限以停止交易。未啟用開關時,策略隨跌勢一路下探,帳戶幾乎血本無歸.

試試上方的示範。當停止開關關閉時,一次黑天鵝走勢會拖著帳戶一路跌到幾乎歸零;把它打開,同一場崩盤就會在你的虧損上限處戛然而止。這唯一的差別,一套會失血至死的策略,對比一套會被及時叫停的策略,正是本單元要帶你理解的核心。有兩種失效模式對自動化策略的破壞力勝過其他一切,而它們從相反的方向向你襲來。過度擬合是向過去學得太多的陷阱:一個模型過度黏著舊數據,以致把隨機的抖動誤認為真實的規律。黑天鵝則是相反的問題,也就是未來端出了過去從未包含過的東西,因此再多的學習也幫不上忙。前者說策略把歷史研究得太過火;後者說歷史從來就不是故事的全部。理解這兩者,正是懂得敬重自動化工具的交易者,與被它們悄悄摧毀的交易者之間的分野。

過度擬合:學到雜訊而非訊號

任何一張價格圖表裡都混雜著兩樣東西。一是訊號,也就是你真正想交易的、真實而會重複出現的規律。二是雜訊,也就是隨機、一次性的抖動,發生過一次,之後不會以同樣的方式再出現。

好的模型會學習訊號、忽略雜訊。一個過度擬合的模型則反其道而行:它把雜訊當成有意義的東西背了下來。由於它描摹了歷史數據中每一個微小的起伏,它幾乎完美地貼合過去,使得它的回測看起來像一台印鈔機。但它對未來幾乎毫無預測力,因為它所背下的雜訊並不會重演。

整個陷阱一句話就能說完:過度擬合的策略在舊數據上看來出色,在新數據上卻分崩離析。這是真正的機器學習交易的核心風險,也正是第 4 單元所談的曲線擬合,在規則型策略那一側所產生的結果。

策略過度擬合的徵兆

你不必是數據科學家,也能嗅出過度擬合。幾個明顯的徵兆會露出馬腳:

  • 相對於數據而言參數過多。 一套策略的旋鈕越多,就越容易把它們扭到讓過去看起來完美無瑕。旋鈕一大堆、數據卻不多,這是警訊,而不是賣點。
  • 平滑得不真實的權益曲線。 真正的優勢是坑坑窪窪的。一條幾乎完美呈直線上升的回測曲線,通常意味著這套策略是按照過去的確切形狀捏塑出來的。
  • 脆弱性。 把一個參數輕輕推動一絲,結果就劇烈擺盪;或者策略一碰上從未見過的數據就立刻崩潰。真正的優勢不會那麼嬌弱。
  • 需要不斷重新調校。 如果它只有在你持續調整時才管用,那你維護的並不是優勢,而是在追逐一個不斷移動的雜訊。

健康的直覺,是寧取較簡單、較穩固的策略,而不取複雜、脆弱的那一個,即使複雜的那個秀出更漂亮的回測也一樣。穩健性才是能在接觸到明日數據後存活下來的東西;而一份漂亮得可疑的回測,往往是警訊,而不是獎賞。

黑天鵝事件:數據之外的那一天

在 Nassim Nicholas Taleb 的定義中,黑天鵝是一種罕見、高衝擊的事件,落在正常預期之外,且只有在它發生之後,人人才把它合理化為「事後看來理所當然」。可以想想突如其來的崩盤、交易所倒閉,或是市場從未計入價格的衝擊。

這就是為何黑天鵝對任何自動化策略都是毒藥。模型是從它受訓與測試所用的數據中學習的。而黑天鵝按定義就落在那些數據之外。模型從未見過任何與之稍微相似的東西,因此它沒有任何有效的、學得來的應對方式。它會繼續套用那些為一個已不復存在的世界所建立的規則。

情況還會更糟。真實市場具有肥尾,意思是極端的走勢發生的頻率,高於一個工整的鐘形曲線模型所假設的。因此,一套按「正常」波動率校準的策略,對於那唯一真正要緊的一天,其實毫無準備,因為它對「情況能壞到什麼地步」的整套認知,一開始就設得太低。

自動化何時會讓崩盤更嚴重

自動化不只是在崩盤時應對不良,它還可能助長崩盤的發生。

在 2010 年 5 月 6 日的閃電崩盤(Flash Crash)中,道瓊指數(Dow Jones)在數分鐘內反彈之前,一度下跌約 998 點(約 9%),市值約 1 兆美元短暫蒸發,而整起事件前後大約持續 36 分鐘。在這類事件中,自動化策略會火上加油:連環的止損單被觸發、引發更多賣壓,買盤蒸發,導致沒有人願意以合理價格接手,而成交價落在離策略「預期」交易的位置很遠的地方。

自動化也會以機器的速度執行純粹的錯誤。Knight Capital 就在約 45 分鐘內損失了約 4.4 億美元,起因是一次有缺陷的軟體部署,讓一套自動化系統發出了一連串非本意的訂單風暴。機器人不會恐慌,這聽起來像是一項優點,但它也不會停下來思考,而在全速運轉之下,那正是危險所在。

為何停止開關需要一個人

兩種失效模式都指向同一個安靜的教訓。要辨識出「這個情況,超出了我的策略所設計應對的任何範圍」,是一項需要判斷的抉擇,而一條固定的規則、或一個用正常數據訓練出來的模型,通常無法自行做出這個判斷。它只認得別人給它看過的那個世界。

這就是為什麼一個手動的停止開關,加上積極的人為監督,是風險控制,而不是設置原始落後的表現。最危險的自動化策略,並不是那個偶爾出錯的策略。而是那個充滿自信地一路交易進它從未被設計來處理的環境裡的策略,因為沒有人在旁盯著、等待那個該拔掉插頭的時刻。建立這些限制,正是第 6 單元的全部重點。

過度擬合的曲線遇上現實

把兩套策略並排來看。

策略 A 有 15 個參數,全都以三年的歷史數據最佳化。在樣本內,它呈現 95% 的勝率,以及一條絲滑的 +200% 權益曲線。它看起來勢不可擋。接著,你原封不動地把它放到一個它從未見過的新年度上運行。勝率掉到約 48%,報酬則落在約 −12%。更糟的是,把單一參數推動一格,就把那樣本內的 +200% 翻轉成約 −5%。這種劇烈的敏感度,加上在新數據上的崩潰,是教科書等級的過度擬合:那 15 個旋鈕描摹的是過去的雜訊,而不是真正的優勢。

策略 B 只用了 2 個參數。在樣本內,它呈現較為樸實的 80% 勝率。在樣本外,它維持在約 74%,而且小幅度的參數變動幾乎不會撼動它。它的回測沒那麼耀眼,但它的優勢在它從未見過的數據上依然穩定。

一個有紀律的交易者,會採用策略 B、刪掉策略 A,因為在實盤交易中,穩健性每一次都勝過漂亮的回測。

「肥尾」到底是什麼意思

許多簡單的模型會悄悄假設市場報酬遵循一條工整的鐘形曲線(常態分布),在其中,巨大的走勢罕見到你幾乎可以忽略它們。真實市場並非如此運作。它們的報酬分布具有肥尾:位於遠端邊緣的極端結果,發生的頻率遠高於鐘形曲線的預測。

實務上的後果令人不安。一套按「正常」日子調校的策略,會把十年一遇的走勢當成基本上不可能發生,因此它決定倉位規模、設定風險時,彷彿那個巨大的衝擊永遠不會到來。當肥尾真的現身時,而在夠長的時間跨度上它總是會現身,這套策略就會被逮個正著,暴露的風險遠遠超出它曾經估算過的。肥尾是黑天鵝之所以對那些假設風平浪靜的模型造成如此巨大破壞的一大原因。

兩台把情況弄得更糟的機器

2010 年的閃電崩盤與 Knight Capital 的虧損值得細細思量,因為它們展示了自動化把「糟糕」轉變為「災難」的兩種方式。

閃電崩盤是一場流動性連鎖崩塌。自動化的賣出催生出更多自動化的賣出,掛在盤上的買單幾乎在瞬間被撤走,而有那麼幾分鐘,市場根本沒有底。某些資產的價格在市場猛然反彈之前,成交在荒謬的價位上。過程中並不需要任何單一的「程式錯誤」;眾多自動化參與者之間的回饋循環就已足夠。

Knight Capital 則是一次部署失誤。一次有瑕疵的軟體上線,讓一段舊程式碼仍處於啟用狀態,於是這家公司的自動化系統在市場一開盤的瞬間,就開始發出如洪水般非本意的訂單。這並不是策略對市場判斷錯誤,而是一台機器在人類能夠介入之前,把一個錯誤執行了數千次,約 4.4 億美元在大約四十五分鐘內蒸發殆盡。

起因不同,教訓相同:沒有人為熔斷機制的速度,會把一個小小的過失變成一場大災難。

快速知識檢核

用白話說,什麼是過度擬合? 一套對過去數據調校得太過緊密的策略,以致它背下的是隨機雜訊、而非真實規律,因此它在回測中看來出色,一旦實盤交易卻毫無預測價值。

為何自動化策略在結構上對黑天鵝毫無準備? 黑天鵝按定義就落在策略受訓與測試所用的數據之外,因此策略從未見過任何類似的東西,也沒有任何有效的、學得來的應對方式;而且市場具有肥尾,使得這類衝擊比常態模型所假設的更為常見。

為何決定何時關閉一套策略需要由人來做? 要辨識出當前環境已超出策略所設計應對的範圍,是一項需要判斷的抉擇,一條固定的規則、或一個以正常數據訓練出來的模型,都無法可靠地自行做出,因此手動的停止開關與人為監督是不可或缺的控制,而不是系統原始落後的表現。

資料來源

  • Notices of the AMS(學術),Bailey、Borwein、Lopez de Prado 與 Zhu,"Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance",說明模型如何可能描述的是隨機雜訊而非底層規律,進而無法推廣到新數據。
  • arXiv(學術),Nassim Nicholas Taleb,"Statistical Consequences of Fat Tails",Nassim Nicholas Taleb 對一種罕見、高衝擊、且只有事後才被合理化為可預測之事件的定義。
  • U.S. SEC 與 CFTC(聯合幕僚報告),"Findings Regarding the Market Events of May 6, 2010",關於 2010 年 5 月 6 日盤中崩盤、其規模,以及其約 36 分鐘的持續時間。
  • U.S. SEC,"Press Release 2013-222: SEC Charges Knight Capital With Violations of Market Access Rule",關於 2012 年 8 月 1 日的軟體部署失誤及其所導致的虧損。
  • OECD(OECD.AI Policy Observatory),"What is AI? Defining AI and machine learning",關於那些從數據中學習規律、而非遵循明確書寫規則的模型。