
回測與支撐阻力,本質上在解同一件事:你的交易規則能不能被驗證,以及錯了要在哪裡出場。很多人把這兩件事分開學,結果學了支撐阻力卻不知道怎麼測試,跑了回測卻不知道止損要擺哪裡。
開始寫回測之前,我問過很多新手一個問題:你怎麼決定這套規則可以用?大多數人的答案是「我跑過回測,歷史績效很漂亮」。然後我再問:你是先寫好規則,還是先看到一段漂亮行情才定規則?
這一問通常讓人安靜。因為多數人的順序是倒的。
回測本質上只有一件事:把一套明確的交易規則套用到過去的歷史資料,看它的統計表現。它可以告訴你一套規則在過去有沒有基本的風報比,但它沒辦法告訴你未來會怎樣。我在市場待了十幾年,見過太多人把「過去績效漂亮」當成「策略有效」的等號,然後在實盤的第三筆虧損就把規則全丟。
支撐阻力是類似的故事。它不是神奇的反彈點,而是市場集體記憶留下的買賣盤痕跡。學會畫線只是第一步,真正要解決的問題是:這條線怎麼定義你的止損,以及你有沒有辦法用回測驗證這個止損規則的長期效果。
本文整理回測的三大誤區、基本流程、績效指標,以及支撐阻力的成因、強弱判斷、止損設置,最後把兩者整合成一套可操作的驗證思路。全文不構成投資建議,技術分析有失效風險,交易可能虧損本金。
回測與支撐阻力最常見的錯:把漂亮歷史當成有效策略
回測最大的陷阱,不是技術問題,而是人的行為。三個常見誤區需要先認識清楚。
第一個是「數據窺視偏差」(data snooping)。做法是先看完一段歷史行情,找到幾個買賣點的規律,再回頭把這個規律寫成策略。問題在於:你定的規則是「為了解釋這段歷史」,而不是「基於市場機制」。換一段歷史資料,同樣的規則可能完全失效。
第二個是「過度配適」(curve fitting)。不斷調整參數,調到歷史績效曲線最漂亮為止。在測試集上通常非常好看,但一碰到真實市場就垮,因為你調的不是交易邏輯,而是歷史雜訊的形狀。
第三個是「存活者偏差」(survivorship bias)。如果只回測目前還活著的股票,結果會比實際好看,因為已下市或流動性消失的股票被忽略了。台股在 2000 年前後有相當多公司後來退場,只用現有標的回測,樣本本身就有偏差。
我個人的習慣是:規則一定要在「看到答案之前」就寫完。如果先打開圖表再開始思考規則,那個規則通常只是在描述已經發生的事。
回測完整流程:從進場條件到壓力測試的 5 步 SOP

把回測做成可複製的流程,比反覆調參數重要。以下是基本的 5 步結構,每一步都要在執行前寫清楚。
步驟 1:定義進場條件。具體到可以讓另一個人按相同規則進場,例如「日線收盤站上 20 日均線,且成交量比前 5 日均量高 20%」。條件寫得模糊,兩個人執行會有不同結果,這樣的規則沒有回測價值。
步驟 2:設定出場條件與止損。包括停利目標、止損位置、最大持倉天數與其他強制出場條件。止損位置可以是固定比例、ATR 倍數,或結構位。這一步決定盈虧比結構。
步驟 3:套用歷史資料並計算成本。每筆交易需要計入手續費(台股一般 0.1425% 雙邊或折扣後)、證交稅(賣出 0.3%,當沖 0.15%)與滑價。外匯要計入 spread 與隔夜利息。漏掉成本的回測結果通常過於樂觀。
步驟 4:計算績效指標。勝率、盈虧比(平均獲利除以平均虧損)、最大回撤、CAGR(年化報酬率)、Sharpe Ratio。這幾個指標要一起看,不能只看勝率或只看總報酬。
步驟 5:壓力測試。把同樣的規則分別跑在多頭、空頭、盤整三種市場環境,看表現差異。如果一套策略只在 2021 年多頭時好看,換到 2022 年就崩,那它的依賴條件要重新評估。技術分析有失效風險,回測結果不代表未來績效。
回測報告怎麼看:勝率、盈虧比、最大回撤與 CAGR
新手最常說的是「我的策略勝率 65%,應該很好吧」。但這個問題要先問:每次賺多少、每次虧多少。
勝率 65%,但每次賺 200 元、每次虧 500 元,期望值是負的(0.65 乘以 200,減去 0.35 乘以 500,等於負 45 元)。反過來,勝率 40%,但每次賺 800 元、每次虧 250 元,期望值是正的。高勝率系統可以賠錢,低勝率系統可以賺錢,關鍵是盈虧比。
最大回撤(Maximum Drawdown)是帳戶從高點到某一低點的最大跌幅。設計回測時要問自己:你能不能撐過帳戶從高點跌 30% 不出場?很多人在心理上無法承受,設計規則時就應該把這個數字壓在自己實際能承受的範圍內。
CAGR 是年化複合報酬率,用來比較不同時間長度的策略表現。Sharpe Ratio 衡量單位波動率帶來的超額報酬,大於 1.0 才算基本可接受,但要有足夠長的測試週期才有參考意義。
我看過太多回測報告,績效曲線漂亮得像修過圖,真正開始下單後連三筆虧損就放棄規則。問題不是策略,而是這些人從來沒有認真算過自己的最大回撤承受限度。
支撐與阻力怎麼形成,以及為什麼會角色轉換

