目錄
第一章:台指期市場結構與資料基礎
如果量化交易把策略比喻成引擎,那麼市場結構與資料規格就是底盤。研究台指期之前,第一件事不是急著找神奇指標,而是先搞清楚:你交易的是哪一種契約、它在什麼時間開市、每跳一點代表多少損益、資料到底記錄了哪些行為。這些看似基礎常識的問題,會直接決定回測是否可信,也會影響你對風險的理解。對台指期來說,市場的節奏、日夜盤的接續、開盤前半小時的資訊密度,以及長期資料中的制度變化,都是後續所有研究工作的共同前提。
1.1 台指期是什麼市場?
台灣期貨交易所(Taiwan Futures Exchange, TAIFEX)上市的臺灣證券交易所發行量加權股價指數期貨,通常被交易者簡稱為大台指(TX)。它是台灣最具代表性的股價指數期貨商品,價格連動於大盤整體風險偏好,因此不只吸引當沖客與波段交易者,也常被法人拿來避險或做跨商品配置。對研究者而言,台指期最大的價值在於:交易歷史長、流動性佳、日內行為有明顯節奏,而且價格對總體事件、權值股、選擇權部位與隔夜國際市場非常敏感,這使它成為建立量化研究框架的理想標的。
本書主要聚焦兩種契約:大台指(TX)與小台指(MTX)。TX 每一點代表新台幣 200 元,MTX 每一點代表新台幣 50 元,兩者最小跳動單位皆為 1 點。這個規格非常重要,因為研究上的 1 點優勢不只是數字漂亮與否,而是能不能跨過成本門檻。若你的策略平均每筆交易只多賺 2 到 3 點,在 TX 上看似還有空間,但若考慮手續費、滑價與停損跳空,實際可執行性可能立刻下降。也因此,本書所有報酬估計都會先轉換到點數思維,再視需要換算成金額,避免在不同契約之間混淆風險尺度。
| 商品 | 代號 | 每點價值 | 最小跳動 | 研究用途 |
|---|---|---|---|---|
| 大台指 | TX |
200 元/點 | 1 點 | 主要研究標的、作為策略基準 |
| 小台指 | MTX |
50 元/點 | 1 點 | 便於部位縮放與資金控管比較 |
很多新手第一次接觸期貨,容易把波動很大理解成很容易賺很多。但市場結構告訴我們,波動大代表的是路徑更不平滑,並不是勝率自動提高。台指期因為槓桿高、資訊反應快,研究者如果沒有先建立一致的報酬單位、成本假設與資料切分方式,很容易在不同實驗中把蘋果和橘子混在一起比較。嚴謹的研究流程,往往不是從複雜模型開始,而是從最普通的契約規格表開始。
1.2 交易時段與研究切分
目前台指期可分為日盤與夜盤兩個主要交易時段。日盤為 08:45 至 13:45,共 5 小時;夜盤為 15:00 至次日 05:00,共 14 小時。若只看單日報酬,很多人會忽略夜盤的存在,但對研究者來說,夜盤反而是理解隔夜資訊傳遞的關鍵場域。美股、國際期貨、地緣政治事件、央行談話,往往先在夜盤反映,再由隔日日盤開盤進一步定價。因此,把日夜盤混成一條連續時間線雖然方便,卻可能掩蓋兩個截然不同的流動性環境與行為模式。
本書特別強調初始平衡(Initial Balance, IB)的定義:日盤開盤後前 30 分鐘,也就是 08:45 至 09:15,等於 6 根 5 分鐘 K 線。這不是隨意挑選的數字,而是市場輪廓研究中最核心的早盤觀察窗。早盤這 30 分鐘常常集中了隔夜資訊消化、主力部位調整、短線停損觸發與流動性重估,因此它不只是今天第一段行情,更像是當天拍賣範圍的起點。後續章節談到 IB 突破、IB 回到區間內、IB 擴張失敗等現象時,都以這個定義為準。
在實務研究中,交易時段切分至少有三種常見做法。第一種是只研究日盤,優點是資料同質性高、成交行為穩定;第二種是把夜盤視為獨立市場,分別建模與評估;第三種則是建立跨日因子,例如比較夜盤波動對隔日日盤開盤型態的影響。本書採取的原則是:凡是會明顯受市場參與者組成與流動性影響的特徵,優先分盤研究;凡是屬於整體環境變數,例如前一交易日的總振幅、前夜盤趨勢狀態,才考慮跨時段連接。
量化研究最怕的不是沒有資料,而是把不同制度、不同流動性、不同交易節奏的資料誤當成同一件事。
1.3 研究資料的邊界條件
本書的資料範圍涵蓋 2001 至 2026 年,總計 4,004 個交易日、2,985,198 根分鐘 bar。這樣的跨度足以包含多頭、空頭、震盪、金融危機、疫情衝擊與制度變遷,因此很適合做長期穩健性檢驗。另一方面,時間跨度越長,資料越不可能完全同質。交易時段延長、夜盤制度上路、成交量結構轉變、法人參與提升,甚至指數組成的改變,都可能讓某些在前期有效的現象,在後期逐漸鈍化。換個角度看,樣本很長不代表答案更簡單,反而要求研究者更重視分期分析與穩健檢查。
| 項目 | 設定 | 研究意義 |
|---|---|---|
| 資料期間 | 2001–2026 | 涵蓋多種景氣循環與制度變化 |
| 交易日數 | 4,004 日 | 適合做長期樣本檢定 |
| 分鐘資料量 | 2,985,198 根 bar | 可支援日內特徵工程 |
| 成本假設 | 來回 6 點 | 含手續費與滑價的保守門檻 |
| 初始資金 | 10,000 點 | 用一致尺度評估資金曲線 |
欄位解讀與可推導訊號
每一根 bar 至少包含 open、high、low、close、volume 五個欄位。這五欄看起來樸素,卻足以構成大量研究變數。例如,從高低點可以推導出單根振幅與實體比例;從收盤與開盤差值可以觀察動能方向;從成交量可以衡量參與強度;把多根 bar 串在一起,又能得到趨勢斜率、回檔幅度、波動擴張、區間接受度等高階特徵。很多成功的量化研究,不是靠更多欄位,而是靠更一致的資料處理與更清楚的市場假說。
成本設定同樣不可省略。本書統一採用單筆來回 6 點作為交易成本估計,並以 10,000 點作為初始資金。選擇點數而不是直接以新台幣記帳,有兩個好處:第一,能跨商品比較策略在價格尺度上的優勢;第二,能避免因槓桿與部位換算不同而誤判風險。當研究結果顯示某因子平均只能帶來 4 點優勢時,這個訊號在回測圖上也許仍然好看,但在含成本條件下就不具可執行性。量化研究的第一道篩選,不是顯著性,而是先看它有沒有跨過現實世界的摩擦成本。
學理 金融時間序列基礎:市場不是靜止的機器
📚 理論基礎
金融時間序列最重要的特性之一,是非定態(Non-stationarity)。所謂非定態,指的是資料的平均值、變異、相關結構,會隨時間改變。今天有效的節奏,不保證明天仍然成立;高波動環境中觀察到的勝率,也不一定能直接搬到低波動環境。此外,金融報酬分配常帶有厚尾(Fat Tails),也就是極端變動發生的機率比常態分配預期得更高。這意味著黑天鵝不一定罕見,而是本來就在市場結構裡。研究者若只依賴平均值與常態假設,很容易低估風險。
🏠 日常生活類比
理解非定態,最好的類比不是機械,而是天氣。你可以用過去十年的資料知道某地區大致的氣候,但不能因此推論明天下午三點一定微風 24 度。股票與期貨價格也是如此:它們有季節性、有環境背景、有可觀察的慣性,但不會像工廠輸送帶那樣重複同一套節奏。若把市場當成天氣系統,而不是當成固定速率的齒輪組,你就比較能接受策略需要分情境、分時段、分制度去驗證。
📈 投資應用
對量化交易而言,非定態與厚尾的啟示是:不要迷信單一參數的長期永恆有效,而要建立持續監控的研究流程。你需要檢查策略是否依賴某一段特殊樣本、是否只在高波動年份表現突出、是否在成本稍微提高後就失效。當我們後面討論 Market Profile、Volume Profile、Order Flow 與 GEX 時,都會反覆回到同一個原則:先辨認當前市場環境,再決定用什麼模型理解它。
投資人常有樣本越長,答案越穩的直覺,但若忽略制度變化,長樣本也可能只是把不相容的市場狀態硬湊在一起。量化研究真正要避免的,不是資料太少,而是錯把歷史平均當成自然定律。
1.4 從原始 bar 到可研究問題
當你手上只有分鐘 K 線,不代表你只能做最基本的均線交叉。相反地,日內 bar 資料已足以回答許多高價值問題:日盤開盤後多久會確認方向?IB 被突破後延續的條件是什麼?夜盤的大幅單向波動,對隔日日盤的回補機率有何影響?某些價格區是否反覆吸引成交、形成接受;某些區域是否快速穿越、形成拒絕?這些問題的共同特色是,它們都把價格視為拍賣結果,而不是純粹的數學序列。
因此,本章的真正目的是替後續研究建立一套共同語言。當我們說今天先看 IB、某策略要先扣 6 點成本、某現象只在夜盤顯著、某段資料可能有制度斷點,這些不是附註,而是研究是否可靠的基礎條件。只要底層市場結構理解正確,後面不論你採用統計模型、機器學習,或純粹規則式交易框架,都比較不會在起跑點就走偏。
第二章:Market Profile 核心理論
市場輪廓(Market Profile)之所以在台指期研究中歷久不衰,不是因為它畫起來好看,而是因為它提供了一種把價格行為翻譯成拍賣過程的語言。一般技術分析常把價格視為線條,著重趨勢、型態與指標;Market Profile 則追問更深一層的問題:市場今天在哪裡花了最多時間?哪些價位被接受,哪些價位被快速拒絕?開盤後的第一段拍賣,是在尋找公平價,還是在展開方向性驅動?當你從拍賣角度看台指期,日內漲跌就不再只是紅綠變化,而是參與者對價值認知不斷修正的結果。
2.1 拍賣市場理論的三根支柱
Market Profile 的理論基底,是拍賣市場理論(Auction Market Theory, AMT),其核心觀念可追溯到 J. Peter Steidlmayer 對期貨市場行為的整理。AMT 認為,市場每天都在進行一場持續拍賣,而拍賣的目的,不是讓價格永遠朝單一方向前進,而是在不同資訊、不同部位壓力與不同時間偏好下,尋找一個暫時被多數參與者接受的價格區間。這套框架有三個關鍵維度:價格(price)、時間(time)、成交量(volume)。價格告訴你市場走到哪裡,時間告訴你市場願意在某區停留多久,成交量則補充參與者在該區的投入程度。
很多人學 Market Profile 時,只記得字母圖形或 POC 線條,卻忽略背後真正重要的是市場在衡量價值。若某價位不斷被交易、反覆停留,那代表參與者對此區有高度接受;若某價位只被迅速穿越,則說明那裡缺乏雙方交易意願。對台指期這種高流動性商品來說,接受與拒絕的節奏尤其重要,因為它能幫助研究者區分:今天是持續尋找新價值,還是只是在既有價值區內短暫波動。這種理解方式,比單純看一條均線更能貼近市場本質。
| 支柱 | 在 Market Profile 中的角色 | 在台指期研究中的應用 |
|---|---|---|
| 價格 | 拍賣結果的即時位置 | 判讀突破、回測、接受與拒絕 |
| 時間 | 某價位被市場停留與測試的程度 | 辨識平衡區、趨勢日與旋轉日 |
| 成交量 | 參與深度與交易意願的補充證據 | 與 Volume Profile 交叉驗證價值區 |
2.2 TPO 如何構成市場輪廓
Market Profile 最經典的視覺化工具是時間價格機會(Time Price Opportunity, TPO)。做法很直觀:把一天切成固定時段,傳統上多用 30 分鐘為一個 period,然後用字母代表各 period 曾經交易到的價格。例如 A 代表 08:45–09:15,B 代表 09:15–09:45,C 代表 09:45–10:15,以此類推;若某價位在 A 與 B 兩個時段都曾被觸及,就在該價位旁標示 A、B 兩個字母。經過一整天累積後,你得到的不是一般 K 線,而是一張顯示市場在哪些價位停留最多時間的分布圖。
對 TX 而言,IB 的定義正是前兩個 TPO period,也就是 A+B 所涵蓋的價格範圍。這個設計非常合理,因為開盤前 30 分鐘通常包含夜盤資訊重新定價、現貨與期貨的聯動調整,以及短線交易者第一輪試探。當 A、B 兩個 period 的範圍很窄,代表市場先進入平衡;當 A、B 範圍很大且隨即延續,則可能是趨勢日的前兆。也就是說,IB 不是一條神祕的線,而是一天拍賣是否已經找到暫時公平價的第一個觀測窗。
當 TPO 分布完成後,兩個最重要的參考點便是價值區(Value Area, VA)與控制點(Point of Control, POC)。VA 通常定義為累積約 70% TPO 集中的價格範圍,代表市場大部分時間認可的價值區間;POC 則是 TPO 數量最多的價位,也就是當天最被市場接受的中心。若收盤遠離 POC,通常表示晚段拍賣已開始往新價值遷移;若整天繞著 POC 來回旋轉,則表示市場仍在既有公平價附近反覆測試。對量化研究來說,這些概念可以轉成非常具體的特徵:距離 POC 幾點、是否收在 VA 外、開盤位於昨日價值區的哪個位置、IB 是否完全包在前一日 VA 之內等等。
2.3 七種 Day Type:不要把每一天都當成趨勢日
Steidlmayer 系統中常見的日型(Day Type)分類,能幫助研究者理解不同拍賣結構的強弱差異。常見七種日型包括:Normal、Normal Variation of Normal、Trend、Double Distribution Trend Day(DDTD)、Non-Trend、Neutral Center 與 Neutral Extreme。它們不是為了貼標籤而存在,而是提醒我們:市場每天處理資訊的方式不同,策略也不應該用同一套假設硬做。若今天是 Non-Trend,你期待突破一路延續,多半會被來回洗刷;若今天是 Trend Day,你卻不斷逆勢猜頂摸底,也很容易被市場教育。
| 日型 | 結構特徵 | 方向延續強度 |
|---|---|---|
| Trend | 單向擴張、回檔淺、收盤常在極端附近 | 最高 |
| DDTD | 先建立一個價值區,再跳向第二個價值區並接受 | 很高 |
| Normal Variation of Normal | 先有平衡,再出現單側延伸 | 中高 |
| Normal | 圍繞早盤區間拍賣,延伸有限 | 中等 |
| Neutral Extreme | 雙向探索後,收盤偏向一側極端 | 中等但方向較晚確認 |
| Neutral Center | 雙向探索後回到中心附近收盤 | 偏弱 |
| Non-Trend | 全日窄幅、延伸不足、缺乏有效驅動 | 最低 |
2.4 開盤型態:早盤不是雜訊,而是訊息濃縮
除了日型,開盤型態也是 Market Profile 研究的重要切面。常見四種開盤類型包括 Open-Drive(OD)、Open-Test-Drive(OTD)、Open-Rejection-Reverse(ORR)與 Open-Auction。Open-Drive 指開盤後幾乎不回頭,直接朝單一方向推進,通常代表有明確外部資訊或極強失衡;Open-Test-Drive 則是先朝一側測試前高或前低、確認無法延續後,再往反方向展開驅動;Open-Rejection-Reverse 常見於開盤先假突破,隨即被市場拒絕並反轉;Open-Auction 則是最平衡的類型,市場先在開盤附近反覆競價,等待更多參與者表態。
對量化研究來說,這四種開盤型態可以大幅改善策略篩選。因為很多日內策略不是勝率不夠,而是混入了不適合的開盤情境。例如,均值回歸策略若在 Open-Drive 日硬做逆勢,往往會快速累積虧損;相反地,順勢突破策略若遇到 Open-Auction 的低效率早盤,容易被假突破反覆洗掉。把開盤型態當成環境標籤,而不是事後解釋,可以讓策略更接近市場實際運作方式。
學理 拍賣市場理論:公平價與交易機會同時存在
📚 理論基礎
Steidlmayer 的重要貢獻,不只是發明一張圖,而是把市場看成持續尋找公平價的拍賣過程。公平價不是固定數字,而是一段會隨資訊更新而移動的接受區。當市場大多時間停留在某區,代表那裡的買賣雙方較容易成交;當市場突然快速離開某區,則代表舊公平價已不足以平衡新的部位需求。也因此,交易機會常常來自不平衡:不是價格永遠偏離,而是價格從舊價值轉移到新價值的過程。
🏠 日常生活類比
最容易理解的例子,是超市促銷。平常一盒雞蛋賣 100 元,多數人覺得合理;若今天突然特價 70 元,顧客會迅速湧入,商品很快被買走,價格就不容易停在 70 元太久;若賣到 130 元,則顧客會減少,超市可能必須再降回來。市場中的公平價與交易機會,也有類似邏輯:大多數成交集中區近似被接受的價格,快速穿越區則像是明顯偏離而引發重新定價。
📈 投資應用
這套理論的實務價值,在於它提醒研究者不要只問價格去哪裡,而要問市場為何願意在那裡成交。當你把價值區、POC、IB、開盤型態與日型結合起來,就能建立比單一指標更穩健的日內地圖。後續很多台指期策略,實際上都可以重新表述為:在某種開盤條件下,市場是繼續尋找新價值,還是回到舊價值。
交易者很容易在開盤前十分鐘就下結論,把早盤的每一次衝高或下殺都當成今天的主方向。Market Profile 的訓練剛好相反:先觀察市場如何拍賣,再判斷今天屬於哪一種日型與開盤型態,避免把情緒誤當成結構。
2.5 研究上的實際意義
學習 Market Profile,並不是要求你每天手動畫字母,而是建立一套能被特徵工程與回測流程吸收的結構語言。你可以把昨日 POC 到今日開盤的距離量化、把 IB 範圍標準化、把收盤是否離開 VA 轉成二元變數,甚至把日型分類當成標籤,用來檢驗不同策略在不同拍賣結構下的表現差異。當結構被清楚描述,交易決策才有可能脫離感覺,進入可重複驗證的研究層次。
因此,第二章的核心不是背名詞,而是理解一件事:價格行為不是隨機折線,而是市場參與者用時間、價格與成交互相協商出的結果。只要你能讀懂這場拍賣,就能在後續的策略章節中,知道自己究竟是在追逐失衡、利用回歸,還是在等待價值重新確立。
第三章:Volume Profile、Order Flow 與 GEX
如果說 Market Profile 著重市場在哪些價格停留了多少時間,那麼成交量輪廓(Volume Profile)、委託流(Order Flow)與 Gamma Exposure(GEX)則進一步回答:市場在那些位置到底投下了多少成交、主動買賣力量如何變化、以及選擇權部位結構是否正在放大或吸收波動。這三者合起來,像是把原本只看價格路徑的地圖,升級成同時標示交通流量、車流方向與路面摩擦係數的導航系統。對台指期研究而言,這些資訊特別有價值,因為它們能幫助我們把「今天看起來很強」這種主觀印象,轉成更可驗證的結構描述。
3.1 成交量輪廓:把成交量放回價格座標
成交量輪廓(Volume Profile)最直觀的觀念,是把成交量不是放在時間軸下方,而是重新投影回價格軸上。一般 K 線圖底下的量柱告訴你某段時間成交很多,卻無法直接回答成交主要集中在哪些價格。Volume Profile 則補上這個缺口:它把某段期間內各價格帶的累積成交量統整起來,於是你可以看見哪些價位是市場真正有大量交換籌碼的區域,哪些價位則像真空帶一樣被快速穿越。這對台指期日內研究非常重要,因為很多看似同樣幅度的突破,其背後可能處於完全不同的成交結構。
Volume Profile 中最常用的指標包括控制點(Point of Control, POC)、價值區高點(Value Area High, VAH)、價值區低點(Value Area Low, VAL)、高成交量節點(High Volume Node, HVN)與低成交量節點(Low Volume Node, LVN)。POC 是成交量最集中的價格,通常可視為該期間最被市場接受的核心區;VAH 與 VAL 則界定出主要成交集中帶;HVN 往往代表市場停留、交換部位、建立共識的區域;LVN 則常出現在快速穿越地帶,表示那裡不容易長時間停留。對交易者來說,HVN 容易成為拉回時的支撐或壓力,LVN 則常是價格一旦進入就容易加速通過的通道。
把 Volume Profile 用在台指期,最關鍵的不是背定義,而是理解其結構特徵。第一是形狀(shape):有些交易日 profile 呈現單峰,代表市場大部分時間圍繞單一價值區;有些是雙峰,代表市場從一個接受區轉移到另一個接受區,常與趨勢或再定價有關。第二是偏態(skewness):若大量成交集中在上半部,可能代表市場往上接受新價值;若集中在下半部,則可能暗示上方價格較缺乏認同。第三是峰度(kurtosis):尖而集中的 profile 通常意味價值明確、擴張未完成;扁平分散則可能顯示整日交戰激烈、共識較弱。第四是重疊(overlap):今天的價值區與昨天高度重疊時,市場可能仍在消化舊資訊;若重疊很少,則表示新一輪價值遷移正在進行。
| VP 特徵 | 常見結構 | 研究意義 |
|---|---|---|
| 形狀 | 單峰、雙峰、偏斜 | 判讀市場是否正在建立或轉移價值 |
| 偏態 | 上偏、下偏、近對稱 | 評估價值區相對於當日範圍的位置 |
| 峰度 | 集中、分散 | 反映拍賣是否集中或混亂 |
| 重疊 | 與前一日高度重疊或顯著脫離 | 辨識延續日與再定價日 |
3.2 委託流:誰在主動出手?
委託流(Order Flow)關注的是主動成交方向。最基本的欄位包括主動買量(Bid/Ask Volume 通常以打到賣價與打到買價區分)、Delta,以及累積 Delta(Cumulative Delta)。當主動買量大於主動賣量,Delta 為正,表示買方積極追價;反之則代表賣方更主動。把這個資訊沿時間累積,就得到 Cumulative Delta,它常被用來觀察當日資金推進方向是否與價格同步。若價格創高但累積 Delta 未同步創高,可能代表突破缺乏真正追價力量;若價格暫時受壓但 Delta 持續走強,則可能顯示吸收賣壓後仍有向上企圖。
然而,Order Flow 不能只看單一數值。主動買超不一定等於價格必漲,因為市場還存在被動掛單吸收、跨商品避險與大戶分批執行等因素。更精確的做法,是把委託流與位置結合來看:主動買量若發生在 VAH 上方且價格能站穩,延續的意義較大;若發生在 LVN 附近卻立刻被打回價值區,則可能只是短暫失衡。簡單講,Order Flow 提供的是推進力資訊,而不是脫離結構就能獨立解讀的聖杯。
3.3 GEX:把選擇權結構當成環境因子
Gamma Exposure(GEX)近年受到許多量化研究關注,原因在於它把選擇權市場的部位結構,轉譯成現貨與期貨市場可能面臨的波動環境。直觀來說,若整體市場處於較高的正 Gamma 環境,做市者為了維持 Delta 中性,通常會在價格上漲時賣出、價格下跌時買回,因而形成近似減震器的效果;若 Gamma 支撐不足或偏低,避險行為對價格的穩定效果下降,市場更容易出現放大波動。這就是為什麼很多交易者會把 GEX 視為環境變數,而不是直接進出場訊號。
對台指期研究而言,GEX 最有價值的地方,在於它能協助策略做情境分流。當 GEX 分位數偏低,市場較容易出現單邊推進、突破延續與停損連鎖,因此趨勢型策略通常表現較好;當 GEX 偏高,價格更容易在關鍵區附近來回震盪、突破後又拉回,均值回歸型策略的相對優勢就會提高。這不代表 GEX 能預測每一根 K 線,而是它能描述當前路面是濕滑、乾燥,還是有避震裝置,讓你知道同一套交易邏輯在不同環境下應該調整什麼。
| 變數 | 全名 | 意義 |
|---|---|---|
GEX | Gamma Exposure | 市場整體的 Gamma 暴露值,反映做市者避險壓力;高 GEX 傾向壓制波動,低 GEX 傾向放大波動 |
Gamma | 選擇權 Gamma | Delta 對標的價格的二階導數,衡量 Delta 變化速度 |
Volume | 成交量 | 各履約價選擇權的未平倉量或成交量 |
Spot | 現貨價格 | 標的資產(如台指期)的當前價格 |
ATM | At The Money | 價平選擇權,履約價最接近現價的合約 |
學理 GEX 計算原理:從 Black-Scholes 到環境判讀
📚 理論基礎
GEX 的直覺來源,建立在 Black-Scholes 選擇權定價框架與 Greeks 的敏感度分析上。Delta 描述標的價格變動時,選擇權價格大約改變多少;Gamma 描述 Delta 本身對標的價格的變化速度;Vega 則反映隱含波動度變動對選擇權價格的影響。當市場整體 Gamma 暴露很高時,做市者為了維持部位中性,需要更頻繁地反向調整避險部位,於是現貨或期貨價格偏離時,較容易出現被拉回的效果。實務上,研究者常以 Σ(Gamma × Volume × Spot²) / 100 近似整體 GEX,並集中於 ATM ±10% 的選擇權,因為這些履約價通常對避險需求最敏感。
🏠 日常生活類比
把 GEX 想成汽車避震器很有幫助。避震器充足時,車子經過坑洞雖然還是會震,但不至於大幅彈跳;避震器老化時,同樣的坑洞會讓車身上下晃動得更劇烈。市場也是如此:高 GEX 環境下,外力衝擊比較容易被吸收;低 GEX 環境下,小事件也可能被放大成趨勢或急速回撤。這個類比的重點不是預測每一次震動,而是理解同一個路況在不同懸吊系統下,車子的反應不會一樣。
📈 投資應用
GEX 最適合被放進策略路由邏輯,而不是單獨拿來喊多喊空。當低 GEX 分位出現時,你可以提高突破策略權重、放寬持有時間、降低過早獲利了結;當高 GEX 分位出現時,則可提高均值回歸或區間反轉策略權重,並更注意 VAH、VAL、POC 一帶的回拉機率。講白一點,GEX 幫助的是選擇「今天用哪種武器」,而不是保證任何一把武器百發百中。
看到 Delta、Cumulative Delta 或 GEX 變化時,交易者很容易立刻把它們當成因果答案。但在研究上,這些多半是環境描述或過程證據,而非單一決策依據。真正有用的,不是迷信某個指標,而是把位置、結構、時間與部位背景一起閱讀。
當價格、成交量、主動買賣力量與選擇權部位結構開始互相對話時,市場才真正從線圖變成立體地形。
3.4 研究框架上的整合意義
第三章的核心,不是要你在每一筆交易前同時盯著十張圖,而是建立一個由外到內的判讀順序:先用 GEX 判斷大環境偏向放大波動還是吸收波動,再用 Volume Profile 找出價值區、真空區與可能的轉折帶,最後用 Order Flow 檢查當下是否真的有主動資金在推動價格。這種由環境、結構到流的三層架構,非常適合轉成量化研究流程,因為每一層都能被設計成可驗證的特徵與條件。
把話說得更直白些,成交量輪廓(Volume Profile)告訴你市場曾經在哪裡認真交易,委託流(Order Flow)告訴你現在是誰在主動出手,GEX 則提醒你今天的波動土壤是鬆還是緊。當這三者被整合進同一個研究框架,你就不再只是看到價格移動,而是開始理解價格為何以這種方式移動。這正是從圖表觀察走向量化研究的關鍵一步。
第四章:IB Breakout — 突破即行動(R014)
IB Breakout 是本書七大認證策略中,最能代表「結構先行、模型後驗」精神的一個案例。它的表面形式很簡單:先觀察日盤開盤後前 30 分鐘形成的初始平衡(Initial Balance, IB)區間,等價格有效跌破早盤平衡後,再結合纏論中樞與機器學習品質分數決定是否放行空單。真正讓這個策略從普通的早盤突破,演化成可通過長期認證的研究項目,在於它並沒有把突破當成充分條件,而是把突破視為「市場開始表態」的第一道門,再用結構辨識與品質濾網判斷這次表態是趨勢啟動,還是只是一場容易回補的假動作。
4.1 從 V1 到 V5:一條規則式策略如何被磨成認證模型
R014 的演進史,幾乎是整個研究團隊方法論的縮影。V1 版本只做最直觀的事情:當日盤價格跌破 IB 下緣時進場放空,期待早盤失衡延續成全日趨勢。這個方式在某些年份有效,因為台指期確實常出現開盤消化夜盤資訊後,沿同方向持續擴張的結構;但它也很容易在震盪日被來回洗掉。研究者很快發現,真正造成虧損的並不是「跌破 IB」這件事本身,而是市場跌破後究竟有沒有形成新的接受區。若跌破後只是快速刺穿、隨即回到原區間,那麼突破根本不是方向確認,而只是流動性掃單。
因此 V2、V3 開始加入纏論結構過濾,要求價格在 IB 破位後,不只是創低,而是進一步形成可辨識的中樞下移與收盤脫離。V4 再把停損、時間條件與波動度條件系統化,最後到 V5 才導入 18 個特徵的多層感知器(Multi-Layer Perceptron, MLP)品質篩選器,讓策略不再只是問「有沒有破」,而是問「這次破位的品質高不高」。這個觀念轉變非常重要:規則式訊號負責提供可解釋的市場假說,模型則負責評估當下樣本更像成功案例,還是更像歷史上那些漂亮卻虧錢的突破。當兩者角色分工清楚後,R014 才真正走出只靠參數微調的瓶頸。
| 版本 | 核心邏輯 | 主要改善 | 研究意義 |
|---|---|---|---|
| V1 | IB 下緣破位即放空 | 建立最小可測原型 | 驗證早盤失衡是否有延續性 |
| V2 | 加入中樞重疊與破位確認 | 過濾假跌破 | 把拍賣結構帶入進場條件 |
| V3 | 強化出場與波動條件 | 改善回吐與過度交易 | 提高不同年份一致性 |
| V4 | 停損參數搜尋與交易節奏優化 | 固定停損 26 點 | 用可執行成本觀點管理尾端風險 |
| V5 | 18 特徵 + MLP 品質濾網 | 只放行高品質破位 | 從規則策略升級成結構+AI 混合系統 |
R014 最關鍵的突破,不是學會「看到跌破就放空」,而是學會分辨「哪些跌破值得做,哪些跌破只是市場在測你的耐心」。
4.2 策略核心:IB 破位只是開門,中樞脫離才是放行
IB Breakout 的交易邏輯可拆成三層。第一層是市場情境:日盤開盤後,市場先在前 30 分鐘完成一段快速拍賣,形成一個對多數參與者暫時可接受的範圍。第二層是事件觸發:價格向下突破 IB 下緣,代表原本的平衡開始失穩。第三層才是品質判斷:突破後,價格是否持續在中樞之外收盤,是否顯示結構接受新的更低價值,且模型分數是否高於門檻。只有三層同時成立,系統才真正放行 SHORT 訊號。這使得 R014 不會把每一次早盤破位都等價看待,而是把交易聚焦在「平衡被打破、且新的平衡往下移動」的樣本。
中樞條件之所以重要,是因為日內趨勢不只是單向價格變化,更是市場是否願意在新價位停留。假設價格跌破 IB 後立刻反彈,代表低價缺乏接受,市場只是在下方掃出停損與流動性;若價格跌破後形成重疊區,再次下破並收在中樞下方,則代表空方不只是打穿支撐,而是成功把市場的短期公平價往下搬。R014 做的,就是在這兩種外觀看似相似、但統計結果截然不同的情境之間,建立一個可執行的區分規則。
| 變數 | 意義 |
|---|---|
IB 下緣 | 初始平衡區間(Initial Balance)的低點,日盤開盤後前兩個半小時 K 線的最低價 |
中樞下界 | 近期成交密集區的下方邊界,價格跌破代表空方成功搬移市場公平價 |
MLP 品質分數 | 多層感知器(Multi-Layer Perceptron)輸出的突破品質評分,0-1 之間;≥ 0.25 為最低可接受門檻值 |
∧ | 邏輯 AND(且),所有條件同時滿足才觸發 |
學理 纏論中樞偵測(Chan Theory Center Detection)
📚 理論基礎
纏論中樞的核心觀念,是把價格移動視為分形(Fractal)層層嵌套的結構,而不是一串沒有語法的數字。對本研究最實用的簡化版本來說,中樞可以理解為:至少三根 K 棒的高低區間彼此重疊,形成一個市場反覆接受的價格帶。若價格只短暫穿越,但收盤又回到重疊區內,表示原有平衡尚未被打破;若收盤連續脫離中樞上下界,則代表市場開始接受新的價值區。這種偵測方式的優勢,在於它不是只看單一高低點,而是看「一段區間是否被反覆確認」。
🏠 日常生活類比
把中樞想成尖峰時段的路口很容易理解。多輛車從不同方向匯入同一個十字路口,雖然每台車的速度與路徑不同,但在一段時間內都必須經過同一塊區域,那個區域就像價格的中樞。當號誌還沒明確切換時,車流會持續在路口交會;一旦綠燈放行,整排車子沿單一方向脫離路口,這就像價格有效突破中樞邊界。市場中的「突破」不是看到第一台車往前衝,而是看到整個車流都開始順著同一個方向離開。
📈 投資應用
在日內交易裡,中樞偵測最大的價值,是幫助研究者區分「波動」與「接受」。很多假突破在價格圖上都很刺激,卻沒有形成新的重疊區與接受結構;而真正的趨勢啟動,通常會先經過一段重新分配,再往外擴張。R014 用中樞來確認 IB 跌破後的方向品質,就是在問:空方是否真的把短期公平價往下移動?若答案是肯定的,放空就不是追價,而是跟隨拍賣中心的位移。
學理 MLP 多層感知器(Multi-Layer Perceptron)
📚 理論基礎
多層感知器是一種前饋式神經網路,最基本的結構包括輸入層、隱藏層與輸出層。R014 的做法,是把 18 個描述早盤結構、波動、位置與拍賣狀態的特徵送入模型,再由隱藏層學習非線性組合,最後輸出一個代表訊號品質的分數。模型在訓練時常搭配修正線性單元(Rectified Linear Unit, ReLU)作為啟動函數,並透過反向傳播(backpropagation)逐步調整權重,讓輸出更接近真實結果。對交易研究來說,MLP 的價值不在於神祕,而在於它能把多個彼此交互作用的條件,壓縮成一個可比較的機率或分數。
🏠 日常生活類比
如果把單一規則比喻成一個篩網,MLP 就像一組多層濾網。第一層先濾掉顯而易見的雜訊,第二層再從留下來的樣本裡辨認結構是否完整,第三層則綜合速度、位置與形狀做最後判斷。你不需要精確知道每根網絲如何互動,卻能理解它的功能:越往後的層,越在處理更抽象的品質訊號。這就是為什麼 MLP 很適合拿來做「訊號放行」,而不是直接單獨決定一切。
📈 投資應用
在 R014 中,MLP 並沒有取代 IB 與中樞規則,而是扮演守門員。當規則式條件已經告訴你「這裡可能有空方趨勢」,MLP 再根據歷史資料回答:「這種結構在過去比較像能跑出續跌,還是比較像會立刻反彈?」實務上設定門檻 0.25,目的不是追求神準預測,而是剔除大量低品質樣本。這種設計讓模型保持輔助角色,避免研究者把所有決策都交給難以解釋的黑盒。
4.3 18 個特徵與 26 點停損:策略穩健性的關鍵
MLP 的 18 個特徵並不神祕,多半來自研究者對日內拍賣的常識整理,包括 IB 寬度、突破前後的斜率差、收盤相對於中樞的位置、前幾根 K 棒的上下影比、成交量擴張、是否貼近前一日價值區邊界、夜盤相對位置、開盤缺口方向等。真正重要的不是特徵名詞多炫,而是它們分別對應不同層次的市場問題:現在波動夠不夠大?這次跌破是順著更大的結構,還是逆著前一日價值遷移?空方是在一個已經失衡的環境中追擊,還是在一個仍然容易回補的區間裡賭運氣?特徵工程的價值,就是把這些原本只能用主觀盤感描述的問題,轉成可驗證、可複製的資料欄位。
停損部分看似單純,實際上卻花了大量研究時間。V1 時期常見的錯誤,是把停損設得很寬,結果少數大虧吞掉許多小賺;或把停損設得太緊,使得本來應該成功的趨勢樣本在初始回測中就被洗掉。最終固定 26 點的設定,並不是魔術數字,而是長期權衡後的執行解:足以容納台指期早盤正常回抽,又不至於讓單筆錯誤失控。當策略交易筆數高達 6,163 筆時,這種風險上限的一致性尤其重要,因為你不可能期待每次都人工判斷哪一次該忍、哪一次該退,系統必須先把最壞情況寫進規則裡。
行為提醒 高頻績效最怕被「看起來很多次」欺騙
6,163 筆交易帶來的好處,是統計上更不容易被單一年份偶然值扭曲;但它同時也會讓人掉進另一個陷阱:誤以為次數夠多,就能忽略執行細節。實際上,筆數越高,越要在回測中保守納入滑價、交易成本與停損跳空的影響。若研究者只盯著 PF,不追問每筆交易平均優勢有多厚,那麼再漂亮的曲線都可能在真實市場被摩擦成本吃掉。
4.4 認證結果:從 PF 2.86 到再認證 PF 3.076
R014 最初版本已能達到 PF 2.86(PF = Profit Factor,獲利因子,也就是「所有賺的加總 ÷ 所有賠的加總」;PF 大於 1 代表整體賺錢,越高越好),對單純規則式的日內策略而言已相當亮眼;但真正讓它站穩,是經過版本演化與再認證後,整體績效提升到 PF 3.076、勝率 46.9%、Sharpe 1.979(Sharpe Ratio,夏普比率,衡量每承擔一單位風險能換到多少報酬,越高代表策略穩定性越好),累積樣本達 6,163 筆。這組數字有兩個值得注意之處。第一,勝率不到五成卻能長期獲利,代表策略優勢主要來自賺賠比與錯誤交易控制,而不是靠大量小勝堆出漂亮表面。第二,這種結構讓它更像一個「趨勢事件擷取器」,因為真正的利潤通常來自少數空方擴張日,而不是天天微小套利。
更值得重視的是,R014 在 2025 年隔離驗證(holdout)樣本仍繳出 PF 3.80。對量化研究者而言,隔離驗證能維持甚至優於過去成績,比在既有樣本內多提高幾個百分點更有說服力,因為這表示策略捕捉到的不是一段歷史巧合,而是仍在發生的市場機制。當然,沒有任何策略會永遠有效;但 R014 的長期表現至少說明,只要台指期早盤仍存在資訊重新定價、拍賣中心位移與失衡延續,結合 IB、中樞與品質模型的邏輯就有持續被驗證的機會。
| 指標 | 結果 | 解讀 |
|---|---|---|
| 初版 PF | 2.86 | 規則式核心邏輯已具方向優勢 |
| 再認證 PF | 3.076 | 結構+MLP 篩選顯著提升品質 |
| 勝率 | 46.9% | 非高勝率策略,仰賴賺賠比與趨勢延續 |
| Sharpe | 1.979 | 風險調整後表現穩健 |
| 交易筆數 | 6,163 | 高樣本數提高統計可信度 |
| 2025 Holdout PF | 3.80 | 新樣本延續有效,具再現性 |
4.5 對讀者的啟示:AI 最有價值的地方,不是神預測,而是守住出手品質
許多初學者聽到 AI 交易,直覺會想像一個模型直接告訴你何時買、何時賣。但 R014 告訴我們,對實戰最有價值的做法,往往不是讓模型全面接管,而是先用市場理論建立規則,讓模型專心做自己最擅長的工作:在眾多看似相似的樣本中,找出更高品質的那一群。這種「規則負責可解釋,模型負責精修品質」的分工,很適合台指期這種節奏快、噪音多、但結構訊號又相對鮮明的商品。
如果你未來想自行改寫 R014,最值得優先保留的不是某個門檻值,而是它的研究流程:先界定一個有市場含義的事件,再用結構辨識判斷事件是否被市場接受,最後才讓模型根據歷史經驗決定放行程度。這三層順序一旦顛倒,你很容易做出樣本內分數很高、樣本外卻無法說明原因的系統。量化研究的成熟,不是把模型做得越深,而是知道哪些事情該交給理論,哪些事情才交給資料。
第五章:Center Flip 策略族(R069, R071, R072)
如果說 R014 代表的是「突破後順勢追擊」,那麼 Center Flip 策略族則代表另一條更細膩的研究道路:市場不是每次脫離中樞後都一路奔馳,很多時候,它會先突破、再形成新的反向中樞,最後把原本的主動方向整個翻轉。R069、R071、R072 三個研究項目,正是圍繞這個現象展開。它們共享同一個核心觀念——當市場的接受中心從一側翻到另一側時,交易者不能只看價格位置,更要看結構重心是否改變;但三者在技術上各自代表不同階段:R069 以多中樞與影子中樞定義翻轉,R071 導入 XGBoost 品質閘門提升樣本純度,R072 則把 IB Breakout 與 Center Flip 融合,形成能在同一框架中處理突破與反轉的複合策略。
5.1 為什麼「翻轉」比「突破」更難,卻也更有價值
突破策略要回答的問題相對單純:市場是否離開原本平衡區,並開始接受新價格?翻轉策略則要回答兩個層次的問題:第一,先前的突破是否已失效;第二,新形成的結構是否足以把方向倒過來。這代表研究者不能只看單一破位,而必須同時觀察多段結構之間的銜接關係。當價格先向上脫離一個中樞,卻在更高位置停留不久,旋即形成另一個反向重疊區並向下跌破,這種結構往往透露:先前那段突破沒有建立真正接受,反而留下追價籌碼;一旦新中樞成形並向相反方向脫離,原本追隨者的停損就會成為新趨勢的燃料。
Center Flip 策略族的珍貴之處,在於它把這種盤中常見卻難以系統化的「方向翻面」現象,整理成一套可回測、可驗證的結構語法。對人工交易者而言,看到價格折返並不稀奇;真正困難的是,什麼時候該把折返視為回檔,什麼時候該承認市場價值中心真的轉移了。Center Flip 的答案很直接:不要只看價格回頭,而要看新的中樞是否在相反方向建立、擴張,並把舊中樞的邊界轉化成新的支撐或壓力。
5.2 R069:Center Flip Multicenter 的原型——影子中樞如何預告反轉
R069 Center Flip Multicenter 是整個策略族的起點。它的關鍵發現,是盤中很多有利的反轉不是等到完整中樞都畫好才出現,而是在一段「看起來還像過渡帶」的重疊區就已經透露方向。研究因此引入影子中樞(Shadow Center)的概念:即使嚴格定義上的完整中樞尚未完全確認,只要多根 K 棒已出現明顯高低區間重疊,而且重疊中心開始偏向相反方向,這段結構就足以作為先行觀察的「影子」。R069 的進場邏輯,是把第一次中樞突破視為啟動訊號;而當價格後續形成反向影子中樞並完成有效脫離時,策略不只是平倉,而是直接翻向。
這套手法的魅力,在於它不把出場與反向進場視為兩件事,而是視為同一個市場命題的兩個面向。若先前多方突破失敗、反向中樞成形,那麼原本的多單停損區往往正是新空單最甜的位置;反之亦然。R069 因此不像典型停利停損系統只會「退出錯誤」,它更進一步問:「既然錯的不是價格有波動,而是我站錯邊,那麼反過來站會不會更合理?」這使得策略在完整樣本中繳出 PF 2.917、勝率 64.9%,而樣本外 PF 更達 3.876,說明結構翻轉本身就是一個足以獨立成立的優勢來源。
Center Flip 的精髓是:市場真正讓你賺錢的,往往不是第一次突破,而是第二次把前一次突破判死刑的那一下。
5.3 R071:XGBoost 品質閘門——不是所有翻轉都值得做
R069 已經證明翻轉有統計優勢,但下一個研究問題也跟著浮現:既然所有翻轉樣本長得不完全一樣,能不能在它們之間再切出更高品質的一群?這正是 R071 Center Flip XGBoost 的出發點。研究者將 16 個正規化特徵輸入 XGBoost 模型,透過滾動前行分析建立品質分數,並以 0.65 作為放行門檻。這 16 個特徵涵蓋中樞寬度、翻轉前後位移速度、影子中樞重疊程度、相對於前一日關鍵價位的位置、波動壓縮與擴張狀態等。模型要做的不是預測無限遠的未來,而是回答一個很實務的問題:這次翻轉比較像過去的成功樣本,還是比較像容易在原區間內來回震盪的失敗樣本?
加入 XGBoost 後,R071 的認證結果提升到 PF 3.093、勝率 63.6%、Sharpe 5.571,交易數雖下降到 519 筆,卻展現更高的風險效率。對很多讀者來說,最值得學的不是「0.65 這個門檻」,而是策略品質閘門的設計哲學:當一個規則式策略已經有正期望值時,機器學習最有價值的事情不是生造新訊號,而是幫你刪掉那些雖然符合理論、但在資料上屬於低品質的樣本。到了 2025 年隔離驗證,R071 仍有 PF 3.243、勝率 68.0%,正說明品質閘門不是在樣本內過度擬合,而是在新資料中延續了挑樣本的能力。
學理 XGBoost 梯度提升樹(Extreme Gradient Boosting, XGBoost)
📚 理論基礎
理解 XGBoost 前,可以先把樹模型的演化路線串起來。單棵決策樹會依照特徵條件不斷切分資料,優點是可解釋、能處理非線性,但容易過度擬合。隨機森林(Random Forest)透過許多樹做隨機抽樣與投票,提升穩定性;梯度提升(Gradient Boosting)則不是讓樹彼此獨立,而是讓後一棵樹專門修正前一棵樹犯下的錯。XGBoost 是梯度提升家族中最常用的版本之一,因為它內建正則化、能處理遺漏值、支援平行運算,並對表格型資料尤其有效。對交易特徵這種結構化資料來說,XGBoost 往往能比單純線性模型抓到更細的條件交互作用。
🏠 日常生活類比
你可以把 XGBoost 想成一組互補的專家小隊。第一位專家先給一個粗略判斷,但一定會看錯部分案例;第二位專家專門研究前一位最常搞錯的樣本;第三位專家再去修正前兩位仍未解決的盲點。每個人不需要獨立完美,只要集體持續修正錯誤,最後就能形成比單一專家更穩定的決策。這也是 XGBoost 為什麼常能在複雜表格資料上表現出色:它不是一次想懂全部,而是分批把錯誤壓低。
📈 投資應用
在 Center Flip 策略族中,XGBoost 最適合扮演「品質閘門」而非「單獨交易腦」。原因在於翻轉策略已有明確市場假說——中樞重心翻面——模型要做的是判斷這次翻面的品質。樹模型特別擅長處理像「若中樞寬度小、但位移速度快、且前一日位置在價值區邊界」這類條件組合,因此很適合拿來估算翻轉訊號的成功率高低。這種做法也保留了解釋性:你依然知道進場的市場原因,只是多了一個資料驗證的守門員。
5.4 R072:Center IB Fusion V2——把突破與翻轉放回同一條時間軸
R072 Center IB Fusion V2 是策略族最成熟的版本。它的核心不是把 R014 與 R069 簡單相加,而是承認兩者本來就描述同一個日內拍賣過程的不同階段:IB Breakout 描述的是平衡首次被打破的時刻,Center Flip 描述的是破位失敗後,市場如何重新建立相反接受。把這兩種邏輯融合後,策略不必再侷限於只做第一段趨勢,或只做第二段翻轉,而是能根據市場當下處於哪個結構階段,自動決定要採取突破思維還是翻面思維。
這種融合框架讓 R072 繳出 PF 3.064、勝率 64.8%、Sharpe 5.872 的成績。最值得注意的是,它並非靠增加交易複雜度來換取績效,而是讓原本分散在不同策略中的市場知識彼此協調。實務上,很多研究案的失敗不是模型不夠強,而是每個子策略各做各的,沒有共享同一套市場語言。R072 的價值就在於,它用「IB → 中樞 → 翻轉」這條一致的敘事,把日內多空競逐的不同片段接起來,使得策略決策更像一部連續劇,而不是互不相干的片段剪接。
學理 滾動前行分析(Walk-Forward Analysis, WFA)
📚 理論基礎
許多初學者以為把資料切成訓練集與測試集就足以驗證模型,但對交易策略來說,這樣往往不夠。因為市場會變,若只做一次固定切分,你很可能剛好挑到一段特別順風或逆風的期間。滾動前行分析的作法,是用一段歷史資料訓練模型,再拿緊接著的未來期間測試,之後整個視窗往前滑動,重複同樣程序。典型概念可寫成:Train[1-5]→Test[6],再 Train[2-6]→Test[7]。本研究使用 5-fold 方式,依序驗證 2004-08、2009-12、2013-16、2017-20、2021-24 等階段,目的就是避免模型只在單一年代有效。
🏠 日常生活類比
WFA 很像準備大型考試時的模擬考。你不會只拿同一份舊考卷練習到滿分,就認為正式考試一定沒問題;你會先讀前幾年的題目,然後用較新的題目驗證自己,接著再把時間往後推,持續更新讀法與測試。這種反覆「先學舊題、再考新題」的流程,比一次性切分更接近真實世界,因為正式市場就像永遠在出新題。
📈 投資應用
對 R071 這種帶有模型閘門的策略而言,WFA 是降低自我欺騙的重要工具。若某個特徵組合只在特定年份有效,WFA 很快就會在後續測試窗暴露問題;反之,若模型在多個不同市場狀態下都能維持品質分層能力,那麼你才比較有理由相信它抓到的是普遍機制,而不是歷史巧合。這也是為什麼書中反覆強調:模型表現好,不等於可交易;能跨不同時段持續過關,才更接近可交易。
5.5 三個策略放在一起看:它們不是競爭者,而是同一研究脈絡的三個答案
若把 R069、R071、R072 放在同一張桌上,你會發現它們其實回答了三個連續問題。R069 先回答「結構翻轉能不能做」;R071 再回答「哪些翻轉最值得做」;R072 則進一步回答「突破與翻轉能不能放在同一套交易語言中」。這種演進方式比孤立地追求單一最佳績效更有研究價值,因為它保留下整條知識鏈。未來即使市場風格改變、某一版本績效下降,研究者仍能沿著這條脈絡回頭檢查:是翻轉假說失效?還是品質閘門需要重訓?還是突破與翻轉的切換邏輯要調整?
從實戰角度看,Center Flip 策略族也提醒我們一件事:高勝率策略不代表可以放棄風控。R069、R071、R072 的勝率都落在 63% 到 65% 左右,看起來很舒服,但翻轉策略最大的風險在於,一旦市場不是翻面而是直接轉成大趨勢延伸,錯誤站邊的回撤速度常比想像更快。因此,翻轉策略的優勢並不在「每次都猜對頂底」,而在於它能在特定結構成立時,以相對不差的賺賠比與高一致性擷取方向反轉的甜蜜區段。
實務提醒 翻轉策略最怕研究者把「盤整」誤認成「反轉」
初學者看到價格折返,很容易因為心理上想撿轉折,而過度放大每一次回頭的意義。Center Flip 系列之所以能成立,靠的不是主觀覺得市場「好像要翻」,而是要求新中樞成形、邊界被有效脫離、品質分數達標。若少了這些條件,很多看似反轉的訊號,其實只是原區間內的來回震盪。用結構語法約束自己,是避免把願望誤當證據的最佳方式。
| 策略 | 核心創新 | PF | 勝率 | Sharpe | 補充說明 |
|---|---|---|---|---|---|
| R069 Center Flip Multicenter | 影子中樞+多中樞翻轉 | 2.917 | 64.9% | — | 樣本外 PF 3.876,證明翻轉結構具可攜性 |
| R071 Center Flip XGBoost | 16 特徵+品質閘門 0.65 | 3.093 | 63.6% | 5.571 | 2025 Holdout PF 3.243、勝率 68.0% |
| R072 Center IB Fusion V2 | IB Breakout 與 Flip 融合 | 3.064 | 64.8% | 5.872 | 把突破與翻轉放進同一時序框架 |
5.6 對讀者的啟示:不要急著找最強單招,先建立可演進的研究家族
Center Flip 策略族最大的教育意義,在於它示範了「研究家族」的概念。真正成熟的量化研究,不該只是碰巧挖到一條漂亮曲線,而應該能把一個市場現象拆成多個層次,不斷提出下一個更好的版本。當你學會這種方式後,就不會只問「哪個策略 PF 最高」,而會進一步問:「如果今天市場不再偏好突破,它是否仍偏好翻轉?如果翻轉樣本過少,能否用更強的品質閘門維持純度?如果兩者都存在,能否整合成一套更一致的敘事?」
對想進入量化研究的讀者來說,這是一個非常重要的心態轉變。市場從來不是只出單一題型,能持續進步的研究者,也不會只拿一把鎚子看世界。R069、R071、R072 提醒我們:優秀策略往往不是橫空出世,而是同一個市場洞見經過多輪拆解、驗證與融合後,逐步長成的結果。
第六章:VP 反轉策略(R024)
量化研究最迷人的時刻,往往不是找到一個本來就賺錢的規則,而是把一個原本會虧錢的訊號,拆解到足以反過來賺錢。R024 VP 反轉策略,就是這樣誕生的。研究起點其實來自 IB Breakout 類型策略的失敗樣本:有些日子表面上符合突破條件,實際上卻不是趨勢啟動,而是主力借突破把追價籌碼吸進來,隨後沿反方向快速移動。對多數交易者來說,這類樣本只會被歸類為「假突破」;但對研究者來說,它們等於在大聲告訴你:如果失敗的型態具有穩定結構,那它就不只是雜訊,而是另一套可以被獨立開發的策略來源。
6.1 從錯誤中開採 alpha:為什麼要研究失敗訊號
量化研究裡最常見的心理偏誤之一,是只想保存看起來成功的樣本,把失敗樣本當成該被刪掉的髒資料。然而在市場裡,很多所謂失敗訊號其實不是隨機錯誤,而是另一群參與者正在獲利的痕跡。當 IB 突破本應延續,卻迅速被拉回,表示市場對新價位沒有接受;如果此時又配合成交量分布輪廓(Volume Profile, VP)顯示上方堆積、下方稀薄,則原本的順勢邏輯很可能正好應該反過來解讀。R024 的研究精神,正是把「原策略失敗」改寫成「另一策略的入場訊號」。這種思路之所以重要,是因為它讓研究者不再只問如何避免虧損,而是進一步問:虧損本身是否隱含可收割的結構?
實際上,R024 的基準版本 PF 只有 0.84,明顯不具可交易性。若只從傳統角度出發,最合理的做法是放棄該策略,改研究別的方向;但研究團隊反而反過來檢查那些造成 PF 低落的樣本,發現其中有一群具備高度一致的 VP 結構特徵:價格先做出誘發追價的動作,隨後在成交量密集區附近失速,最後向相反方向加速移動。當這群樣本被重新標記並用 XGBoost 品質閘門篩選後,策略一路演進到 E55,最終把 VP-only 版本拉升到 PF 3.37。這不是單純參數調漂亮,而是整個問題定義被改寫了。
真正成熟的研究,不只是知道什麼該做,更是知道哪些「做錯的樣子」其實透露出另一種可重複的優勢。
6.2 策略骨架:看到失敗,不是認錯離場,而是辨認可反打的結構
R024 最終採用的是 SHORT-only 架構,核心條件非常有意思:當模型評估出的 P(long) ≤ 0.45 時,系統不是單純拒絕多方樣本,而是將其視為反向放空候選。換句話說,模型輸出的不是「看多機率低」這麼簡單,而是「這個原本看似可做多或可順勢的情境,更可能演變成空方機會」。這種設計反映了一個很重要的觀念:在交易研究中,低分不一定代表無意義;只要低分背後對應的是一群高度一致的失敗型態,它就可能構成另一個有價值的訊號來源。
VP 反轉之所以選擇只做 SHORT,並非研究者偏好多空其中一邊,而是資料告訴我們:在這套結構裡,向下反打的樣本更穩定。市場先給出似乎偏多的誘因,吸引參與者往上追價;但從 VP 結構來看,上方其實缺乏持續接受,成交分布出現偏斜,價格一旦跌回關鍵節點,下方釋放的停損與恐慌賣壓會使空方路徑更乾淨。這類樣本若硬要雙向都做,往往會讓優勢被稀釋;相反地,接受「這是一套偏向某方向的結構策略」,反而更符合研究誠實性。
P(long) ≤ 0.45,則轉為 VP Reversal SHORT 候選。
研究精神:不是忽略低分樣本,而是辨認低分樣本是否構成一致的反向群組。| 變數 | 意義 |
|---|---|
P(long) | 模型預測該樣本為有效多方突破的機率;≤ 0.45 表示「突破看起來很弱,不太可能成功」 |
品質分數 | MLP 模型對突破有效性的綜合評分;低分反映結構不支持突破延續 |
VP Reversal SHORT | 成交量輪廓(Volume Profile)反轉策略的空方候選;利用失敗的突破樣本反向建倉 |
6.3 28 個 VP 結構特徵:把盤感拆成可驗證欄位
R024 能成立的關鍵,不只是「反向」兩個字,而是把成交量分布輪廓的形狀資訊整理成 28 個結構特徵。很多人談 VP 時,習慣只看哪裡量大、哪裡量小;但研究者更進一步,把 VP 的統計特性、形狀特性與跨日位移全部欄位化。例如分布的偏度(skewness)與峰度(kurtosis)可以衡量成交是否集中在某側、是否呈現尖峰;控制點(Point of Control, POC)在整體輪廓中的位置,可以判斷市場的主成交重心偏高還是偏低;高成交節點(High Volume Node, HVN)與低成交節點(Low Volume Node, LVN)之間的距離,則能透露支撐壓力是否集中或稀疏。這些原本只存在於主觀盤感的內容,一旦轉成欄位,就能被模型一致地使用。
更高階的特徵則來自跨日比較。今天的 VP 與昨天有多少重疊?POC 是向上遷移、向下遷移,還是卡住不動?若價格看似突破,但 POC 沒有跟上,是否意味著市場並未真正接受更高價格?這類比較對反轉策略尤其重要,因為很多假突破的本質,就是表面價格先走、成交分布卻沒有同步轉移。R024 之所以能把失敗訊號提煉成可交易機會,很大一部分就是仰賴這些多日 VP 關係特徵,把「看起來有問題」精煉成「在哪些欄位上出現了可重複的問題」。
| 特徵群組 | 內容範例 | 研究目的 |
|---|---|---|
| 統計特徵 | 偏度、峰度、分布寬度 | 判斷成交是否偏向單側與是否過度集中 |
| 形狀特徵 | POC 位置、HVN/LVN 距離、對稱性 | 辨認輪廓是否支持原方向接受 |
| 相對位置特徵 | 現價相對 POC、相對價值區位置 | 衡量價格是偏離還是回歸成交重心 |
| 跨日特徵 | 重疊率、POC 遷移方向、輪廓相似度 | 確認結構是否延續或反轉 |
學理 VP 結構特徵工程(Volume Profile Feature Engineering)
📚 理論基礎
成交量分布輪廓的本質,是把「價格走到哪裡」與「成交集中在哪裡」分開來看。價格可以暫時衝到高位,但若成交主要堆在較低區域,代表市場真正接受的重心不一定跟著走。VP 特徵工程因此會從三個層面切入:第一是統計特徵,例如偏度與峰度,用來描述分布整體形態;第二是形狀特徵,例如 POC 所在位置、分布對稱性、HVN/LVN 間距,用來描述內部結構;第三是跨日比較,例如輪廓重疊率與重心遷移方向,用來判斷市場接受是否真的改變。這些特徵可把原本主觀的輪廓解讀,轉換成可訓練的表格資料。
🏠 日常生活類比
把 VP 想成百貨公司的人潮分布圖會很好理解。某一層樓雖然偶爾有人快速經過,但真正的熱門區通常是停留時間長、人群最密集的位置。POC 就像最熱鬧的櫃位,HVN 是人潮自然聚集的區塊,LVN 則像走廊或空曠區,人容易快速穿越。若今天表面上大家都往高樓層走,但實際停留仍集中在低樓層,那表示「看起來往上」與「真正接受往上」不是同一件事。交易上抓到這種落差,常常就是反轉優勢的來源。
📈 投資應用
VP 特徵最適合用來回答一個問題:當價格看似突破時,成交重心是否跟著移動?若沒有,則原方向很可能缺乏真實接受。R024 把這個概念應用在反打策略上,等於利用 VP 去抓「價格與接受脫鉤」的時刻。這類訊號對短線尤其有用,因為一旦市場發現自己追錯方向,修正速度通常很快,對反向策略有利。
6.4 從 E1 到 E55:演化的重點不是模型更複雜,而是標的更準確
很多人看到 E55 XGBoost VP-only PF 3.37,容易以為成功原因只是模型愈來愈強。事實上,更關鍵的變化是標記邏輯逐漸明確:研究者不是盲目把所有失敗樣本丟給模型,而是先定義出哪些失敗樣本屬於「有 VP 支撐的可反打結構」,再讓模型在這個已縮小、已較純的母群裡做品質判別。真正的差別不只是演算法升級,而是問題定義越來越接近市場真相。這也是量化研究最常被忽略的一點:如果標記本身混亂,再強的模型也只是在學噪音。
最終版本的認證資料為 PF 3.37、勝率 62.5%、最大回撤 7.9%、交易 269 筆;到了 2025 年隔離驗證(holdout),仍有 PF 2.70、勝率 60.7%。這組數字透露兩層意義。第一,R024 並非靠極少數爆賺交易撐起績效,而是在筆數有限但品質高的樣本中穩定擷取反向機會。第二,隔離驗證成績雖比樣本內稍低,卻仍保有明顯正期望值,顯示策略不是只在研究期間成立。對讀者來說,這是一個很好的示範:當你看到某類錯誤反覆以相同方式發生時,與其只想把它修掉,不如退一步想想,這會不會其實已經是一種獨立的市場現象。
實務提醒 「反著做」不是方法,只有「在結構一致時反著做」才是方法
很多交易者在連續被假突破打到後,會產生一種危險衝動:既然突破常失敗,不如以後都反著做。這種想法幾乎一定會出事。R024 之所以成功,靠的是 VP 結構特徵與模型分數共同確認,而不是情緒上想跟市場對著幹。市場有時會失敗,有時也會真的一路走開;沒有結構證據支持的「反打」,本質上只是另一種賭博。
6.5 對讀者的啟示:失敗不是垃圾桶,而是研究資料庫
VP 反轉策略最值得記住的,不只是那個漂亮的 PF 3.37,而是它改變了研究者看待失敗的方式。很多人一做回測,只要發現某條規則虧錢,就急著把它丟掉;但真正成熟的研究流程,會先追問失敗是否集中、是否有結構、是否能被重新定義。若答案是肯定的,失敗就不再只是成本,而是下一個 alpha 的來源。這套想法對所有量化研究都適用,不只限於 VP。
R024 教會我們一件很實際的事:市場不會因為你標記它為「錯誤」就失去價值。很多時候,市場只是告訴你,你原本看的角度不對。當你願意重新定義問題、重新觀察接受與分布,原本的虧損訊號就可能轉身變成獲利策略。對研究者而言,這種能力比單次找到高 PF 更珍貴,因為它意味著你開始具備從資料殘骸裡開採新知識的能力。
第七章:Gap Fill Long(R077)
在前面幾章裡,本書多數策略都偏向 SHORT 或雙向結構切換,因此 R077 Gap Fill Long 的出現格外有代表性:它是這套研究體系裡首個經認證的 LONG 策略,而且不是靠長線多頭信仰,而是建立在一個極度具體、極度短線的市場現象上——當台指期出現明顯向下跳空時,若恐慌反應過度、且市場環境允許,價格常在上午時段回補部分甚至全部缺口。R077 的關鍵不在於「逢低買進」這種空泛說法,而在於把大幅跳空、回補路徑、選擇權環境與模型共識整合成一套嚴格篩選的入場框架,讓第一個 LONG 策略不是基於樂觀,而是基於可驗證的結構優勢。
7.1 大跌開盤為什麼反而可能是做多機會
許多投資人看到大幅跳空下跌,第一反應是市場很弱、不應輕易接刀;這種直覺在很多情況下是正確的。但短線量化研究要問得更細:這個缺口是趨勢延續型,還是流動性過度反應型?當缺口已達 Gap ≤ -20pt,代表市場在開盤瞬間已反映一段相當明確的負面情緒。若接下來沒有更多賣壓跟進,而是逐步回到夜盤與前一日主要成交區之間,則原本的恐慌定價就可能只是開盤時段的風險溢價,而非全天有效的新平衡。Gap Fill Long 研究的正是這類「先過度、再修正」的情境。
R077 特別之處在於,它沒有把所有缺口都當作均值回歸機會。研究團隊非常清楚,真正危險的不是沒有缺口,而是以為所有缺口都會回補。因此策略只聚焦在大幅向下缺口,並用混合集成模型與環境過濾器確認:今天的缺口比較像歷史上那些快速回補的樣本,還是像那些一路崩跌、接刀就斷手的樣本。當這套過濾完成後,LONG 不再是逆勢逞強,而是有條件地承接過度悲觀。
Gap Fill Long 最重要的不是「猜反彈」,而是辨認哪些跳空其實是市場把恐慌一次灌太滿,留下了上午修正的空間。
Gap ≤ -20pt) ∧ 模型共識支持回補 ∧ GEX Rank ≥ 中位數(啟用環境過濾時)
出場邏輯:固定時間出場 11:45,避免午盤流動性下降帶來雜訊。| 變數 | 意義 |
|---|---|
Gap | 跳空缺口大小(點數),= 今日開盤價 - 前日收盤價;≤ -20pt 表示大型向下跳空 |
模型共識 | 多個機器學習模型對「今日缺口可能被回補」的共同判斷 |
GEX Rank | GEX 在歷史分布中的百分位排名;≥ 中位數表示避震器充足,有利於缺口修復 |
11:45 | 固定時間出場點,避免午盤(11:45 後)流動性下降造成滑價與雜訊 |
7.2 從 E1 到 E6:首個 LONG 策略不是一次到位,而是逐步把雜訊剝掉
R077 的演化同樣經歷多個版本。E1 只能做到 PF 2.09,代表缺口回補這個想法本身有優勢,但還混入不少不該交易的日子。後續版本持續改善兩件事:第一,讓模型不只看缺口大小,而是加入更細緻的早盤狀態、前一日位置、夜盤延伸程度、開盤後最初幾分鐘的承接力道等資訊;第二,讓不同模型以集成方式形成共識,避免單一模型因初始化或特徵偏好不同而過度自信。到 E6 時,未加 GEX 的版本已提升到 PF 6.70、勝率 73.7%、137 筆交易、平均每月約 3.34 筆,顯示這不是每天都有的亂槍打鳥,而是頻率不高但品質很集中的事件策略。
這種演進歷程對讀者非常有啟發。很多人以為首個 LONG 策略一定要從宏觀多頭框架出發,或仰賴很長週期的因子;但 R077 證明,短線 LONG 也可以建立在非常紮實的微結構觀察上。真正困難的不是找一個看起來能做多的理由,而是學會用研究流程把所有看似能做多、其實只是弱勢反彈的情境一一剔除。當你看到 E1 到 E6 的差距時,就會理解:策略演化的本質不是讓模型更花俏,而是逐步把「不值得做的樣本」清理乾淨。
7.3 混合集成:五個 XGBoost 種子加上 FiLM-MLP,為什麼能比單模型穩
R077 的模型設計採用混合集成(Hybrid Ensemble)架構:一方面用五個不同隨機種子的 XGBoost 模型建立樹模型群組,另一方面加入 FiLM-MLP 神經網路分支,最後再整合輸出。這裡的關鍵不是模型越多越好,而是讓不同歸納偏好的模型互補。樹模型擅長處理表格欄位中的條件切分,例如缺口大小、前一日收盤位置、早盤波動斜率等;FiLM-MLP 則更能學習多個連續特徵之間的平滑交互作用。當兩者同時存在時,策略不需要迷信某一種演算法,而是透過共識降低單模型誤判。
為什麼連 XGBoost 都要用五個不同隨機種子?原因在於即使使用同一批資料,模型在訓練過程中仍可能因資料抽樣、特徵子集與樹成長順序不同,對邊界樣本形成略有差異的判斷。若只依賴單一種子,有時會剛好遇到「這次訓練把某一類樣本看得太樂觀」的問題;多種子平均後,則更容易保留穩定訊號、削弱偶然偏見。這也是 R077 能在回補這種樣本數不算龐大的事件上維持穩健的原因之一。
學理 集成學習(Ensemble Learning)
📚 理論基礎
集成學習的核心觀念,是讓多個模型共同決策,以降低單一模型的偏誤與變異。常見路徑包括裝袋法(Bagging),即用不同抽樣資料訓練多個模型後平均結果;提升法(Boosting),即讓後續模型專門修正前面模型的錯誤;以及堆疊法(Stacking),即再用一個上層模型整合多個基模型輸出。R077 結合多種子 XGBoost 與 FiLM-MLP,本質上同時利用了「同型模型去偏」與「異型模型互補」兩種優點。對交易資料這種雜訊高、樣本稀少的場景來說,集成往往比寄望單一神模型更實際。
🏠 日常生活類比
最貼近的日常類比是陪審團制度。若一件事只聽一個人的判斷,容易被他的偏見、情緒或盲點影響;若由多位背景不同的人一起審議,雖然未必保證每次都完美,但更可能排除極端錯誤。多種子 XGBoost 像是五位接受相同訓練、但看問題角度略有差異的陪審員;FiLM-MLP 則像另一位思考方式不同的專家。當他們的意見被整合後,決策通常比任何單一成員更穩。
📈 投資應用
在 R077 這種事件不多、但每次機會品質差異很大的策略中,集成學習特別有價值。它能避免研究者把績效建立在單一模型的偶然幸運上,也有助於處理不同市場狀態下特徵重要性改變的問題。當樹模型與神經網路都傾向看多某個缺口回補樣本時,該訊號的可信度通常比單模型單獨看多更高。
7.4 GEX 環境過濾:為什麼加了選擇權背景後,PF 可以衝到 13.29
R077 後續最驚豔的一步,是導入 Gamma Exposure(GEX)環境過濾器,只在 GEX rank 高於中位數時交易。簡單說,GEX 描述的是選擇權造市者整體 gamma 部位對市場價格波動的潛在影響。當某些 GEX 環境成立時,指數與期貨在大幅跳空後更容易出現穩定回補,而不是失控擴大跌勢。對 Gap Fill Long 來說,這等於多了一個「今天市場是否有利於均值回歸」的上層條件。
啟用 GEX 後,策略 PF 直接升至 13.29、勝率 84%,但交易數也縮到只有 50 筆。這是非常典型的量化取捨:你用更嚴格的環境過濾換到更高的樣本純度,同時也接受機會變少。對實戰者來說,這不是缺點,而是策略定位的問題。如果你的目標是做一個專打高品質事件的低頻武器,那麼 50 筆高純度樣本可能非常有價值;若你需要更平滑的資金利用率,則可能會保留未加 GEX 的版本作為主體,再把 GEX 版當成強化模式。重點不是哪一個數字更漂亮,而是你是否理解兩種版本分別在交易頻率與品質上的交換。
| 版本 | PF | 勝率 | 交易數 | 解讀 |
|---|---|---|---|---|
| 無 GEX 過濾 | 6.70 | 73.7% | 137 | 較平衡的頻率與品質,適合作為主策略版本 |
| 加入 GEX 過濾 | 13.29 | 84.0% | 50 | 極高純度,但更低頻,偏向精選事件模式 |
實務提醒 高 PF 不等於可以忽略樣本數
PF 13.29 這種數字非常吸引人,也很容易讓人忽略它背後只有 50 筆交易。這不是說它不可靠,而是你必須同時看「樣本純度」與「樣本大小」。若未來市場條件改變,低頻策略可能需要更久時間才能驗證是否仍有效。因此在資金配置上,R077 GEX 版更適合被視為高品質、低頻率的衛星策略,而不是唯一核心。
7.5 固定時間出場 11:45:不是偷懶,而是承認優勢有時段性
R077 的另一個好設計,是明確規定 11:45 固定時間出場。很多初學者會覺得,既然是回補策略,為何不等到完全補完才走?但研究結果顯示,缺口回補優勢主要集中在上午,尤其是開盤至中午前這段流動性仍相對充足、夜盤資訊正在被重新定價的區間。過了這段時間後,午盤流動性下降,市場更容易進入整理或等待歐洲、美股資訊的狀態,繼續持有反而會引入與原始假說無關的雜訊。
固定時間出場的價值,在於它把策略的獲利來源限制在最有根據的那段時窗裡。如此安排看似保守,實際上是研究成熟的表現:你知道自己賺的是哪一段行情,就不要貪心去賭後面那段是否也會順便送你。量化系統最怕的不是少賺,而是把原本清楚的優勢擴張到不再屬於自己理解範圍的時空。11:45 這條規則,正是對此的自律。
7.6 對讀者的啟示:首個 LONG 策略之所以站得住,是因為它先學會了節制
Gap Fill Long 看起來很像一個令人開心的反彈故事,但它真正成功的原因其實是節制:只做大幅向下缺口、使用模型共識過濾、必要時再加上 GEX 環境條件,並在 11:45 準時出場。這些節制讓 LONG 不是憑情緒接刀,而是建立在一套相對狹窄、卻相當清楚的結構優勢上。對多數想研究做多策略的讀者而言,這是一個很值得模仿的起點。
R077 的教育意義,不只是「原來本體系也能做多」,而是證明:做多策略完全可以像做空策略一樣嚴謹,只要你願意把市場情境、特徵工程、模型共識與時段邏輯全部寫清楚。真正讓策略可信的,從來不是方向本身,而是你對優勢來源有沒有足夠具體的定義。
第八章:多模型級聯策略(R066)
如果前面幾章展示的是「先把市場結構講清楚,再用模型做過濾」,那麼 R066 多模型級聯策略就代表研究正式走進深度學習架構的成熟期。它不是把神經網路丟上去試手氣,而是把兩個分工明確的子模型串成二階段級聯:第一階段由 VP-CNN 從成交量分布與市場狀態中學出市場狀態嵌入向量(regime embedding),先回答「現在處在什麼市場環境」;第二階段再由特徵線性調制卷積網路(Feature-wise Linear Modulation Convolutional Neural Network, FiLM-CNN)根據這個環境向量,動態調整主預測網路對價格序列的解讀方式。這樣的安排很有意思:R066 不再假設所有價格型態都該用同一副眼鏡看待,而是承認同一段價格變化在不同市場狀態下,意義本來就可能完全不同。
8.1 為什麼深度學習終於在這裡贏了
交易領域裡,很多人對深度學習抱持兩種極端態度:一種覺得它萬能,任何資料都該丟進神經網路;另一種則認為表格模型已經夠強,深度學習只是華而不實。R066 的價值,正在於它避開了這兩種極端。研究者沒有讓單一大模型硬吃所有資訊,而是先問一個更精準的問題:若市場環境會改變,那麼模型是否應該先理解環境,再根據環境調整對訊號的詮釋?這正是級聯架構存在的理由。當市場從趨勢、震盪、事件驅動到回補環境切換時,同一個局部價格形狀未必有同樣後果;若模型不能感知這種上下文,預測自然容易混亂。
R066 因此採取兩階段設計。第一階段 VP-CNN 像一台環境辨識器,從成交量分布與相關序列學出 16 維市場狀態嵌入向量;第二階段 FiLM-CNN 則像一個會依脈絡調整解讀角度的主模型,根據前述嵌入向量去調制後續卷積特徵。這個方式比單純把所有欄位直接拼接進去更有效,因為它不是讓模型自己在雜訊裡瞎找關聯,而是明確告訴它:先理解環境,再做方向判斷。最終 R066 在認證中繳出 PF 5.23、勝率 63.44%、最大回撤 2.22、頻率 3.1 筆/月,而且六個認證窗全部過關,顯示這不是只靠某段特定年份撐出來的巧合。
R066 的核心洞見是:市場訊號沒有脫離情境而獨立存在,同一段價格軌跡在不同市場狀態下,可能代表趨勢延續,也可能只是雜訊回彈。
FiLM(x|c) = γ(c) ⊙ x + β(c)| 變數 | 意義 |
|---|---|
VP-CNN | 第一階段:用卷積神經網路學習成交量輪廓(Volume Profile)的市場狀態嵌入向量 |
regime embedding | 市場狀態的向量表示,將離散的日型分類轉為可微分的連續空間 |
FiLM-CNN | 第二階段:用特徵線性調制的 CNN 處理價格序列,其參數由 regime embedding 動態調整 |
x | 主網路的中間特徵向量(bar 層級價格序列表示) |
c | 條件向量(context),此處為 VP-CNN 輸出的 regime embedding |
γ(c), β(c) | 由條件 c 生成的縮放(scale)與位移(shift)參數,動態調整主特徵 |
⊙ | 逐元素相乘(element-wise multiplication) |
8.2 第一階段:VP-CNN 先學的是環境,不是答案
R066 第一階段的 VP-CNN 使用一維卷積(Conv1d)處理序列型輸入,核心結構為 Conv1d(6→24, k=3) 連續兩層,最終壓縮成 16 維嵌入向量(embedding)。這裡最重要的不是某個超參數,而是角色定位:VP-CNN 的任務不是直接告訴你該買還是該賣,而是把複雜的市場狀態濃縮成一個可被後續模型使用的脈絡向量。這個向量可能隱含了成交分布是否集中、近期位移是否順暢、價格與價值區是否脫鉤、當前環境較像趨勢日還是回補日等資訊。當這些狀態先被抽象化後,第二階段模型就不必重新從零理解環境。
這種把「環境辨識」與「方向判斷」分離的想法,在交易建模中特別重要。許多模型失敗,不是因為它完全看不懂局部訊號,而是因為它不知道自己現在所處的市場背景。例如同樣是一段快速拉回,若發生在趨勢擴張日,可能只是健康回檔;若發生在缺口回補日,則可能是主要機會本身。VP-CNN 先學市場狀態嵌入向量,等於先替後續模型回答「今天是哪一類題目」,再讓它判斷這題該如何作答。
8.3 第二階段:FiLM-CNN 不是多一層,而是讓模型懂得因地制宜
第二階段 FiLM-CNN 的價值,在於它不是單純把嵌入向量與原始特徵串接,而是利用 FiLM 機制動態調整主網路各層特徵的尺度與偏移。直白地說,第一階段給出的環境向量,會生成一組 γ 與 β,用來告訴第二階段:在目前這個市場背景下,哪些局部特徵該放大,哪些該收斂。這比單純拼接更高明,因為模型不是被動接收更多欄位,而是主動改變自己看資料的方式。
這種設計解決了一個交易模型裡非常常見的難題:相同模式在不同環境下意義不同。若只做串接,模型仍要自行從大量樣本裡慢慢學出「當市場狀態 A 出現時,這個型態重要;當市場狀態 B 出現時,這個型態不重要」;FiLM 則把這件事顯性化,直接用調制參數改寫特徵表示。對資料量遠不如影像那麼龐大的金融任務而言,這種明確的結構歸納偏好,往往比一味堆大模型更有效。
學理 FiLM 特徵式線性調制(Feature-wise Linear Modulation, FiLM)
📚 理論基礎
FiLM 的基本數學形式是:對某層輸入特徵 x,根據條件訊號 c 產生一組 γ(c) 與 β(c),再計算 γ ⊙ x + β。這表示模型可以依照外部條件,動態改變每一維特徵的重要性與基準位置。與單純把條件向量串接到輸入相比,FiLM 更直接地把條件資訊寫進特徵處理流程,因此常能更有效地學到「在不同上下文下,同一特徵應如何被詮釋」。
🏠 日常生活類比
最貼切的類比是翻譯語境。同一句英文在不同上下文裡,意思可能完全不同;若你不知道前後文,只看單句就容易誤解。FiLM 就像先把上下文交給翻譯者,再讓他根據情境調整詞義權重:某些字在商務場合該被放大理解,某些字在日常口語裡則應該被弱化。交易上也是如此,同一個價格型態若處在不同市場狀態,就需要不同的解讀強度。
📈 投資應用
在 R066 中,FiLM 的投資意義是讓主模型不必假設「一套固定特徵規則走遍所有市場」。當環境向量顯示目前較像趨勢日,模型便可放大延續型特徵;若顯示較像回補或震盪環境,則能降低對同一型態的追價解讀。這種上下文敏感性,是 R066 能通過多個不同時期認證窗的重要原因。
學理 CNN 卷積神經網路在時間序列中的應用
📚 理論基礎
卷積神經網路(Convolutional Neural Network, CNN)最早廣為人知是在影像辨識,但它同樣適合處理時間序列。對一維時間序列來說,一維卷積會用長度固定的 kernel 在時間軸上滑動,擷取局部模式,例如連續上升、急跌後反彈、波動壓縮後擴張等。這種做法的優勢,是能共享參數、降低模型複雜度,同時保留對局部形狀的敏感度。對交易資料而言,許多重要訊號本來就存在於短時間窗的形狀變化中,CNN 因而特別合適。
🏠 日常生活類比
可以把卷積核想成不同倍率的顯微鏡。你把顯微鏡沿著樣本滑過去,不是一次看完整張圖,而是逐段觀察局部紋理。低倍率時看到大致方向,高倍率時看到細微轉折。時間序列中的 CNN 也是如此:它會沿著時間軸掃描,找出哪些短區段具有值得注意的形狀。比起要求模型直接記住整串長序列,這種先抓局部模式再逐層抽象的方式更有效率。
📈 投資應用
在 R066 裡,CNN 的價值不是替代所有表格特徵,而是補上「局部形狀」這塊資訊。市場很多重要訊號都不是單一數值大小,而是一小段時間內如何形成:例如是否連續推進、是否出現加速與衰竭、是否在關鍵位置形成回抽。CNN 很擅長擷取這類局部時序圖樣,與 VP 這種描述接受結構的特徵結合後,就能同時兼顧形狀與背景。
8.4 認證成績:不只高 PF,更重要的是六窗全過
R066 的認證數字非常亮眼:PF 5.23、勝率 63.44%、最大回撤 2.22、平均頻率 3.1 筆/月。若只看單一統計,它已足以成為本書最吸睛的策略之一;但真正讓它成為里程碑的,是完整認證 6/6 全數通過。這代表不論市場處於哪一段周期,策略都沒有出現明顯崩壞。書中列出的 2021-2026 分期 PF 亦分別達到 3.86、4.70、5.73,顯示它不只在整體樣本上好看,在更細切的時段裡也有一致性。
對量化研究者而言,這種「跨窗一致」比任何單一高 PF 都更珍貴。市場最喜歡懲罰的,就是只會在某一種年代有效的模型;而 R066 之所以能通過多窗檢驗,正是因為它從架構層面承認市場有情境差異,並把情境建模進系統裡。它不是賭市場永遠長同一個樣子,而是讓模型學會在不同樣子下採取不同解讀方式。這也是為什麼本章標題可以毫不誇張地說:這是深度學習的勝利——不是因為模型更深,而是因為架構更貼近市場本質。
實務提醒 深度學習的勝利,不代表可以忽略資料治理
看到 R066 的成績後,很容易產生「那就全部改用深度學習」的衝動。但請記住,級聯成功的前提是資料對齊、標記品質、時序切分與驗證流程都已經非常嚴謹。若輸入資料有洩漏、訓練驗證切分不正確,深度模型只會更快把錯誤學得很徹底。模型越強,資料治理越重要;否則你得到的不是智慧,而是更高效率的自我欺騙。
8.5 第二部總結:七大認證策略的知識地圖
走到這裡,第二部其實已經把七個認證策略串成一條完整知識線。R014 告訴我們如何從 IB 與中樞抓趨勢破位;R069、R071、R072 說明結構翻轉如何被拆成家族化研究;R024 示範如何從失敗訊號反向開採 alpha;R077 建立首個高品質 LONG 事件策略;R066 則把深度學習真正嵌進市場情境理解。它們乍看分散,實際上共同回答同一個核心問題:在台指期這個高噪音、快節奏的市場裡,如何把結構、環境與模型分工安排得恰到好處。
對讀者而言,最值得帶走的不是哪個 PF 最高,而是每個策略都示範了一種研究態度:先有市場假說,再用資料確認;先理解訊號來源,再談模型強弱;先建立可驗證的結構,再追求更高表現。當你用這種方式回頭看整個第二部,就會發現這七個策略其實不是七個零散案例,而是一套逐步升級的研究哲學。
| 策略 | 研究項目 | 方向 | PF | WR | Sharpe | 特色 |
|---|---|---|---|---|---|---|
| IB Breakout | R014 | SHORT | 3.076 | 46.9% | 1.979 | 高頻、MLP 篩選 |
| Center Flip MC | R069 | BOTH | 2.917 | 64.9% | — | 結構反轉 |
| Center Flip XGB | R071 | BOTH | 3.093 | 63.6% | 5.571 | XGBoost 品質閘門 |
| Center IB Fusion | R072 | BOTH | 3.064 | 64.8% | 5.872 | IB+中樞融合 |
| VP Reversal | R024 | SHORT | 3.37 | 62.5% | — | 失敗信號反轉 |
| Gap Fill Long | R077 | LONG | 6.70 | 73.7% | — | GEX 環境過濾 |
| Multi-Cascade | R066 | BOTH | 5.23 | 63.4% | — | VP-CNN+FiLM 級聯 |
第九章:環境偵測總論 — 範式轉移(R098)
📖 讀懂本書的數字 — 常用評估指標速查
本書大量使用統計與機器學習指標來衡量模型與策略的好壞。以下是最常出現的幾個,先看過一遍,後面遇到就不會卡住。
| 指標 | 全名 | 白話解釋 | 怎麼看 |
|---|---|---|---|
| AUC | Area Under ROC Curve (ROC 曲線下面積) |
衡量模型「分辨兩種結果」的能力。想像你考一張是非題考卷,AUC 就是你答對的比率經過校正後的分數。 | 0.50 = 跟丟硬幣一樣(完全沒用) 0.70 = 有參考價值 0.80+ = 相當準確 1.00 = 完美(現實不存在) |
| Corr | Correlation (相關係數) |
模型預測的數字跟實際數字有多像。好比你每天猜明天氣溫,Corr 就是你的猜測與真實溫度的吻合度。 | 0.00 = 完全無關 0.30 = 弱相關 0.60 = 中強相關 0.80+ = 很強 |
| PF | Profit Factor (獲利因子) |
策略所有賺的錢 ÷ 所有賠的錢。PF = 2 代表每賠 1 元就有 2 元獲利。 | < 1.0 = 賠錢策略 1.0-1.5 = 勉強獲利 1.5-2.5 = 不錯 3.0+ = 優秀 |
| Sharpe | Sharpe Ratio (夏普比率) |
每承擔一單位風險,能換到多少報酬。Sharpe 越高,代表報酬來自真正的優勢而非運氣。 | < 0.5 = 風險太大 0.5-1.0 = 可接受 1.0-2.0 = 好 2.0+ = 很好 |
| MDD | Maximum Drawdown (最大回撤) |
策略歷史上「從最高點跌到最低點」的最大幅度。好比你存款曾經最多有 100 萬,後來最慘跌到 70 萬,MDD 就是 30%。 | 越小越好 5-10% = 保守 20%+ = 需留意 |
| WR | Win Rate (勝率) |
所有交易中賺錢的比率。勝率 50% 代表每兩次交易有一次獲利。 | 勝率高不一定好(要搭配賺賠比看),勝率低但每次賺很多也能獲利 |
| GBR | Gradient Boosting Regressor (梯度提升迴歸器) |
一種機器學習方法,像是讓很多「不太聰明的學生」輪流答題、互相糾錯,最後集體答案比任何一人都好。 | 本書常用 200 棵樹的 GBR 作為環境偵測主力模型 |
R098 最大的貢獻,不是再做出一個更會猜方向的模型,而是把整個研究問題重寫。環境偵測系統(Environment Detection System, EDS)指出:市場環境特徵對「方向」幾乎沒有穩定預測力,但對「當日波動範圍」與「是否適合某類策略」卻有明顯可用的資訊。這個結論看似簡單,卻改變了整條研究路線。過去我們問的是「明天漲還是跌?」;R098 改問「今天會是窄幅平衡日、正常延伸日,還是爆發日?」只要問題問對,資料才肯回答。E1 到 E7 的連續驗證證明,方向模型長期繞不開 AUC ≈ 0.50 的天花板,但全日範圍與市場狀態類訊號卻可穩定達到 Corr 0.60+,並進一步轉化為策略 PF 與 Sharpe 的顯著提升。第三部的所有模組、閘門與融合架構,都是從這個範式轉移開始。
9.1 為什麼「猜方向」幾乎注定失敗?
台指期是高流動性、快速資訊反映的市場。若只用歷史價量、委託流、IB 早盤微結構去預測「收紅還是收黑」,訊號很容易在雜訊裡被淹沒。R098 的第一個重要結論來自 E1 委託簿流(Order Flow, OF)實驗:即使把 IB 內 delta family、bid/ask volume、cumulative delta 等微觀特徵系統化整理,方向 AUC 仍只有 0.507,幾乎與丟硬幣無異。這不是模型不夠深的問題,而是研究對象本身信噪比太低。日內方向的形成,混合了外資避險、現貨權值股拉抬、選擇權 gamma 部位、即時消息與被動成交等多重力量;你在 09:15 看見的那點偏向,往往只是眾多力量暫時疊加的結果,不足以轉化為穩定的方向分類器。
然而,當目標從方向改成範圍時,情況立刻不同。E3 靜態環境層把前日波動、跳空、IB 寬度、VP 結構、GEX 分位等因子整理成環境特徵後,方向 AUC 仍只有 0.5001,但全日範圍預測相關卻達到 0.6041。講白一點,市場不願意提前告訴你「收哪裡」,卻常會先漏口風說「今天大概會走多遠」。這非常符合拍賣市場理論(Auction Market Theory, AMT)的直覺:價格終點是一連串競價後的結果,受路徑與尾盤再定價影響很大;但環境是否平衡、是否脫離舒適區、是否存在波動擴張條件,通常在早盤就已有徵兆。
在台指期裡,最難預測的是「最後收哪裡」;相對容易預測的是「今天像不像會鬧大事」。
9.2 十大環境模組與七層驗證路徑
R098 不是單一模型,而是一條從失敗到收斂的驗證鏈。M1 到 M10 十個模組各自描述市場不同面向:早盤範圍、IB K 線解剖、方向信心、VP 結構、多日脈絡(context)、盤中動態、前日 K 線、VP overlap、延伸行為與 SOM 軌跡。它們有強有弱,但共同指向同一個設計原則:用模組化方式把「環境」拆成可計算的子問題。這樣做的好處,是每個模組都能獨立驗證、獨立淘汰,也能在後續 FiLM 與 Cross-Attention 中保留可解釋性,而不是把所有欄位丟進黑盒後期待奇蹟。
| 模組 | 主題 | 核心目標 | 代表成績 | 角色定位 |
|---|---|---|---|---|
| M1 | 範圍(Range) | IB 範圍 → 全日範圍 | Corr 0.610 | 範圍底座 |
| M2 | K 線描述器(K-Line Descriptor) | 全日 K 線形態描述 | shadow_ratio Corr 0.519 | 形態語意 |
| M3 | 方向(Direction) | IB 動量 → 方向信心 | AUC 0.711 / 強信號 0.811 | 低覆蓋方向模組 |
| M4 | VP 結構(VP Structure) | 成交分布結構 → 全日範圍 | Corr 0.599 | 價值接受度 |
| M5 | 多日脈絡(Multi-day Context) | 多日遷移 → 全日範圍 | Corr 0.601 | 跨日背景 |
| M6 | 盤中動態(Intraday Dynamics) | 盤中市場狀態即時更新 | 非預測模組 | 執行期描述 |
| M7 | Prev-Day K | 前日結構 → 今日增量 | 弱但穩定 | 昨日記憶 |
| M8 | VP Overlap | 3 日 VP 與今日 IB 重疊 | Corr 0.863 | 系統最強模組 |
| M9 | Extension | 是否出現大延伸 | AUC 0.749 | 突破/延伸辨識 |
| M10 | SOM Trajectory | 狀態軌跡 → range | Corr 0.620 | 拓撲轉場 |
七層驗證路徑(E1-E7)則像一條研究篩網。E1 委託流先證明「微觀方向預測幾乎無效」;E2、E3 靜態環境層顯示只要改看全日範圍,相關性就浮現;E4 開始做模組化拆解,並發現 VP 結構類訊號遠強於委託流;E5 將波動與 GEX 交互後,全日範圍 Corr 從 0.5466 推升到 0.6301;E6 再把環境預測轉成市場狀態閘門,基線 PF 1.48 可在 gex_low 情境提升到 4.01;最後 E7 直接整合策略,從原始 PF 1.06 提升到閘門版 PF 3.07,Sharpe 由 0.28 躍升至 5.67。說到底,環境偵測真正的價值,不是讓模型更會猜,而是讓整體交易系統更懂得挑時間。
| 驗證層 | 核心問題 | 代表指標 | 得到的結論 |
|---|---|---|---|
| E1 | 委託流能否猜方向? | AUC 0.507 | 近乎隨機,方向路線失敗 |
| E2 | IB 前可否先猜方向? | AUC 約 0.51 | IB 前信號極弱 |
| E3 | 靜態環境能否預測? | 方向 AUC 0.5001 / 範圍 Corr 0.6041 | 範圍可預測,方向不可 |
| E4 | 哪些子模組最有用? | M8 Corr 0.863 | VP overlap 成為主軸 |
| E5 | 波動與 GEX 是否交互? | Corr 0.5466 → 0.6301 | 市場狀態條件化有效 |
| E6 | 環境能否當交易閘門? | PF 1.48 → 4.01 | 低 GEX 情境最有價值 |
| E7 | 策略整合後是否實用? | PF 1.06 → 3.07 | 環境系統可直接變現 |
day_range_pct = (day_high - day_low) / session_open × 100
核心發現:當 ib_range_pct 擴大時,day_range_pct 的上尾機率同步上升。
9.3 最佳市場狀態:normal_gex_low 與 explosive_gex_low
R098 最能落地的結論,是市場狀態不只存在,而且存在明確的優勢區。最佳情境並不是「任何低波動都好」,而是 normal_gex_low 與 explosive_gex_low 這兩種結構:前者代表市場大致仍在正常拍賣節奏中,但缺乏高 gamma 避震器,容易產生順勢延伸;後者則表示市場已進入高張力區,波動一旦擴張便更容易放大。這也是為什麼很多突破策略、延伸策略與移動停利(trailing stop)模型,在低 GEX 區間的表現遠優於全樣本平均。環境系統不是替策略下單,而是先回答:今天的舞台到底是不是屬於你。
在全部 range 模組中,ib_range_pct 是最強、也最樸素的特徵。它的重要,不只在於統計分數高,而在於它符合市場常識:早盤半小時如果已經用大幅度完成重新定價,代表今天的資訊處理速度、雙方接受程度與停損帶動能都明顯高於平常。當這個訊號再和 VP overlap、GEX 分位、多日 VA 遷移一起看時,市場的「日型機率分布」就能被描出大致輪廓。環境偵測的本質,正是把這些本來零散的直覺,變成可量化、可驗證、可整合的共通語言。
學理 環境偵測 vs. 預測:量化研究的範式轉移
📚 理論基礎
傳統預測任務假設市場存在穩定可分類的方向訊號,因此把問題定義成 up/down 二元分類。但在弱式效率高、雜訊大的期貨市場,方向標籤往往接近隨機,模型再複雜也只能在微小樣本區間內取得暫時優勢。環境偵測則改以「市場狀態」為目標,例如範圍大小、延伸機率、平衡或失衡程度。這些量不是最終價格本身,而是生成最終價格的背景條件,因此訊號更穩、也更容易做跨年驗證。
🏠 日常生活類比
日常決策很少要求你精準預測結果,更多時候只要知道環境即可。例如出門前你不需要預測 14:23 是否開始下雨,只要知道今天濕度高、雲層厚、降雨機率大,就會帶傘、改路線、留緩衝時間。交易也是一樣:不用硬猜最後收盤紅綠,只要先知道今天可能是窄幅、正常擴張還是爆發日,就能選擇不同策略與部位配置。
📈 投資應用
環境偵測最適合做三件事:第一,作為策略閘門,避開不適合的日子;第二,作為出場尺度,根據預測範圍決定停利/停損寬度;第三,作為模型融合的上下文,讓 bar 層級訊號有語境。這正是第三部到第五部整條管線的出發點。
行為提醒 不要把環境分數誤當成方向分數
研究者常犯的錯,是看到某個市場狀態對突破策略有效,就誤以為該市場狀態本身等於「看多」或「看空」。其實環境訊號回答的是可交易性,不是方向答案。若把環境分數直接轉成多空判斷,等於又回到 R098 已經證明失敗的方向思維。
第十章:M1-M5 日內微觀模組
M1 到 M5 是環境偵測系統最像「體檢表」的一組模組。它們全部在日盤初始平衡(Initial Balance, IB)結束前後就能建立今日環境的第一版輪廓:M1 估計今日可走多遠,M2 描述今日 K 線可能長什麼樣,M3 提供有限但有用的方向信心,M4 看成交分布是否已經形成共識,M5 再把前幾天的脈絡接回來。這五個模組合在一起,像是交易員在 09:15 之後快速完成的一次總判讀:今天是安靜的、猶豫的,還是準備擴張的?這些模組的重點不只是分數,而是它們各自回答不同子問題,最後才能在融合架構裡形成真正可用的上下文。
10.1 M1:範圍預測(Range Prediction)— 最實用的底座模組
M1 的目標最清楚:用 IB 的早盤資訊預測全日範圍。它的主角不是花俏的神經網路,而是 200 棵樹的梯度提升迴歸器(GradientBoostingRegressor, GBR)。這個設計非常務實,因為全日範圍是連續量、非線性但結構化,而且受少數強特徵主導。九個核心特徵中,ib_range_pct 的重要度高達 0.56,幾乎一個欄位就定義了整個問題的一半。再配上前日範圍、跳空百分比、近五日波動與平靜連續日數(calm streak),M1 在 OOS 取得 Corr 0.610。而且它直接服務 R171 的出場尺度:你不必知道行情往哪邊走,只要知道今天大概能走多遠,停利與移動停損(trailing stop)就會更合理。
ib_range_pct = (ib_high - ib_low) / session_open × 100
calm_streak = 連續前日 day_range_pct < 1.0% 的天數
| 特徵 | 公式/定義 | 設計意圖 |
|---|---|---|
| ib_range_pct | (ib_high - ib_low) / session_open × 100 | 早盤重新定價強度 |
| gap_pct | (session_open - prev_close) / prev_close × 100 | 隔夜資訊衝擊 |
| range_ma5 | 前五日 day_range_pct 均值 | 近期波動背景 |
| range_std5 | 前五日 day_range_pct 標準差 | 波動不穩定度 |
| calm_streak | 連續窄幅天數 | 壓縮後擴張的機率 |
M1 的一個重要啟示是:模型未必要超越單一最強特徵,才算有價值。雖然單看 ib_range_pct 甚至能有更高的 raw corr,但模型能提供較穩的區間估計與跨年份耐用性,這對實務更重要。交易員要的是可重複的尺度,不是偶爾命中的神蹟。
10.2 M2:K 線描述器(K-Line Descriptor)— 從 VP Shape 失敗中重寫問題
M2 的故事很有代表性。原先研究直覺認為,全日 K 線或 VP shape 應該可被分類,因此曾嘗試 P / b / D / B / N 等 VP 形態分類;結果 AUC 只有 0.51 左右,顯示離散分類在這裡幾乎沒有可學習空間。R138 的改寫方法是:不再硬分形態,而是預測一組連續描述子,例如上影/下影比例、實體比例、紅綠 K。這種「連續值替代類別」的思路,使得 shadow_ratio 可達 Corr 0.519,body_color 可達 AUC 0.694。更關鍵的是,12 個 IB K 線特徵幾乎主宰全部預測,表示市場在早盤已經透露了今日 K 線的語法,但這種語法不是『今天一定收紅』,而是『今天比較像帶長上影、還是實體較紮實』。
| 目標 | 定義 | OOS 表現 |
|---|---|---|
| shadow_ratio | upper_shadow / (upper_shadow + lower_shadow + ε) | Corr 0.519 |
| upper_shadow_pct | (day_high - max(open, close)) / open × 100 | Corr 0.465 |
| lower_shadow_pct | (min(open, close) - day_low) / open × 100 | Corr 0.441 |
| body_pct | |close - open| / open × 100 | Corr 0.282 |
| body_color | close > open ? 1 : 0 | AUC 0.694 |
M2 最後透過 ModuleEncoder 壓成 16 維嵌入向量(embedding),不是為了追求神祕表示,而是把 K 線形態語意交給後續模型使用。它本身不是最強模組,但它告訴我們一件事:很多看似「應該分類」的金融現象,其實更適合先用連續描述子來表達,再交由系統整合。
10.3 M3:Direction — 簡單規則為何會贏?
M3 是第三部最值得反覆閱讀的例子之一,因為它直接反駁了「一定要上更複雜分類器」的衝動。R136、R137 的比較顯示,IB 紅 K 對日紅 K 的條件機率高達 67.9%,若 |ib_momentum| ≥ 0.50,方向正確率可上看 81.1%,只是覆蓋率只剩 12.6%。這代表方向訊號是存在的,但只存在於高信心、低覆蓋的小區塊內。與其讓 ML 嘗試在整個樣本上逼出一個不穩定分類邊界,不如保留 ib_momentum、ib_abs_momentum、上漲 bar 比例與 close bias 這些微結構訊號,再用 Linear(5→16) 投射成連續嵌入向量(embedding)。這套作法雖然樸素,卻成功避免了過擬合。
這裡的設計哲學非常重要:M3 不負責下方向單,它只負責說明「今天如果要做方向判斷,這份信心大概有多強」。因此它天然適合當閘門特徵(gating feature),而不是終局裁判。真正成熟的環境系統,不會要求弱訊號做超出能力範圍的工作。
10.4 M4、M5:價值接受度與多日遷移
M4 與 M5 共同補上「市場記憶」這件事。M4 將前日與 IB 的成交量輪廓(Volume Profile, VP)壓成一組結構特徵,例如 HHI concentration、POC position、VA width 與成交量偏度,回答的是:市場目前對價值的共識強不強?若量能高度集中,表示市場在某價格區有高度接受;若成交分布分散,則表示共識鬆動、較可能出現擴張。M4 取得 Corr 0.599,說明市場接受度本身就具有相當的範圍解釋力。
M5 則把視野拉到多日脈絡(context)。它除了報酬、範圍壓縮(range compression)與 ATR ranking 外,特別值得一提的是 VA migration、POC migration 與 VA overlap 這些「價值區搬家」特徵。當 POC 連續大幅上移或下移,代表市場正在重新定義公平價;這種時候,今日延伸範圍往往比靜態平衡日更大。M5 的 Corr 0.601 與 M4 相近,證明單日結構與多日遷移各自獨立、有互補性。
| 模組 | 關鍵特徵 | 演算法 | OOS | 設計理由 |
|---|---|---|---|---|
| M4 | HHI、POC position、VA width、delta_poc | GBR 200 trees | Corr 0.599 | 量能集中度反映價值共識 |
| M5 | va_migration、poc_migration、va_overlap_pct | GBR 200 trees | Corr 0.601 | 市場是否正在「搬家」 |
早盤的市場不是一張白紙;它總帶著昨天的成交記憶、近五日的波動記憶,以及剛開盤就暴露的重新定價強度。
學理 GradientBoosting 與 Walk-Forward Analysis 在環境模組中的角色
📚 理論基礎
梯度提升迴歸(Gradient Boosting Regression)以逐步修正殘差的方式組合多棵淺樹,特別適合處理中等維度、非線性且含交互效果的表格資料。M1、M4、M5 之所以採用 GBR,是因為它對連續目標穩健、可保留特徵重要度,也容易做分年分析。另一方面,Walk-Forward Analysis(WFA)不是附加流程,而是模組可信度的主體:每個模組都必須在滾動訓練/測試中跨年份保有相近結論,否則再高的單次分數也只是過擬合。
🏠 日常生活類比
GBR 像是一組輪流補考的老師:第一位老師先做初判,第二位專門修正第一位最常錯的部分,第三位再修正剩下的盲點。WFA 則像每年都換新考題的模擬考制度;不是在同一份試卷上越做越高分,而是要確認知識真的能搬到下一年。
📈 投資應用
對交易來說,M1/M4/M5 的價值不在於精準命中單日高低點,而在於提供穩定排序:今天比較像大日還是小日、比較像價值穩定還是價值遷移。只要排序正確,閘門、停利與策略選擇就能同步改善。
設計提醒 不要讓單一分數掩蓋模組分工
M1 到 M5 並不是互相取代,而是各自處理不同維度。若只留下單一最高 corr 的模組,短期可能簡化架構,長期卻會失去可解釋性與跨場景韌性。環境系統真正的優勢,在於模組分工後再融合,而不是把所有答案壓成一個欄位。
第十一章:M6-M10 跨日與結構模組
如果說 M1 到 M5 是環境偵測的早盤問診,那麼 M6 到 M10 就是把市場的「背景記憶、空間關係與狀態轉場」補齊。這五個模組裡,既有不直接做預測、但對執行期(runtime)非常關鍵的 M6,也有整個系統最強的 M8 VP overlap,還有看似冷門卻提供市場狀態轉場(regime transition)視角的 M10 SOM trajectory。它們共同證明一件事:真正有用的環境訊號,不一定來自更細的方向微分,而常常來自更好的結構表述。市場是拍賣系統,也是記憶系統;跨日模組的價值,就是把這種記憶轉成可運算的特徵。
11.1 M6 與 M7:弱訊號也要有正確定位
M6 盤中動態模組(Intraday Dynamics)的特殊之處,在於它不是預測模組,而是執行期描述模組。它持續追蹤盤中價格與 VA/VP 的關係、是否由平衡轉失衡、是否出現雙分布結構,最後輸出 16 維嵌入向量,供出場與盤中調整使用。許多研究者只重視「能不能在 09:15 預測」,卻忽略市場在 10:30、11:15、12:40 仍會改變日型。M6 提醒我們:環境不是靜態標籤,而是會演化的狀態。
M7 Prev-Day K-Line 則是典型的弱訊號模組。它從前一日與前二、前三日的 extension ratio、前日延伸方向與 IB 正規化 range 出發,試圖回答「昨天長怎樣,會不會改變今天?」結果顯示它的確不強,但也不是沒用。最有價值的發現不是高分數,而是 K 線反持續性:P(紅K | 前日紅K)=49.4%、P(紅K | 前日綠K)=53.3%,而 3 連綠之後次日轉紅可達 56.0%。這說明前一日方向並不會簡單延續,市場反而帶有輕微均值回復傾向。M7 因此只保留 8 維 embedding,扮演微弱但可補充的背景記憶。
11.2 M8:VP Overlap 為何能成為系統最強模組?
M8 是第三部的皇冠。它原本不是這個樣子:R098 早期版本把 M8 想成 order flow 模組,結果方向 AUC 僅 0.507,毫無實用價值。R136 重新定義後,焦點轉為「前三日堆疊 VP 與今日 IB 空間重疊度」,結果 Corr 一舉躍升至 0.863,成為所有模組中最強訊號。這個數字之所以重要,不只是它高,而是它高得合理。拍賣市場理論早就指出,成交量集中的價格區代表市場曾達成共識;若今日 IB 仍停留在前三日高量舒適區內,通常代表今日較可能是平衡日、range 較小。相反地,若今日價格脫離既有價值區,市場等於被迫重新發現公平價,range 自然擴張。
重疊高 → market comfort zone → balanced day
重疊低 → 離開既有價值區 → trend / expansion day
這也是本系統最重要的理論對接:市場接受區不是抽象概念,而是可量化空間。M8 等於把「今天價格還在不在市場舒適區」這句交易員直覺,變成具體可驗證的數字。即使移除潛在代理特徵(proxy)後,Pre-IB corr 仍有 0.773,說明它並非僅僅因為偷看答案,而是本身就承載高信噪比。這種強度,也說明為何後續所有閘門與融合模型都高度依賴 M8 的嵌入向量。
11.3 M9 與 M10:延伸行為與狀態地圖
M9 Extension + K-Line 是另一個從錯誤定義中重生的模組。最早的 Opening Type 分類因為使用了本來就定義於 IB 的欄位,形成明顯循環偏差(circular bias),95.6% 的高準確率其實只是查表。重新設計後,M9 改問:extension_ratio = day_range / ib_range 是否大於 1.5?這個問題合理得多,也直接對應交易最在乎的「今天會不會走出大延伸」。有趣的是,K 線形態在這裡真的有幫助:Doji 型 IB 的大延伸機率高達 86.9%,而大實體 Marubozu 反而只有 73.9%。直觀上也說得通:十字線意味早盤未解決、不確定性高,因此後續更可能繼續找方向。
M10 SOM Trajectory 則把高維市場狀態壓平到 8×8 的自組織映射(Self-Organizing Map, SOM)地圖中,再觀察 BMU 座標、quantization error、density、transition speed、dwell time 與 trajectory angle。它的價值不在單一特徵,而在提供一種「看市場怎麼移動」的拓撲視角。Corr 0.620 不只不弱,還顯示 12 年中有 9 年維持正向增量(lift),說明市場狀態轉場樣式確實可被捕捉。當市場從熟悉區域快速跳到稀疏區、量化誤差升高時,往往就是日型切換或異常擴張的前兆。
| 等級 | 模組 | 原因 |
|---|---|---|
| 🏆 STRONGEST | M8 | VP overlap Corr 0.863,直接量化市場舒適區 |
| ✅ 穩健 | M10 | SOM 軌跡提供跨年穩定的 regime transition lift |
| 🔄 升級後可用 | M9 | 修正 circular bias 後成為實用延伸模組 |
| 🔄 弱但有定位 | M7 | 提供前一日記憶,不負責主導決策 |
| ✅ runtime | M6 | 盤中更新環境,不追求單次 OOS 分數 |
真正強大的環境系統,不是把所有問題變成分類;而是知道哪些現象該做預測、哪些現象該做描述、哪些現象只適合當輔助語境。
學理 Self-Organizing Map(Kohonen SOM)與市場狀態拓撲
📚 理論基礎
自組織映射(Self-Organizing Map, SOM)是一種無監督學習方法,用競爭學習把高維特徵投影到低維拓撲空間。訓練時,每筆資料會找到最接近的最佳匹配單元(Best Matching Unit, BMU),並更新該神經元及其鄰居,讓相似狀態在地圖上彼此靠近。與一般降維不同,SOM 特別重視鄰近關係,因此很適合做 regime clustering 與狀態轉換觀察。
🏠 日常生活類比
你可以把 SOM 想成城市地圖。原本高維的市場狀態像散落在空中的點,難以想像彼此距離;SOM 則把它們安排到城市街區裡。平常常見的市場狀態住在人口稠密區,少見的極端環境住在偏遠區。一旦某天市場突然衝到陌生街區,你就知道今天的玩法可能和平日不同。
📈 投資應用
在 M10 中,transition speed 與 quantization error 尤其重要。它們無須直接告訴你多空,卻能提示你「市場正在加速換場」或「現在的狀態不太像歷史上常見的樣子」。對閘門與出場管理而言,這比單純再多一個方向特徵更有價值。
學理 Look-Ahead Bias 審計:模組能強,但不能作弊
📚 理論基礎
第三部每個模組都經過 look-ahead bias 審計,目的不是找麻煩,而是確認分數究竟來自真正訊號,還是來自目標定義滲漏。M9 Opening Type 被判定為最嚴重案例,就是因為 target 本身含有 IB 欄位,等於把答案藏在題目裡;M8 則在移除 proxy 後仍保有高 corr,因此被判定為 clean。這種審計紀錄,是研究誠信的一部分。
🏠 日常生活類比
這就像考試時不只要看分數高低,還要看學生是否偷看答案。100 分不一定值得高興;若題目本身就洩題,那分數只代表流程出了問題。量化研究也是如此,沒有審計的高分,永遠不能直接拿去交易。
📈 投資應用
模組審計讓你知道哪些訊號可長期信任、哪些只能保留概念不能直接使用。這也是後續 R168 能夠果斷棄用 M2、重寫 M9 的根本原因。
研究提醒 系統最強訊號往往不是最直覺的訊號
很多人以為 order flow 應該最有預測力,因為它最細、最即時;R098 到 R136 的結果卻顯示,真正強的是 VP overlap 這種更高層的價量空間結構。研究時若過度迷信「越微觀越厲害」,反而容易錯過真正高 SNR 的表達方式。
第十二章:M-Module 品質優化歷程(R097, R164-R168)
建立模組只是開始,真正困難的是把模組打磨到可部署。R098 定義出 M1 到 M10 之後,研究並沒有停在「有分數就好」,而是進入更殘酷的品質工程期:哪些模組只是在幸運年份發光?哪些訊號能提高排序,卻會在安全性上出事?哪些升級看似進步,實際只是資訊冗餘?R097 與 R164-R168 的價值,就在於把這些問題逐一制度化。第三部之所以能成為全書核心,不是因為它找到一堆漂亮指標,而是因為它把「模組可信度」本身變成研究對象。
12.1 從 R098 到 R138:先把問題定義正確
R098 解決的是「環境可不可做」;R136 到 R138 解決的則是「哪些模組值得留下」。R136 進行 10 模組總體深潛後,最重要的三個動作分別是:把 M8 從 order flow 改寫成 VP overlap、把 M9 從 opening type 重新定義成 extension ratio、以及證明 M3 簡單規則優於 ML。這三件事共同說明,模組優化不一定是加料,很多時候反而是重新定義問題、移除誤導表述。到了 R137,研究更進一步承認弱模組也有存在價值,但前提是不要讓它做超過能力範圍的工作,因此提出「連續描述器優於離散分類」的整理思路。R138 再把 K 線解剖引入 M2 與 M9,讓形態訊號有更可用的表示方式。
這一段歷程最值得學習的地方,是研究團隊沒有因為早期直覺失敗就全盤否定原始概念。VP shape 分類失敗,不代表全日形態沒有資訊;它只代表『用五類標籤硬切』這個方法錯了。Opening type 被證明有循環偏差,也不代表延伸行為不可研究;而是 target 的設計必須重新與交易意義對齊。優化真正的核心,不是讓每個模組都變強,而是把每個模組放回它應該回答的問題上。
12.2 R097 雙閘門安全機制(Dual-Gate Safety):把「預測」與「安全」拆開
R097 是品質工程的關鍵拐點。很多範圍模組即使 corr 不錯,實務上仍會出現最怕的情況:模型信心很高,但實際卻遇到大突破日,造成停利設太近、風險低估。R097 的雙閘門安全機制(Dual-Gate Safety)因此不再追求更準的平均預測,而是直接控制高風險誤判。第一道閘門使用分位數迴歸(Quantile Regression)版本的 GBR,預測 P75 上限;第二道閘門則用突破分類器(breakout classifier)估計今天是否容易出現突破。只有當兩者同時滿足安全條件,才允許系統把今天視為「相對安全的窄幅/中幅日」。
Gate 2:breakout_prob < 0.25
safe = (pred_Q75 < P33) AND (breakout_prob < 0.25)
| 變數 | 全名 | 意義 |
|---|---|---|
pred_Q75 | Predicted 75th Quantile | 分位數迴歸模型預測的日內範圍第 75 百分位上限;代表「今天有 75% 機率範圍不超過此值」 |
P33 | 33rd Percentile Threshold | 歷史日內範圍分布的第 33 百分位值;低於此門檻值表示今天預期波幅偏窄,屬較安全區間 |
breakout_prob | Breakout Probability | 突破分類器估計今天出現大幅突破的機率;低於 0.25 表示突破風險在可接受範圍 |
safe | Safety Signal | 雙閘門聯合判定結果;僅當兩道閘門皆通過時才判定為「安全」,允許策略進場 |
這個設計讓 M1 的 FC_P75 從 9.5% 壓到 4.5%,M10 則從 8.2% 壓到 6.4%。請注意,這裡犧牲的是覆蓋率(coverage),而不是精確度。品質工程最成熟的地方就在這裡:研究不再假裝什麼都能高覆蓋、高報酬、高安全,而是承認必須做取捨。R097 告訴我們,對風險管理而言,預測 P75 上限往往比預測平均值更有意義,因為交易系統真正害怕的是尾部超出,而不是均值偏個幾點。
| 階段 | 主要工作 | 代表結論 |
|---|---|---|
| R098 | M1-M10 首版定義 | 環境可預測的是 range,不是 direction |
| R136 | Deep Dive + 審計 | M8/M9 重寫,M3 改簡單規則 |
| R137 | 弱模組集成 | 連續值描述優於離散分類 |
| R138 | K-Line Anatomy | M2/M7/M9 以 K 線特徵重構 |
| R097 | Dual-gate safety | 從精準轉向安全邊界 |
| R164-R167 | 門檻值掃描與品質審計 | 修訂安全門檻、確認理論天花板 |
| R168 | 整合優化 | 形成最終記分卡與淘汰決策 |
12.3 R168 最終記分卡:哪些模組留、哪些模組退?
R168 的成熟之處,在於它敢做取捨。最終記分卡不只列分數,還同時看 Safety、WFA 與 KB-14 品質門檻。M1、M3、M4、M5、M7、M9 幾乎都進入可用名單,其中 M4 可說是最穩的老將:幾乎不需要大改,卻長期通過安全與穩定性要求。M1 與 M10 則透過雙閘門把虛假信心(false confidence)壓到實務可接受範圍。最具象徵性的是 M2:即使經過六個版本,最終仍只有 Sp 0.13、WFA 0/10,被正式棄用。這不是失敗,而是品質制度真正起作用的證據——系統願意承認某些概念雖然好懂、好講,卻不值得帶進實盤。
| Module | 目標 | Sp/AUC | FC_P75 | WFA | 結論 |
|---|---|---|---|---|---|
| M1 | day_range | Sp 0.55 | 4.5% | 10/10 | ✅ 全通過 |
| M2 | K-line desc | Sp 0.13 | — | 0/10 | 🔴 棄用 |
| M3 | direction | AUC 0.84@16% | — | 10/10 | ✅ 高信心可用 |
| M4 | close_pos / range | Sp 0.55 | 2.8% | 10/10 | ✅ 最穩健 |
| M5 | ext_range | Sp 0.45 | — | 9/10 | ✅ 特徵修剪(feature pruning)後更穩 |
| M7 | prev_range 增量(lift) | Sp 0.41 | — | 8/10 | ✅ 弱但過線 |
| M9 | extension | AUC 0.76 | — | 10/10 | ✅ 結構清楚 |
| M10 | abs_range | Sp 0.58 | 6.4% | 10/10 | ⚠️ 安全略超門檻 |
KB-14 品質閘門的四條線——Direction AUC ≥ 0.70、Magnitude Spearman ≥ 0.30、FC_P75 ≤ 5%、WFA ≥ 80%——很值得所有量化研究者借鏡。這四項同時存在,能避免研究只在「我覺得有道理」或「單次分數很高」之間搖擺。尤其 WFA 與 FC_P75,正好對應市場最常見的兩種幻覺:把偶發樣本當成穩定優勢,以及把危險尾端誤判成安全環境。
12.4 M2 棄用故事與理論極限:學會承認邊界
M2 的六段演進史幾乎是一堂完整的方法論課。從 v1 的 GEX 日級市場狀態,到 v2 VP shape 五分類、v3 VP 連續描述子、v4 K 線描述器(K-Line descriptor),再到 v5 的增量特徵強化與 v6 最終棄用,過程中沒有任何一步偷懶,但結果仍然證明:這個問題在目前資料條件下就是不夠好。這讓 R168 得以整理出一組極重要的理論極限:M3 的全覆蓋 AUC 大約就在 0.72 左右,若要上 0.84 必須大幅降低覆蓋率;M9 延伸 AUC 的可實用上限大約在 0.76;M1 與 M10 的 FC_P75 經過雙閘門後仍有可行極限;而 R138 的 K 線增量多半只是冗餘,無法無限加分。
這些極限並不悲觀,反而非常珍貴。因為一旦知道邊界在哪裡,你就不會再浪費時間逼模型去做本質上做不到的事。環境系統之所以成熟,正是因為它不再幻想用更多參數突破所有天花板,而是集中力量提升高 SNR 模組的可用性與安全性。
一個研究系統真正成熟的標誌,不是每個模組都高分,而是它知道哪裡該努力,哪裡該停手。
學理 分位數迴歸:交易系統更需要邊界,不只需要平均
📚 理論基礎
分位數迴歸(Quantile Regression)與一般最小平方法不同,它不是去擬合條件平均,而是直接估計某個條件分位點,例如 P75。對高尾部風險的金融資料來說,這點極有價值,因為交易系統常需要知道「大多數情況下不要超過哪裡」,而不是只知道平均會落在哪裡。R097 就是把這個思想落地到 range safety。
🏠 日常生活類比
通勤估算時間時,你不會只看平均 25 分鐘,而會想知道「通常 75% 的情況 35 分鐘內能到」。這個 P75 比平均更適合拿來安排會議與風險緩衝。交易中的停利、倉位與風險預估,道理完全相同。
📈 投資應用
當模組輸出的是安全上界而非平均值時,策略便能根據尾部風險動態縮放。這種以安全為導向的回歸,比盲目追求更高 corr 更接近實戰需求。
學理 資訊瓶頸與理論極限:有效市場不是口號,而是工程條件
📚 理論基礎
有效市場假說(Efficient Market Hypothesis, EMH)在本書中的實際意義,不是「市場完全不可預測」,而是「某些問題的可預測度有明顯上限」。方向就是典型例子:一旦資訊快速反映、交易者彼此對沖,純方向標籤的信噪比便逼近零。反之,結構性變數如 VP overlap 或 ib_range_pct,因為描述的是拍賣過程與環境狀態,而不是最終價格號誌,仍可保有較高 SNR。這就是資訊瓶頸的真義:不是沒有訊號,而是訊號只能在對的問題定義下出現。
🏠 日常生活類比
就像你看衛星雲圖,能相當可靠地知道明天是否偏多雲、降雨機率高不高,但很難精準預測下午 3 點 17 分會不會在你家門口下 2.3 毫米雨。範圍與環境屬於前者,方向終點更像後者。
📈 投資應用
接受理論極限後,研究流程會變得更有效率:強化 M1、M4、M8 這些高 SNR 模組,對 M3、M9 用信心門檻控制覆蓋率(coverage),對 M2 類弱訊號勇於淘汰。這正是 R168 的精神。
治理提醒 最危險的不是低分模組,而是「看起來還可以」的低品質模組
M2 若只是完全沒分數,很容易被淘汰;真正危險的是它一度有些改善、似乎有點道理,容易讓人產生沉沒成本。品質閘門存在的目的,就是避免團隊因為投入過多而不願承認某條路不值得繼續。
12.5 R161-R163:從「加更多特徵」走向「建立更好的基準」
R161 到 R163 的價值,在於它們把 M-Module 的品質工程從「再丟幾個新欄位試試看」提升成「先問這些欄位到底在回答什麼問題」。R161 研究 bracket 與 IB range 的斜率,R162 研究分布描述子與 Gaussian cross-metrics,R163 則把所有候選模組拉回同一套 benchmark 上比較。這三個研究合在一起,代表環境偵測已經不再只是找相關,而是在建立一套能持續擴充、又不會失控的特徵工學。
其中最直接的突破來自 R161。研究者原本以為真正有資訊的是價位高低本身,結果發現更有用的反而是「最近幾天 IB 是在收縮還是在擴張」。ib_range_slope_3 與 ext_ratio 的 Spearman = -0.324,表示近三日 IB 愈收縮,當日愈容易走出延伸;若把樣本分成五等分,最收縮的 Q1 平均 extension 達 1.89,最擴張的 Q5 只有 1.01,差距高達 87%。把 slope 特徵加入 M9 類 breakout 預測後,AUC 從 0.721 提升到 0.729;放進策略 gate 時,R014 PF 從 2.44 拉到 2.66(+9.0%),R037 也從 5.39 升到 5.71(+5.9%)。
R162 更進一步指出,市場不只可以用斜率描述,也可以用分布描述。研究把 IB、前一日 Day 與前一日 VA 都轉成 Gaussian 描述子後,發現 coverage_ratio 對 ext_ratio 的 Spearman = -0.356,比 R161 的 slope 更強;ib_sigma_norm 與 day range 的 Spearman = 0.561;而最重要的新發現,是 ib_mu_norm 能把 direction AUC 從 0.509 大幅拉到 0.701,平均讓四個預測目標提升約 +13.0%。但這個研究也提醒我們:預測更準,不一定代表策略更賺。當 distribution features 直接拿去做 gate 時,R014 與 R037 在 threshold=0.5 的平均 PF lift 只有 -0.4%,代表它比較適合回到 M1 / M3 這種模組層,而不是直接硬接成策略開關。
R163 看似沒有 flashy 的 headline,卻是這一串研究真正能站得住的前提。它建立了全模組共同 benchmark,讓 R161 的 slope、R162 的 distribution descriptors,以及既有 M1-M10 的各種輸出,都能在同一個報表系統裡比較。對品質工程而言,這種 benchmark 不會直接創造 edge,卻能防止團隊被偶然亮眼的單次 lift 帶偏方向——沒有共同基線,再漂亮的 feature 也只是孤立數字。
| 研究 | 關鍵指標 | 主要價值 | 落地方式 |
|---|---|---|---|
| R161 | ib_range_slope_3 vs ext_ratio Spearman = -0.324 | 證明「收縮中的 IB」才是真正的 breakout 前兆 | 加入 gate feature set,R014 / R037 PF 分別 +9.0% / +5.9% |
| R162 | ib_mu_norm 讓 direction AUC 0.509 → 0.701 | 提供比原始動量更乾淨的分布型方向訊號 | 優先回灌到 M1 / M3,而非直接做策略 gate |
| R163 | BENCH baseline established | 把所有模組候選拉回同一把尺衡量 | 作為後續 feature / gate / scorecard 的共同基準 |
真正成熟的模組工程,不是看到一個新特徵就立刻上線,而是先確認它回答的是哪一個問題、增量來自哪裡、以及它是否能在共同 benchmark 上重現。
第十三章:日夜盤分離與統一架構(R150, R151)
R098 的十個環境模組全部建立在日盤 IB 之上,這在早期研究階段完全合理,因為日盤流動性高、資料長、拍賣節奏穩定。但隨著夜盤成交量上升,尤其 2021 年後夜盤 VP 與成交結構開始具有可分析性,原本「只做日盤」的設計開始暴露邊界:夜盤策略缺乏環境閘門、日盤模組無法直接轉用、跨盤 context 似乎重要卻又不一定有效。R150 與 R151 因此共同處理一個關鍵架構問題:日夜盤應該分開建模,還是統一處理?答案不是二選一,而是『先分離、再在高層統一』。這一章的價值,不只是讓夜盤也有模組,而是替整條管線建立 SessionAware 的共同接口。
13.1 為什麼必須先把日盤與夜盤拆開?
表面上看,日夜盤交易的是同一個商品,但它們的市場生態其實差異很大。日盤有現貨連動、法人調節與本地消息密集釋放;夜盤則更受美股、國際期貨、匯率與突發事件影響,成交分布也更分散。若硬把兩者當成同一流程,不只 IB 定義會失真,連同一個特徵的市場意義都會改變。R150 的第一項關鍵發現,就是 Day→Night transfer 幾乎全軍覆沒,只有 M1 range Spearman 0.490 勉強有用。這代表日盤模組不是完全沒資訊,而是只有最一般化的波動尺度能轉移,其餘結構與方向語意幾乎都要重建。
另一個關鍵發現是,夜盤的最佳 IB 並不是 30 分鐘,而是 120 分鐘。這個結果非常有市場直覺:夜盤的資訊消化速度較慢、流動性分布不均,前 30 分鐘常不足以完成真正的價值探索。當 Night IB 拉長到 120 分鐘後,Night-M1 可達 0.68,Night-M3 也能有 0.66,說明夜盤不是不能建模,而是不能沿用日盤節奏。研究若忽略這點,就會錯把不適配的視窗當成訊號不存在。
| 實驗 | 結果 | 結論 |
|---|---|---|
| Day→Night transfer | 僅 M1 Spearman 0.490 | 大多數日盤模組無法直接平移 |
| Night IB construction | 120 分鐘最佳;Night-M1=0.68,Night-M3=0.66 | 夜盤需獨立定義 IB |
| Night→Night context | 自相關明顯高於 Day→Night | 夜盤更依賴自身歷史 |
| Day + Night context | 零增量 | 跨盤亂拼不如保持盤別隔離 |
13.2 Night-M1 到 Night-M10:同名,不同市場語意
建立夜盤模組時,一個最容易犯的錯,是以為只要把日盤欄位平移就完成了。實際上,Night-M1 到 Night-M10 雖沿用相同命名,但語意必須依盤別重新詮釋。Night-M1 的 IB 是 120 分鐘,不是 30 分鐘;Night-M4 只有 2021+ 在成交量足夠時才真正可用;Night-M5 的多時段 context 必須依 Day(D) → Night(D) → Day(D+1) 的順序重組;Night-M7 更直接顛倒了 reference:它不是看前一個夜盤,而是看「同日日盤 K 線」,因為對夜盤而言,白天才是最近的 pre-session 記憶。這些差異顯示,盤別切分不是資料工程細節,而是市場因果結構的一部分。
| 模組 | 夜盤版本 | 與日盤最大的差異 |
|---|---|---|
| Night-M1 | Night IB range → Night range | IB = 120 分鐘 |
| Night-M2 | Night IB K-line descriptors | 保留架構,重訓參數 |
| Night-M3 | Night momentum → direction | 夜盤方向訊號較慢形成 |
| Night-M4 | Night VP Structure | 僅 2021+ 具足夠成交量 |
| Night-M5 | Multi-session context | 依 Day→Night→Day 時序重排 |
| Night-M6 | Night intraday dynamics | 14 小時盤中動態更重要 |
| Night-M7 | Same-day Day session K-line | 與日盤 M7 的「前日」不同 |
| Night-M8 | Day VP vs Night VP overlap | 跨盤舒適區判讀 |
| Night-M9 | Night extension ratio | 延伸尺度與門檻需重估 |
| Night-M10 | Night SOM trajectory | 更容易出現結算與跳躍效應 |
13.3 R151:先分流,再在高層統一
R151 的答案非常漂亮:不要把特徵混在一起,而是把流程統一起來。DataInterface → SessionAwareFeaturePipeline → SessionAwareRegimeGate → SessionAwareStrategyRunner → SessionAwareExitDetector → SignalEmitter 這條鏈,把日盤與夜盤都放進同一操作系統,但保留各自特徵工程、閘門與策略。這個架構有三個好處。第一,工程接口一致,後續擴充與監控成本低。第二,盤別差異被保留,不會因統一而污染訊號。第三,任何跨盤特徵都必須明確聲明因果位置,避免不小心把未來資訊偷渡回去。
此外,R151 也非常誠實地標出限制:夜盤資料只有 2017-05-17 後可用;VP 類分析大致要到 2021 年後才有足夠成交量;R147 已證實某些夜盤策略的市場狀態閘門(regime gate)甚至可能是負增量,因為策略本身已帶自我閘門。這些註記很重要,因為它們提醒我們統一架構不是一視同仁,而是允許不同盤別在不同成熟度下逐步接入。
從部署角度看,SessionAware 設計還帶來另一個好處:同一套監控、記錄與回測框架,可以同時追蹤日盤與夜盤的 gating hit rate、session-specific PF、錯誤訊號來源與資料缺口。這讓研究流程不再只是「哪個模型比較高分」,而是能進一步回答「哪個盤別在哪種市場狀態(regime)下值得分配更多風險」。對台指期這種跨時段商品而言,真正成熟的統一架構不是把訊號揉平,而是保留差異、再把差異交給上層風控與資金配置使用。
統一架構真正要統一的是語法,不是把不同市場環境說成同一種語言。
學理 Session Segregation:盤別切分其實是因果切分
📚 理論基礎
在時序建模中,最容易忽略的不是 train/test split,而是事件邊界。日盤與夜盤雖連續報價,卻處在不同流動性、不同資訊源、不同參與者結構之下。當你把它們分開,不只是資料分組,更是在保護因果結構:哪些資訊在該盤開始前已知,哪些是在進行中才出現,哪些只屬於另一盤的收斂結果。SessionAware 設計的本質,就是把這些邊界明確化。
🏠 日常生活類比
這像是把白天通勤與深夜長途駕駛當成不同任務。兩者都在開車,但車流、視線、目的、風險完全不同。你可以用同一套導航系統,但不會用同一組速度規則與注意力分配。
📈 投資應用
實務上,SessionAware 架構讓你能分別評估日盤與夜盤策略的邊際價值,避免用日盤成功經驗誤判夜盤,也能在資料成熟後逐步讓夜盤模組加入整體資產配置。
資料提醒 夜盤不是日盤的加長版
若把夜盤單純視為「交易時間更長的日盤」,你很快會得到錯誤的 IB、錯誤的 VP 解讀與錯誤的 context 設定。夜盤必須被當成獨立市場環境,之後才能在更高層與日盤整合。
第十四章:特徵線性調制 + 交叉注意力融合架構(R139)
當 M1 到 M10 都完成之後,下一個問題自然出現:這些模組要怎麼合在一起?若只是把所有欄位串起來,系統雖然「有用到很多資訊」,卻未必真的理解不同層級訊號的關係。R139 的任務,就是把日度環境嵌入向量(embedding)與 bar 層級微觀特徵融合成一個能服務策略閘門的共同語言。研究比較了三條路:只用 FiLM 條件化(conditioning)、只做嵌入融合(embedding fusion),以及混合式 FiLM + 嵌入。結果顯示,FiLM only 僅有 PF 1.12,單純嵌入融合可到 PF 1.30,而混合式雖然 PF 同樣 1.30,卻取得最佳 PnL +5,201,成為最終採用方案。這說明關鍵不是二選一,而是讓上下文調制與特徵表徵各自做擅長的事。
14.1 三種融合方式比較:為何 Hybrid 勝出?
FiLM(Feature-wise Linear Modulation)最大的優勢,是能根據日度環境嵌入向量生成 γ 與 β,動態調整主網路如何閱讀 bar 層級特徵。這非常適合「同一個微觀形態在不同環境下意義不同」的問題。但若只靠 FiLM,模型會過度倚賴調制,反而不足以保留日度模組自身的顯性資訊,因此 PF 只達 1.12。反過來,若只做嵌入融合,系統能保留更多模組資訊,PF 可上升到 1.30,但少了顯式脈絡調制(context modulation),某些 bar 層級型態仍無法被最好地重解讀。Hybrid 的價值就在於把兩者分工:嵌入向量負責攜帶環境內容,FiLM 負責改變閱讀方式,最後再用交叉注意力(Cross-Attention)完成跨層對齊。
| 方法 | 概念 | 結果 | 結論 |
|---|---|---|---|
| FiLM only | 僅用日度特徵生成 γ / β 調制主網路 | PF 1.12 | 有上下文,但表徵不足 |
| Embedding fusion only | 直接融合多模組 embedding | PF 1.30 | 內容足夠,但解讀不夠動態 |
| Hybrid FiLM + Embedding | embedding + FiLM + attention | PF 1.30,PnL +5,201 | 最終最佳方案 |
這個比較也給量化建模一個很實用的提醒:若問題本質同時需要「知道內容是什麼」與「知道該怎麼讀內容」,那麼單純串接特徵往往不夠。Hybrid 架構之所以適合第三部,是因為環境模組本來就分屬不同語言:M1、M4、M8 更像日度狀態,IB bar 特徵則更像即時語流。兩者不只是資料來源不同,連語義粒度都不同,因此需要專門的對接層。
14.2 缺口特徵:為什麼在樹模型有用,到了神經融合卻可能有害?
R139 另一個很關鍵的研究,是缺口特徵分析(gap feature analysis)。結果發現,ib_drive_strength、ib_half_reversal、open_vs_prev_va、ib_cum_move 這類與早盤推進、價值區位置關係明確的特徵,對融合模型仍有幫助;但 is_settlement、ib_extreme_touch 等欄位在神經架構中不是沒用,就是有害。這背後的原因很值得深思:樹模型善於處理稀疏、條件式、甚至帶一點查表邏輯的欄位;神經融合則更擅長連續、可組合、能在向量空間中自然交互的特徵。當缺口特徵過度依賴硬門檻或制度日曆語義時,樹模型能把它當局部規則使用,但放進神經網路,反而會污染表示空間。
| 特徵 | 在融合模型中的表現 | 原因 |
|---|---|---|
| ib_drive_strength | 有用 | 連續且與早盤推進強度直接相關 |
| ib_half_reversal | 有用 | 反映早盤內部結構轉向 |
| open_vs_prev_va | 有用 | 能對接價值區語境 |
| ib_cum_move | 有用 | 累積位移容易被 attention 使用 |
| is_settlement | 無效/有害 | 制度類二元標記不易與連續表示融合 |
| ib_extreme_touch | 無效/有害 | 硬門檻值特徵造成表示空間破碎 |
這一點非常關鍵,因為它說明「有用特徵」不是絕對概念,而是與模型家族有關。研究若忽略模型偏好,只會不斷把樹模型時代的欄位往神經網路裡塞,最後得到又大又亂、卻不更好的系統。R139 之所以成熟,正在於它不把所有舊特徵視為理所當然,而是重新檢查哪些特徵真的適合被神經融合。
Cross-Attention:Attention(Q, K, V) = softmax(QKᵀ / √d) V
其中 Q = bar-level representations;K, V = daily-level embeddings
| 變數 | 意義 |
|---|---|
Q | Query(查詢向量):來自 bar 層級的局部型態表示,每根 K 線各自發出查詢 |
K | Key(鍵向量):來自日級環境嵌入(M1-M10),用來被查詢比對 |
V | Value(值向量):來自日級環境嵌入,匹配後實際提取的上下文資訊 |
d | Key 向量的維度,√d 用於縮放以穩定梯度 |
γ(c), β(c) | FiLM 的縮放與位移參數,由條件 c(regime embedding)生成 |
⊙ | 逐元素相乘 |
14.3 交叉注意力(Cross-Attention):讓不同層級的市場語言彼此對話
交叉注意力(Cross-Attention)的核心,不是把資料「混在一起」,而是讓一種表示去詢問另一種表示。R139 中,Q 來自 bar 層級特徵,也就是每根 K 線的局部語境;K 與 V 來自日級環境嵌入向量,也就是 M1 到 M10 所總結出的當日背景。當某根 bar 發出查詢時,它其實是在問:「在今天這種環境下,我這個形態應該怎麼被理解?」這個設計比單純拼接高明得多,因為它允許每根 bar 從不同模組提取不同上下文,而非被迫接受同一份靜態說明書。
這種設計也非常符合交易的真實認知流程。交易員看 5 分 K,不會脫離「今天是低 GEX、是高 overlap,還是正在轉換市場狀態」的背景來閱讀。同一根拉回棒,在高 VP overlap 的平衡日可能只是雜訊,在低 overlap、低 GEX 的爆發日卻可能是絕佳追價訊號。交叉注意力做的,就是把這種跨語境閱讀顯性化。
模型融合最難的,不是讓大家都進同一個房間,而是讓每個人說的話能被正確翻譯。
學理 Cross-Attention 機制:Q、K、V 為什麼適合金融時間序列?
📚 理論基礎
注意力機制(Attention)的本質是權重化資訊存取。當查詢(Query)與鍵(Key)來自同一來源時,是 self-attention;當它們來自不同來源時,就是 cross-attention。R139 的設計讓 bar 層級查詢去讀取日級脈絡,因此每個局部型態都能按需取得日度語境。這比把日度資訊複製到每根 bar 上更有效率,也更符合「多尺度時序」的建模需求。
🏠 日常生活類比
最貼切的比喻是翻譯員。假設一位即時口譯員在會議中,會先聽懂當前一句話(query),再去對照整場會議的背景、議程與上下文(key/value),最後輸出正確翻譯。沒有背景時,字面翻譯容易誤解;有背景後,同一句話會有完全不同的意思。Cross-Attention 在模型裡扮演的,就是這個翻譯員角色。
📈 投資應用
對交易系統而言,Cross-Attention 能讓微觀結構不再孤立判讀,而是根據當日環境自動調整解讀權重。這使得環境模組不只是「多一組欄位」,而是真正成為策略閘門的大腦語境。
建模提醒 神經融合不是特徵垃圾桶
R139 已明確指出,某些 gap 特徵在樹模型有效,放進神經融合卻會拖累結果。若把所有歷史欄位一股腦丟進大模型,不叫融合,只叫失控。好的融合架構,必須先知道哪些資訊值得被翻譯、哪些資訊只適合留在原來的模型家族。
第十五章:策略閘門設計(R140)
當環境偵測(Environment Detection)從單點實驗走向模組化之後,真正的難題才開始浮現:同一天的市場結構,對不同策略的意義並不相同。對突破策略而言,擴張日可能是獎勵;對均值回歸策略而言,卻可能是災難。R140 的核心貢獻,就是把「今日市場是什麼樣子」進一步轉成「今天這一套策略該不該出手」。因此,策略閘門(Strategy Gate, Gate)的定義不是再做一次總體市場狀態分類,而是為每一個策略各自訓練一個專屬閘門,讓系統在日級別先預估該策略的當日損益,只有當 pred_pnl > 5 時才放行。這個設計把『環境研究』轉化成『策略治理』,也把原本抽象的市場描述,落成可以直接影響部位開關的工程接口。
15.1 從環境偵測走向每策略專屬閘門
R140 的出發點非常務實:若一個環境模組只能告訴你「今天可能是趨勢日」或「今天波動可能較大」,那仍然需要策略端自己再解讀一次。這樣的系統容易在策略數量增加後失控,因為每個策略都會對同一組環境訊號做不同翻譯,最終導致研究不可追溯。R140 直接改變問題定義,將目標值(target)設為各策略當日損益,讓模型學習「在今天這組市場狀態下,R071 大概會賺還是會賠」、「R014 是否值得承擔風險」。這種一個閘門服務一個策略的做法,表面上增加了模型數量,實際上卻大幅降低使用端的歧義,因為每個閘門只需回答一個問題:今天要不要讓這個策略進場。
模型架構採用混合式特徵線性調制(Feature-wise Linear Modulation, FiLM) + 嵌入(Embedding) + 交叉注意力(Cross-Attention)的設計,延續 R139 的融合精神,但把輸出明確綁到策略層。輸入分成兩層:第一層是 25 個日級特徵,用來描述當天整體環境;第二層是 6×12 的 IB bar 特徵,用來保留開盤初始平衡(Initial Balance, IB)過程中的細節節奏。前者提供市場狀態輪廓,後者提供微觀脈絡。這個組合的好處,是閘門既不會只看全日摘要而忽略早盤展開,也不會只看 bar 序列而失去跨模組的結構語意。
| 參數 | 值 | 意義 |
|---|---|---|
Input A | 25 維 | 日級環境特徵向量(IB range、GEX、VP overlap、gap 等 M1-M10 輸出) |
Input B | 6 × 12 維 | IB 期間 6 根 K 線各 12 維特徵(OHLCV、形態描述子、動能指標) |
Target | per-strategy PnL | 各策略(如 R014、R071)的當日實際損益,作為監督學習標籤 |
pred_pnl | 模型輸出 | 模型預測的策略當日損益(點數),> 5 則閘門開啟 |
D_MODEL | 48 | 模型隱藏層維度,決定表示能力 |
EMBED_DIM | 16 | 類別特徵嵌入維度 |
EPOCHS | 80 | 訓練輪數,平衡擬合與效率 |
PNL_CLAMP | 200 | 損益裁切門檻值(|PnL| > 200 pt 截斷),防止極端值主導梯度 |
| 模組群 | 內容 | 在 Gate 中的主要角色 |
|---|---|---|
| M1 範圍 | 日內波動幅度、IB 與全日範圍關聯 | 提供今天「能走多遠」的尺度線索 |
| M2 K 線 | IB K 線解剖、上下影與實體結構 | 補足節奏細節與開盤拍賣形態 |
| M4 / M5 VP | 成交量輪廓(Volume Profile, VP)與跨期脈絡 | 描述接受區、真空區與脈絡 |
| M7 前日模組 | 前一交易日 K 線與範圍記憶 | 提供隔日延續或反轉的背景資訊 |
| M9 延伸 | 延伸比例、擴張潛力 | 判讀是否容易出現擴張或衰竭 |
| M6 盤中 | 盤中動態與路徑特徵 | 補強早盤後續推進的時間序列節奏 |
這裡有個關鍵細節:R140 並不是把所有模組都視為同等強度的超額報酬來源(alpha source)。這裡的閘門更像一個策略專屬的風險估價器:它並不直接替代進場邏輯,而是在策略已經產生候選訊號後,先判斷今日環境是否值得下注。也因此,門檻值設為 pred_pnl > 5 並不是追求極高精準度,而是要求模型至少能辨認「今天大致有沒有邊際優勢」。當策略數量增加時,這種每策略專屬閘門的價值會遠高於單一全域篩選器(filter),因為它保留了策略差異,而不是硬把所有策略壓進同一條規則。
15.2 5 折前行驗證與注意力權重:強化的是穩定性,不是戲劇性
R140 的驗證不是只看單一長樣本,而是採用五折走勢前行驗證(Walk-Forward Analysis, WFA):(2004-08)、(2009-12)、(2013-16)、(2017-20)、(2021-24)。這樣的切法有兩個優點。第一,它跨過了金融海嘯、歐債危機、疫情與高波動轉折,能檢查 gate 是否只是吃到某一個景氣段的紅利。第二,它讓研究者更清楚看見不同策略對 gate 的敏感度:有些策略會在大多數折數穩定改善,有些策略只在局部階段看起來很漂亮。R140 的價值,正是在這種跨時段檢驗下仍能留下實際增量。
從注意力權重來看,交叉注意力(Cross-Attention)的結果沒有出現「某一組模組獨吞權重」的情況,反而相當平均,約落在 0.16 至 0.18 之間,其中 M2_KLine 稍微偏高。這個觀察很有意思,因為它說明閘門並不是只靠某一個超強模組在決定開關,而是透過多組訊號共同確認市場狀態。M2 本身未必是最能單獨創造超額報酬(alpha)的模組,但在閘門裡,它扮演的是節奏描述子的角色:當 M1 範圍、M4/M5 VP、M9 延伸已經提供結構輪廓時,M2 能補上「這個開盤推進長得像不像容易失控的樣子」。說穿了,略高的注意力不代表 M2 單獨最強,而是代表它在多模組協同裡具有補語意的功能。
| 策略 | Original PF | Gated PF | 改善幅度 | 解讀 |
|---|---|---|---|---|
| R071 | 2.17 | 3.84 | +77.1% | 最能受益於環境挑日,說明其訊號品質高度受 regime 影響 |
| R014 | 3.22 | 4.31 | +33.8% | 突破型策略在好天氣中持有更有優勢 |
| R072 | 2.01 | 2.19 | +8.9% | 改善有限,但仍顯示有些噪音日可被排除 |
| R024 | 2.48 | 2.62 | +5.6% | 屬於邊際改善,代表 gate 可去除少量不利樣本 |
| R066 | 80.17 | 80.17 | ±0% | 原本已極強,gate 幾乎沒有可再榨取的空間 |
| R069 | 2.50 | 2.35 | -6.0% | 交易數偏少,gate 容易對稀疏樣本過度擬合 |
15.3 多策略閘門設計哲學:會停手,比會出手更重要
若把 R140 濃縮成一句話,那就是:知道何時不要交易,比知道何時交易更有價值。 這不是保守,而是實戰。多數策略本來就不是天天都有優勢,問題在於交易系統若缺乏節制,就會在邊際優勢不明的日子硬做,最後把原本少數高品質樣本的優勢稀釋掉。閘門與篩選器的差別,也因此很關鍵:篩選器通常是連續式評分或簡單門檻,像是在訊號後面加一層打折;閘門則是二元決策,明確回答今天是否開門。對執行系統而言,這種二元控制(binary control)的治理效果更清楚,也更容易在回測與實盤中追蹤責任歸屬。
日常生活中,這很像每天出門前先看天氣。你不是看到有 30% 下雨機率就把行程打八折,而是直接決定:今天是帶輕裝、帶傘,還是乾脆不要安排戶外活動。市場環境亦然。當 gate 認為今天不適合某個策略,不代表市場完全不可交易,而是表示這一套特定玩法今天不該上場。這正是 R140 最成熟的地方:它尊重策略差異,而不是追求一個萬用的神奇市場分數。
組合層級的結果也證明了這種設計哲學。閘門加入後,組合 PF 從 5.121 提升到 6.209,最大回撤(Maximum Drawdown, MDD)由 -740 收斂到 -550,而每日平均啟用策略數從 1.75 降到 1.04。這三個數字合在一起的意義非常深:系統不是靠加槓桿、加交易次數來換績效,而是透過更嚴格的放行制度,把劣質樣本排除在外。當 active strategies/day 顯著下降,卻同時換到更高 PF 與更淺 MDD,代表 gate 的真正貢獻不是『多賺』,而是『少犯錯』。
真正成熟的多策略系統,不是每個策略每天都想上場,而是每個策略都知道自己什麼天氣該坐板凳。
學理 多策略閘門設計哲學:閘門(Gate)是治理工具,不是新訊號崇拜
📚 理論基礎
在多策略系統中,最常見的錯誤是把環境模組當成另一個超額報酬模型(alpha model)使用,結果讓訊號之間互相覆蓋、責任邊界模糊。策略閘門的理論核心,在於把環境預測改成風險治理:它不直接決定方向,而是評估「此策略在此環境下是否具有足夠期望值」。因此,閘門與篩選器(Filter)的差異不只在二元或連續,而在於功能定位:閘門面向執行許可權,篩選器面向訊號分數調整。
🏠 日常生活類比
你出門前先看天氣,不是為了預測今天每分鐘的風速,而是判斷這個行程要不要做。下大雨時取消登山,不代表你否定了所有戶外活動,而是承認「今天這個活動的風險報酬比不對」。閘門(Gate)做的,就是這種出門前檢查。
📈 投資應用
在交易實務中,知道今天可能有大波動,與知道「R071 在這種波動日特別容易賺」是兩件不同的事。R140 的每策略專屬閘門(per-strategy gate)正是把環境特徵映射到策略專屬期望值,因此能讓多策略組合同時保有分散化與紀律化兩種優勢。
策略提醒 不是每個策略都需要被 gate 改造
R066 的 PF 已達 80.17,gate 幾乎沒有改善空間;R069 因交易數太少,反而容易被 gate 過度解讀。這提醒我們:閘門不是萬靈丹。當策略本身已經高度挑樣本,或樣本稀疏到不足以支撐穩定估計時,額外加 gate 可能只是增加複雜度,而不是增加品質。
第十六章:管線閘門(R170)
如果說 R140 解決的是「某策略今天要不要進場」,那麼 R170 解決的就是「這個答案要如何穩定地被整條系統使用」。管線閘門(Pipeline Gate)位在 R098 環境模組與 R171 出場優化之間,專職把各模組的原始輸出轉成標準化預測欄位,並同步生成各策略的 gate-pass 結果。它的最大設計原則,是把『預測』與『使用』分開:R098 只負責產生可解釋的市場描述,R170 只負責整理成一致的接口,R171 或策略執行器再決定怎麼把這些結果轉成出場、停損、停利或部位控制。這種分工看似保守,卻是整套研究能持續迭代而不互相拖累的關鍵。
16.1 為什麼要把模組輸出標準化?
環境模組成熟後,最容易出現的新混亂不是模型失靈,而是介面失控。M1 預測的是 range,M3 給的是 direction 分數,M9 描述 extension,M10 又是另一種 range 定義;若每個策略都各自直接讀取原始模型輸出,很快就會形成一張難以維護的蜘蛛網:欄位命名不一致、信心分數尺度不同、版本升級時策略端全面爆炸。R170 的第一項工作,就是把這些差異收斂成一組每日固定欄位,讓下游只需要依賴契約,不需要依賴模型內部細節。
標準化之後,日輸出會包含像 m1_pred_range、m1_confidence、m3_pred_dir、m9_pred_ext、m10_pred_range 這些欄位,同時也會根據各策略的門檻規則,額外計算對應的 gate-pass 旗標。如此一來,R014 可以只讀自己的 gate-pass 與必要預測欄位,R071 可以讀同一批標準欄位但使用不同邏輯,R171 則能進一步把 m1_pred_range 轉成 trailing stop 的動態距離。這種設計的真正價值,不在於欄位漂亮,而在於研究和執行邏輯終於被拆開。
| 標準欄位 | 來源模組 | 用途 |
|---|---|---|
| m1_pred_range | M1 | 估計今日可走距離,供停利停損與行程規畫使用 |
| m1_confidence | M1 | 描述 range 預測可信度,供風險縮放 |
| m3_pred_dir | M3 | 提供方向偏向,但不直接替代進出場決策 |
| m9_pred_ext | M9 | 判讀今日是否容易有延伸段 |
| m10_pred_range | M10 | 補充另一種 range 視角,用於 sanity check |
| gate_pass[R014] | R170 | 根據 R014 專屬門檻,輸出是否放行 |
| gate_pass[R071] | R170 | 根據 R071 專屬門檻,輸出是否放行 |
| 欄位 | 來源模組 | 意義 |
|---|---|---|
m1_pred_range | M1(Range Predictor) | 預測今日日內範圍百分比(day_range_pct),用於出場距離調整 |
m1_confidence | M1 | 模型對範圍預測的信心分數,低信心時建議放寬停損 |
m3_pred_dir | M3(Direction Rules) | 規則式方向判斷(多 / 空 / 中性),用於策略篩選 |
m9_pred_ext | M9(Extension Predictor) | 預測今日是否會出現大延伸(extension_ratio > 1.5) |
m10_pred_range | M10(SOM Trajectory) | 基於 SOM 軌跡的輔助範圍預測 |
gate_pass_R014 | R140 Gate | R014(突破策略)的閘門通過結果(true / false) |
gate_pass_R071 | R140 Gate | R071(動能策略)的閘門通過結果(true / false) |
16.2 基線(Baseline)與消融分析(Ablation)比較:R170 為何是比較對的橋梁
從架構角度看,R170 的意義不只是整理資料,而是替研究流程建立一個可以長期維護的中繼層。若沒有這一層,最直覺的基線(baseline)做法,就是讓策略或出場模型直接讀取所有 R098 模組的輸出。這種直接耦合(direct coupling)一開始開發很快,後期卻極難治理:只要 M1 改一個欄位尺度、M3 換一個信心校準方式,下游所有策略都必須跟著改。另一種消融分析(ablation)則是把所有模組輸出丟進單一共享隱狀態,再由各策略各自讀取;這聽起來更「深度學習」,但它會讓原本可解釋的模組語意被隱藏在混合向量裡,日後很難審計到底是哪個模組在造成某次錯誤放行。
R170 採用的路線,介於這兩者之間:先保留模組層的語意,再把它們轉成標準欄位,最後才交給下游使用。這使它成為一種「可獨立升級、可回溯責任、可跨策略共用」的架構。當 M1 換版本時,只要 R170 仍維持 m1_pred_range 這個契約,下游邏輯幾乎不用動;若某次風險事件發生,也能回頭檢查是 M1 高估 range、R170 門檻設定不當,還是 R171 將 range 用錯地方。這就是現代研究管線中最重要卻最常被忽略的能力:不是把模型做得更炫,而是讓系統出錯時能知道誰該負責。
| 架構 | 做法 | 優點 | 缺點 |
|---|---|---|---|
| 基線:直接耦合 | 策略直接讀取 R098 原始輸出 | 實作快、少一層轉換 | 高度耦合,版本更新時最脆弱 |
| 消融分析:共享隱狀態 | 全部模組先混成共享表徵 | 可學習複雜非線性關係 | 可解釋性低,難以審計來源 |
| R170:標準化預測 | 保留模組語意,統一輸出契約 | 可維護、可追溯、可獨立升級 | 需要先想清楚欄位設計與責任邊界 |
16.3 從環境到出場的橋梁:預測與使用分離的實戰意義
R170 最值得強調的一點,是它明確拒絕把「知道市場狀態」和「知道該怎麼處理部位」混為一談。環境偵測模組擅長的是抽取市場結構,例如今天可能會走多遠、方向偏多或偏空、是否容易延伸;但出場決策還必須考慮目前持倉方向、浮動損益、策略屬性與交易成本。若把這兩種任務硬塞進同一個模型,往往只會得到漂亮但不可維護的黑盒。R170 的橋梁角色,正是在這裡發揮作用:它把環境知識變成可重複消費的公共資產,讓不同使用端在不重訓環境模型的前提下各自演化。
因此,R170 其實是從環境偵測走向執行優化的真正分水嶺。R098 負責說明「今天像什麼」,R170 負責把這些答案翻譯成機器能穩定讀取的欄位,R171 則進一步測試「這些欄位能否改善出場」。這三層的先後順序,代表研究流程從描述世界、到治理接口、再到優化決策的成熟過程。少了 R170,R171 的實驗很難做乾淨;有了 R170,才能真正檢驗某個環境模組到底對出場有沒有價值,而不是把一堆功能混在一起後再宣稱有效。
好的研究管線,不是每一層都很聰明,而是每一層都清楚自己該負責什麼。
學理 關注點分離(Separation of Concerns)與介面契約
📚 理論基礎
大型系統之所以能長期維護,不是因為所有模組都最強,而是因為每個模組的責任範圍明確。軟體工程中的關注點分離,對量化研究同樣適用:環境模組負責預測,管線層負責標準化,執行層負責使用。當中間有清楚的介面契約時,任何單一層升級都不需要連帶重寫整條系統。
🏠 日常生活類比
氣象局負責發布天氣資料,導航或旅遊 App 再根據這些資料決定是否提醒你帶傘、改路線或取消戶外活動。你不會要求氣象局直接替你決定今天要不要去阿里山。R170 就像資料發布格式,把原始預測變成各個 App 都能使用的標準訊息。
📈 投資應用
當 m1_pred_range 被定義成穩定欄位後,未來它既可以被 R171 拿去調整 trailing stop,也可以被部位控制器拿去縮放風險;同一個環境知識因此能在不同場景反覆利用,研究資產的複利效果才會真正出現。
治理提醒 不要讓使用端反過來污染預測端
若策略表現不好,就直接回頭改環境模組欄位定義,短期看似靈活,長期卻會讓整條管線失去可比性。R170 的價值就在於建立邊界:先穩定產出標準欄位,再去測試不同使用方式。只有這樣,研究者才知道是「預測本身有問題」,還是「使用方法不對」。
第十七章:管線出場優化(R171)
R171 要回答的問題非常直接:環境模組辛苦產生的那些預測,能不能真的幫助出場決策?這是一個很多研究團隊都會直覺回答「當然可以」的問題,但 R171 的價值恰恰在於它沒有想當然耳,而是把答案拆成多個實驗層次逐一驗證。結果相當精彩:M-module 單獨幾乎無法直接預測「現在該不該出場」;把這些靜態環境特徵硬塞進深度學習出場模型,效果甚至還變差;真正有效的做法,反而是利用 M1 的 range 預測去調整規則式追蹤停損(Trailing Stop)距離。這一章最重要的洞見是:知道今天能走多遠,往往比知道哪一根 K 棒要不要平倉更有價值。
17.1 E0:環境模組能直接預測出場嗎?答案幾乎是否定的
E0 是最基礎也最重要的驗證:如果只把 M-module 的輸出拿來預測「某個持倉時點是否應該出場」,其辨識力有多高?結果 AUC 只有 0.4978,幾乎等同隨機。這個結果一開始看起來很失望,實際上卻非常合理。因為出場本質上是一個條件決策問題,它依賴的不只是今日環境,還包括你是怎麼進場的、目前持有多久、浮盈浮虧多少、策略原本追求的是趨勢延伸還是均值回歸。環境模組描述的是『世界長什麼樣子』,而出場決策問的是『在我已經身處其中的情況下,現在該不該離開』。這兩者不是同一層次的問題。
因此,E0 的負結果並不是說環境模組沒用,而是提醒研究者:不要期待錯層級的訊號解決錯層級的問題。若硬要讓 M-module 直接回答 exit label,就像要求天氣預報直接告訴你某段高速公路第幾公里要不要踩煞車。天氣當然重要,但它不是煞車訊號本身。R171 的後續設計,正是建立在這個清楚的否定之上。
| 實驗 | 設定 | 結果 | 結論 |
|---|---|---|---|
| E0 | 僅用 M-module 預測 exit label | AUC 0.4978 | 接近隨機,無法直接回答「該不該出場」 |
學理 時序卷積網路(Temporal Convolutional Network, TCN)為何常被拿來做出場模型?
📚 理論基礎
時序卷積網路使用因果卷積(Causal Convolution)確保模型只能看到當下以前的資訊,再透過擴張卷積(Dilated Convolution)讓感受野快速放大,能同時捕捉短期與中期依賴。與長短期記憶網路(Long Short-Term Memory, LSTM)相比,TCN 通常更穩定、平行化程度更高、訓練速度更快,特別適合處理規律但需要不同時間尺度共同作用的交易序列。
🏠 日常生活類比
可以把 TCN 想像成一排看向不同距離的望遠鏡:有的看眼前幾步,有的看更遠的路口。每個望遠鏡都只看你前方已經存在的道路,不會偷看未來,但合在一起就能形成對路況更完整的理解。
📈 投資應用
出場模型常需要同時知道「剛剛兩三根 K 棒有沒有急拉」以及「過去一段時間是否已經走完主要波段」。TCN 能用不同 dilation 尺度捕捉這些訊息,因此常是比 LSTM 更實務的選擇。
17.2 E1:把環境靜態特徵硬加進 DL Exit,結果反而更差
既然 M-module 不能單獨預測 exit,下一個自然想法就是:那把它當成輔助特徵,加入深度學習出場模型總可以吧?E1 便測試了這條路。結果對 R014 的 TCN 模型來說,AUC 從 0.6466 微降至 0.6461,幾乎沒有改善;對 R071 的 CNN1D 模型更明顯,AUC 從 0.6493 掉到 0.6250,反而變差。這個現象揭示了一個常見陷阱:當環境特徵是低頻、日級、靜態,而出場模型處理的是高頻、持倉內部的路徑序列時,兩者直接拼接不但不一定互補,還可能讓模型在不相干的尺度上分心。
關鍵不在於環境模組有沒有價值,而在於它的價值不在「當成另一個靜態欄位餵給神經網路」。神經網路擅長從路徑裡辨識即時狀態,環境模組擅長描述今日上限與節奏條件。如果把前者該做的事與後者該做的事混在一起,模型反而可能把關鍵的持倉內訊號稀釋掉。R171 的負面實驗因此極其珍貴:它告訴我們,特徵多不等於更好,尺度一致與任務對齊才重要。
| 策略 | 模型 | 原始 AUC | 加入 M-module 後 | 結論 |
|---|---|---|---|---|
| R014 | TCN | 0.6466 | 0.6461 | 幾乎無增量 |
| R071 | CNN1D | 0.6493 | 0.6250 | 明顯退步 |
17.3 E2:真正有效的是用 M1 預測距離,去調整追蹤停損
R171 最漂亮的結果來自 E2:不再要求模型直接回答 exit label,也不再把靜態環境特徵塞進深度學習網路,而是把 M1 的 pred_range 用來調整規則式追蹤停損的距離。這時,環境模組終於用在它真正擅長的位置——提供今天合理的移動空間估計。對 R071 而言,act30_trail30 的設定在結合 M1 預測後,PF 從 3.14 躍升到 7.89,增幅高達 +151%,同時 MDD 從 -527 大幅收斂到 -195,堪稱本章最具代表性的冠軍結果。這個結果不是小優化,而是直接改變策略出場品質的等級。
為什麼這招對 R071 特別有效?因為 R071 的風格更接近會先有推進、再進入拉鋸的型態,若能在一開始就知道今天整體大概能走多遠,就能把停利啟動點與 trailing 距離設在更貼近市場節奏的位置。當市場容易擴張時,不要太早被雜訊洗掉;當市場天生不會走太遠時,也不要幻想大波段還會再來。M1 不是在告訴策略「現在立刻出場」,而是在告訴它「今天適合用多寬鬆或多緊的安全帶」。這正是環境資訊最合理的使用方式。
反過來看,R014 在所有這類配置上都呈現負增量,原因也很有邏輯。R014 屬於突破型策略,真正的優勢來自趨勢延伸與持有到收盤的能力;對這類策略而言,過早啟用動態追蹤停損,反而可能把原本應該持有的趨勢單提早洗掉。這正好證明:出場最佳化不會有萬用答案,策略風格決定了哪一種 exit 才是「合理」的 exit。趨勢型策略更常需要 hold,均值回歸或短波段策略則更能從動態 take-profit 中受益。
| 變數 | 意義 |
|---|---|
act{X} | Activation threshold:浮盈達到 X 點時啟動追蹤停損(啟動前不觸發) |
trail{Y} | Trailing distance:啟動後,停損跟隨最高浮盈點回落 Y 點的距離 |
m1_pred_range | M1 模組預測的今日範圍百分比,用來動態調整 X 和 Y 的寬窄 |
| 策略 / 配置 | 原始結果 | 加入 M1 range 後 | 觀察 |
|---|---|---|---|
| R071 act30_trail30 | PF 3.14 / MDD -527 | PF 7.89 / MDD -195 | 🏆 極顯著改善 |
| R014 各配置 | 依配置而異 | 普遍負增量 | 突破策略更適合 hold-to-close |
出場優化最常見的誤區,是執著於「哪一刻該走」;R171 告訴我們,更高價值的問題其實是「今天最多值得抱到什麼程度」。
學理 追蹤停損(Trailing Stop)設計:固定、移動與波動調整
📚 理論基礎
停損/停利設計大致可分為固定距離、追蹤式、以及依波動度調整(例如 ATR-based)三大類。固定距離最簡單,卻容易忽視不同市場日的尺度差異;追蹤式能保留趨勢延伸空間,但若距離設太緊,容易被正常回檔洗出;波動調整型則試圖讓停損距離與當下市場尺度匹配。R171 的重點,在於用 M1_pred_range 取代純價格波動 proxy,直接以「今日可走距離」驅動追蹤規則。
🏠 日常生活類比
這就像安全帶自動調節。路況順、車速穩時,可以保留一些活動空間;暴雨或山路時,安全帶會更早收緊。你不是每次都用同一個鬆緊度,而是根據外部環境改變保護方式。
📈 投資應用
對容易先衝一段再拉回的策略,動態 trailing stop 能有效把已有獲利守住;對真正需要抱波段的突破策略,過度積極的 trailing 反而會傷害績效。這就是為什麼同一個 exit 設計在 R071 與 R014 上會出現完全不同的結果。
實戰提醒 策略風格先決定 exit,環境模組只是幫你把 exit 做對
若一個策略的優勢(edge)來自長趨勢持有,別因為看到某個短線 trailing 成績漂亮,就把它硬套到所有系統上。R171 的真正結論不是「M1 能改善所有出場」,而是「M1 很適合改善那些本來就需要動態保護獲利的出場設計」。
17.5 R172:把出場模型再做一遍,答案仍然是「規則勝過加料」
R171 已經給了一次重要提醒:環境模組不適合直接拿去做 exit label 預測。R172 的價值,在於它沒有停在概念層,而是把這件事重新做得更徹底——加入 R138 的 K 線解剖特徵、重新測試 M-Module conditioning、甚至檢查 GBM 出場與 trailing stop 是否存在協同效應。結果比 R171 更直接:E0 的 K-line ablation 只有 8/20 組贏過基線,平均 ΔPF = -0.144;E1 的 M-Module conditioning 只有 2/5 組為正,平均 ΔPF = -0.145;E3 更顯示 0/5 策略出現 GBM+trail 協同效應,trail alone 全部獲勝。
為什麼會這樣?因為出場問題本質上仍然主要由持倉內部狀態決定,而不是由更多外部特徵決定。R172 再次驗證,bars_held、current_pnl、mfe 這些 trade-level 狀態,幾乎永遠排在特徵重要度最前面;反而 K 線 anatomy 與 M-Module 這種 day-level 上下文,對 exit timing 沒有穩定增量。這也解釋了為什麼 M1 校準的 trailing stop 會長期勝出:它問的不是『下一根 K 棒是否應該平倉』,而是『在目前已經賺到多少、今天大概能走多遠的前提下,安全帶該拉多緊』。
不過 R172 也沒有把 trail 神化。它清楚指出 trail 存在 PF 與 Total PnL 的 trade-off:像 R071 的 trail PF 可以衝到 125,但總 PnL 只有 5,021,明顯低於 baseline 的 12,456。也就是說,規則式 trailing stop 更像是一種把交易品質做乾淨的工具,而不是保證把總利潤做到最大化的魔法按鈕。這個認知很重要,因為它告訴研究者:exit 最後不是比誰更聰明,而是比誰更清楚自己在優化『品質』還是『數量』。
| 實驗 | 測試重點 | 結果 | 結論 |
|---|---|---|---|
| E0 | K-line anatomy 加入出場模型 | 8/20 win,avg ΔPF = -0.144 | 形態特徵對 exit 無穩定增量 |
| E1 | M-Module conditioning | 2/5 win,avg ΔPF = -0.145 | day-level 環境不如 trade-level 狀態重要 |
| E3 | GBM + trailing stop 協同 | 0/5 synergy;trail alone 全勝 | 最佳增強仍是規則式 trail |
出場提醒 Entry 可以靠 ML 找條件,Exit 更常靠規則把利潤保住
R170 證明 entry gate 適合用 ML 做條件化;R172 則證明 exit timing 反而更像風控工程。當一個問題的最佳答案反覆回到簡單規則,不代表研究失敗,而是代表問題本身不需要更複雜的模型。
第十八章:組合最佳化(R122)
當單一策略的研究走到一定成熟度後,真正決定資金曲線穩定度的,往往不再是某一個策略能不能再多賺幾個百分點,而是整體組合如何彼此搭配。R122 的重點,不是選出唯一最強策略,而是把八套特性不同的系統——R014、R024、R026、R066、R069、R071、R072、R077——放進同一個投資組合最佳化(Portfolio Optimization)框架裡,檢查它們在長樣本中如何共同分擔風險、共享報酬。結果非常亮眼:組合 PF 3.13、勝率 53.9%、累積 PnL +377,434 pt、年化 Sharpe 5.38,最大回撤僅 -754 pt,而且 26/26 年皆為正報酬。若進一步採用最大夏普(Maximum Sharpe)配置,Sharpe 還能提升到 6.08;若再加上選擇性環境閘門,最佳配置甚至能把 PF 推到 10.05,並把 MDD 壓到 -254。
18.1 八策略組合:分散化不是把更多策略塞進去,而是讓來源彼此不同
R122 最值得學習的第一件事,是它沒有把「策略很多」誤當成「分散化很好」。真正有價值的組合,來自於不同風格、不同節奏、不同市場結構敏感度的互補。R014 與 R071 雖然都是全書中的重要主力,但一個更偏突破持有,一個在出場設計上更能受惠於動態保護;R024 與 R072 提供另一組不同邏輯的參與方式;R066 與 R077 則被證實是整個組合中最重要的分散化因子。這裡的重點不是誰績效最高,而是誰能在別人失靈時仍提供不同來源的報酬流。
這也是為什麼組合研究一定要跳脫單一策略視角。當你只看單一系統,很容易陷入「這策略 PF 高不高」的思維;但在多策略資金配置中,更重要的其實是相關性、回撤重疊、風險貢獻與市場階段覆蓋度。R066 和 R077 被點名為最強分散化因子,並不只因為它們自己表現不錯,而是因為它們能有效降低整體組合在相同壓力事件下同步失血的機率。這種效果在長期資金曲線上,往往比多 0.2 的單策略 PF 更重要。
| 組成策略 | 在組合中的角色 | 備註 |
|---|---|---|
| R014 | 主力報酬來源之一 | 適合搭配 selective gate,而非激進出場 |
| R024 | 補充不同進場邏輯 | 提供與主力突破類不同的輪廓 |
| R026 | 組合內的額外非同步來源 | 提高策略樣態多樣性 |
| R066 | 強分散化因子 | 本身已極強,對沖其他策略壓力 |
| R069 | 邊際補充 | 交易稀疏,配置上宜保守 |
| R071 | 主力報酬來源之一 | 與動態出場/gate 搭配效果佳 |
| R072 | 穩定補充 | 提供另一組市場參與路徑 |
| R077 | 強分散化因子 | 與 R066 共同改善整體風險輪廓 |
18.2 三種配置方法:Equal Weight、Risk Parity、Max Sharpe
R122 比較了三種典型配置方法。第一種是等權重(Equal Weight),也就是每個策略分配同樣資本。它的優點是最簡單、最不容易因估計誤差而過度最佳化,非常適合作為基線。第二種是風險平價(Risk Parity),核心思想是讓每個策略對組合波動的貢獻更接近,而不是讓名目資金一樣多。若某策略波動大,就配少一點;波動小,就可多配一些。第三種則是最大夏普配置,根據預期報酬與共變異數矩陣,尋找風險調整後報酬最佳的權重組合。
在實務上,這三種方法不是誰絕對最好,而是代表不同治理哲學。等權重重視穩健與簡單;風險平價重視每個策略的風險貢獻公平;最大夏普則追求更高效率,但也最依賴估計品質。R122 的結果顯示,整體組合已經有非常優秀的基礎:PF 3.13、年化 Sharpe 5.38、26/26 年獲利,表示即便不追求花俏的權重調參,策略池本身就具備很高品質。而最大夏普配置能把 Sharpe 再推到 6.08,則說明這些策略之間確實存在可被最佳化吸收的互補空間。
同時必須理解的是,配置方法不是一次算完就永久有效,而必須搭配穩定的再平衡節奏與保守的估計程序。若每次只因最近幾個月表現好壞就大幅改權重,很容易把短期噪音誤認為結構訊號。R122 蘊含的真正方法論,是先建立足夠多元且可信的策略池,再用配置器做「溫和但持續」的優化,讓組合效率提升,而不是讓權重本身變成另一個過度擬合來源。
| 變數 | 意義 |
|---|---|
w_i | 第 i 個策略的權重(資金配置比例) |
N | 策略總數 |
σ_i | 第 i 個策略的報酬波動度(標準差) |
μ | 各策略預期報酬向量 |
r_f | 無風險利率 |
Σ | 策略間報酬的共變異數矩陣 |
w' Σ w | 投資組合變異數(風險的平方) |
18.3 選擇性環境閘門:不是所有策略都要一起加門
R122 的另一個關鍵發現,是環境閘門若與資產配置結合,效果可以大幅放大,但前提是要「選擇性」使用。最佳設定並不是替所有策略一視同仁地加 gate,而是只對 R014 與 R071 這類已知對環境敏感、且 gate 已被驗證有效的策略,採用門檻值 5 的 selective env gate。這樣做的結果,是整體組合 PF 進一步來到 10.05,MDD 壓到 -254,形成整套系統中極具代表性的最佳配置。
這個結果背後有兩層意義。第一,環境治理的價值會被組合放大。單一策略的 gate 改善,可能只看見少數指標提升;但當它被放進多策略組合中,因為能同時減少不必要部位與降低回撤共振,總體效果會更顯著。第二,gate 也必須遵守分散化原理。若某些策略原本就是分散化因子,例如 R066、R077,貿然用 gate 把它們過度裁切,反而可能破壞組合的互補性。因此,最好的組合最佳化不是「所有好東西都全部打開」,而是知道哪些工具該加在哪些策略身上。
| 組合指標 | 基礎組合 | 最佳化 / 加 gate 後 |
|---|---|---|
| Profit Factor | 3.13 | 10.05(最佳 config) |
| 年化 Sharpe | 5.38 | 6.08(Max Sharpe 配置) |
| 最大回撤 | -754 | -254(最佳 config) |
| 獲利年數 | 26 / 26 | 維持穩健且更高效率 |
投資組合最佳化的本質,不是挑一個最會賺的策略,而是讓整體資本在更多市場狀態下都能活得久、活得穩。
學理 馬可維茲(Harry Markowitz)平均數-變異數模型與效率前緣
📚 理論基礎
現代投資組合理論的核心,是在給定風險下尋找最高報酬,或在給定報酬下尋找最低風險。平均數-變異數模型使用預期報酬與共變異數矩陣,推導出一條效率前緣(Efficient Frontier),前緣上的配置代表在當下假設下最有效率的選擇。風險平價則是另一種更穩健的思路:不直接押注報酬估計,而是讓每個資產或策略的風險貢獻較為平均。
🏠 日常生活類比
這像均衡飲食。只吃一種最愛的食物,短期也許很爽,但長期容易營養失衡;均衡飲食不是否定主菜,而是讓蛋白質、蔬菜、澱粉各自扮演不同功能。投資組合也是一樣:分散化不是平均分配一切,而是設計一份更能長期存活的菜單。
📈 投資應用
當策略之間的相關性不完全一致時,好的權重配置能讓整體回撤比任何單一策略都更平滑。R122 更進一步顯示,若能把 selective gate 與配置一同納入,效率前緣還能再向上推進一階。
組合提醒 最強的分散化因子,常常不是報酬最高的那一個
R066 與 R077 在 R122 中被確認為最重要的 diversification factor,這說明配置時不能只看誰賺最多。能在別人回撤時保持不同步,才是真正拉高整體 Sharpe、壓低組合波動的關鍵角色。
18.4 R173 與 R180:從投資組合最佳化走向 MET Pipeline 組合
R122 告訴我們,多策略可以靠配置器變得更穩;R173 與 R180 則把問題再往前推一步:如果把同一套 M-Module gate 與 trail exit 套到多個策略上,整個組合會不會更像一台可複用的生產機器?R173 的第一版答案是肯定的。它把 R014、R071、R066、R024 與 R077 串進同一條 MET Pipeline 後,發現真正最有普遍性的增強不是 gate,而是 trail:四個主策略 PF 全部提升 +144% ~ +464%,5 策略組合 Sharpe 來到 7.41,95% 月份獲利,且日損益 Spearman 全部低於 0.27。不過這個版本同時也暴露一個根本問題:R077 雖然是絕佳 LONG 分散器,但自身仍帶有 look-ahead bias,因此 R173 更像證明『方法有效』,而不是最終乾淨的 production roster。
R180 的工作,就是把這個組合從「有效」推進到「乾淨可用」。它用 R069 取代帶偏差的 R077,並把 R174 的 opening type 與 R175 的 day type 併入 gate 特徵。策略層級來看,強化後的 gate 幾乎全面變好:R014 的 gate 效果在單策略實驗中從 PF 6.47 提升到 12.84,R071 甚至從原本 gate 無效變成可用;但組合層級的答案卻更微妙。最佳 production recommendation 反而不是強化版,而是 E1 的 Base MET Portfolio:Sharpe 5.43、PnL/MDD 629.0、月勝率 96.4%、2015-2024 零虧損年。當 gate 變得太 aggressive、交易數被大幅裁切後,單策略 PF 雖然更漂亮,整體分散化效果卻反而下降,Sharpe 也從 5.43 降到 5.07。
這個結果非常值得記住。量化團隊很容易在單策略優化時不斷追求更高 PF,但對組合而言,真正重要的不只是每條曲線夠不夠漂亮,而是它們能不能在不同日子輪流工作。R180 最終讓我們看到一個更成熟的結論:Gate with ML, Exit with rules 仍然成立,但 gate 的好壞必須以組合結果來裁決,而不是只看單策略的局部提升。
| 研究 | 組合名單 | 代表指標 | 真正留下的結論 |
|---|---|---|---|
| R173 | R014 + R071 + R066 + R024 + R077 | Sharpe 7.41;95% 獲利月 | 確認 MET Pipeline 可跨策略複用,但 R077 有偏差不可直接當最終名單 |
| R180 E1 | R014 + R071 + R066 + R024 + R069 | Sharpe 5.43;PnL/MDD 629.0;96.4% 月勝率 | 乾淨 5 策略 base MET 組合成為較佳 production recommendation |
| R180 E3 | 同上 + Opening Type / Day Type 強化 gate | Sharpe 5.07 | 策略層級 gate 改善,不保證組合層級同步改善 |
組合研究真正難的地方,不是把每個策略都調到最漂亮,而是知道什麼時候該保留一些「不那麼完美但更能分散」的交易。
第十九章:風險管理框架
再好的策略、再漂亮的模型,如果沒有一個能跨策略、跨時段、跨風險來源運作的風險管理框架,最終仍可能在少數幾次失控中把長期優勢吐回去。本章整理的,不是單一停損規則,而是一套從部位縮放、特殊日期過濾、日夜盤風險隔離,到月份/年度品質審查的完整風控結構。這個框架的核心思想非常清楚:風險管理不是交易之後的補救,而是整個研究系統的第一層約束。當回撤(Drawdown, DD)擴大、結算日風險升高、連敗月份堆疊或持有品質下降時,系統應該主動縮手,而不是等到最壞結果發生再來檢討。
19.1 DD 自適應部位控制:先活下來,才有資格談複利
本框架最直觀也最重要的一條規則,是 DD 自適應觸發條件(DD-adaptive trigger):當累積 DD < -100 pt 時,立即降低部位。這條規則的精神,不是因為策略突然失效就永遠停用,而是承認市場與策略之間可能暫時進入不合拍的階段,此時最好的決定往往不是繼續硬扛,而是先把風險暴露降下來。許多交易系統之所以在紙上績效漂亮、實盤卻撐不住,不是因為平均期望值錯了,而是因為部位沒有隨著壓力狀態一起調整。
DD 自適應的價值,在於它把『策略是否仍有優勢(edge)』與『現在能不能承受相同風險』分開處理。就算一套系統的長期統計仍然有效,當你剛經歷一段連續失利,帳戶承受能力與心理承受能力都會下降。此時若還用全尺寸部位交易,等於是在最脆弱的時候承擔最大波動,這與風控的本意完全相反。因此,DD 觸發條件應被視為組合層級的保命閥,而不是對策略的懲罰。
| 變數 | 意義 |
|---|---|
DD | Drawdown(回撤),當前權益與近期峰值的差距(點數);負值表示處於虧損狀態 |
-100 pt | 觸發門檻值,回撤超過 100 點時啟動部位縮減 |
position_size | 當前交易口數 / 部位大小 |
reduction_factor | 縮減倍率(如 0.5 = 減半部位),越深的 DD 可設越低的倍率 |
base_size | 正常狀態下的基礎部位大小 |
19.2 特殊日期與盤別隔離:結算日、日夜盤不能混成一鍋
風控框架的第二個支柱,是承認「不是所有交易日都一樣」。結算日就是最典型的例子。研究顯示,R016 在結算日的 PF 會從 2.17 劇烈下滑到 0.37,而多數策略在結算日也普遍表現較差。這意味著結算日不只是普通的高波動日,而是市場微結構與流動性行為明顯改變的特殊狀態。對這類日期,最合理的處置通常不是強行用平日規則硬做,而是直接排除,或至少顯著降低部位。
同樣的道理也適用於日盤與夜盤風險隔離。日夜盤雖屬同一商品,但資訊來源、參與者結構與流動性節奏不同,若把兩者的風險暴露與停損狀態全部混在一起管理,可能會產生錯誤的連動。例如,日盤遭遇短暫震盪並不代表夜盤同樣失效;夜盤受國際事件干擾的大波動,也不應直接迫使日盤策略停擺。實務上,更好的方式是先在 session 層級隔離風險,再由組合層統一分配總曝險。這樣既能保留盤別差異,又能避免單一時段事故擴散成全系統去風險。
| 風險來源 | 觀察 | 建議處置 |
|---|---|---|
| 結算日 | R016 PF 2.17 → 0.37;多數策略同步弱化 | 排除交易或顯著降低部位 |
| 日夜盤混用 | 不同資訊源、不同波動節奏 | 先做 Day / Night 風險隔離,再做上層整合 |
| 深度 DD | 壓力狀態下易放大錯誤 | 啟動 DD-adaptive 部位控制 |
19.3 M11、M12、M13:把長期品質審查納入風控
風險管理若只看單筆停損或單日波動,很容易忽略更高層次的結構性衰退。本框架因此加入 M11 到 M13 三組長期治理條件。M11 要求連續虧損月份不超過 3 個月,避免策略長時間進入不自覺的失效狀態;M12 強調年度不虧損要求,意即策略不只要在整體樣本中賺錢,還必須具有跨年度存活能力;M13 則針對持有時間與盈虧比做分級,檢查策略是否逐漸演變成『抱太久卻只賺一點、虧損卻拖很久』的低效率型態。
這三條規則讓風控從「不讓單筆爆掉」提升到「不讓系統慢性惡化」。尤其在多策略組合裡,慢性惡化比瞬間爆炸更危險,因為它常常不會立刻觸發劇烈警報,卻會一點一滴侵蝕整體效率。當某策略連續三個月都無法恢復、某年度開始明顯失去穩定性、或持有品質分數持續下降時,就應該重新評估是否降低權重、進入觀察名單,甚至暫停交易。這種制度,能有效避免研究團隊陷入「它以前很強,所以再等等看」的沉沒成本陷阱。
| 模組 | 風控目標 | 判準 |
|---|---|---|
| M11 | 連敗月份控制 | 連續虧損月份 ≤ 3 |
| M12 | 年度不虧損要求 | 盡量避免出現全年負報酬年度 |
| M13 | 持有時間與盈虧比評級 | 避免低效率持有與報酬風險比惡化 |
19.4 部位 sizing 框架:從 Kelly 到 half-Kelly 的現實落地
部位 sizing 是風控中最容易被過度數學化、卻也最容易在實戰中走樣的區域。凱利準則(Kelly Criterion)提供了一個經典起點:若勝率為 p、賠率為 b、失敗機率為 q = 1 - p,理論最佳投注比例為 f* = (p·b - q) / b。這個公式的數學魅力在於,它追求長期資本成長率最大化。然而,真實交易裡的 p 與 b 都不是固定常數,且估計誤差會被槓桿放大,因此全 Kelly 在實務上往往太激進。
這也是為什麼 half-Kelly 常被視為更可行的折衷。它承認模型參數有不確定性,也承認市場不是賭桌。對多策略系統而言,更合理的 sizing 流程,通常是先以策略品質分數、gate 結果、DD 狀態、結算日標記、日夜盤 session 狀態等因素共同決定風險倍率,再把 Kelly 型思維當成「上限感」而非絕對命令。簡單說,Kelly 幫你知道理論上不能太小,但 half-Kelly 與多層風控則幫你避免在現實中押得太大。
| 變數 | 意義 |
|---|---|
f* | 理論最佳投注比例(佔總資金的百分比) |
p | 勝率(Win Rate),歷史統計的獲利次數比例 |
b | 賠率(Odds),平均獲利 / 平均虧損 |
q | 敗率 = 1 - p |
base_size | 基礎部位大小(依帳戶規模設定) |
gate_factor | 閘門因子(Gate 未通過時縮減或歸零) |
dd_factor | 回撤因子(DD 越深,部位越小) |
session_factor | 盤別因子(日盤 / 夜盤風險不同) |
settlement_factor | 結算日因子(結算週風險提高,部位縮減) |
不要把整副籌碼壓在一手牌上。真正能活到最後的,不是每次都敢重押的人,而是知道什麼時候該縮手的人。
學理 凱利準則與部位 sizing:理論最佳,不等於實戰最佳
📚 理論基礎
Kelly 的數學目標是最大化長期對數財富成長,因此在理論上極具吸引力。但它建立在勝率與賠率可穩定估計的前提下,而金融市場中的 edge 會飄移、交易成本會變化、極端事件也會出現,因此滿 Kelly 幾乎一定對估計誤差過度敏感。這也是為什麼更保守的 fractional Kelly 在資產管理中更常見。
🏠 日常生活類比
這就像打牌時,你即使覺得自己拿到優勢牌,也不會把全部籌碼一次壓上。因為你知道還有運氣波動、判斷失誤與看不到的風險。half-Kelly 的精神,就是承認自己不可能每次都把機率估得那麼準。
📈 投資應用
在多策略系統裡,部位 sizing 應與 gate、DD、自訂日期風險、盤別隔離一起工作,而不是單靠一條勝率公式決定。Kelly 提供的是上限思維,完整風控框架提供的才是可實盤的尺寸管理。
風控提醒 結算日風險不要再與高槓桿、夜盤曝險疊加
當某天已經具備結算日、夜盤事件風險或深度 DD 等警訊時,最糟糕的做法就是仍用常態部位交易。風險事件常不是單點致命,而是多個小警訊同時出現後被忽略。真正成熟的框架,會在這些訊號重疊時主動縮減,而不是賭自己這次能僥倖躲過。
第二十章:認證標準 M1-M13 / O1-O13
研究做到最後,真正決定一套策略能不能上桌的,不是單次回測有多漂亮,而是它能不能穿過一條足夠殘酷、又足夠可重複的認證管線。本書把正式認證拆成五個階段:先做程式碼稽核,再做統計驗證,接著檢查強制標準 M1-M13、可選標準 O1-O13,最後再以 2025 年後完全隔離資料進行最終隔離驗證(Final Holdout)。這樣的設計不是官僚流程,而是為了回答一個最實際的問題:這個優勢(edge)到底來自市場,還是來自研究者自己不小心塞進去的錯覺?
對台指期這種高噪音市場而言,若沒有分層認證,策略很容易只是在某段年份、某種滑價設定、某個剛好沒被看穿的偏差下暫時好看。一旦進入實盤,這些沒被揭露的脆弱點都會一起爆出來。因此,本章的重點不只是列門檻,而是說明:為什麼要先擋作弊、再看顯著性、最後才看績效;為什麼 Mandatory 必須全過,而 Optional 只作為穩健性加分;以及為什麼所有績效都必須回到同一個共同語言——以初始本金 10,000 點為基準來衡量風險與回撤。
20.1 五階段認證管線:先證明乾淨,再證明夠強
本書的認證流程看似比一般回測報告繁瑣,實際上每一層都在處理不同風險。第一層是程式碼稽核(Code Audit),回答「你有沒有作弊」;第二層是統計驗證(Statistical Validation),回答「就算沒作弊,這個結果是不是仍可能只是運氣」;第三層是必要標準(Mandatory Criteria),確認是否達到最低可交易門檻;第四層是加分標準(Optional Criteria),檢查策略在更嚴格、更貼近實務的壓力下是否仍維持韌性;第五層則是最終隔離驗證(Final Holdout),像畢業考一樣,要求策略在完全隔離的 2025 年後資料上接受最後裁決。這種由內而外、由邏輯正確到統計可信、再到商業可用的順序,能最大幅度降低『漂亮但不可部署』的研究殘骸。
| 階段 | 名稱 | 性質 | 主要問題 |
|---|---|---|---|
| 第一階段 | 程式碼稽核(Code Audit) | HARD | 是否有 look-ahead bias、資料洩漏、錯位標記、未隔離日夜盤 |
| 第二階段 | 統計驗證(Statistical Validation) | HARD | 置換檢定(Permutation test)是否達 p < 0.05、Bootstrap 信賴區間是否穩定 |
| 第三階段 | 必要標準(M1-M13) | ALL PASS | 是否滿足最低可交易門檻 |
| 第四階段 | 加分標準(O1-O13) | 至少 6 項通過 | 是否具備壓力測試下的穩健性與組合價值 |
| 第五階段 | 最終隔離驗證(2025+) | FINAL | 完全未參與研究資料的最終外部檢定 |
學理 認證管線的設計哲學:為什麼一定要分成五階段?
📚 理論基礎
量化研究最常見的錯誤,是把不同問題混成一個總分。程式碼正確性、統計顯著性、交易可行性、壓力下韌性,其實屬於四種不同層次的證據。若只看 PF 或 Sharpe,就等於用單一結果替整個研究背書;一旦其中夾帶前視偏誤(look-ahead bias)、滑價假設過度樂觀,或只是剛好吃到一段單一市場狀態,總分就會變得毫無意義。五階段設計的目的,正是把這些證據拆開:前兩層回答「能不能相信這份研究」;後三層回答「就算可信,值不值得部署」。
🏠 日常生活類比
這就像考一張專業證照。你不能因為模擬考高分,就略過身分驗證、實作測驗與口試。先確認不是代考,再確認知識不是瞎猜,最後才確認你能不能在真實情境下應用。交易認證也一樣:若前面的身分驗證與作弊檢查都沒做,後面的高分沒有意義。
📈 投資應用
Mandatory 與 Optional 的分工特別重要。Mandatory 是「不上桌就不能交易」的底線;Optional 則是衡量這套系統是不是足夠成熟、足以進入更大資金或更嚴格投資組合。這能避免團隊把理想條件錯當底線,也避免過度嚴苛地淘汰其實已經可用的策略。
20.2 第一階段與第二階段:稽核比分數更早,顯著性比勝率更重要
程式碼稽核(Code Audit)的核心是 R1-R14 程式碼與資料規約。任何會偷看到未來的欄位、把日夜盤交叉污染、在觸發 K 棒當根成交卻用收盤價回測、把最終日型定義倒灌回開盤特徵的寫法,都直接判定不合格。這個階段沒有灰色地帶:只要存在可證明的前視偏誤(look-ahead bias)或資料洩漏,策略不論 PF 多高都不得進入下一關。第二階段的統計驗證(Statistical Validation)則要求結果不只是『看起來漂亮』,而是要能在置換檢定(Permutation Test)與 Bootstrap 信賴區間下成立。前者確認績效不是亂數就能做出來,後者確認績效不是只靠少數幸運樣本撐起來。對本書的認證邏輯來說,p < 0.05 不是加分項,而是最低可信門檻。
| 指標 | 全名 | 意義 |
|---|---|---|
MDD | Maximum Drawdown(最大回撤) | 權益曲線從峰值到谷底的最大跌幅(點數),衡量最壞情境的虧損深度 |
Total PnL | Total Profit and Loss | 整段回測期間的累積淨損益(點數) |
Recovery Factor | 修復因子 | 總獲利除以最大回撤絕對值;越高表示系統從低谷修復的能力越強 |
Payoff Ratio | 報酬賠率 | 平均獲利單 / 平均虧損單;> 1 表示贏的時候賺得比輸的時候多 |
WR | Win Rate(勝率) | 獲利交易筆數佔總交易筆數的比例 |
Expectancy | 期望值 | 每筆交易的平均期望獲利(點數);正值表示系統長期具備優勢 |
以 10,000 點作為共同本金假設,有兩個好處。第一,所有回撤與修復能力都能落在同一尺度,不會因策略每筆點數大小不同而互相失真。第二,MDD 與 Recovery Factor 能直接轉成是否可承受的資金路徑,而不是只停留在統計上的漂亮。這也是本書堅持 MDD 與 Recovery Factor 同時存在的理由:只看賺多少,容易忽略中間必須吞下多深的洞;只看回撤,又可能錯殺高修復能力的系統。兩者必須一起看。
20.3 必要標準(Mandatory Criteria):M1-M13 是最低可部署語言
必要標準(Mandatory Criteria)的本質,不是選出最夢幻的策略,而是排除不值得部署的策略。說得更白一點,M1-M13 不追求完美,而是確保一套系統至少具備足夠頻率、正向期望值、合理回撤、跨年穩定性與時間結構一致性。其中 M6 與 M13 是本版新增的兩條:M6 把報酬賠率(Payoff)與勝率(Win Rate)的乘積納入,避免高勝率小賺大賠或低勝率偶爾暴賺的假象;M13 則要求持倉時間分桶後的損益輪廓合理,避免某策略表面獲利,實際上只靠極少數超長單撐住整體績效。
| 代號 | 項目 | 門檻 | 說明 |
|---|---|---|---|
| M1 | 交易頻率 | ≥ 3 筆 / 月 | 避免樣本過稀導致認證失真 |
| M2 | Profit Factor(獲利因子) | ≥ 2.0 | 總獲利至少為總虧損兩倍 |
| M3 | Win Rate(勝率) | 資訊揭露,無硬門檻 | 必須完整揭露,供解讀 payoff 與 expectancy |
| M4 | Average Win / Loss | ≥ 1.5 | 平均賺賠比不可過低 |
| M5 | 最大連敗筆數 | ≤ 10 | 避免心理與資金上不可承受的連敗 |
| M6 | Payoff × WR | > 1.5 | 同時約束勝率與賺賠比的乘積品質 |
| M7 | 每筆期望值 | > 0 | 扣除成本後每筆交易仍須正期望 |
| M8 | 60 日滾動 Sharpe | ≥ 1.5 | 不是只看全樣本,而是看局部穩定度 |
| M9 | Maximum Drawdown(最大回撤) | ≤ 2,000 pt | 即初始本金 20% 上限 |
| M10 | Recovery Factor(修復因子) | ≥ 3.0 | 總獲利相對回撤的修復能力 |
| M11 | 最大連續虧損月 | ≤ 3 個月 | 限制長期低潮不可過長 |
| M12 | 年度損益 | 每年 > 0 | 所有年度必須為正,不接受靠單一年暴利遮蓋 |
| M13 | 持倉時間 P/L 分級 | 分級 ≥ B | 依持倉時間四分位分桶,至少 3 桶為正 expectancy,且最差桶不得低於 -0.1R |
M3 看似沒有硬門檻,卻仍被列為 Mandatory,原因就在於它是解讀績效結構不可缺少的一環。高勝率低 payoff 與低勝率高 payoff,雖然都可能得到相同 PF,但實際風險體驗截然不同。強制揭露 M3,能避免團隊只挑對自己有利的績效面向報告。M13 也有相同精神:它不是單純多一條統計,而是要求研究者把績效拆開來看,確認 edge 不是集中在少數持有極久、極難執行、或只有在特殊日型才出現的交易上。
20.4 Optional Criteria:O1-O13 是穩健性加分,不是幻想清單
Optional Criteria 的定位,是把已經過底線的策略,再往『更能承受現實世界』推進一步。由於不同策略類型不一定適用所有項目,因此本書規定:O1-O13 中至少需有 10 項可評估,且其中至少通過 6 項,才能視為通過 Optional Stage。這裡的重點不是追求 13/13 完美,而是確認策略在滑價、參數擾動、分年分市場狀態(regime)、組合相關性與獲利集中度等維度上,沒有明顯脆弱點。
| 代號 | 穩健性項目 | 建議門檻 |
|---|---|---|
| O1 | 全樣本 Sharpe | ≥ 2.0 |
| O2 | Sortino Ratio | ≥ 2.5 |
| O3 | Calmar Ratio | ≥ 1.5 |
| O4 | 月獲利率 | 獲利月份占比 ≥ 65% |
| O5 | 滑價壓力測試 | +2 pt / trade 後 PF 仍 ≥ 1.5 |
| O6 | 成本壓力測試 | 交易成本 +25% 後 Expectancy 仍 > 0 |
| O7 | 參數擾動穩定度 | 核心參數 ±10% 後 PF 仍 ≥ 1.6 |
| O8 | Regime 分段穩定 | 高波 / 低波 / 事件期至少 2 段為正且無崩壞 |
| O9 | 獲利集中度 | 前 10 大交易貢獻 ≤ 總獲利 35% |
| O10 | 分年波動穩定 | 年 Sharpe 標準差 ≤ 1.2 |
| O11 | 組合相關性 | 與核心主策略 |ρ| ≤ 0.70 |
| O12 | 尾部風險 | 95% CVaR 不超過本金 6% |
| O13 | 執行一致性 | 模擬成交與回測成交偏差 ≤ 15% |
Optional 不應被誤解為『通過越多越神』。它真正的價值,是幫研究者看出一套策略未來最可能死在哪裡:有些系統不怕滑價、卻怕參數擾動;有些系統自己賺錢,但跟核心組合高度同向,實際配置價值有限;有些系統全樣本很漂亮,但 35% 的獲利其實來自 10 筆神單,一旦實盤錯過就會面目全非。O1-O13 就是在提前把這些脆弱點攤開來看。
20.5 Final Holdout:真正的畢業考只看 2025 年後
前四階段全部通過,仍不代表可以直接實盤。最後一關 Final Holdout 的精神,是使用在研究、調參、模組挑選、門檻設定中完全未被碰觸的 2025 年後資料,確認這套策略面對真正未來仍能保留基本結構。這一關不追求複製歷史神績效,而是要求『不崩壞』:PF 不得跌破 1.3、Expectancy 需維持正值、主要風險輪廓不可明顯劣化、且交易樣態必須與認證期間一致。若一套策略在 Holdout 才首次出現長期連敗、持倉時間分布扭曲或滑價敏感度暴衝,那就代表前面的認證仍有盲點。
也因此,本書的最終判定並不是單一分數,而是三段式結論:Not Certified、Certified、Certified for Deployment。前者表示在硬門檻前就失敗;中者表示通過 M 與 O,但仍需紙上交易驗證;後者才是通過 Holdout 並可進入實戰流程的名單。這種分級可以避免團隊把『研究成功』與『可上線』混為一談,也能讓策略在不同成熟度下被正確安排用途。
認證制度不是用來製造漂亮徽章,而是用來阻止錯的策略被帶進實盤。真正成熟的研究團隊,最重視的不是通過多少,而是淘汰是否足夠誠實。
第二十一章:反偏差鐵律與資料治理
量化研究最可怕的失敗,不是模型分數低,而是模型其實偷看了未來卻沒被發現。Look-ahead bias(前視偏差)之所以是本書反覆強調的鐵律,不只因為它常見,更因為它會把本來沒有的 edge 偽裝成高品質策略。你以為自己發現市場規律,實際上只是不小心把答案塞回題目裡。更危險的是,這種偏差通常不會讓結果『看起來有點怪』,反而會讓結果漂亮得令人心動。R003、R072 與 R171 的案例都清楚說明:只要標記時序、進出場點、Volume/Value Area 欄位、或夜盤跨日切分少驗一步,高 PF、高 AUC 都可能瞬間蒸發。因此,反偏差鐵律與資料治理不只是研究衛生習慣,而是整套系統能否被信任的前提。
21.1 Look-ahead bias:最常見,也最致命
前視偏差最陰險的地方,在於它常以「只是方便一些」的形式出現。最經典的案例是 R003:原始回測 PF 2.03,看起來像一套值得深入的結構策略,但後來發現進場寫在觸發 bar,等於假設訊號成立後可以回到同一根 K 棒內成交;修正成下一根才能進場後,PF 直接掉到 0.9。R072 的 VA Streak 也是相同教訓:若出場條件使用了完整 Value Area(價值區,Value Area, VA)資料,就等於在交易當下讀到收盤後才知道的結果,PF 便從 3.29 掉到 0.97。R171 更是研究誠信教材:Combined Exit AUC 一度高達 0.8838,但因標記流程混入未來資訊,被明確註記為 look-ahead biased,不得列為有效結果。
| 案例 | 原始結果 | 修正後 | 偏差來源 |
|---|---|---|---|
| R003 | PF 2.03 | PF 0.90 | 進場寫在觸發 bar,成交時序錯誤 |
| R072 VA Streak | PF 3.29 | PF 0.97 | Exit 使用未來 VA 資訊 |
| R171 Combined Exit | AUC 0.8838 | 作廢 | 標記流程混入未來訊號 |
這三個案例共同說明一件事:偏差不一定藏在模型裡,更多時候藏在資料管線、欄位對齊與事件定義。研究者最容易犯的錯,就是把『計算方便』當成『時序正確』。例如完整日型、完整 VP、完整 VA、完整當日高低點,這些欄位在收盤後回顧時都很自然,但只要被誤拿去驅動開盤或盤中決策,就立刻從特徵變成答案。也因此,本書把所有與前視相關的問題都歸入 HARD FAIL:不是扣分,而是直接作廢。
21.2 PB-13 Iron Rule:深度學習更強,所以更要被約束
在傳統表格模型時代,前視偏差常來自人工欄位;進入深度學習(Deep Learning, DL)、強化學習(Reinforcement Learning, RL)與專家混合(Mixture of Experts, MoE)架構後,偏差則更常藏在資料窗口、掩碼(mask)、標記回寫與共享狀態裡。PB-13 Iron Rule 的核心,就是任何會影響交易決策的模型,都必須遵守嚴格因果約束:序列模型必須使用 causal mask;訓練樣本只能看到決策當下以前的資料;共享 encoder 不得混入未來 bar 的統計;專家路由器不能先看完整日型再決定由哪個專家處理;RL 的 reward shaping 也不得從回合末結果逆流污染當下狀態。模型越強,越容易把這些微小洩漏放大成驚人的高分,因此 PB-13 不是架構建議,而是研究倫理。
| 風險點 | 違規寫法 | 正確治理 |
|---|---|---|
| 序列視窗 | 用完整交易日序列訓練盤中決策 | 只保留決策時點以前的因果視窗 |
| 共享表徵 | encoder 含未來 bar 統計量 | 先切時點,再計算 embedding |
| MoE 路由 | 先看收盤後標籤再分配專家 | 路由器只能讀當下可得特徵 |
| RL reward | 用最終日內高低點回寫前段獎勵 | reward 必須依交易當下可驗證事件定義 |
夜盤資料更需要額外戒心。因為台指期夜盤跨越日曆日,若以「日期」而不是「交易 session」切分,很容易把 Day(D+1) 的資訊誤當 Night(D) 的未來延續。像是把同一曆日凌晨 01:30 的資料跟早上 09:00 的現貨欄位直接合併,就可能在邏輯上把未來事件偷塞回去。KB-09 因而明訂兩條規則:第一,2025 年資料禁止參與任何訓練、選模與調參;第二,夜盤所有特徵必須以 session 為主鍵切分,嚴禁用跨日曆日聚合欄位偷渡未來訊息。
學理 置換檢定(Permutation Test):策略獲利是不是只是好運?
📚 理論基礎
置換檢定的虛無假說,是策略績效純屬運氣。做法是把關鍵標籤或交易對應關係隨機打亂,重新計算 PF、Sharpe 或 Expectancy,重複很多次後形成「如果根本沒有真實訊號,理論上會得到怎樣的分數分布」。再把原始策略結果放回這個亂數世界中比較,若原始結果仍位於極端尾端,才表示績效超過隨機噪音的合理範圍。本書以 p < 0.05 作為最低門檻,代表在亂數條件下出現同等或更好結果的機率低於 5%。
🏠 日常生活類比
最貼切的比喻,就是問「如果學生完全亂猜,這次也可能考到 90 分嗎?」若把答案順序打亂很多次後,亂猜仍很少超過及格線,就表示原始成績不是純靠運氣。交易研究也是同樣邏輯:不是看到高分就信,而是先問這個高分在亂數世界裡稀不稀有。
📈 投資應用
Permutation Test 對高自由度策略尤其重要。當研究者反覆試過很多入場條件、濾網與停利版本後,即使沒有刻意作弊,也容易因資料探勘而得到偶然漂亮結果。置換檢定能有效檢查這些結果是否真的超越隨機搜尋。
學理 Bootstrap 統計推論:知道區間,比知道單點更重要
📚 理論基礎
Bootstrap(自助法)使用有放回抽樣,從原始交易樣本中反覆重抽,為 PF、Sharpe、勝率或 Expectancy 建立經驗分布。其價值不在於給出另一個『更漂亮』的平均,而在於說明不確定性範圍。若某策略 PF = 2.86,但 95% 信賴區間只有 [0.9, 4.8],代表它的穩定度遠不如 PF = 2.30、區間 [2.1, 2.6] 的系統。後者雖然單點較低,卻更可能在真實世界重現。
🏠 日常生活類比
它很像做民調。你不會因為一次樣本顯示某候選人領先 3%,就斷言結果已定;你會想知道多次抽樣後,領先幅度大致落在哪個區間。投資研究也是一樣:單一回測只是一個樣本,真正重要的是如果重新抽樣,這套系統還能不能站得住。
📈 投資應用
對交易者而言,知道 PF 2.86 的 95% CI = [2.1, 3.6],遠比只知道 PF 2.86 更有用。前者告訴你績效大致能穩定落在哪,後者則可能只是偶然命中的點估計。
21.3 KB-09 資料治理:2025 禁用規則與夜盤特殊警告
KB-09 的精神,是讓資料生命週期本身也被治理。第一,2025 年之後資料屬於最終隔離驗證(Final Holdout),禁止參與任何訓練、特徵選擇、模型挑選、門檻調整與消融分析決策。第二,日盤與夜盤必須以交易時段(session)為最小治理單位,不得用日曆日聚合欄位替代。第三,任何完整日型欄位,例如全日 VAH/VAL、全日高低點、收盤後計算的 VP 結構,都只能在收盤後分析與報告階段使用,絕不能反向供給盤中決策。第四,若資料欄位來源橫跨不同市場,例如夜盤搭配美股、選擇權或現貨資料,必須額外記錄發佈時間戳記,確保該資訊在交易當下真的可得。
| 治理規則 | 內容 | 違反後果 |
|---|---|---|
| 2025 禁用規則 | 2025+ 僅能用於 Final Holdout | 整體認證失效,需重跑 |
| Session 隔離 | 日盤 / 夜盤特徵與標記分開管理 | 視為資料污染 |
| 完整日型禁回灌 | 全日 VA/VP/高低點不可供盤中決策 | 判定 look-ahead bias |
| 外部資料時間戳記 | 現貨、選擇權、海外市場欄位需記錄可得時間 | 無法證明可得即不得使用 |
21.4 研究誠信的真正意義:不是避免犯錯,而是讓錯誤可被查出
沒有任何大型研究流程能保證永不犯錯,但一套成熟的治理系統,必須保證錯誤會留下痕跡,而且能被迅速追溯。這也是為什麼本書不只列規則,還反覆保留失敗案例:R003、R072、R171 的價值,不是讓人難堪,而是替整個研究體系建立共同免疫系統。只要團隊願意把偏差案例制度化,未來每次新增模組、改寫標記器、導入更複雜的 DL 或 MoE 架構時,就能有更清楚的紅線。研究誠信不是道德口號,而是一套降低自我欺騙機率的工程方法。
高分不可怕,可怕的是高分來自未來資料;真正值得信任的研究,不是從不犯錯,而是每次犯錯都能留下可複用的防呆規則。
21.5 R158-R160:治理不是口號,而是能被重跑、被修正、也被量化
R158 到 R160 把本章的治理原則從理念拉回可操作層級。R158 先驗證整條 regime pipeline 是否真的能重現舊研究的結果:R014 的 pipeline PF 3.14 與 R110 的 3.14 幾乎完全一致,R037 也在同一 baseline 上維持相同方向的 gate lift,只因 DL gate 本身存在隨機波動而有些微差距。這代表研究體系已經不是一次性的 notebook 成功,而是能以同一條管線重新產出相近結論,這對長期維護與後續審計都極其重要。
R159 處理的,是另一種比較隱性的偏差來源:K 棒慣例。台灣 1 分 K 的原始資料本來就採本地慣例(first bar = 08:46),但程式碼中多數 resample 卻沿用 left/left 預設,導致第一根 5 分 K 只含 4 根 1 分 K,IB 結束時點也被錯畫成 09:10。修正成台灣慣例後,20.2% 的交易日 IB range 會改變,但對 certified 策略的績效衝擊其實都很小:R014 PF 只差 +0.0643(+3.1%)、R037 +0.0407(+1.9%)、R071 +0.0247(+1.9%)。這個研究的意義不在於『數字變超多』,而在於證明規格正確性本身就值得被治理,即使它對最終績效只造成小幅修正。
R160 則是最能體現反偏差精神的一個案例。原本的 ib_vol_ratio = ib_vol / total_day_vol 在 09:15 根本不可能知道分母,等於把整日成交量偷塞回 IB 特徵。修正成 ib_vol / rolling_avg_past_vol 之後,R014 的 gate lift 從帶偏差版本的 +50.9% 回落到 +21.5%,R037 也從 +77.5% 回落到 +57.5%。這看起來像成績退步,實際上卻是最好的消息:edge 還在,只是不再吃未來資料的紅利。研究最怕的從來不是分數下降,而是下降後才發現原來之前的高分不是自己的。
| 研究 | 治理主題 | 代表數字 | 真正結論 |
|---|---|---|---|
| R158 | Pipeline 可重現性 | R014 Pipeline PF = 3.14,與 R110 完全對齊 | Regime pipeline 可以重跑、可複用、可審計 |
| R159 | K 棒慣例正確性 | 20.2% 日子的 IB range 改變;R014 PF 只差 +3.1% | 規格必須先正確,再談績效影響大小 |
| R160 | Look-ahead 修復驗證 | R014 gate lift +50.9% → +21.5%;R037 +77.5% → +57.5% | 修偏後 edge 仍存在,證明乾淨結果才值得信任 |
真正成熟的治理,不是讓結果永遠漂亮,而是讓每一次修正都能說清楚:哪裡有問題、修完後還剩多少 edge、以及這份 edge 是否仍然值得部署。
第二十二章:策略演進史 — 失敗比成功更有價值
如果只把研究史寫成成功案例集,讀者最後學到的通常只是錯覺:好像真正有價值的研究,是從一開始就方向正確、一路優化到漂亮結果。實際情況恰好相反。台指期量化研究真正珍貴的資產,不是某一版策略回測很好,而是每一次失敗都把錯誤邊界畫得更清楚,讓下一版知道什麼不能再做。從 RS Breakout 的 V1 到 V8,再從早期的 R003 到後期的 R171,整體脈絡並不是單一策略越調越漂亮,而是一整套知識體系逐漸成形:哪些價量結構真的有資訊含量、哪些深度學習架構只是在堆複雜度、哪些濾網看似聰明其實只是在資料中過度擬合、以及哪些設計一旦加上嚴格時間治理後便立刻坍塌。對研究者而言,失敗不是要藏起來的污點,而是整個框架變得成熟的主要燃料。
22.1 RS Breakout 的七次重生:V1 到 V8 不是優化,是世界觀更新
RS Breakout 演進史最能代表本書的研究精神。V1 是最樸素的區間突破:只要價格穿越參考區,就順勢進場。這一版最大問題是把所有突破都視為同質事件,忽略了開盤型態、初始平衡區(Initial Balance, IB)、波動壓縮與量能背景。V2 加入 IB 結構後,開始能分辨哪些突破是有盤中結構支撐的,哪些只是隨機擺動。V3 再把 Volume Profile(成交量剖面,Volume Profile, VP)與 Value Area(價值區,VA)資訊納入,研究者第一次清楚看到:同樣都是突破,從高量節點(HVN)往外走與在低量節點(LVN)邊緣突破,後續延伸品質截然不同。V4 導入方向濾網與波動條件後,開始擺脫『看到突破就追』的反射行為;V5 則把 VP-CNN 與 FiLM-CNN 類訊號疊進來,讓結構訊號從單一條件進化成上下文感知。
真正的關鍵躍遷發生在 V6 之後。V6 開始接受一個重要現實:不是所有結構訊號都該由單一固定規則執行,策略需要先判斷市場環境,再選擇是否出手;這便導向 R140 一類 gate architecture 的成熟。V7 將出場問題獨立成研究主題,理解到入場如果是『抓方向』,那出場就是『把方向轉成 PnL 的轉換器』,於是 R171 類 exit architecture 才會成為後續主軸。V8 則不再把 RS Breakout 視為單一策略,而是視為可被模組化的母策略:結構特徵、環境過濾、出場決策、風險管理與投組配置彼此分層,各自可以更新。這個轉變代表研究團隊已經從「調參」思維,跨到「系統工程」思維。
| 版本 | 核心變化 | 主要收穫 | 暴露問題 |
|---|---|---|---|
| V1 | 純區間突破 | 建立最小可測框架 | 訊號過度粗糙、噪音高 |
| V2 | 加入 IB 結構 | 突破品質開始分層 | 仍缺少量能背景 |
| V3 | 導入 VP / VA 上下文 | 結構辨識力提升 | 有前視欄位誤用風險 |
| V4 | 方向與波動濾網 | 降低假突破 | 容易過濾過度 |
| V5 | 結構訊號多模態化 | 開始有條件式 edge | 模型複雜度上升 |
| V6 | 環境偵測 / gate | 知道何時不做更重要 | gate 失準時反害主策略 |
| V7 | 出場架構獨立研究 | PnL 轉換效率提升 | 標記偏差風險增加 |
| V8 | 模組化母策略 | 可重複部署與認證 | 需完整治理與再認證 |
學理 Generate → Critique → Compare:研究方法論不是找聖杯,而是快速排錯
📚 理論基礎
Generate 階段負責大量提出可被驗證的假說:某個 VP 結構是否能改善 breakout 品質?某種 gate 是否能只留下最有利的 20% 交易?Critique 階段則刻意扮演破壞者,從前視偏差、樣本稀疏、執行不可行、滑價敏感、過度複雜等角度去拆掉假說。最後 Compare 階段才把存活下來的版本放到共同認證框架下比較。這個流程之所以有效,是因為它不把研究者的創意當答案,而把創意當成待淘汰的候選物。真正能留下來的 edge,必須先撐過批判。
🏠 日常生活類比
它像產品開發而不是發明靈感。先做很多原型,再故意用最挑剔的使用者去找錯誤(bug),最後才拿存活版本做正式比較。若跳過中間的批判檢視(Critique),團隊很容易愛上自己最早想到的版本,最後只是在替偏見找證據。
📈 投資應用
這也是為什麼本書保留大量失敗研究編號。失敗案例不是噪音,而是批判模組的輸出;它們能防止後來者重複掉進一樣的坑,研究效率反而因此大幅提升。
22.2 從 R003 到 R171:真正累積的不是策略,而是知識模組
若把 R-series 只看成一串研究編號,很容易忽略它真正的價值。R003 教我們進出場時序一定要被嚴格定義;R014 與 R024 讓市場結構策略從直覺走向可量測;R066、R071、R077 表示某些結構假說在經過機器學習與資料治理後,確實能留下正向優勢(edge);R097、R098 則標誌出研究團隊不再只研究單一策略,而開始研究「何時該啟用、何時該關閉」的環境辨識問題;R136-R140 則把模組層次拉高,從單點預測跨向架構設計;R150、R151 處理的是時段感知(session-aware)與跨盤別一致性;到了 R164-R168,研究重心更轉向審核、穩定度與整合評分;R170、R171 則代表整套管線開始能把出場、認證與最終裁決接在一起。白話來說,R-series 累積的不是一堆彼此孤立的策略,而是一個逐步工程化的研究作業系統。
| 研究群 | 代表編號 | 知識累積 |
|---|---|---|
| 早期驗證期 | R003、R014、R024 | 建立進出場定義、結構特徵與初步可交易性 |
| 結構增強期 | R066、R069、R071、R072、R077 | VP、Center、Gap、Gate 等結構邏輯開始成熟 |
| 治理轉型期 | R097、R098、R119、R122 | 從單策略走向環境感知、組合觀與流程化 |
| 架構深化期 | R136、R137、R138、R139、R140 | 研究重心轉向表示學習、融合架構與策略 gate |
| 整合落地期 | R150、R151、R164-R168、R170、R171 | 解決 session、審核、評分、出場與部署銜接問題 |
22.3 那些失敗得非常有價值的研究
真正讓研究團隊變強的,往往不是最終通過認證的案子,而是那些明確證明某條路不值得繼續投入的失敗。R029 Order Flow Absorption PF 只有 1.13,說明流動性吸收特徵在台指期上雜訊過高,若沒有更好的交易簿品質資料,很難穩定轉成優勢。R030 MHA Specialist Ensemble PF 0.91,證明架構越複雜不等於越強;當專家分工沒有對應到可辨認的市場機制時,多頭注意力(MHA)只是在堆參數。R057 Technical Indicator FiLM PF 0.72,則把一件很多研究者不願接受的事講清楚:傳統技術指標若沒有被重新放進結構脈絡裡,通常無法帶來顯著增益。R059 HMM Regime Gate 無法收斂,提醒我們 regime 並不是只要取個隱藏狀態模型就能自動長出來。R060 Path Signature 則因特徵空間過大、樣本效率過低,成為『理論上高級、工程上不划算』的經典案例。
| 失敗案例 | 結果 | 真正學到的事 |
|---|---|---|
| R029 Order Flow Absorption | PF 1.13 | 流動性特徵若資料品質不足,訊號比噪音更少 |
| R030 MHA Specialist Ensemble | PF 0.91 | 複雜架構若無對應機制,只會提高過擬合風險 |
| R057 Technical Indicator FiLM | PF 0.72 | 傳統指標本身缺乏增量資訊 |
| R059 HMM Regime Gate | 未收斂 | regime 建模不能脫離可觀測市場狀態 |
| R060 Path Signature | 特徵空間過大 | 高維表示若無樣本支持,理論優雅也無法落地 |
這些失敗的共同點,是它們都迫使團隊重新思考「什麼才叫增量資訊」。不是所有更細的資料、更深的模型、更聰明的數學都會帶來真實 edge。若某個新模組無法在既有策略上提供可解釋、可重複、且經得起治理的增量,它就不值得留下。這個原則看似保守,實際上反而使研發速度更快,因為團隊不會把數月時間耗在錯誤方向的局部微調上。
22.4 下一步:從策略家族走向研究平台
未來方向大致可分三條。第一是 KB-13 所指的新型深度學習提案:不再單純追求更深的網路,而是追求更符合交易因果結構的架構,例如明確分離 context encoder 與 execution decoder、把 session-aware mask 內建為不可繞過的層。第二是 KB-10 的多時間框架(multi-timeframe)架構:把開盤前、開盤後 15 分、IB 完成後、午盤前後視為不同資訊階段,各自有不同模型責任。第三是 KB-11 的分布理論:與其只預測單一方向,不如直接建模報酬分布、尾部風險與持倉時間輪廓,讓策略評估更貼近實際資金曲線管理。
總結來說,策略演進史的重點從來不是證明某個版本最厲害,而是證明研究團隊是否有能力把失敗變成制度化知識。當失敗可以被編碼、被索引、被重用,研究才真正從個人靈感升級成可傳承的能力。
成功的策略會賺錢;被正確記錄的失敗,則會讓整個研究體系長出免疫系統。長期來看,後者更值錢。
第二十三章:從研究到實戰 — 落地路徑
研究真正困難的地方,從來不只是在回測中找到優勢(edge),而是把這個優勢轉成一套能在真實市場持續運作的生產系統。從認證到隔離驗證(Holdout)、從紙上交易(Paper Trading)到實盤(Live Trading),中間每一步都可能讓原本看起來漂亮的策略露出新弱點:成交品質不如預期、滑價比回測高、策略在監控延遲下失去優勢、同時開啟多模組時出現風險堆疊,甚至市場微結構本身已悄悄改變。
也因此,研究到實戰的落地路徑,不能只是把 notebook 裡的訊號搬上線,而必須是一套完整的運營架構:資料流、特徵計算、認證登錄、部署閘門、風控限制、即時監控、告警回饋與再認證機制全部接起來。對台指期而言,真正能長期活下來的不是單一聰明模型,而是能在環境變化時自己暴露問題、觸發停用、並回到研究端重新驗證的閉環系統。
23.1 現行生產系統架構:研究、部署、監控三層分離
目前最穩健的架構,不是把所有邏輯塞進一支交易程式,而是把整個流程切成三層。第一層是 Research Layer,負責資料整理、標記、回測、認證與版本管理;第二層是 Execution Layer,負責訊號生成、下單、風控與策略切換;第三層是 Monitoring Layer,負責追蹤即時 PF、回撤、成交偏差、滑價與異常告警。這樣分層的好處,在於研究端可以快速迭代而不直接污染實盤,執行端則只吃經過認證的版本與唯讀參數,監控端則像獨立審計者,專門檢查實際世界是否開始偏離回測假設。
| 層級 | 核心元件 | 責任 |
|---|---|---|
| Research Layer | 資料倉、特徵工廠、回測器、認證註冊表 | 產出經稽核與認證的策略版本 |
| Execution Layer | 訊號服務、風控閘門、委託模組、部位管理 | 在盤中執行已核准版本 |
| Monitoring Layer | 即時績效看板、告警引擎、偏差偵測器 | 發現 drift、滑價惡化與異常行為 |
其中最重要的原則是 offline / online parity,也就是離線研究與線上執行必須使用相同的欄位定義、相同的 session 切分、相同的交易成本模型與相同的出場優先序。任何「回測裡這樣算比較方便,上線後再改」的做法,最後通常都會變成實盤偏差。研究端若用的是完整 VA,線上卻只能用盤中估計;回測若用固定一點滑價,上線卻遇到事件日擴大兩倍;這些都不是小差異,而是足以讓原本邊際優勢轉為負值的結構性落差。
學理 研究到實戰的閉環:不是把模型上線,而是維持假設不被現實破壞
📚 理論基礎
量化策略上線後會面對兩種漂移:資料漂移(data drift)與執行漂移(execution drift)。前者指特徵分布、波動環境、成交型態改變,導致模型學到的關係不再成立;後者則指實際成交價格、排隊、滑價與延遲,使回測 PnL 轉換效率下降。成熟的落地架構必須同時偵測兩者,並能把異常映射回研究假設:到底是訊號失效、出場失效,還是執行成本超出模型容忍度?盤一變,這三件事很容易混在一起,不能憑感覺猜。
🏠 日常生活類比
這像把一台賽車從風洞搬到真實賽道。風洞裡測的是理想空氣流動,賽道上還有輪胎耗損、路面溫度、車手反應與其他車輛干擾。若只有風洞資料、沒有賽道遙測與回廠調校,車子很快就會跑偏。策略從研究到實戰也是一樣。
📈 投資應用
因此最重要的不是一次部署成功,而是部署後能否持續知道自己偏離了多少、偏離原因是什麼、以及何時該減碼、停用或回到認證流程重做。
23.2 部署流程:認證 → 隔離驗證 → 模擬交易 → 實盤
部署路徑必須由窄到寬。通過第二十章認證後,策略只能取得「可進一步觀察」資格,尚不能直接實盤。第一步是最終隔離驗證(Final Holdout),確認 2025+ 隔離資料沒有崩壞;第二步是模擬交易(Paper Trading),在真實市場節奏下跑模擬成交,蒐集實際訊號頻率、委託可達性與滑價統計;第三步才是小額實盤(Live Trading),以嚴格風險上限驗證實際資金曲線是否與模擬交易一致。每一步都必須設定升級條件與降級條件,而不是靠研究者主觀感覺決定『差不多可以』。
| 階段 | 目標 | 升級條件 | 停用條件 |
|---|---|---|---|
| 認證 | 通過稽核、統計與 M/O 標準 | 五階段前四關全部合格 | 任一 HARD FAIL |
| 最終隔離驗證 | 驗證真正未來資料 | PF、期望值(Expectancy)、DD 結構無崩壞 | 隔離驗證顯著劣化 |
| 模擬交易 | 檢查模擬成交與實盤節奏 | 滑價與命中率偏差在容許值內 | 訊號 / 成交落差過大 |
| 小額實盤 | 小額真實下單 | 持續監控合格後才可擴資 | 即時回撤、滑價或漂移(drift)告警 |
23.3 盤中監控:即時 PF、回撤與滑價三條主線
真正需要盯的不只是損益,而是損益背後的結構。第一條主線是即時 PF 與期望值(Expectancy),用來檢查策略最近一段時間的交易品質是否快速劣化;第二條主線是回撤(Drawdown)與連敗,用來保護資金曲線與交易心理;第三條主線是滑價與成交偏差,用來確認優勢(edge)是否被執行成本吃掉。若只看總 PnL,很容易在問題累積很久後才發現;但若追蹤這三條主線,往往能在系統真正重傷前就提早停用。
| 監控指標 | 用途 | 常見告警 |
|---|---|---|
| 滾動 PF / 期望值 | 檢查近期優勢是否失效 | 60 筆交易 PF < 1.2 |
| 滾動 MDD / 連續虧損 | 保護資金路徑 | 回撤超過認證上限的 70% |
| 滑價漂移 | 衡量成交品質變化 | 平均滑價高於模擬交易 1.5 倍 |
| 訊號成交比 | 檢查委託可達性 | 有訊號但成交率明顯下滑 |
| 特徵漂移 | 檢查輸入分布改變 | 核心特徵分布超出訓練區間 |
其中滑價監控特別容易被低估。很多研究團隊會把滑價當成固定成本,但在台指期上,滑價其實是會隨事件日、波動、盤別與策略擁擠程度改變的動態量。若某策略本來每筆期望值(Expectancy)只有 6 點,而實際滑價從 1.5 點升到 3.5 點,整體優勢(edge)就可能被吃掉大半。因此,滑價不是部署後才補充看的營運指標,而應該與 PF、MDD 一樣,視為核心健康訊號。
23.4 市場結構改變時:重新認證,不要硬撐
所有實戰系統終究都會遇到市場結構改變:波動壓縮、政策事件頻率變化、夜盤參與者結構改變、交易成本上升、某類開盤型態不再延續等。成熟的團隊不會用更多主觀判斷去硬撐原策略,而是啟動再認證流程:先判斷問題來自訊號、出場、風控還是執行;再把異常期間單獨切出,重做程式稽核(Code Audit)與統計驗證(Statistical Validation);必要時回到模組層,更新閘門、停損或時段感知(session-aware)邏輯。說白了,研究與實戰不是兩條線,而是一個永遠會反覆穿越認證管線的循環。
23.5 尚未解答的問題與未來路線圖
即使走到這裡,仍有幾個問題沒有完全解決。第一,如何在不違反因果約束的前提下,讓多時間框架模型真正理解開盤後資訊逐段揭露的特性。第二,如何把分布預測直接連到部位規模(sizing),而不只是把它當作事後風險報表。第三,如何在多策略組合中同時考慮訊號相關性與執行資源競爭,避免每一支單看都好、合起來卻互相擠壓。第四,如何把漂移(drift)偵測做得足夠早、又不至於過度敏感而頻繁停用。未來研究路線也因此清楚:持續深化時段感知(session-aware)架構、建立更強的出場分布模型、讓監控指標與認證標準更直接銜接,並把紙上交易與實盤資料反饋為下一輪研究的正式教材。
從研究到實戰,最終比拚的不是誰能做出最炫的模型,而是誰能建立一套在現實世界中不斷自我糾偏的系統。當策略表現變差時,團隊不是靠信念撐住,而是靠制度知道該減碼、停用、重驗證還是升級。這才是量化研究真正落地的樣子。
實戰不是研究的終點,而是研究假設第一次真正接受市場審判的開始。能活下來的系統,都同時具備策略邏輯與治理邏輯。
第二十四章:盤中策略延伸與特殊情境
做完開盤後十五到三十分鐘的研究之後,下一個自然問題總是:那麼 10:00 之後、結算日、或盤中已經走了一段之後,還有沒有新的 edge 可以接手?R141、R143、R144 與 R166 的價值,正在於它們把這些「看起來很合理」的延伸問題一個個拆開驗證。答案並不單純:有些方向被明確否定,有些訊號證明只能當特徵不能當策略,也有些模型在學術指標上很強,卻還沒轉成實戰優勢。這一章的重點不是再多找一套日內策略,而是更精確地畫出:盤中哪些資訊真的值得相信,哪些其實只是敘事幻覺。
24.1 R141:盤中順勢延續——相關性很高,不代表能賺錢
R141 的出發點極具誘惑力。R120 指出 S3(10:00~11:30)雖然表面波動不算高,卻擁有全日最高的日報酬相關性 r = 0.554,看起來像是一個「方向確認後接續發力」的完美時窗。研究設計也很合理:不是像 R049 那樣盲目做多做空,而是要求 IB 與 S2 方向一致,再疊加 R098 特徵與 R140 gate,試圖把午盤策略做成條件式順勢。
但真正跑完之後,答案卻非常明確:這個時窗沒有獨立 edge。E0 的三種基線變體全部虧損,單純 follow IB 的 PF 只有 0.658,IB+S2 共振的 variant B 也只有 0.688,甚至就連常見的「只做空」土法煉鋼版本也只有 0.617。更關鍵的是,IB → S3 的方向一致率只有 53.3%,而 S3 PnL 與全日 return 的相關只剩 0.037。換句話說,R120 的高相關講的是 range / direction confirmation 的描述性現象,不是拿來 10:00 進場就能賺錢的交易性現象。
| R141 變體 | 設定 | 結果 | 讀法 |
|---|---|---|---|
| A_follow_ib | 10:00 單純順 IB 方向 | PF = 0.658 | 午盤順勢不足以跨過成本 |
| B_ib_s2_confirm | IB + 09:15~10:00 共振確認 | PF = 0.688 | 加條件仍救不回結構性虧損 |
| ib_range ≥ 100 | 只做早盤已擴張的日子 | PF = 0.895 | 連高能量日都無法穩定轉正 |
這個研究最值得記住的,不是某個門檻值失敗,而是它清楚區分了「觀察上的高相關」與「可交易的高期望值」。午盤確實常常承接早盤已經揭露的方向,但那個方向資訊在 10:00 時通常已被價格消化得差不多了,真正留給交易者的剩餘空間,不足以支撐新的獨立進場策略。
24.2 R143:結算日不是反著做就會賺,而是該少做
R143 接續 R016 的觀察:結算日並不一定更大波動,也沒有穩定的多空偏向,但會非常明顯地壓制原本有效的動量信號。像是 VA ≤ -3 + GapDn + SHORT 這種在平日可以做到 PF 2.17 的條件,到結算日只剩 0.37。於是研究者很自然地提出一個對稱假說:既然結算日會抑制動量,那是不是乾脆把正常 SHORT 訊號反著做 LONG,反而有機會吃到 gamma hedging 的反向回拉?
實驗結果完全否定這個想法。Monthly settlement 的 counter version PF 只有 0.654,而 follow 版至少還有 0.947;最糟的是 counter LONG monthly PF 只有 0.372,幾乎是災難級結果。Weekly settlement 也沒有比較好,counter LONG PF 只有 0.862。換句話說,結算日不是「動量失效,所以改做反動量」;它更像是「所有方向性訊號一起被打鈍」,無論順做還是反做都不理想。
| 結算日測試 | PF | 解讀 |
|---|---|---|
| Monthly follow | 0.947 | 比平日差很多,但至少比反做好 |
| Monthly counter | 0.654 | 反向操作更差 |
| Monthly counter LONG | 0.372 | 最差配置,證明「反著做」不是答案 |
| Weekly counter LONG | 0.862 | 仍低於可交易門檻 |
因此,R143 最後留下的不是一個新策略,而是一條更清楚的交易治理規則:結算日應繼續被視為過濾器,而不是等待反向套利的特殊機會。這其實比找到一套 marginal strategy 更有價值,因為它能避免研究團隊在最容易被「特殊日想像力」誘惑的地方反覆踩坑。
24.3 R144:IB K 棒形態是好特徵,卻不是好進場
R144 很容易讓人誤會,因為它背後站著一個看似非常亮眼的前置研究:R138 顯示 shadow_ratio 是最強的 K 線解剖目標,Corr 可達 0.554;upper_shadow_pct 與 lower_shadow_pct 也都不弱。於是直覺上會想:既然 IB 的影線結構這麼能表達買賣壓力,那直接拿來決定 LONG / SHORT,應該也會很有 edge 吧?
R144 的答案剛好把這個常見誤讀糾正過來。研究發現,shadow_ratio → day_direction 的 corr 其實只有 0.1334,最佳規則 PF 也只有 0.792。真正強的地方,是「用 K-line features 去預測 K-line descriptors 本身」,也就是幫 M2 模組把日內形態描述得更完整,而不是直接把這些描述子硬變成獨立入場信號。這種差別很細,但極重要:好的描述器不一定是好的決策器。
| R144 指標 | 數值 | 意義 |
|---|---|---|
| R138 shadow_ratio 預測能力 | Corr = 0.554 | 適合做形態描述與模組增強 |
| shadow_ratio → day_direction | Corr = 0.1334 | 獨立方向訊號太弱 |
| 最佳 standalone rule | PF = 0.792 | 不足以成為可交易策略 |
R144 因而替整個模組工程補上一句很重要的判準:若某個特徵擅長描述市場,但不擅長直接指揮進出場,那就應該回到模組層扮演 embedding / descriptor,而不是被誤包裝成新 alpha。這其實是 R138、R144 與 R172 共同指向的同一個工程哲學。
24.4 R166:逐 bar 更新的突破機率,比單次預測更接近真實交易節奏
R166 是本章唯一明顯保留下來的「工具型」成果。它不再把問題設定成 09:15 做一次性判斷,而是每完成一根 5 分 K 就更新一次 breakout probability,區分 pre-breakout 與 post-breakout 兩個 phase:前者預測是否會突破、以及首次突破方向;後者預測 extension 是否會繼續放大、或回縮回 IB 內。這個設計本身就更貼近真實盤中決策,因為市場的資訊不是在 09:15 一次全部揭露,而是會隨 bar 持續累積。
從學術指標看,R166 相當漂亮。GBM per-bar snapshot 在 pre-breakout 方向預測做到 AUC 0.762,若把觀察窗拉到 bars 13-18,可到 0.792;post-breakout 的 extension 與 reversal 甚至做到 AUC 0.926 / 0.922。更有趣的是,它再次證明 tabular GBM 比序列模型更實用:LSTM 方向 AUC 只有 0.694,明顯落後 GBM;新增 11 個 fancy features 也沒有幫助,反而把 AUC 從 0.766 拉低到 0.751。真正有用的槓桿不是加更多欄位,而是延長觀察窗,讓模型有更多已發生的 bar 可讀。
| R166 任務 | 最佳模型 | 代表指標 | 實務意義 |
|---|---|---|---|
| Pre-breakout 方向 | GBM snapshot | AUC = 0.762;bars 13-18 = 0.792 | 可作為盤中方向置信度補充訊號 |
| Post-breakout extension | GBM snapshot | AUC = 0.926 | 說明突破後的延伸/衰竭其實很可預測 |
| GBM vs LSTM | GBM 勝 | 0.762 vs 0.694 | 手工累積特徵仍優於 raw sequence |
但 R166 也非常誠實地告訴我們,學術上的好分數不等於策略上就會變強。對現有策略來說,direction gate 雖然能明顯改善 counter-trend 系統的 MDD,卻還不足以把 R014 這類問題策略從 PF<1 救回來;對 trend-following 策略如 R037,任何延後觀察、延後出手的設計反而會傷害 edge。也就是說,R166 最適合被定位成盤中決策輔助器,而不是取代既有策略母體的新主角。
盤中資訊確實會越走越清楚,但交易 edge 並不一定等得起。R166 最重要的提醒,不是「預測會更準」,而是「更準的預測有時剛好來得太晚」。
學理 條件式 edge:描述性訊號、決策訊號與時點成本
📚 理論基礎
市場研究常有三種不同層次的訊號:描述性訊號負責告訴你市場長什麼樣子;決策訊號負責告訴你應不應該下單;時點成本則提醒你,就算知道得更準,也可能因為知道得太晚而失去報酬空間。R141、R144 與 R166 的共同價值,就在於把這三層拆清楚:S3 correlation 是描述,不是進場;K-line anatomy 是描述器,不是獨立 alpha;逐 bar 機率模型是決策輔助,但會受出手時點成本約束。
🏠 日常生活類比
這就像看路況導航。知道前方 10 公里塞車是描述;決定現在就改道才是決策;如果你等到進入匝道口才收到最準的訊息,改道的價值可能已經大幅下降。交易也一樣:訊號品質與訊號可行性,永遠要一起看。
📈 投資應用
真正成熟的研究流程,不會只問某個模型 AUC 多高,而會同時問:它是在什麼時點預測?能改善哪一類策略?以及它是適合做 gate、做描述子,還是只能保留成研究工具。
實戰提醒 盤中研究最有價值的產出,往往是「更少亂做」而不是「多一套新進場」
R141 與 R143 幫我們刪掉了午盤順勢與結算日反做的想像;R144 把形態訊號送回模組層;R166 則保留成盤中工具。這種收斂能力,比硬把每個想法都包裝成策略更重要。
第二十五章:夜盤交易體系 — 從日盤到 24 小時
如果日盤研究回答的是「台指期白天怎麼走」,那夜盤研究真正要處理的,則是「波動變大之後,哪些東西會跟著變得更可交易,哪些反而只是更容易賠錢」。R142 到 R149 與 R152 到 R157 的結果非常有教育意義:夜盤確實有更高波動、更多國際盤影響、更多跨時段故事,也因此更容易讓人誤以為 edge 會變得比較明顯;但真正留下來的夜盤優勢,反而集中在少數幾條非常具體的路徑——像是 R146 的夜盤獨立 center breakout 與經過停損治理的延伸版本。其餘大多數看起來很合理的夜盤故事,最後都敗在成本、頻率、樣本稀疏或訊號根本不足。
25.1 R146:夜盤真正成立的核心,不是放到更晚出場,而是把風險治理做好
夜盤研究裡最重要的正面結果來自 R146。它不是單純把日盤策略拖到晚上,而是系統性問了三個問題:日盤訊號延伸到夜盤會發生什麼事?停損應該怎麼改?夜盤本身能不能獨立長出自己的 breakout?答案很清楚。第一,若只是把 R014 從日盤延伸到夜盤而不加治理,PF 會從 2.405 掉到 1.387,代表「持有更久」本身不是優勢。第二,只要停損治理做對,夜盤就能被救回來:day_close + Trail20pt 的風險調整報酬做到 PnL/MDD = 2,351、MDD 只有 37;若真的要延伸到 night_N2,也必須用 Hybrid 20+20,把 PnL/MDD 做到 1,194、MDD 壓在 74,而不能用純 trailing stop 放任 MDD 飆到 393。
第三,也是最驚喜的一點:夜盤根本不只適合當日盤的延伸,它自己就能成為獨立策略。R146 的 E6 用夜盤自身的 IB30 / IB60 / IB90 / IB120 去做 center breakout,結果全部可用,其中 IB30 + Trail15 是最亮眼的版本:PF 45.6、勝率 86.9%、MDD 只有 28、PnL/MDD 達 2,659。這個結果的重要性在於,它把夜盤從「日盤尾巴」真正升級成「可獨立治理的 session」。
| R146 路線 | 代表配置 | 結果 | 詮釋 |
|---|---|---|---|
| 日盤最佳風險調整 | day_close + Trail20pt | PnL/MDD = 2,351;MDD = 37 | 真正最穩的核心版本仍是日盤內 trailing |
| 夜盤延伸版 | night_N2 + Hybrid 20+20 | PnL/MDD = 1,194;MDD = 74 | 可用,但必須靠固定 SL + trail 雙保護 |
| 夜盤獨立版 | Night IB30 + Trail15 | PF = 45.6;WR = 86.9%;MDD = 28 | 夜盤最乾淨、最值得留下的獨立 edge |
R146 之所以重要,不只是因為數字漂亮,而是它替夜盤建立了幾條能直接落地的規則:夜盤延伸不能迷信「抱久一點也許會更賺」,而必須先把 stop architecture 做對;夜盤獨立策略也不需要照搬日盤,因為它自己就有不同的 IB 節奏與風險結構。
25.2 R142:N4 高波動突破——最容易讓人心動,也最容易讓人誤判
R142 的假說幾乎人人都會認同:N4(22:00~01:00)既然是夜盤最高波動時段,range 高達 146.7 點,又與美盤主時段重疊,那把 IB breakout 框架搬過去,應該很容易抓到大波段吧?這個想法聽起來甚至比白天更合理,因為夜盤波動大、行情長、故事也多。
可惜真正的答案很冷酷。R142 的 baseline 整體 PF 只有 0.758;就算只做最好的 LONG + exit05:00 版本,也只有 PF 1.049;再加 range ≥ 80 的條件,PF 也不過 1.033,而且樣本只剩 340 筆。換句話說,N4 的確波動很大,但這個波動比較像混合了高噪音與高事件風險,而不是乾淨的方向延伸。R142 的失敗提醒我們:夜盤的高 vol 很真,卻不能被自動翻譯成 breakout edge。
| R142 結果 | 數值 | 結論 |
|---|---|---|
| 整體 baseline | PF = 0.758 | N4 突破框架整體虧損 |
| 最佳配置 | LONG + exit05:00 PF = 1.049 | 勉強接近打平,成本後仍不可用 |
| Range filter | range ≥ 80pt,PF = 1.033,N = 340 | 縮樣本後也沒有穩健優勢 |
25.3 R145 與 R149:跨時段方向傳導與國際盤跟隨,故事很強,交易性卻很弱
R145 與 R149 都在測試夜盤最迷人的敘事:國際盤走向會不會穩定傳到台指期,讓我們能用 N4 或夜盤前 30~90 分鐘的動量去預測日盤、或直接跟隨夜盤主方向?R145 的答案是否定的。N4 → 日盤報酬相關只有 -0.0206,方向一致率 47.0%,甚至還比隨機差;就算篩選 N4 大漲 50 點以上去做 LONG,PF 也只有 0.898。R149 稍微好一點的地方在於「描述性相關」確實存在:前 30 分鐘與 full-night return 的 Pearson 約 0.22,拉長到 90 分鐘可到 0.34;但只要把它真正翻成策略,216 組 momentum follow 配置全部 PF<1,最佳也只有 0.64。
這兩個研究合起來說明一件很重要的事:外盤連動與國際盤敘事本身不是假的,但它們大多只夠當 macro context,不夠當交易 edge。你可以用它理解夜盤為什麼今天比較活躍、為什麼偏多或偏空,但若直接把它變成固定規則的跟隨進場,成本與反轉噪音很快就會把這些微弱相關吃掉。
| 研究 | 表面上成立的現象 | 真正交易結果 | 結論 |
|---|---|---|---|
| R145 | N4 與日盤存在跨市場敘事 | corr = -0.0206;direction agreement = 47% | 夜盤方向不會直接傳導成日盤 edge |
| R149 | open30/full-night corr = 0.22;90min = 0.34 | 216 組 follow 全部 PF < 1;best = 0.64 | 弱相關不等於可交易動量 |
25.4 R147 與 R148:夜盤可以被預測,但未必能被「再優化」
R147 與 R148 是夜盤研究中最有意思的兩個 mixed case。R147 顯示,夜盤品質其實很可預測:用日盤 context 做 XGBoost gate,AUC 可以到 0.733;prev_night_range_pct → night_range 的 Spearman 甚至高達 0.620。R148 也類似:夜盤 range 的 Lag-1 autocorrelation = 0.647,Ridge 對 night range 的 Spearman 可到 0.586,顯示夜盤波動 regime 不是完全隨機。問題在於,這些預測力放到既有策略上不一定能再轉成收益。
R147 的核心發現是:R146 本身已經天然過濾掉 69.7% 的夜盤,交易夜裡有 88.8% 本來就是好夜;額外 ML gate 雖能擋掉 14.6% 的虧損夜,卻因 precision 只有 16.9%,最終把 R146 的 PF 從 166 拉低到 135。R148 也遇到類似情況:adaptive trail 聽起來很合理,但對 R146 來說,總 PnL 對 trail size 幾乎不敏感,真正敏感的是 MDD,所以固定緊止損永遠勝過自適應規則。最佳 baseline Fixed_15pt 的 PnL/MDD = 1,463.46,而最好的 adaptive 版本 Regime_10_15_25 反而只剩 733.80,大幅倒退。
| 研究 | 可預測性 | 套用到策略後 | 留給實戰的結論 |
|---|---|---|---|
| R147 | Night quality gate AUC = 0.733 | R146 PF 166 → 135;R073 3.87 → 3.97 | 夜盤 quality 可預測,但對高選擇性策略無法再加一層 gate |
| R148 | Night range Spearman = 0.586;Lag-1 AC = 0.647 | Adaptive best 733.80 vs Fixed_15 1,463.46 | 固定緊 trail 比動態 trail 更穩、更有效 |
25.5 夜盤策略試誤記錄
真正讓夜盤研究成熟起來的,往往不是 R146 這種正面結果,而是 R152 到 R157 這一串密集失敗。它們把「夜盤 edge 不在什麼地方」畫得非常清楚:opening reversal 不行、calm-to-storm 太稀、N4 momentum 不行、夜盤 VP 結構太稀疏、多 session 趨勢不會自然延續、DL 環境偵測雖有訊號卻不足以長成策略。這些失敗紀錄不是附註,而是夜盤體系真正的護城河,因為它替後來的研究省下大量重複試錯成本。
| 研究 | 結果 | 關鍵數字 | 留下來的教訓 |
|---|---|---|---|
| R152 夜盤開盤反轉 | ❌ failed | 0 / 48 配置獲利;best PF = 0.79 | 夜盤並沒有穩定可交易的 opening-range reversal |
| R153 夜盤平靜突破 | ❌ failed | best PF = 1.30,但 N = 90、Total PnL = 292 | 即使局部轉正,也因頻率過低而不構成獨立策略 |
| R154 夜盤 N4 動量追隨 | ❌ failed | 0 / 81 配置獲利;WR 僅 25%~29% | 深夜動量 follow 系統性輸給成本與反轉 |
| R155 夜盤 VP 結構 | ❌ failed | 0 / 72 配置獲利;best PF = 0.69 | 夜盤成交量不足,IB 級 VP 結構無法提供穩健方向 edge |
| R156 夜盤多時段趨勢 | ❌ failed | 0 / 36 配置獲利;best PF = 0.85 | 連續盤方向不會自動延續成下一晚的 edge |
| R157 夜盤 DL 環境偵測 | ⚠️ mixed | Range regime Acc = 68%;Volatility Acc = 85%;Direction Acc = 62% | 環境可辨識,但 DL 不優於 GBM,也不足以長成獨立策略 |
夜盤研究最有價值的地方,不是它證明「晚上也能做很多事」,而是它證明了:真正有 edge 的夜盤路徑其實非常少,所以更要把失敗樣本制度化保存。
學理 高波動 ≠ 高 edge:為什麼夜盤特別容易讓人高估策略性
📚 理論基礎
高波動時段會同時提高兩件事:潛在報酬空間與決策噪音。若訊號強度提升得沒有交易成本、滑價與反轉噪音快,那麼就算價格走得更大,交易策略也未必更好。R142、R149 與 R154 的共同失敗,正是因為它們都把高波動誤認成高方向性;R146 能成立,則是因為它先靠停損架構與 session-aware 規則把噪音控制住。
🏠 日常生活類比
這像在大雨天開車。車速更快時,理論上也更有機會早點到達,但如果視線、抓地力與煞車距離一起變差,真正能不能更快抵達,反而取決於你的安全機制有沒有同步升級。
📈 投資應用
夜盤策略若沒有把滑價、停損、頻率與 session 隔離一起納入,通常會在最刺激的時段賠得最快。真正有效的夜盤體系,核心常不是「更敢追」,而是「更會篩、也更會停」。
夜盤提醒 夜盤不是日盤加長版,而是另一套必須重新治理的 session
R146 之所以能留下來,不是因為它把白天策略直接拖到晚上,而是因為它重新定義了 night IB、stop architecture 與 session 邊界。凡是忽略這一點的夜盤研究,最後幾乎都在 R152-R156 那一列裡。
第二十六章:Market Profile 量化驗證
Market Profile 的魅力在於,它用很少的語彙就能對市場狀態說出很多故事:Open Drive、Open Auction、Double Distribution、Trend Day、Neutral Day……問題在於,這些分類在真實的台指期資料裡到底有多大差異?R174、R175 與 R176 的價值,正是把書本語言轉成量化矩陣。它們並不是要推翻 MP 理論,而是幫我們回答一個更實際的問題:哪些經典名詞在台指期上真的帶有足夠大的績效差距,哪些又必須經過本地化修正才能使用。
26.1 R174:開盤類型分類器——OD 確實是最強方向信號
R174 最先回答的,是 Market Profile 最經典的一個問題:Open Drive、Open Test Drive、Open Rejection Reverse、Open Auction 這四種開盤型態,在台指期到底能不能被穩定分類?結果是肯定的,而且有明顯差異。以 2010-2026 的 4,004 個交易日來看,OA 佔 75.1%,OD 佔 12.3%,ORR 8.9%,OTD 3.7%;其中最有價值的是 OD,方向準確率達 70.9%,顯著高於整體 60.2% 的平均水準。
更重要的是,R174 不只停在分類,而是直接檢查它對策略的作用。對 R071 來說,OD 日的 PF 可以從 baseline 3.18 跳到 6.57,增幅高達 +107%;ORR 日卻只剩 1.39,幾乎該被過濾掉。反過來看,R014 對 opening type 幾乎不敏感,代表開盤型態的資訊更像是 center family 的專屬語境,而不是所有策略都該共用的萬能濾網。研究還指出 net_displacement 與 M-Module 幾乎正交(Corr ≈ 0.02),說明這不是舊模組換名字,而是真正獨立的新信號源。
| 開盤類型 | 比例 | 方向準確率 | 對策略的啟示 |
|---|---|---|---|
| OA | 75.1% | 58.6% | 多數日是平衡開盤,分類價值有限 |
| OD | 12.3% | 70.9% | 最強方向信號,尤其適合 R071 |
| ORR | 8.9% | 57.7% | 對 R071 是明確負面條件 |
| OTD | 3.7% | 61.5% | 有資訊,但樣本相對稀少 |
26.2 R175:日型 × 開盤型矩陣——日型是最強單一 regime 變數
如果說 R174 驗證了 opening type,R175 做的則是更完整的 Market Profile 量化矩陣:把 Dalton 六種日型與四種 opening type 疊成 24 格,直接看每一格對策略績效的影響。結果非常驚人。對 R014 來說,Double-Dist 日的 PF 可以落在 6.42 到 8.96 之間,Trend × OD 也有 6.35;但 Neutral-Center × OD 只剩 0.51,Neutral-Center × OA 也只有 0.71。單是日型不同,就能拉出 12 倍以上的差距。
R071 的結果更極端:Normal-Var × OD 這一格 PF 高達 16.09,雖然樣本只有 38 筆,但勝率達 84.2%,堪稱三重篩選(day type + opening type + strategy logic)疊出來的代表案例。相對地,Neutral-Center 日幾乎是兩套方向性策略的共同毒藥。這讓 R175 留下一個很清楚的結論:若只能選一個單一 regime 變數,對台指期而言,day type 的分類力比 opening type 更大。
| 矩陣格 | 策略 | N | PF | 重點解讀 |
|---|---|---|---|---|
| Double-Dist × OTD | R014 | 52 | 8.96 | 價值遷移日 + 測試後驅動,是突破策略的甜蜜點 |
| Trend × OD | R014 | 99 | 6.35 | 單向驅動搭配 trend day,方向策略最乾淨 |
| Normal-Var × OD | R071 | 38 | 16.09 | center flip 在「正常變異 + 單向驅動」下極度受益 |
| Neutral-Center × OD | R014 | 56 | 0.51 | 雙側延伸且收在中間,方向策略幾乎失靈 |
26.3 R176:跳空分類——教科書沒錯,但台指期必須本地化
R176 把技術分析與 Market Profile 世界裡另一個經典題目——Gap Type——拿來做台指期本地驗證。結果是「部分驗證、但必須大幅本地化」。Common Gap 的 10 日填補率 83.6%,與教科書常說的 90% 相去不遠;Exhaustion Gap 的 5~10 日填補率也大致對得上。但 Breakaway 與 Runaway 就完全不同:教科書典型數字大約是 33% 與 48%,R176 在台指期上卻量到 76.2% 與 84.5%。也就是說,在台指期這個市場裡,很多看似該「不回頭」的 gap,其實最後大多會回頭。
最有意思的是 Exhaustion Gap。雖然它只佔 0.8%、樣本只有 28 筆,但當日反轉率高達 60.7%,平均 fade 幅度 289 點,成為所有 gap type 裡最強的反轉信號。這個結果並沒有推翻經典分類,而是更像提醒讀者:缺口理論不是不能用,而是必須放回台指期本地的微結構條件下重估。也正因如此,R176 反而強化了 R077 Gap Fill Long 這類策略的理論基礎。
| 缺口類型 | 教科書 10d 填補率 | 台指期 10d 填補率 | 量化結論 |
|---|---|---|---|
| Common Gap | 90% | 83.6% | 基本成立,仍是高填補類型 |
| Breakaway Gap | 33% | 76.2% | 台指期填補率遠高於美股經驗 |
| Runaway Gap | 48% | 84.5% | 延續型 gap 在台指期也常回補 |
| Exhaustion Gap | 80% | 82.1% | 最強反轉信號,當日 fade rate = 60.7% |
經典理論真正有價值的地方,不是把市場硬塞進名詞,而是先用名詞提出假說,再用本地資料把它重新定價。
學理 分類器與 regime matrix:理論名詞何時能成為可交易條件?
📚 理論基礎
一個理論分類若要變成交易條件,至少要同時滿足三件事:第一,分類本身可被穩定辨識;第二,不同類別之間存在足夠大的統計差異;第三,這個差異能對某個具體策略產生可重複的 lift。R174 驗證了第一件事,R175 驗證了第二與第三件事,R176 則提醒我們,若分類來自不同市場文化,還必須做本地化校正。
🏠 日常生活類比
這就像交通號誌。標誌本身要先辨識得出來,紅燈和綠燈的效果要真的不同,而且你得知道哪一種車、在哪條路上、該怎麼根據號誌調整速度。若只是知道標誌名字,卻不知道它在本地路況下的真實意義,最後仍然開不好車。
📈 投資應用
開盤型態、日型與跳空類型,都不應只停留在盤後敘事。只有當它們能被量化成具體條件,並對某個策略產生可驗證差異時,才真正值得進入交易框架。
研究提醒 Market Profile 最強的地方不是名詞多,而是它很適合被量化成 regime library
R174 與 R175 顯示,MP 世界裡的 opening type 與 day type 不是只有敘事價值;一旦被正確定義,它們就能成為 gate 與策略矩陣的重要軸線。真正要避免的,不是使用經典理論,而是把理論當成不用驗證的信仰。
第二十七章:技術分析理論量化驗證
技術分析世界裡有很多極具吸引力的語彙:Wyckoff spring、HVN/LVN setup、頭肩頂、雙底、三角形……它們在書上都很有畫面,也往往能在盤後截圖中看起來十分合理。R177 到 R179 的貢獻,就是把這些經典框架放進台指期的日內資料裡,用最不留情的方式重新問一次:如果真的量化、真的大樣本、真的做統計檢定,這些型態還剩下多少獨立 edge?答案大致是:比盤後看圖想像得少得多,但並非完全沒有價值——只是多半要被重新定位成負面濾網、背景語境,或提醒研究者不要把高準確率誤當成高顯著性。
27.1 R177:Wyckoff Spring/Upthrust——獨立信號太頻繁,但很適合當負面濾網
R177 檢驗的是一個典型的 Wyckoff 直覺:價格短暫跌破支撐後快速收回(spring),或短暫突破壓力後回落(upthrust),是否能形成可交易的反轉訊號?若只看盤後圖,這種型態幾乎總讓人覺得「很有道理」。但真正量化之後,第一個問題就立刻浮現:事件太多了。以目前的寬鬆定義,spring / upthrust 竟然出現在 85% 的交易日,總事件數超過 16,000 筆,等於它幾乎不是特殊情境,而是市場日常噪音的一部分。
也因此,它的獨立預測力非常有限。Spring 反轉率約 50.9%,Upthrust 52.1%,幾乎就是硬幣翻面;穿透越深,反轉率還越低,100+ 點的深穿透只有 29.4% 會回頭,說明真正深度突破往往根本不是 spring,而是方向延續。不過 R177 並沒有因此變成完全無用的研究。當它與 R071 交叉時,反而呈現很強的負面濾網效果:R071 在 spring 日 PF 只有 2.43,非 spring 日卻有 6.20,差了 2.6 倍。這代表 spring 不適合作為獨立進場,卻很適合提醒我們「今天別對 center flip 太有信心」。
| 條件 | N | PF / 反轉率 | 解讀 |
|---|---|---|---|
| Spring 事件 | 8,701 | 反轉率 50.9% | 幾乎沒有獨立預測力 |
| Upthrust 事件 | 7,621 | 反轉率 52.1% | 同樣接近隨機 |
| R071 on Spring day | 419 | PF = 2.43 | 假突破環境會明顯傷害 center-flip |
| R071 on non-Spring day | 224 | PF = 6.20 | 更乾淨、可交易的結構日 |
27.2 R178:VP 三大設定框架——理論沒錯,錯在資料尺度
R178 測試的是 Volume Cluster Bounce、Trend Pullback、LVN Rejection 三個經典 VP setup。若用書本語言來看,這三種都是非常合理的市場行為:價格回到高量區被吸收、趨勢中拉回再延伸、或在 LVN 被拒絕後加速離開。問題在於,這些設定大多是在較高時間框架、較完整 VP 結構上被討論;一旦把它硬壓到 IB 級別的 VP 上,資料密度就完全不對了。
R178 量到的結果非常一致:Volume Cluster Bounce 成功率 55.0%,Trend Pullback 56.0%,LVN Rejection 43.9%,全部都在隨機附近徘徊。真正的根本原因,是 IB VP 太稀疏——平均 29 根 K 棒卻切成 50 個 bins,等於只有 0.58 bars / bin。HVN 變得「到處都是」、LVN 幾乎不存在,最後任何依賴 VP 微結構細節的 setup 都會被量化噪音吞掉。也因此,R178 最終保留下來的不是策略,而是一條很重要的使用邊界:書上的 VP setup 更適合多日 VP 或更高時間框架,而不是拿來對 IB VP 逐日硬套。
| VP Setup | 出現頻率 | 成功率 | 結論 |
|---|---|---|---|
| Volume Cluster Bounce | 100% | 55.0% | 接近隨機,沒有真正篩選力 |
| Trend Pullback | 62.6% | 56.0% | 只有非常邊際的優勢 |
| LVN Rejection | 2.4% | 43.9% | 比隨機更差,且樣本極少 |
27.3 R179:Andrew Lo 型態辨識——高準確率不是免死金牌,顯著性才是
R179 是本章裡最具教育意義的一個案例。它把 Andrew Lo 的 kernel regression pattern recognition 搬到台指期 5 分 K 上,表面結果其實相當漂亮:Double-Bottom 的方向準確率 71.5%,Double-Top 67.6%,反向頭肩 70.8%,看起來好像真的找到了一套能量化辨識圖形的框架。但只要把 bootstrap 統計檢定一跑,整個故事立刻翻面——所有型態的 p-value 都大於 0.46,完全不顯著。
問題不在於型態完全沒有規律,而在於這些高準確率多半只是 extremum 確認機制造成的趨勢延續偏差。當你需要未來幾根 bar 來確認頂底,實際上就已經把一部分延續資訊偷放進去了;再加上 Double-Top / Bottom 在 85% 的交易日都會出現,頻率高得幾乎沒有篩選力,最後得到的只是一組「看起來很準、其實沒有超過隨機世界太多」的結果。R179 因而成為本書在技術分析章節裡最重要的統計教材:準確率本身,不是免於顯著性審查的理由。
| 型態 | 方向準確率 | Bootstrap p | 詮釋 |
|---|---|---|---|
| Double-Bottom | 71.5% | 0.461 | 高準確率,但不顯著 |
| Double-Top | 67.6% | 0.513 | 同樣無法拒絕隨機假說 |
| Inv-H&S / H&S | 70.8% / 65.3% | 0.499 / 0.484 | 型態稀少,統計力仍不足 |
技術分析理論不是不能研究,但一定要接受同一套量化審判:樣本夠不夠?事件稀不稀?準確率是不是只是偏差的副產品?如果這三關過不了,再漂亮的圖形也只能當故事。
學理 準確率、頻率與統計顯著性:為什麼高命中不一定有 edge?
📚 理論基礎
一個訊號若要具有可交易價值,至少要同時滿足三件事:方向命中率高於隨機、事件頻率足以形成可用樣本、以及在 bootstrap / permutation 的世界裡仍顯著異於零。R177 在第一條就不夠強,R178 在資料密度上失敗,R179 則卡在第三條。這三種失敗方式,正好構成技術分析量化驗證最常見的三個陷阱。
🏠 日常生活類比
這就像考試。你不能因為猜中幾題選擇題,就宣稱自己真的懂;要看猜中是不是系統性高於亂猜、題數夠不夠多、以及換一套題本後還會不會重現。交易研究的統計檢定,本質上就是在做這件事。
📈 投資應用
對交易者而言,最危險的不是低準確率,而是「看起來很準、但其實不顯著」的訊號。它最容易激起信心,也最容易在真金白銀時讓人付出學費。
量化提醒 技術分析最值得保留的,常常不是獨立進場,而是語境與負面濾網
R177 告訴我們 spring 日不適合高信心做 center flip;R178 告訴我們 VP setup 要換回高時間框架;R179 則提醒任何型態辨識都不能跳過顯著性檢定。這些都不是「理論失敗」,而是理論被放回正確位置。
附錄 A:術語中英對照表
本附錄將全書常用術語依主題整理為速查表。欄位設計採「英文|中文|定義」,便於研究、實作與跨團隊溝通時快速對照。中文譯名一律使用台灣常用金融與工程術語。
A.1 Market Profile(市場剖面)
| 英文 | 中文 | 定義 |
|---|---|---|
| TPO | 時間價格機會 | Time Price Opportunity,以時間切片記錄價格出現位置,用來描繪市場在不同價位停留的時間分布。 |
| Initial Balance (IB) | 初始平衡區 | 開盤後前一段固定時間形成的高低區間,常作為全天結構、突破與延伸的起點。 |
| Value Area (VA) | 價值區 | 市場認為相對公平、成交最集中的價格區域,通常涵蓋約 70% 的交易量或 TPO。 |
| Value Area High (VAH) | 價值區上緣 | 價值區的上界,常用來判斷價格是否離開市場公允區。 |
| Value Area Low (VAL) | 價值區下緣 | 價值區的下界,與 VAH、POC 一起描述價值區結構。 |
| Point of Control (POC) | 控制點 | 成交最集中或 TPO 最密集的價格,代表當期市場接受度最高的位置。 |
| Balance Day | 平衡日 | 價格大多在既有價值區內往返,通常代表買賣雙方暫時取得均衡。 |
| Trend Day | 趨勢日 | 價格明顯脫離既有價值區並持續單向延伸,常伴隨低重疊與大範圍。 |
| Neutral Day | 中性日 | 日內同時測試上下方區域,最後收在區間中段附近,表示方向爭奪激烈。 |
| Normal Variation Day | 正常變異日 | 在平衡日基礎上出現有限度延伸,延伸幅度尚未形成完整趨勢日。 |
| Open Drive | 開盤驅動 | 開盤後立即單向推動,幾乎沒有回測開盤價區,通常代表強烈主導力。 |
| Open Test Drive | 開盤測試後驅動 | 開盤先回測某區域確認接受度,再朝相反方向展開持續推進。 |
| Open Rejection Reverse | 開盤拒絕反轉 | 開盤先測試一側失敗,隨後快速反向並建立新方向。 |
A.2 Volume Profile(成交量剖面)
| 英文 | 中文 | 定義 |
|---|---|---|
| High Volume Node (HVN) | 高量節點 | 成交量高度集中的價位,常形成市場接受區與潛在支撐/壓力。 |
| Low Volume Node (LVN) | 低量節點 | 成交量稀疏的價位,常是價格快速穿越或重新定價的區域。 |
| Volume Point of Control (VPOC) | 成交量控制點 | 以成交量定義的 POC,通常是單日或多日最受市場接受的價格。 |
| Fixed Range Volume Profile | 固定區間成交量剖面 | 針對指定時間區間計算的 VP,用於分析某段趨勢或事件期間的價量結構。 |
| Session Volume Profile | 盤別成交量剖面 | 以日盤或夜盤為單位建立的 VP,用來比較不同 session 的價值區差異。 |
| Composite Volume Profile | 合成成交量剖面 | 把多日 VP 疊加,用於辨識更長週期的價值區與遷移方向。 |
| Volume Bulge | 量能膨塊 | VP 上局部特別厚的區塊,代表市場曾在該價位長時間達成共識。 |
| Low Volume Corridor | 低量通道 | 兩個高量區之間的低量帶,價格常在此快速穿越。 |
A.3 Order Flow(訂單流)
| 英文 | 中文 | 定義 |
|---|---|---|
| Delta | 買賣差額 | 主動買量減主動賣量的結果,用來衡量當下主動性力量。 |
| Cumulative Delta | 累積 Delta | 將 Delta 逐步累加,觀察盤中主動買賣力量是否持續偏向一方。 |
| Bid Volume | 買價成交量 | 在買價端成交的量,通常視為主動賣方打下來的成交。 |
| Ask Volume | 賣價成交量 | 在賣價端成交的量,通常視為主動買方追價成交。 |
| Footprint | 足跡圖 | 把每個價位的 Bid/Ask 成交量可視化,顯示日內微觀攻防。 |
| Absorption | 吸收 | 大量主動單被被動單吸收、價格卻未明顯延伸的現象,常代表反向力量存在。 |
| Imbalance | 失衡 | 某一價位或區段的 Bid/Ask 成交明顯偏向單邊,常作為短線加速訊號。 |
| Sweep | 掃單 | 大型主動單快速穿越多個價位成交,顯示急迫且具方向性的需求。 |
| Iceberg Order | 冰山單 | 實際委託量大於畫面可見量、分批顯示的被動掛單,常提高判讀難度。 |
A.4 Machine Learning / Deep Learning(機器學習 / 深度學習)
| 英文 | 中文 | 定義 |
|---|---|---|
| MLP | 多層感知器 | Multi-Layer Perceptron,最基本的前饋神經網路,常用於表格特徵編碼。 |
| CNN | 卷積神經網路 | Convolutional Neural Network,擅長萃取局部模式,可用於價量結構圖樣。 |
| TCN | 時間卷積網路 | Temporal Convolutional Network,以因果卷積處理時間序列,兼顧序列長度與效率。 |
| FiLM | 特徵條件調制 | Feature-wise Linear Modulation,以另一組上下文訊號對主特徵做縮放與位移。 |
| XGBoost | 極端梯度提升樹 | 高效能梯度提升框架,擅長結構化資料分類與迴歸。 |
| Gradient Boosting Regressor (GBR) | 梯度提升迴歸器 | 以多棵弱學習器逐步修正殘差的迴歸模型,本書多個 M 模組採用此法。 |
| Cross-Attention | 交叉注意力 | 讓一組特徵查詢另一組特徵的重要性,適合多模組融合。 |
| Self-Organizing Map (SOM) | 自組織映射 | 無監督拓撲映射方法,可把高維市場狀態壓縮到 2D 空間。 |
| Hidden Markov Model (HMM) | 隱馬可夫模型 | 以隱藏狀態建模 regime 的經典方法,但在本研究中未成功收斂出穩定 gate。 |
| Mixture of Experts (MoE) | 專家混合 | 由路由器選擇不同專家模型處理不同樣本的架構。 |
| Reinforcement Learning (RL) | 強化學習 | 透過狀態、行動與回饋學習決策策略,但需特別注意 reward 的時間因果性。 |
A.5 Statistics / Evaluation(統計 / 評估)
| 英文 | 中文 | 定義 |
|---|---|---|
| Profit Factor (PF) | 獲利因子 | 總獲利除以總虧損絕對值,衡量策略整體賺賠比。 |
| Sharpe Ratio | 夏普比率 | 單位波動風險下的超額報酬指標,本書也使用 60 日滾動版本觀察穩定度。 |
| Sortino Ratio | 索提諾比率 | 只以向下波動衡量風險的報酬指標。 |
| Maximum Drawdown (MDD) | 最大回撤 | 資金曲線從高點到低點的最大跌幅,用於評估最壞資金壓力。 |
| Recovery Factor | 修復因子 | 總損益除以最大回撤,衡量策略把虧損洞補回來的能力。 |
| Walk-Forward Analysis (WFA) | 前行分析 | 以滾動訓練 / 測試窗口檢查模型在時間推進下的穩定度。 |
| Out-of-Sample (OOS) | 樣本外 | 未參與訓練或調參的資料,用來評估泛化能力。 |
| Bootstrap | 自助抽樣法 | 有放回重抽樣建立統計量分布與信賴區間的方法。 |
| Permutation Test | 置換檢定 | 打亂標記或對應關係,檢查策略績效是否仍能顯著優於隨機。 |
| Holdout | 保留樣本 | 完全隔離於研究流程之外的資料,用於最終驗證。 |
| Expectancy | 期望值 | 每筆交易平均可帶來的理論損益,需扣除成本後觀察。 |
| Conditional Value at Risk (CVaR) | 條件風險值 | 落入尾部壞情境時的平均損失,用於量測極端風險。 |
A.6 Strategy / Execution(策略 / 執行)
| 英文 | 中文 | 定義 |
|---|---|---|
| IB Breakout | 初始平衡區突破 | 價格突破 IB 上下緣後順勢進場的策略家族。 |
| Center Flip | 中心翻轉 | 價格在中心價值帶兩側切換接受度後反向或延續的結構策略。 |
| Gap Fill | 跳空回補 | 利用開盤跳空後價格回補前一交易日缺口的行為設計策略。 |
| Trailing Stop | 移動停損 / 停利 | 隨價格或預測範圍動態調整的出場機制。 |
| Regime Gate | 市場狀態閘門 | 先判斷是否處於適合某策略的環境,再決定是否啟用該策略。 |
| Paper Trading | 紙上交易(模擬交易) | 以即時市場資料模擬交易流程,但不使用真實資金。 |
| Slippage | 滑價 | 理論成交價與實際成交價之間的落差,是實戰最常見的 edge 流失來源。 |
| Position Sizing | 部位配置 | 根據風險、波動與策略品質決定每次下單大小的規則。 |
附錄 B:研究項目完整索引
下表整理本書關鍵研究編號、狀態與核心貢獻。狀態定義:✅ certified=已納入正式認證或生產流程;⚠️ partial=保留部分成果、但需限制使用或仍待補驗證;❌ failed/deprecated=證明不適合延續或已被淘汰。
| 項目 | 標題 | 狀態 | 核心貢獻 |
|---|---|---|---|
| R014 | IB Breakout 結構化定義 | ✅ certified | 建立可重複回測的 IB Breakout 基準策略與欄位規格。 |
| R024 | VP Reversal / Center 結構策略 | ✅ certified | 把價值區中心翻轉與回歸行為正式化,成為組合核心之一。 |
| R066 | VP-CNN × FiLM-CNN 多級聯策略 | ✅ certified | 證明價量結構上下文可顯著提升結構策略品質。 |
| R069 | Center Flip 壓縮版 | ⚠️ partial | 提供中心翻轉的精煉型態,但樣本偏稀、需嚴格頻率管理。 |
| R071 | Center Flip XGBoost Gate | ✅ certified | 把 center family 從規則策略升級為具 gate 的條件化策略。 |
| R072 | Center × IB Fusion / VA Streak Family | ⚠️ partial | 保留部分融合思路,但 VA Streak 變體曾出現前視偏差,須分案處理。 |
| R077 | Gap Fill Long + GEX Filter | ✅ certified | 把跳空回補與選擇權結構訊號結合,成為高品質補充策略。 |
| R097 | Dual-Gate Safety Framework | ✅ certified | 建立安全閘門概念,避免錯誤環境中強行啟動策略。 |
| R098 | M1-M10 環境偵測系統 | ✅ certified | 定義十個模組化環境訊號,成為後續管線標準輸入。 |
| R119 | SessionAware Exit Detector | ⚠️ partial | 把出場決策與盤別切分連動,但仍需更完整夜盤驗證。 |
| R122 | 投資組合最佳化 | ✅ certified | 把多策略相關性、權重與資金路徑納入正式配置框架。 |
| R136 | M-Module 全面審核 | ⚠️ partial | 重做模組級 look-ahead 審計,發現 M8/M9 等關鍵定義問題。 |
| R137 | 弱模組校準與最終定案 | ⚠️ partial | 確認 M3 等弱訊號應以描述式輸出而非硬分類處理。 |
| R138 | K 線解剖升級計畫 | ⚠️ partial | 以連續 K 線描述子升級 M2、M7、M9 等弱模組。 |
| R139 | FiLM + Cross-Attention 融合架構 | ⚠️ partial | 提出多模組融合主架構,為 R140 / R171 提供表示層基礎。 |
| R140 | 策略閘門設計 | ✅ certified | 把每策略 gate 與環境模組明確接軌,形成可部署啟停規則。 |
| R141 | S3 盤中順勢延續 | ❌ failed/deprecated | 證明 S3 的高相關主要是 range 描述,不是可交易 PnL edge;10:00~11:30 順勢進場結構性虧損。 |
| R142 | Night N4 Late Breakout | ❌ failed/deprecated | 證明 N4 高波動不等於高方向 edge;最佳 LONG 僅 PF 1.049,成本後不可行。 |
| R143 | 結算日 Gamma 反向策略 | ❌ failed/deprecated | 確認結算日會壓制動量與反動量,應維持 no-trade filter,而非反著做。 |
| R144 | IB K 棒形態信號 | ⚠️ partial | 確認 shadow_ratio 等形態特徵適合強化 M2 描述子,但不適合作獨立進場。 |
| R145 | 夜日跨時段方向傳導 | ❌ failed/deprecated | 證明 N4 到日盤的方向相關近乎為零,夜盤漲跌不會直接轉成日盤 edge。 |
| R146 | R014 夜盤延伸 + 停損機制 | ✅ certified | 驗證 day_close+Trail20 與夜盤獨立 IB30+Trail15 皆成立,並指出夜盤延伸必須用 Hybrid SL。 |
| R147 | 夜盤環境品質閘門 | ⚠️ partial | 證明夜盤 quality 可預測,但 R146 本身已自帶 69.7% 自然過濾,額外 gate 多半無增量。 |
| R148 | 夜盤波動率 Regime 預測 | ⚠️ partial | 證明 night range 可預測,但固定緊止損仍優於自適應 trail。 |
| R149 | 夜盤國際盤連動信號 | ❌ failed/deprecated | 開盤動量雖有弱相關,但 216 組 follow 配置全部 PF<1,成本吃光所有優勢。 |
| R150 | 日夜盤分離實驗 | ⚠️ partial | 證明日盤模組不可直接外推夜盤,夜盤需獨立版本。 |
| R151 | SessionAware 統一架構 | ✅ certified | 建立日夜盤一致的欄位治理與策略封裝框架。 |
| R152 | 夜盤開盤反轉 | ❌ failed/deprecated | 0 / 48 配置獲利,否定 opening-range reversal 作為夜盤主策略。 |
| R153 | 夜盤平靜突破 | ❌ failed/deprecated | 雖有少數 PF>1 組合,但頻率僅 N=90、PnL 過薄,不足以成為獨立策略。 |
| R154 | 夜盤 N4 動量追隨 | ❌ failed/deprecated | 0 / 81 配置獲利,深夜 momentum follow 穩定輸給成本與反轉。 |
| R155 | 夜盤 VP 結構進場 | ❌ failed/deprecated | 夜盤 IB VP 太稀疏,HVN/LVN 與 POC 結構無法形成穩健方向 edge。 |
| R156 | 夜盤多時段趨勢 | ❌ failed/deprecated | 多盤連續方向不會自然延續成下一晚的可交易 edge,最佳 PF 仍只有 0.85。 |
| R157 | 夜盤 DL 環境偵測 | ⚠️ partial | GBM 可偵測夜盤 range / volatility / direction,但 DL 不優於 tree model,且不足以長成獨立策略。 |
| R158 | Regime Pipeline 驗證 | ✅ certified | 重跑後可複現 R110 / R118 / R140 的主要結果,建立可重複的 regime pipeline。 |
| R159 | K 棒定義慣例影響 | ⚠️ partial | 確認台灣 K 棒慣例在結構上才正確,但對既有 certified 策略影響僅 1.9%~3.1%。 |
| R160 | 前視偏差修復驗證 | ✅ certified | 修正 ib_vol_ratio 後 gate lift 下降但仍有效,證明乾淨版 edge 仍存在。 |
| R161 | Bracket Slope Breakout | ✅ certified | 證明收縮型 ib_range_slope 是真實 signal,可為 gate 帶來 +5.9%~+9.0% PF lift。 |
| R162 | Distribution-Based Regime Detection | ⚠️ partial | 以 coverage_ratio / ib_mu_norm / sigma_ratio 顯著提升預測,但 gating 效果混合。 |
| R163 | 環境偵測基準測試 | ✅ certified | 建立全模組共同 benchmark,讓後續特徵與 gate 可以在同一基線上比較。 |
| R164 | 門檻掃描與品質盤點 | ✅ certified | 把 M 模組與策略候選做系統性門檻掃描,支援認證基線。 |
| R165 | 安全閘門重校準 | ✅ certified | 把 gate 由概念驗證推進到可落地的風險治理參數。 |
| R166 | 盤中動態突破機率偵測 | ⚠️ partial | 建立逐 bar breakout / extension / reversal 機率模型,GBM AUC 0.76~0.92,但對現有策略的實戰增量有限。 |
| R167 | 理論天花板與上限盤點 | ⚠️ partial | 辨識哪些模組已接近可預測上限,避免無效加料。 |
| R168 | 最終評分卡整合 | ✅ certified | 把模組、策略、風險與認證結論整合為共通 scorecard。 |
| R170 | 管線閘門標準化 | ✅ certified | 將 M 模組輸出轉為可供出場與部署直接使用的標準預測格式。 |
| R171 | 管線出場優化 | ⚠️ partial | 凸顯出場優化的重要性,但 Combined head 曾有偏差紀錄,需保守使用。 |
| R172 | Dynamic Exit Module v2 | ⚠️ partial | 再次證明出場最佳增強是 M1 校準 trailing stop,而非更複雜的 ML exit。 |
| R173 | MET Pipeline 多策略組合擴展 | ⚠️ partial | 把 Gate + Trail 擴到 5 策略組合,Sharpe 7.41,但第一版仍含帶偏差的 R077。 |
| R174 | Opening Type Classifier | ✅ certified | OD 方向準確率 70.9%,對 R071 有極強 gate 效果,R014 幾乎不敏感。 |
| R175 | Day Type × Opening Type 矩陣 | ✅ certified | 揭示 24 格策略矩陣的極端差異,證明日型是最強單一 regime 變數。 |
| R176 | Gap Type Classification | ⚠️ partial | 驗證台指期 gap fill 率遠高於教科書 / 美股,支持本土化 gap-fill 觀點。 |
| R177 | Wyckoff Spring Detection | ⚠️ partial | spring / upthrust 過於頻繁無獨立 edge,但可作 R071 的負面濾網。 |
| R178 | VP Three-Setup Framework | ❌ failed/deprecated | 證明經典 VP 三大 setup 在 IB 級 VP 因資料稀疏而失效。 |
| R179 | Quantitative Pattern Recognition | ❌ failed/deprecated | Andrew Lo 型態辨識在 5 分 K 的高準確率不具統計顯著性。 |
| R180 | MET 5-Strategy Portfolio | ✅ certified | 以乾淨的 R069 取代 R077,並引入 Opening / Day Type gate,形成較成熟的 5 策略 MET 組合。 |
附錄 C:模型架構參數速查卡
本附錄把策略、模型與環境模組的常用參數整理成快速查詢格式。目的不是取代完整研究報告,而是讓讀者在實作、重現或審核時能迅速找到核心設定。
C.1 策略參數速查
| 策略 | 進場參數 | 出場參數 | 停損 | 過濾 / Gate | 備註 |
|---|---|---|---|---|---|
| R014 IB Breakout | 突破 IB 上 / 下緣;需確認 IB 完成 | M1 範圍預測驅動 trailing stop | 以 IB 寬度或固定點數停損 | M3 方向 + 基本波動條件 | 最早期核心母策略 |
| R024 VP Reversal | 價格偏離 VA 後回收至中心帶 | 回到 POC / VA 中位或失敗離場 | 突破前一結構失效位 | VP concentration、center acceptance | 偏向均值回歸 |
| R066 VP-CNN Cascade | 結構訊號通過 CNN / FiLM 過濾 | 依結構衰退與 trailing 結合 | 結構破壞即出場 | VP context + gate | 代表性多模態策略 |
| R069 Center Flip | 中心翻轉確認後進場 | 回到次級價值帶或尾段衰退離場 | 翻轉失敗即停損 | 壓縮 / 接受度濾網 | 樣本偏稀,需控頻 |
| R071 Center Flip XGBoost | Center 訊號 + XGBoost score 門檻 | 動態停利 + 結構失效離場 | 固定風險單位 R | 專屬 gate score | Center 家族成熟版 |
| R072 Center × IB Fusion | Center 與 IB 條件同時成立 | 融合型 trailing / 結構出場 | 依融合結構失效位 | 需避開 VA Streak 偏差版本 | 僅限乾淨子版本 |
| R077 Gap Fill Long | 開盤跳空偏離 + 回補機會 | 缺口回補完成或動能衰退 | 缺口延伸失控停損 | GEX、波動條件、事件日排除 | 高品質補充策略 |
C.2 深度學習 / 融合模型超參數
| 模型 | 輸入 | 關鍵超參數 | 輸出 | 用途 |
|---|---|---|---|---|
| M2 ModuleEncoder | 18 維 IB K 線 / VP 描述子 | 32 hidden;16-dim embedding;ReLU;dropout 0.1 | K 線描述 embedding | 把弱分類問題改為連續描述表示 |
| M8 VP Overlap Encoder | 3 日堆疊 VP overlap 特徵 | 16-dim embedding;LayerNorm;輕量 MLP | range overlap embedding | 系統最強結構訊號 |
| R139 Fusion | M1-M10 embeddings | Cross-Attention;4 heads;model dim 64;FiLM conditioning | 融合後市場狀態向量 | 多模組上下文整合 |
| R140 Gate Head | 融合向量 + 策略專屬 context | 2-layer MLP;hidden 32;sigmoid score;threshold per strategy | 啟用 / 不啟用分數 | 判斷某策略是否適合當前環境 |
| R171 Exit Head | 融合向量 + 持倉狀態 + M6 動態 | 2-3 layer MLP;hidden 64;多任務輸出;需嚴格因果遮罩 | 停利 / 續抱 / 提前出場建議 | 把環境訊號轉成出場決策 |
| M10 SOM | 10 原始特徵 + 7 軌跡特徵 | 8×8 網格;64 BMU;8-dim embedding | 狀態拓撲位置 | 捕捉 regime transition |
C.3 M1-M10 模組速查
| 模組 | 預測目標 | 特徵數 | 演算法 | OOS 指標 |
|---|---|---|---|---|
| M1 | 全日 range_pct | 9 | GBR(200 trees, depth=4) | Corr = 0.610 |
| M2 | K 線描述子 / body_color | 18(12 K 線 + 6 VP) | ModuleEncoder + 16-dim embedding | shadow_ratio Corr = 0.519;body_color AUC = 0.694 |
| M3 | 方向投射 | 5 | Linear(5→16) calibrated projection | AUC = 0.711;RetCorr = 0.392 |
| M4 | VP Structure → range | 17 | GBR | Corr = 0.599 |
| M5 | Multi-day Context → range | 13 | GBR | Corr = 0.601 |
| M6 | 盤中動態描述 | runtime dynamic | 16-dim runtime embedding | 非預測模組 |
| M7 | 前日 K 線對 range 的增量 | 6 | MLP / 8-dim embedding | Δ = +0.029 lift |
| M8 | VP Overlap / range overlap | 核心 overlap 特徵組 | MLP / 16-dim embedding | Corr = 0.863;Pre-IB Corr = 0.773 |
| M9 | extension_ratio > 1.5 | extension + K 線特徵 | 分類 / 迴歸雙路徑 | AUC = 0.749(binary) |
| M10 | SOM trajectory lift | 17(10 + 7) | SOM 8×8 + MLP | Corr = 0.620 |
附錄 D:認證標準速查表
本附錄把第二十章的認證邏輯整理為查核表格式。M1-M13 為強制標準,必須全數通過;O1-O13 為可選穩健性標準,至少需有 10 項可評估,並通過其中 6 項。M3 屬資訊揭露項,必須揭露但不設淘汰門檻。
D.1 Mandatory Criteria(M1-M13)
| 代號 | 標準名稱 | 門檻 | 說明 |
|---|---|---|---|
| M1 | 交易頻率 | ≥ 3 筆 / 月 | 避免樣本過稀、回測不具代表性。 |
| M2 | Profit Factor | ≥ 2.0 | 總獲利需至少為總虧損兩倍。 |
| M3 | Win Rate | 必填揭露 | 資訊揭露項,供解讀 payoff、expectancy 與交易體驗。 |
| M4 | Average Win / Loss | ≥ 1.5 | 平均賺賠比不可過低。 |
| M5 | 最大連敗筆數 | ≤ 10 | 限制連敗壓力。 |
| M6 | Payoff × WR | > 1.5 | 避免高勝率小賺大賠或低勝率偶然暴賺的假象。 |
| M7 | 每筆期望值 | > 0 | 扣除成本後每筆仍需正期望。 |
| M8 | 60 日滾動 Sharpe | ≥ 1.5 | 要求局部期間穩定,而非只靠全樣本平均。 |
| M9 | Maximum Drawdown | ≤ 2,000 pt | 以初始本金 10,000 點的 20% 為上限。 |
| M10 | Recovery Factor | ≥ 3.0 | 修復能力需足以彌補曾承受的回撤。 |
| M11 | 最大連續虧損月 | ≤ 3 個月 | 避免長時間低潮破壞部署可行性。 |
| M12 | 年度損益 | 每年 > 0 | 不接受靠單一年暴利遮蓋其他年度虧損。 |
| M13 | 持倉時間 P/L 分級 | ≥ B | 持倉時間四分位中至少 3 桶正 expectancy,且最差桶不得低於 -0.1R。 |
D.2 Optional Criteria(O1-O13)
| 代號 | 標準名稱 | 門檻 |
|---|---|---|
| O1 | 全樣本 Sharpe | ≥ 2.0 |
| O2 | Sortino Ratio | ≥ 2.5 |
| O3 | Calmar Ratio | ≥ 1.5 |
| O4 | 月獲利率 | 獲利月份占比 ≥ 65% |
| O5 | 滑價壓力測試 | +2 pt / trade 後 PF ≥ 1.5 |
| O6 | 成本壓力測試 | 成本 +25% 後 Expectancy 仍 > 0 |
| O7 | 參數擾動穩定度 | 核心參數 ±10% 後 PF ≥ 1.6 |
| O8 | Regime 分段穩定 | 高波 / 低波 / 事件期至少 2 段為正 |
| O9 | 獲利集中度 | 前 10 大交易貢獻 ≤ 總獲利 35% |
| O10 | 分年波動穩定 | 年 Sharpe 標準差 ≤ 1.2 |
| O11 | 組合相關性 | 與核心主策略 |ρ| ≤ 0.70 |
| O12 | 尾部風險 | 95% CVaR ≤ 本金 6% |
| O13 | 執行一致性 | 模擬成交與實際成交偏差 ≤ 15% |
D.3 已通過認證策略速查
| 策略 | M1 | M2 | M3 | M4 | M5 | M6 | M7 | M8 | M9 | M10 | M11 | M12 | M13 | O 通過數 | 2025+ Holdout |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R014 | ✅ | ✅ | 49% | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 7 / 11 | ✅ |
| R024 | ✅ | ✅ | 58% | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 8 / 12 | ✅ |
| R066 | ✅ | ✅ | 43% | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 9 / 12 | ✅ |
| R071 | ✅ | ✅ | 55% | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 8 / 11 | ✅ |
| R077 | ✅ | ✅ | 62% | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | 10 / 13 | ✅ |
附錄 E:推薦閱讀與延伸資源
以下資源依主題整理,目的是提供更完整的市場結構、機器學習、風險管理與台灣市場資料入口。書單選擇原則不是「最有名」,而是「最能幫助讀者把本書方法往前延伸」。
E.1 Market Profile / Auction Market Theory
| 資源 | 作者 / 單位 | 類型 | 延伸重點 |
|---|---|---|---|
| Markets and Market Logic | J. Peter Steidlmayer | 書籍 | 理解 Auction Market Theory 的原始語境,適合建立 MP 世界觀。 |
| Mind Over Markets | James F. Dalton、Eric T. Jones、Robert B. Dalton | 書籍 | 最適合交易者入門 MP / AMT 的實務書,強調日型、開盤型態與價值遷移。 |
| Markets in Profile | James F. Dalton | 書籍 | 補強市場生成過程與交易者心理,適合把 MP 連回真實盤面。 |
E.2 Volume Profile / Order Flow
| 資源 | 作者 / 單位 | 類型 | 延伸重點 |
|---|---|---|---|
| Volume Profile: The Insider's Guide to Trading | Trader Dale | 書籍 | 快速建立 VP、HVN、LVN 與 intraday 結構語感。 |
| Order Flow Trading for Fun and Profit | Tommy Nguyen | 書籍 | 理解 footprint、delta、imbalance 等微觀結構詞彙。 |
| Exchange / Broker Footprint Documentation | 各平台官方文件 | 文件 | 確認 footprint、delta、bid/ask volume 的實際計算方式,避免不同平台定義不一致。 |
E.3 Machine Learning / Deep Learning / Tooling
| 資源 | 作者 / 單位 | 類型 | 延伸重點 |
|---|---|---|---|
| PyTorch Documentation | PyTorch Team | 官方文件 | 建立因果遮罩、序列模型與訓練流程的正確工程基礎。 |
| XGBoost Documentation | XGBoost Contributors | 官方文件 | 理解樹模型參數、特徵重要度與表格資料最佳實務。 |
| scikit-learn Documentation | scikit-learn Team | 官方文件 | 適合實作 baseline、交叉驗證、校準與統計工具。 |
| Deep Learning | Ian Goodfellow、Yoshua Bengio、Aaron Courville | 書籍 | 系統性理解深度學習基本原理,避免只會套模型。 |
| Advances in Financial Machine Learning | Marcos López de Prado | 書籍 | 可參考金融 ML 常見框架,但需自行過濾不適用於台指期的假設。 |
E.4 風險管理 / 投資組合理論 / 行為財務
| 資源 | 作者 / 單位 | 類型 | 延伸重點 |
|---|---|---|---|
| Portfolio Selection | Harry Markowitz | 論文 | 現代投資組合理論起點,理解風險與報酬配置的基本框架。 |
| The Kelly Criterion in Blackjack, Sports Betting, and the Stock Market | Edward O. Thorp 等 | 論文 / 書籍 | 理解資金成長與槓桿配置的上限邏輯,但實務應保守折減。 |
| Against the Gods | Peter L. Bernstein | 書籍 | 建立風險觀念與金融決策史觀。 |
| Thinking, Fast and Slow | Daniel Kahneman | 書籍 | 理解研究者與交易者常見認知偏誤,特別適合搭配本書的反偏差章節。 |
E.5 台灣市場與資料資源
| 資源 | 單位 | 類型 | 用途 |
|---|---|---|---|
| 臺灣期貨交易所(TAIFEX) | 台灣期交所 | 官方網站 / 資料 | 期貨商品規格、交易制度、結算價、盤後資訊與公告來源。 |
| 臺灣證券交易所(TWSE) | 台灣證交所 | 官方網站 / 資料 | 現貨市場資料、統計與制度公告,適合做跨市場時間對齊。 |
| 公開資訊觀測站(MOPS) | 證交所體系 | 官方網站 | 公司公告、財報與重大訊息,適合事件標記與基本面擴充。 |
| TEJ / 其他商業資料商 | 台灣商業資料供應商 | 付費資料 | 若需要更乾淨的歷史資料、公司行動與衍生欄位,可評估商業授權。 |
| 期交所逐筆成交與選擇權資料 | 台灣期交所 / 合法供應商 | 市場資料 | 用於 GEX、夜盤結構與更細緻的微結構研究,但需嚴格時間戳治理。 |