量化交易策略:四大類型與各自的測試方法
多數量化交易策略屬於四大類型之一:趨勢跟隨、均值回歸、突破與動能。每一種都是電腦對每根 K 棒套用的固定規則。第一次執行前先寫好進場、出場、部位大小、商品、K 棒週期與成本,計算扣除成本後的已完成交易筆數,用沒碰過的資料評判固定下來的規則,並留意兩種常見失敗:過度最佳化與成本。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
目錄
量化交易策略有哪些主要類型?
量化交易策略分成四大類型:趨勢跟隨、均值回歸、突破與動能。每一種都是由電腦對每根 K 棒套用的固定規則,規定何時進場、何時出場、持有多少。類型決定測試要先檢查什麼:獲利集中度、每筆成本、假突破或週轉率。
量化交易策略是一整套寫成文字的交易規則,電腦可以直接套用在歷史與即時價格上,中間不需要人為決定。量化交易策略與系統化交易策略是同一件事的兩種稱呼。以下四個類型涵蓋了多數散戶期貨交易者在跑的規則,而一種類型賺錢的方式,決定了它失敗的方式,所以每一種的測試起點都不同。
| 類型 | 趨勢跟隨 | 均值回歸 | 突破 | 動能 |
|---|---|---|---|---|
| 押注什麼 | 價格沿目前方向繼續走 | 價格回到平均 | 價格離開區間後繼續走 | 近期的贏家繼續贏 |
| 典型交易形態 | 少數大賺、多數小賠 | 多數小賺、少數大賠 | 兩者混合 | 與趨勢相近 |
| 典型持有時間 | 數天至數週 | 數小時至數天 | 數小時至數天 | 數週至數月 |
| 測試時先檢查什麼 | 獲利集中度 | 每筆成本 | 假突破比率 | 週轉率 |
趨勢跟隨與動能關係相近。在期貨中,動能通常指:一個市場自己過去數週或數月的報酬為正時做多、為負時放空;Moskowitz、Ooi 與 Pedersen(2012)在許多期貨市場研究這條規則,並稱之為時間序列動能。趨勢跟隨則對價格路徑的形狀反應,例如移動平均線或通道,通常交易較頻繁。均值回歸押注相反的方向:賣出強勢、買進弱勢,預期回到近期平均。突破交易是趨勢跟隨的進場端寫成單一事件:價格離開定義好的區間。這五種期貨演算法交易策略類型可對應到這幾個類型,S&P 500 期貨交易策略的規則類型則把它們放在同一個市場上呈現。
量化策略和一般技術分析有什麼不同?
量化策略使用的指標與看圖的人相同,但每個決定都寫成電腦對每根 K 棒套用的規則,所以結果可以計數、重複與測試;憑主觀看圖則做不到。技術分析是閱讀過去的價格與成交量(通常在圖表上),以決定下一步。差別不在工具。20 日移動平均線在兩個畫面上是同一條線。差別在於決定是否取決於看圖的那個人。
| 問題 | 看圖判讀 | 量化規則 |
|---|---|---|
| 誰決定進場? | 交易者,看著圖表 | 寫好的條件,每根 K 棒檢查 |
| 出場在進場前就定義好了嗎? | 常常沒有 | 一定有 |
| 能數出 10 年的交易筆數嗎? | 不能,每次判讀都不同 | 能,電腦接受每個訊號 |
| 兩個人能得到相同結果嗎? | 少有 | 能,只要資料與設定相同 |
| 能用從未見過的資料檢查嗎? | 只能往前實際交易 | 能,用樣本外期間 |
所以憑眼睛交易的圖形,沒有回測紀錄,量化規則有。看圖的人接了一些訊號、略過一些,理由難以寫下來,所以無法公平地計算漏掉的部分。電腦全部接受,包括不好的,這正是重點:不好的有多少,就是你需要的資訊。同樣的邏輯也適用於執行,程式交易的定義與成本有說明;電腦能測試的規則,電腦也能交易。
如何把交易想法變成可測試的規則?
在第一次執行前,把進場、出場、部位大小、商品、K 棒週期與成本都寫下,想法就可以測試,回測就沒有需要詮釋的空間。多數想法一開始是一句話,像是「在上升趨勢中買回檔」。回測無法用這句話執行,它需要依序固定六個決定:
- 用一句話寫出想法,並點名類型。「在上升趨勢中買回檔」是趨勢濾網內的均值回歸。點名類型,就知道先做哪個測試。
- 選擇商品與 K 棒週期。單一指數期貨的日 K 棒,每月有幾筆交易;5 分鐘 K 棒,每天有幾筆。K 棒週期決定交易筆數與成本負擔;扣除成本後檢驗當沖策略顯示日內選擇改變多少。
- 寫出進場規則與參數範圍。「收盤高於 20 日平均線,且持續 2 根 K 棒」是規則。「回看長度 10 到 50」是搜尋可以嘗試的範圍。參數越少,自欺的方式越少。
- 寫出出場規則。出場是結束交易的條件:反向訊號、停損、停利或時間限制。沒有出場,策略就不完整。
- 固定部位大小與成本。一口,每筆有明確的手續費與明確的滑價。成本在第一次執行前放進去,不是之後。
- 寫下通過或不通過的門檻。例如:至少 200 筆交易,扣除成本後的平均每筆損益高於來回成本的三倍,任一單季的獲利不得多於總獲利的三分之一。在第一次執行前寫好,讓結果無法移動標準。
最後有個實用檢查:把寫好的規則交給別人,問他是否能在不問你任何問題的情況下,在圖上標出每一筆交易。如果他需要問,規則就還沒寫完。
要有多少筆交易,結果才有意義?
用扣除成本後已完成的交易筆數來判斷結果,而不是用年數或淨損益;只有幾十筆交易的結果只是線索,需要更多證據,不是結論。原因在於平均值的行為。35 筆交易算出的平均,只要三筆交易改變,就可能大幅移動。幾百筆交易算出的平均幾乎不動。這裡只需要一條公式:
平均每筆損益的不確定度 = 單筆交易的離散程度 ÷ √N
單筆交易的離散程度是一筆交易的結果通常偏離平均多遠(標準差)。N 是已完成的交易筆數,√N 是它的平方根。因為平方根成長得慢,要把不確定度減半,需要四倍的交易筆數。
假設性範例
假設某條日 K 棒指數期貨規則的單筆交易,通常偏離平均約 $4,000。35 筆交易時,平均的不確定度約為 $4,000 ÷ 5.9 ≈ $680。100 筆交易時約 $400,400 筆交易時約 $200,一千筆交易時約 $130。$500 的平均每筆損益,在 35 筆交易時完全落在雜訊之內,在 400 筆交易時則遠在雜訊之外。
一個真實的回測說明這件事為何重要。以下回測由 AlphaPrime(Valynox)在 2019-01-02 至 2025-06-30 的 NQ 日 K 棒上執行,多空皆做,一口。它只以標準差通道規則作為進出場,這是用標準指標組成的替身,用來說明交易筆數的問題,並不是對四種類型中任何一種的測試。呈現的候選策略,是搜尋在嘗試的 1,024 個中留下的那一個,依報酬對回撤比挑選。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。NQ 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $10。
| 數字 | 結果 |
|---|---|
| 淨損益(已平倉交易) | $116,360 |
| 最大回撤 | $110,535 |
| 交易筆數 | 35 |
| 勝率 | 54.29% |
| 獲利因子 | 1.487 |
| 平均每筆損益 | $3,324.57 |
| 在市場中的時間 | 95.01% |

