1. 引言
外匯市場是全球規模最大、流動性最高、波動性與複雜性兼具的金融市場。由於受到眾多宏觀經濟因素、地緣政治事件與市場情緒的影響,預測外匯價格走動向來極為困難。傳統的技術分析雖然有用,但往往無法適應市場的突然轉變或「黑天鵝」事件。本文提出一種新穎的機器學習方法,結合聚類技術與注意力機制,旨在提升預測準確度,特別針對超賣市場情境,以制定事件驅動的交易策略。該模型利用了2005年至2021年的歷史外匯數據及衍生出的技術指標。
2. 相關文獻
本研究建立在成熟的金融理論與機器學習在量化金融中的應用基礎之上。
2.1 技術指標
技術指標是基於歷史價格、成交量或未平倉合約的數學計算,用於預測金融市場方向。本模型整合了數個關鍵指標。
2.1.1 相對強弱指數 (RSI)
RSI是一種動量震盪指標,用於衡量價格變動的速度與幅度,以識別超買或超賣狀態。
公式: $RSI = 100 - \frac{100}{1 + RS}$,其中 $RS = \frac{\text{過去N期的平均漲幅}}{\text{過去N期的平均跌幅}}$。
RSI低於30通常表示超賣狀態(潛在買入機會),而RSI高於70則表示超買狀態(潛在賣出機會)。
2.1.2 簡單移動平均線 (SMA)、指數移動平均線 (EMA)、MACD
SMA是過去N個數據點的未加權平均值。EMA則賦予近期價格更高的權重。指數平滑異同移動平均線 (MACD)是一種趨勢追蹤動量指標。
公式: $MACD = EMA(\text{12期}) - EMA(\text{26期})$。
信號線(MACD的9日EMA)用於產生交易信號。MACD與信號線之間的交叉,可能預示著潛在的看漲或看跌趨勢。
2.1.3 布林通道
布林通道由一條中間的SMA線和兩條繪製在標準差水平(通常為2)的外帶組成,用於衡量市場波動性。通道收縮(帶寬變窄)通常預示著高波動時期的到來,而價格移動到通道之外,可能預示著趨勢的延續或反轉。
3. 核心洞察與邏輯流程
核心洞察:本文的基本假設是,純粹的價格/指標時間序列模型具有短視性。透過先對相似的市場狀態進行聚類(例如,高波動超賣、低波動盤整),然後在這些情境中應用注意力機制,該模型能夠比單一的LSTM或GRU網絡更有效地從雜訊中分離出訊號。這是一種條件建模形式——網絡的行為明確地取決於所識別的市場狀態。
邏輯流程: 流程設計精巧且具順序性:1) 特徵工程: 將原始OHLC數據轉化為豐富的技術指標集(RSI、MACD、布林通道位置)。2) 狀態聚類: 使用聚類演算法(可能是K-Means或高斯混合模型)根據指標特徵將歷史時期分割成不同的狀態。3) 情境感知預測: 對於給定的數據點,模型首先識別其所屬的聚類。接著,一個基於注意力的序列模型(如Transformer編碼器)處理近期歷史數據,其注意力權重可能會受到聚類身份的調節,從而預測從超賣狀態發生有利均值回歸(價格反彈)的機率。
4. 優點與缺陷
優點:
- 架構新穎性: 聚類預處理步驟是引入非平穩性處理的一種務實方法,這正是量化金融中的經典難題。它比寄望於深度網絡隱式學習市場狀態更具可解釋性。
- 聚焦可執行情境: 針對「超賣」條件是一個明智的約束。它將一個開放式的預測問題轉化為更易處理的二元分類問題:「當前的超賣訊號是真正的買入機會還是陷阱?」
- 基於成熟指標: 使用廣為人知的技術指標作為特徵,使得模型的輸入對傳統交易者而言易於理解,有助於潛在的採用。
缺陷與關鍵缺口:
- 數據窺探偏誤風險: 2005-2021年的數據集涵蓋了多次危機(2008年、COVID-19)。若未對完全未見過的市場狀態(例如,2022-2024年戰爭與通膨時期)進行嚴格的向前滾動分析或樣本外測試,過度擬合的風險極高。
- 注意力機制的黑箱特性: 雖然注意力層功能強大,但解釋模型為何關注某些過去的時期仍然具有挑戰性。在受監管的金融領域,「可解釋性」不僅僅是錦上添花。
- 缺乏超額報酬來源討論: 本文未提及交易成本、滑價與風險管理。一個在回測中表現出色的策略,可能因現實世界的摩擦而失效。預測的優勢在扣除成本後是否依然存在?
5. 可執行洞察
針對量化基金與演算法交易者:
- 複製狀態聚類方法: 在建立下一個深度預測模型之前,先將歷史數據分割成不同的市場狀態。這個簡單的步驟可以顯著提升模型的穩定性。使用波動率、趨勢強度、相關性等指標作為聚類特徵。
- 對「狀態轉換」進行壓力測試: 不要僅在隨機時間分割上進行測試。應刻意在已知的狀態轉換期間(例如,進入2008年危機或2020年COVID崩盤的過渡期)測試模型的表現。這才是真正的試金石。
- 與基本面數據結合: 下一步的演進是,不僅將技術指標,也將宏觀數據片段(來自新聞的央行情緒、殖利率曲線數據)輸入聚類演算法。這可以創造出更穩健的狀態定義。
- 要求可解釋性: 實施如SHAP或LIME等工具來解釋注意力權重。模型認為哪些過去的日期對其預測至關重要?這份審計軌跡對於驗證和監管合規都至關重要。
6. 原創分析
所提出的模型代表了一種解決金融時間序列固有非平穩性問題的複雜嘗試——這在如 Marcos López de Prado 的《金融機器學習進階》等開創性著作中均有強調。透過採用聚類作為識別不同市場狀態的預處理步驟,作者有效地創建了一個條件式架構。從概念上講,這優於將原始序列數據直接輸入單一的LSTM模型,正如比較傳統RNN與更現代金融架構的研究(例如,Borovkova & Tsiamas, 2019)所指出的,後者常常難以調整其內部狀態以適應變化的市場動態。
注意力機制的整合,很可能受到Transformer在自然語言處理領域成功(Vaswani et al., 2017)的啟發,使模型能夠動態權衡不同歷史點的重要性。在超賣RSI訊號的情境下,模型可能學會強烈關注過去類似且隨後出現反轉的超賣事件,同時忽略那些導致進一步下跌的事件。這種選擇性聚焦是相對於對所有過去數據一視同仁的移動平均線的一個關鍵進步。
然而,模型的潛力取決於其訓練數據的品質與代表性。2005-2021年期間包含了特定的波動狀態。在此數據上訓練的模型,可能在一個全新的狀態下失效,例如2022年後高通膨、高利率的環境——這類似於機器學習文獻中討論的領域偏移問題(例如,電腦視覺中的CycleGAN (Zhu et al., 2017),但在金融領域同樣關鍵)。此外,雖然技術指標有價值,但它們本質上是滯後的。整合另類數據源,如同Two Sigma等領先對沖基金所做的,可能是下一個必要的飛躍。此架構的真正考驗將是其對未見過的市場結構的泛化能力,以及扣除所有交易成本後的淨表現。
7. 技術細節與數學框架
核心技術創新在於兩階段的模型架構。
第一階段:市場狀態聚類
令 $\mathbf{F}_t = [f^1_t, f^2_t, ..., f^m_t]$ 為時間 $t$ 的特徵向量,包含標準化後的技術指標值(RSI、MACD、布林通道位置、波動率等)。一個聚類演算法 $C$(例如,具有 $k$ 個聚類的K-Means)將歷史數據劃分為 $k$ 個狀態:
$C(\mathbf{F}_t) = r_t \in \{1, 2, ..., k\}$。
每個聚類 $r$ 代表一個獨特的市場狀態(例如,「高趨勢牛市」、「低波動區間盤整」、「高波動超賣」)。
第二階段:基於注意力的序列預測
對於近期特徵向量的序列 $\mathbf{X} = [\mathbf{F}_{t-n}, ..., \mathbf{F}_{t-1}, \mathbf{F}_t]$ 及其關聯的狀態標籤 $r_t$,模型旨在預測目標 $y_t$(例如,超賣訊號後價格上漲的二元標籤)。注意力機制計算一個上下文向量 $\mathbf{c}_t$,作為輸入序列的加權和:
$\mathbf{c}_t = \sum_{i=t-n}^{t} \alpha_i \mathbf{h}_i$,
其中 $\mathbf{h}_i$ 是 $\mathbf{F}_i$ 的隱藏表示,注意力權重 $\alpha_i$ 由下式計算:
$\alpha_i = \frac{\exp(\text{score}(\mathbf{h}_t, \mathbf{h}_i))}{\sum_{j=t-n}^{t} \exp(\text{score}(\mathbf{h}_t, \mathbf{h}_j))}$。
評分函數可以是簡單的點積或一個學習到的函數。狀態 $r_t$ 可以被整合為一個嵌入向量,影響初始隱藏狀態或注意力評分函數,從而使模型的關注點取決於市場狀態。
8. 分析框架與案例示例
情境: EUR/USD貨幣對,2020年10月15日。RSI跌至28,顯示超賣狀態。
框架應用:
- 特徵提取: 計算特徵向量 $\mathbf{F}_t$:RSI=28,MACD柱狀圖為負但上升,價格觸及布林通道下軌,30日波動率 = 8%。
- 狀態分類: 基於2005-2019年數據訓練的聚類模型,接收 $\mathbf{F}_t$ 並將其分配至聚類 #3,該聚類已被標記為「中度波動、動能偏弱下的超賣」。
- 情境感知預測: 基於注意力的預測器,現在特別針對「聚類 #3」進行條件設定,分析過去20天的數據。注意力層可能會對5天前和12天前的數據賦予高權重,因為那些日子具有相似的特徵輪廓,並且隨後在5天內出現了2%的價格反彈。
- 輸出: 模型輸出一個高機率(例如,72%)的成功均值回歸交易(價格在3天內上漲 >1%)。這提供了一個量化、情境豐富的信號,遠超簡單的「RSI < 30」規則。
註: 此為概念性示例。實際的模型邏輯由其訓練參數定義。
9. 未來應用與方向
所提出的架構具有多個有前景的擴展方向:
- 多資產與跨市場狀態: 將相同的聚類方法應用於相關資產(例如,主要外匯貨幣對、指數、商品),以識別全球金融狀態,從而改善系統性風險評估。
- 與另類數據整合: 將即時新聞情緒分數(來自NLP模型)或央行溝通語氣納入特徵向量 $\mathbf{F}_t$ 用於聚類,創造出由技術面和基本面共同定義的狀態。
- 強化學習 (RL) 整合: 將聚類-注意力模型用作強化學習代理中的狀態表示模組,該代理學習針對每個識別出的狀態的最優交易策略(進場、出場、部位規模),從預測邁向直接策略優化。
- 面向監管的可解釋人工智慧 (XAI): 開發事後解釋介面,清晰地展示:「此交易信號被觸發是因為市場處於狀態 X,且模型專注於歷史模式 A、B 和 C。」這對於在受監管機構中的採用至關重要。
- 自適應線上學習: 實施聚類模型隨新數據增量更新的機制,使其能夠即時識別並適應全新的市場狀態,從而降低模型衰減的風險。
10. 參考文獻
- López de Prado, M. (2018). Advances in Financial Machine Learning. Wiley.
- Vaswani, A., et al. (2017). Attention Is All You Need. Advances in Neural Information Processing Systems 30 (NIPS 2017).
- Borovkova, S., & Tsiamas, I. (2019). An ensemble of LSTM neural networks for high-frequency stock market classification. Journal of Forecasting, 38(6), 600-619.
- Zhu, J.-Y., et al. (2017). Unpaired Image-to-Image Translation using Cycle-Consistent Adversarial Networks. IEEE International Conference on Computer Vision (ICCV).
- Murphy, J. J. (1999). Technical Analysis of the Financial Markets. New York Institute of Finance.
- Investopedia. (n.d.). Technical Indicators. Retrieved from https://www.investopedia.com.