支撐位不是「價格一定反彈的神奇數字」,而是市場集體記憶留下的買賣盤痕跡。主要有三種成因。
整數心理價位:整數有群聚效應,大量限價單會掛在整數附近。台積電 500 元、台指期 20000 點都是典型的整數關卡。這類位置可預測性強,但也正因為大家都知道,往往容易在整數前後觸發短線震盪,假突破頻率較高。
前高前低與成交密集區:前高是多方曾防守不住的區域,前低是空方曾停手的區域。成交密集區代表大量籌碼在那個價位換手,這些持有人會對後續的買賣行為形成影響。
移動平均線動態支撐阻力:常見的是 20 日、60 日、200 日均線。均線本身不是支撐或阻力,但當大量市場參與者都在用同一條均線做決策時,它的行為會產生類似支撐阻力的效果。
支撐轉阻力的機制是:當一條支撐線跌破後,原本在這個價位買入的人開始套牢,他們在價格反彈回到成本位時有強烈的出場動機。同時,空方也會把原支撐當成止損設置參考,在反彈到這個區域附近加碼。這兩股賣壓合在一起,讓跌破的支撐在之後的反彈中變成壓力。關於假突破的識別與確認流程,可以搭配技術型態學完整指南中的三步確認方法。
支撐阻力強弱怎麼判斷:觸碰次數不是越多越好
很多教學都說「支撐阻力測試越多次越強」,但這個說法不完整。測試越多次,每次都有買盤在那個位置消耗。如果買盤被持續消耗卻始終無法有效向上突破,最後的結果往往是突然跌破。我在台指期看過幾次這種情況,一條看起來「很強」的支撐,在第六或第七次測試後直接穿越,幅度還比前幾次更大。
評估支撐阻力強弱,有四個維度值得注意:
觸碰次數與方式:測試次數多但成交量逐漸萎縮,可能表示買盤在耗盡;每次測試後都有顯著放量反彈,代表防守有力。
距離上次測試的時間:剛測試過的支撐阻力比較「新鮮」,市場記憶清晰;距離上次測試超過半年甚至一年的,有時候已被市場淡忘,有效性要打折扣。
成交量與波動:在支撐阻力位附近出現的大量或異常波動是重要訊號,反映機構與大資金的決策行為。
時間框架層級:週線支撐阻力比日線更可靠,日線比 4H 更可靠,4H 比 1H 更可靠。操作時先定高時間框架的關鍵位,再用低時間框架判斷進場時機。搭配背離指標在支撐阻力位附近做二次確認,可以有效降低假訊號率。
止損放哪裡:固定比例、ATR、結構位三種方法比較