這個方框有三件事要讀。第一,六年半裡 35 筆交易:$3,324.57 的平均每筆損益落在寬廣的不確定帶之內,所以接下來的 35 筆可能看起來截然不同。第二,最大回撤 $110,535 幾乎與淨損益 $116,360 一樣大,這是幾乎一直持有部位(在市場中的時間 95.01%)、經歷 2020 與 2022 年波動的部位的形狀。第三,這個結果是 1,024 個候選策略中最好的,事後挑出,而這樣的挑選讓它看起來更好;規則並沒有以讀者可以期待重複的任何意義賺到這筆錢。方框確實說明了報表該怎麼讀:先看交易筆數,再看平均每筆損益對照成本,最後才看獲利。
如何回測量化策略並檢查樣本外表現?
從第一次執行就帶入手續費、滑價與下一根 K 棒成交,再用搜尋從未碰過的資料評判固定下來的規則,通過或不通過的標準要在看結果前寫好。量化策略回測,是把寫好的規則在過去價格上重播,並計入每一項成本。它有三個部分,必須保持分開。
- 用真實的交易摩擦回測。每筆交易的手續費與滑價,與結果使用相同幣別,成交在訊號後的下一根 K 棒。規則在收盤決定、又在同一個收盤價成交,用的是它無法成交的價格。
- 只在歷史較早的一段上搜尋。樣本內資料是用來挑選規則與設定的部分。樣本外資料是留下來、在規則固定後只跑一次的部分。常見的時間切分是 70:30 到 80:20;樣本內與樣本外資料的切分說明切分日期與樣本外要多少才夠。
- 用上面第 6 步的門檻評判樣本外結果。通過或不通過。因為樣本外曲線看起來偏弱就修改設定,會把那段資料變成樣本內資料,評判也就失效。

好結果的樣子:樣本外斜率比樣本內平緩,但仍為正,回撤大小相近,多數季度都有貢獻。壞結果的樣子:曲線在切分日走平或轉下,或一個月占了大部分獲利。出現一些下滑是正常的,因為樣本內結果是多次嘗試中最好的,帶著新資料沒有的加成。AlphaPrime 的策略檢驗讓你在搜尋前一次設定這些門檻,候選策略一旦未通過其中一項,就停止後續檢查,因此樣本外資料被較少的候選策略看過,更接近未被碰過的狀態。
量化策略通常在哪裡失敗?
兩個常見的失敗點,是把眾多變體中最好的那個留下來並當成實力,以及平均每筆損益小到撐不過真實成本;只要去找,兩者在任何實單交易前都看得到。過度最佳化,是把策略調到太貼合某一段歷史,使它描述的是那一段的雜訊,而不是可重複的模式。它不需要大量參數,只需要大量嘗試,加上留下一個贏家。
想像一千個人各擲十次硬幣。總會有人擲出九次正面。如果你接著聘請這個人當硬幣專家,下一個十次會讓你失望。在 1,024 個候選策略上搜尋也是同樣道理:留下的那一個一部分是真實模式,一部分是運氣最好的一次,而樣本內的數字無法告訴你比例。Bailey、Borwein、López de Prado 與 Zhu(2014)指出,隨著嘗試次數增加,最佳回測的預期樣本外結果會下降,他們後來的論文(2017)提供了估計留下的候選策略有多大可能過度最佳化的方法。Harvey 與 Liu(2015)得到相同結論,並建議依結果背後的測試次數來打折。這些研究整理在最漂亮的回測為何通常被高估。
第二種失敗比較隱微。毛平均每筆損益只有幾個跳動點的策略,因為交易頻繁,扣成本前看起來平滑,也因為同樣的原因在扣成本後虧損。檢查只要一次除法:扣除成本後的平均每筆損益除以一買一賣(來回)成本。許多系統化交易者的經驗法則是,毛平均每筆損益要是來回成本的數倍,這樣滑價小幅上升時,優勢才不會被抹去。如何設定手續費與滑價,以及為何高頻候選策略最先失敗,見回測裡的交易成本。均值回歸類型在這點上最容易受傷,因為它每筆的獲利天生就小。
三項檢查可以在任何實單交易前,抓出多數這兩種失敗:
- 相鄰設定。如果 20 根 K 棒的回看長度表現好,而 18 與 22 表現不佳,那 20 就是雜訊。
- 移除最大的幾筆交易。拿掉五筆最大的獲利。趨勢規則會縮水,但不該變成負值。
- 滑價加倍。用兩倍滑價重跑。失敗的規則原本就靠便宜的成交。
實際的下一步:選一個你已經憑眼睛交易的想法,寫出第三節的六個決定,包括通過或不通過的門檻,在單一市場的日 K 棒上計入成本執行,先數已完成的交易筆數,再讀獲利那一行。如果筆數少於一百,第一件事是更多資料,不是更好的規則。
常見問題
什麼是量化交易策略?
量化交易策略是一整套寫成文字的交易規則,由電腦套用在價格上,中間不需要人為決定。多數屬於四大類型之一:趨勢跟隨、均值回歸、突破與動能。因為每個決定都是規則,策略可以在過去價格上回測、逐筆計數,並用它從未見過的資料檢查。
趨勢跟隨與動能有什麼差別?
兩者都押注走過的方向會繼續走。期貨中的動能通常指:一個市場自己過去數週或數月的報酬為正時做多、為負時放空,持有時間為數週至數月。趨勢跟隨則對價格路徑的形狀反應,例如移動平均線交叉或通道突破,通常交易較頻繁、持有較短。兩者的大部分獲利都來自少數幾筆大交易,所以都應該移除最大的獲利交易來測試。
35 筆交易足以評判量化策略嗎?
不夠。平均每筆損益的不確定度隨交易筆數的平方根縮小,所以 35 筆交易讓平均值仍寬廣未定,接下來的 35 筆可能看起來截然不同。少於約一百筆交易的結果,視為蒐集更多資料的理由:更長的歷史、更小的 K 棒週期或推進分析的設計。許多系統化交易者要先有數百筆樣本外交易,才會相信每筆數字。
測試量化交易策略需要會寫程式嗎?
不一定。規則必須精確到電腦能對每根 K 棒套用,但有好幾種軟體無需撰寫程式即可接受規則,策略生成軟體也能把帶有參數範圍的想法變成候選策略並測試。無法省略的是書寫的部分:進場、出場、部位大小、商品、K 棒週期、成本,以及第一次執行前定好的通過或不通過門檻。
為什麼通過回測的量化策略,實單交易仍然失敗?
兩個常見原因,只要去找,回測裡都看得到。第一,這個策略是眾多變體中最好的,而眾多中的最好帶有挑選的加成,新資料不會重複。第二,扣除成本後的平均每筆損益太小,撐不過比回測假設稍差的成交。實單交易前檢查相鄰設定、移除最大的幾筆交易、把滑價加倍,能抓出多數這兩種情況。
參考文獻
- Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2014). Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance. Notices of the American Mathematical Society, 61(5), 458–471.
- Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2017). The Probability of Backtest Overfitting. Journal of Computational Finance, 20(4), 39–69.
- Harvey, C. R., & Liu, Y. (2015). Backtesting. The Journal of Portfolio Management, 42(1), 13–28.
- Moskowitz, T. J., Ooi, Y. H., & Pedersen, L. H. (2012). Time Series Momentum. Journal of Financial Economics, 104(2), 228–250.