止損的目的不是避免虧損,而是限制單筆虧損的規模,讓你在策略長期有效的前提下能夠持續交易。沒有止損計畫的交易沒辦法做回測,因為你不知道虧損的邊界在哪裡。
固定比例或固定點數:最簡單,例如每筆虧損不超過進場價的 2%,或台股每筆虧損不超過 3 元。優點是計算容易、回測方便;缺點是沒有考慮當下的波動情境,高波動期容易被洗出場,低波動期止損又嫌太寬。外匯交易者可以搭配外匯風險管理指南中的保證金計算邏輯做校準。
ATR 倍數止損:ATR(平均真實範圍)衡量過去一段時間的波動幅度,用 ATR 的倍數(如 1.5 倍 ATR)設定止損,讓止損隨市場波動自動調整。台股整理期 ATR 縮小,止損跟著縮;外匯在 NFP 或 FOMC 前後 ATR 放大,止損也自然放寬。缺點是計算略複雜,而且 ATR 是統計工具,不反映市場結構。
結構位止損:把止損設在支撐阻力的「另一側」,做多在支撐附近進場,止損設在支撐位以下一定距離;放空在阻力位附近,止損設在阻力位以上。這是我個人最常用的方式,因為它有明確的市場邏輯:如果支撐位失守,當初的進場假設就已失效,繼續持倉沒有依據。搭配台灣期貨保證金完全指南,了解止損設置對期貨保證金水位的影響。
三種方法沒有絕對優劣,取決於你的交易工具、時間框架與個人心理承受能力。技術分析有失效風險,止損也無法保證策略長期獲利,交易可能虧損本金。
台股回測要小心什麼:除權息、交易成本與漲跌停
台股回測有幾個特有的資料問題,選對工具和資料來源很重要。
除權息還原:台股個股配息後,股價會直接下調相應金額(除息)或股數增加(除權)。如果用未還原的歷史價格做回測,每次除息都會被誤讀成下跌,拉低策略績效統計。正確做法是使用「還原股價」,把歷史收盤價依除權息紀錄往前調整。TWSE 個股日成交資訊可以下載歷史成交資料,部分工具已有還原選項,使用前要確認是否開啟。
交易成本:台股成本結構包含手續費(一般 0.1425%,網路下單折扣後約 0.0572%)、證券交易稅(賣出 0.3%,當沖 0.15%),加上實際成交的滑價。很多新手在回測時忽略這些,算出來的年化報酬率大幅高估。
漲跌停限制:台股有 10% 的漲跌停限制,在極端行情下可能出現連續漲跌停,導致策略無法在預設價位執行止損。這類情境在外匯市場不常見,但在台股設計回測規則時要特別納入考量。
台指期的歷史資料可以從台灣期交所每日交易行情下載,資料品質相對完整,但同樣要注意大台、小台的換算乘數與保證金結構。
外匯回測為什麼更容易失真:OTC、市價差與滑價
外匯是全球最大的金融市場,根據國際清算銀行(BIS)2025 年三年期調查,外匯市場的日均成交量已超過 7 兆美元,其中大部分交易發生在店頭市場(OTC),而非集中交易所。
這個結構對回測有直接影響。台股在交易所撮合,每一筆成交有明確的成交量、時間與價格。外匯沒有這個機制,每家做市商報出的價格可能略有不同,你在回測工具上看到的 K 線,其實是某個資料供應商整合後的報價,不代表你實際交易的成本。
MT4 / MT5 的 Strategy Tester 是常用的外匯回測工具,但有幾個限制要了解:歷史 tick 資料的品質因帳戶類型與時間段而異;Strategy Tester 通常使用固定 spread,而實盤的 spread 在重大數據發布前後可能擴大數倍;滑價也難以在回測中完整模擬。
TradingView Pine Script 的 Strategy Tester 相對容易上手,但同樣面臨回測假設與實盤環境的差距問題。如果你的策略主要交易 NFP 或 FOMC 前後,單純用 Strategy Tester 做的歷史績效要以打折的態度看待。
如果你問我外匯回測有沒有價值,我的答案是有,但它更適合用來篩掉明顯沒有邏輯的策略,而不是用來確認策略一定有效。
台股支撐阻力案例:整數關卡與破位後加速
台積電在 2023 年初,股價從 2022 年底的低點回升後,500 元整數位成為多次測試的關鍵阻力。從 TWSE 的歷史成交資料可以核對,這個價位在 2023 年上半年出現過多次單日量能明顯放大後回落的情況,顯示整數位附近確實存在賣壓集中的現象。
台指期的案例更直觀。2022 年台指期從萬八高點往下修正,14500 附近曾有過短線支撐,但在一次集中賣壓後跌破,之後反彈測試 14500 時明顯缺乏買盤跟進,整個區間迅速由支撐轉為阻力。這類破位後加速的現象,止損如果設在支撐位之下,在破位時就會觸發,有效限制虧損。
要特別說明的是:這些都是可以透過公開 K 線資料查核的歷史觀察,不是任何方向預測,也不代表同樣的支撐位在未來會有同樣效果。技術分析有失效風險,歷史案例只是輔助理解機制,不構成投資建議。
把支撐阻力放進回測:用止損規則驗證交易邏輯

支撐阻力最有用的地方,不是讓你猜哪裡會反彈,而是逼你先寫清楚自己的假設是什麼,以及錯了要在哪裡出場。
整合流程大概是這樣:先在高時間框架找出一個關鍵支撐阻力區域,定義它的範圍(不是單一點位,而是一段區域);進場條件寫成「在支撐區下緣附近出現某種 K 線信號,且符合 X 條件時進場」;止損設在支撐區以下一定距離;目標設在上方阻力位附近。把這套規則機械化後,套到過去 3-5 年的歷史資料,計算勝率、盈虧比與最大回撤。
如果這套規則在回測中連最基本的正期望值都做不到,就要回頭審視:進場條件是否夠精確、支撐阻力的定義是否太模糊,還是整個市場環境不適合這類策略。
很多新手不是輸在看錯方向,而是輸在沒有先決定錯了要在哪裡出場。把支撐阻力用作止損依據,再用回測驗證這個假設,是把技術分析從「感覺畫線」提升到「可測試規則」的核心動作。更多技術分析的整合資源,可以參考技術分析指南系列頁面。
回測與支撐阻力常見問題
- 回測是什麼,和模擬交易有什麼差別?
- 回測是把一套明確的交易規則套用到歷史資料,快速計算統計表現。模擬交易(紙上交易)是用即時市場測試執行能力與心理反應。兩者可以互補,但都無法完全模擬實盤的滑價、情緒與突發事件。
- 支撐位跌破後一定會繼續下跌嗎?
- 不一定。跌破需要看收盤確認、成交量是否放大,以及後續是否反彈站回。假突破是技術分析常見情境,這也是為什麼建議把止損設在支撐位稍下方,而不是剛好在支撐位。
- 為什麼支撐會轉變成阻力?
- 跌破支撐後,原本在此買入的人開始套牢,反彈回到成本位時有強烈出場動機;空方也可能把這個區域視為空單加碼參考。這兩股賣壓合在一起,讓前支撐在反彈時形成壓力。
- 勝率越高代表策略越好嗎?
- 不一定。勝率必須和盈虧比一起看。勝率 40% 但每次賺的是虧的 2.5 倍,長期期望值可以是正的。只看勝率容易高估高頻短線策略、低估長線趨勢跟蹤策略的實際效果。
- 最大回撤是什麼,怎麼評估是否可接受?
- 最大回撤是策略帳戶從高點到某一低點的最大跌幅百分比。評估方式是問自己:如果帳戶從高點跌這個幅度,你是否能繼續執行策略而不放棄?超出心理承受範圍的最大回撤,代表這個策略不適合你實際操作。
- ATR 止損適合新手嗎?
- ATR 可以作為參考,但新手更重要的是先確立「單筆風險控制在帳戶的 1-2%」的基本規則。ATR 只衡量波動,不代表你的進場邏輯是否正確。技術分析有失效風險,止損設置不能替代對市場結構的判斷。
- 台股回測要用還原股價嗎?
- 要。未還原的歷史價格在除息日會出現跳落,被誤讀成下跌,扭曲策略的勝率與績效統計。大多數技術分析回測工具都有還原股價選項,使用前確認已開啟。
- 外匯回測為什麼要特別注意 spread?
- 外匯的買賣價差在重大數據發布前後或低流動性時段會明顯擴大,固定 spread 回測會讓進出場成本被低估,績效看起來比實盤好。回測結果要以打折態度看待,作為策略篩選工具,而非績效保證。
- 支撐阻力的測試次數越多,線就越強嗎?
- 不完全是。測試次數多代表市場認可這個位置,但買盤每次防守都在消耗。如果多次測試後始終無法有效向上突破,可能代表買盤防守力道在遞減,跌破風險反而在上升。
- 新手應該先學支撐阻力還是先學回測?
- 建議先了解支撐阻力的成因與判斷方式,建立基本的進出場邏輯;再用回測把這個邏輯機械化、量化,看它是否有基本的風報比。兩者相輔相成,而不是有高下之分的先後順序。




