期貨委託單類型:市價單、限價單、停損單,以及回測如何成交
期貨委託單類型是在成交確定性與價格確定性之間取捨。市價單立即以任何價格成交,限價單只在你指定的價格成交,停損單在觸發價變成市價單,停損限價單則在觸發價變成限價單。合理的回測以下一根 K 棒的開盤價成交並計入滑價,其中限價單是最不應該輕信的部分。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
目錄
期貨有哪四種委託單類型,各在什麼時候使用?
期貨委託單分成四種:市價單以當下最佳價格立即成交;限價單只在你的價格或更好的價格成交;停損單在價格觸及觸發價後變成市價單;停損限價單則在該觸發價變成限價單。每一種選擇,都是在成交確定性與價格確定性之間取捨。
市價單是指示以委託簿對手方提供的任何價格立即買進或賣出。限價單是指示以不高於所設價格買進、或不低於所設價格賣出,市場未到該價格就等待。停損單是一張待命的委託,在觸發價出現成交或被穿越之前保持不動,之後變成市價單。停損限價單同樣是待命的委託,但在觸發價變成的是限價單,價格上限由你設定。
以買中古車為例。市價單是今天照開價付款、直接開走。限價單是留下電話與最高價格:你可能買得更便宜,也可能被別人先買走。停損單是對朋友說「價格如果跌到這個水準,不管當時多少錢都幫我買下」。停損限價單是同一個指示,再加上「但不要超過這個價格」。
| 委託單類型 | 觸發條件 | 成交確定性 | 價格確定性 | 規則中的典型用途 |
|---|---|---|---|---|
| 市價單 | 立即送出 | 高 | 低 | 必須立刻發生的進場或出場 |
| 限價單 | 價格到達你設定的水準 | 低 | 高 | 在自選價格拉回時進場 |
| 停損單 | 在觸發價或穿越觸發價時成交 | 觸發後高 | 低 | 保護性出場,或突破進場 |
| 停損限價單 | 在觸發價或穿越觸發價時成交 | 觸發後低 | 高 | 突破進場,並限制進場價格 |
部分交易所會替市價單與停損單加上保護區間,使成交價偏離觸發價不會超過設定的距離;超過該距離後,委託的其餘部分改以限價單掛著。在假設教科書上的行為成立之前,請先閱讀你交易的交易所的委託類型說明頁面。本文其餘部分只論證一件事:自動化規則錯過交易,通常是代價較高的錯誤,因此進場應採市價單或停損單並計入滑價,而限價單的成交,是回測中最不該輕信的部分。
限價單與市價單有什麼差別?
市價單確保成交但不確保價格,限價單確保價格但不確保成交;規則該用哪一種,取決於錯過交易或付出較差價格,哪一個對策略傷害較大。差別在於委託單落在價格階梯的哪個位置。
價格階梯是最新成交價下方的買價與上方的賣價所組成的清單。買進市價單穿越階梯,立即吃掉最佳賣價。掛在最佳買價下方的買進限價單,則在該處加入排隊並等待。若價格回落到該處且成交量足夠,就以你的價格成交。若價格在那之前轉頭向上,你沒有部位,而你原本想參與的行情就這樣走掉了。
哪種錯誤傷害較大,取決於規則類型。突破與趨勢跟隨規則的大部分成果,來自少數走得遠的交易,因此錯過進場,恰好移除了策略賴以維生的交易。均值回歸規則在價格已經朝不利方向移動後才進場,所以掛限價等待代價不高,較差的成交價反而更需要在意。期貨演算法交易策略與各類型的回測方法中的五大規則類型,就是沿這條線區分的。
假設性範例
假設一條突破規則在 200 筆交易中,平均每筆 $300。把進場從市價單改成限價單,每次進場省下一個跳動點,例如每筆 $5,總共省下 $1,000。但限價單錯過 15% 的進場,而錯過的是走得快的交易,平均每筆 $900。三十筆錯過的交易、每筆 $900,成本是 $27,000。相比之下,省下的 $1,000 微不足道。若是平均每筆 $150、限價單鮮少錯過成交的均值回歸規則,同樣的改法則可能划算。
停損單會穿越跳空成交嗎?
停損單穿越跳空時,會以觸發價之外第一個可成交的價格成交,往往離觸發價相當遠;停損限價單則可能完全不成交,因此保護性停損單與停損限價單,在週日重新開盤或消息公布後的表現差異明顯。跳空是兩筆相鄰成交之間價格的跳動,中間沒有任何成交。
市場重新開盤時,若低於賣出停損,停損會在第一筆等於或穿越其價格的成交觸發,變成市價單。市價單以當時可成交的價格成交,也就是開盤價位,而不是你的觸發價。停損完成了它的任務:部位平倉了。但不是在你寫下的價格平倉。限價貼近觸發價的賣出停損限價單,會在同一時刻觸發,但它的限價高於市場,因此掛著不成交,部位仍未平倉並持續虧損。
假設性範例
多單部位設有 5000 的賣出停損。市場收在 5012,重新開盤在 4980。停損在 4980 的第一筆成交觸發並在該價成交,比觸發價低 20 點。在每個指數點 $20 的合約上,那等於每口超出預定虧損 $400。5000 的賣出停損限價單、限價 4998,會在同一筆成交觸發,但 4998 的限價高於市場,因此不成交。如果價格繼續跌到 4950,部位仍未平倉,虧損現在是 50 點。
跳空不只發生在週末。股價指數期貨幾乎全天候交易,清淡時段正是觸發價可能被少數幾口成交觸及、下一筆成交卻相隔數個跳動點的地方;24 小時回測中的期貨交易時段說明了 K 棒涵蓋哪些時段。盤後交易時段、流動性與回測陷阱所說明的隔夜時段,以及聖誕夜交易時間與你的回測列出的提早收盤,是在交易明細中最先該檢查的時間。CFTC 與 SEC 針對 2010 年 5 月 6 日的聯合報告,描述了停損單在價格下跌時變成市價單,並在遠低於觸發價處成交,機制相同,只是規模更大。如何設置保護性停損、以及該預期什麼結果,請見停損單是什麼,以及在期貨上如何運作。
回測如何成交這些委託單?下一根 K 棒成交與滑價
合理的回測以一根 K 棒的收盤判斷訊號,在下一根 K 棒的開盤成交,再對每一次成交計入手續費與滑價,這裡展示的 ES 回測,就是以這些假設測試一條規則的範例。下一根 K 棒成交的規則是:由某根 K 棒收盤產生的委託,只能在其後的 K 棒成交。
原因並不複雜。讀取收盤價的規則,要等 K 棒收完才知道收盤價,那時收盤價已經過去了。以同一個收盤價成交,用的是規則根本無法成交的價格。在下一個開盤成交,是最早誠實的時間點。滑價是回測假設的價格與真實委託單可得價格之間的差額,加在成交價之外計入,通常是每邊或每筆固定金額。
- 回測中的市價單:在下一根 K 棒的開盤成交,加上滑價。
- 回測中的停損單:在穿越觸發價的那根 K 棒上,以觸發價成交,加上滑價;若該 K 棒開盤就已越過觸發價,則以該 K 棒的開盤價成交(上述的跳空情形)。
- 回測中的限價單:在到達限價的那根 K 棒上,以限價成交。「到達」是指觸及還是穿越成交,是一項設定,下一節說明它為什麼重要。
- 回測中的停損限價單:只有在觸發後的下一根 K 棒於限價範圍內成交時才會成交;否則委託維持未成交。
滑價該設多大?對流動性佳的指數期貨使用市價單或停損單,每邊一個跳動點是常見的起點,清淡時段則要更多。E-mini Nasdaq-100 期貨的最小跳動點是 0.25 個指數點,每口價值 $5.00(CME Group)。交易所可能調整跳動點大小與合約價值,請在交易所的合約頁面確認;免費的期貨合約與損益計算機可把跳動點數換算成你所測試合約的美元金額。
下方的回測是這些假設實際運用的一個範例。它測試 ES 日 K 棒,期間 2019-01-02 至 2025-06-30,多空皆做、一口合約,每筆交易計入 $20 手續費與 $25 滑價,並以下一根 K 棒成交。這條規則只是替代範例:僅以 Highest 與 Lowest 突破作為進出場條件,沒有停損、停利與濾網,由標準指標建構,而不是本文所談的委託單類型。結果是搜尋從嘗試的約一千個候選策略(1,024 個)中保留的一個,依報酬相對回撤的表現挑出。事後挑選被保留的那一個,會讓它顯得更好;同樣的資料上,其他候選策略表現較差,這裡的任何內容都不表示這條規則賺到了那筆錢,也不表示讀者可以預期。方框呈現的是,當每次成交都已含下一根 K 棒成交與成本時,報告讀起來是什麼樣子。AlphaPrime(Valynox)在每個候選策略的回測中套用這些設定,因此方框中的淨損益 $110,185 與最大回撤 $64,017.5,是扣除 92 筆交易各自 $20 與 $25 之後的數字,而不是扣除之前。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。ES 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $25。
| 項目 | 結果 |
|---|---|
| 淨利(已平倉) | $110,185 |
| 最大回撤 | $64,017.5 |
| 交易筆數 | 92 |
| 勝率 | 71.74% |
| 獲利因子 | 1.886 |
| 平均每筆 | $1,197.66 |
| 在市場中的時間 | 89.09% |

從方框得出的兩項解讀與委託單類型有關。平均每筆損益 $1,197.66,是手續費加滑價 $45 的許多倍,因此把滑價加倍並不會改變結果的正負;若是平均每筆損益 $60、成本相同的規則,情況就不同了。而 89.09% 的在市場中時間,代表規則幾乎一直持有部位,所以幾乎每次進場同時也是出場,每次只付一次成本。
回測無法呈現排隊與部分成交的哪些資訊?
K 棒資料沒有委託簿,因此回測無法得知你在限價價位的排隊順序、多口委託是否只成交一部分,或成交花了多久,所以限價單策略需要最保守的成交假設。K 棒只記錄開盤、最高、最低、收盤與成交量;它只說明價格到訪過某個價位,不代表你的委託在那裡成交。
排隊順序是你在同一價位掛單的隊伍中的位置,從最早的開始算。同一價位的委託依到達先後成交。若在限價價位上你前面有 300 口,價格離開前只成交了 120 口,你的委託就沒有成交。K 棒顯示最低價觸及該價位,所以設為「觸及即成交」的回測會把這筆交易算進去。部分成交是指多口委託中只有一部分成交;K 棒同樣無法顯示這一點。
三項設定,能讓回測對此保持誠實:
- 只有在價格穿越該價位至少一個跳動點時,才算限價單成交。若 K 棒最低價剛好等於你的買進限價,視為委託未成交。這會去掉那些取決於排隊順序的成交。
- 限價單的成交也要計入滑價,至少限價出場要。這感覺不對,因為限價單不可能比自己的價格更差成交。但它錯過的那些交易,作用就像一項成本,統一收一筆固定費用,是把這項成本帶進結果的簡單做法。
- 滑價隨口數放大。一口可以拿到最佳價格;十口可能要吃掉委託簿的好幾檔。若十口與一口以同一價格成交,回測在最關鍵的交易上就過於樂觀。
預期的量級:在上方方框的 ES 日 K 棒上,以下一個開盤成交並收 $25,是一口市價單的合理寫照。若換成一分鐘 K 棒、限價進場與十口,同一份報告需要全部三項設定,淨損益那一行才有意義。
自動化規則在匯出前,該使用哪些委託單類型?
規則裡的委託單類型,要與回測模擬的一致;不能錯過的進場,優先採用市價單或停損單;第一次實單交易時段前,先確認各目標平台如何對應匯出的委託單。以下一個開盤的市價成交測試,上線卻改成限價進場,就成了另一條規則,原本的回測已無法描述它。
| 規則中的委託單類型 | 回測如何成交 | 主要實單風險 | 在平台上要驗證什麼 |
|---|---|---|---|
| 市價單 | 下一根 K 棒開盤價加滑價 | 價格較差 | 滑價設定與你的實單成交一致 |
| 限價單 | 僅在價格穿越該價位時 | 沒有成交 | 測試器中的觸及與穿越成交規則 |
| 停損單 | 觸發後的下一根 K 棒加滑價 | 跳空 | 平台如何送出並持有停損單 |
| 停損限價單 | 僅在成交價落在限價內時 | 沒有成交 | 限價偏移,以及錯過時會發生什麼 |
各平台把策略的委託轉成交易所委託的方式不同:停損單是掛在交易所還是你的機器上,限價單在測試器中被觸及時是否視為成交,以及停損限價單採用什麼偏移。AlphaPrime 把策略原始碼匯出到 MultiCharts(PowerLanguage)、TradingView(Pine Script v6)、TradeStation(EasyLanguage)、NinjaTrader(NinjaScript)、MetaTrader 4(MQL4)與 MetaTrader 5(MQL5);匯出的規則所用的委託單類型,仍是搜尋當時測試的那些,目前支援的平台清單則維護在平台匯出頁面,因此匯入之後,你的第一件工作是讀懂該平台的測試器如何成交其中每一種。第一次實單交易時段前的步驟:
- 寫下規則中每個進場與出場的委託單類型,並確認與上表中回測的成交假設一致。
- 在平台自己的測試器上,用同一批 K 棒執行匯入的策略,並將交易日期與成交價與你的報告對照;差異通常指向觸及與穿越成交,或滑價的設定。
- 以一口實單交易數個交易時段,並為每筆委託記錄成交價與訊號價。兩者的平均差距,就是你實測的滑價。
- 把實測的滑價放回回測再重跑。若結果的正負號改變,代表規則原本依賴低成本的成交。
接下來要檢查的數字就在你自己的交易明細裡:數一數最近一次回測中,有多少筆進場是在 K 棒的精確最高或最低價成交的限價單,把測試器切換成要求穿越成交,滑價加倍,再讀一次淨損益,然後才匯出任何東西。
常見問題
期貨的停損限價單怎麼用?
停損限價單會掛著,直到在其觸發價出現成交或被穿越,然後變成你所設限價的限價單。適用於想進場突破,但不願在觸發價之外多付超過設定距離的情況。作為保護性出場則有風險,因為跳空之後,限價可能落在市場的錯誤一側,部位維持未平倉。請用於你願意錯過的進場,而不是非成交不可的出場。
回測用哪種委託單類型成交?
多數回測模擬的是在訊號後下一根 K 棒開盤成交的市價單,再按每邊或每筆加上一筆滑價。停損單在穿越觸發價的那根 K 棒以觸發價成交;若該 K 棒開盤就已越過觸發價,則以該 K 棒的開盤價成交。限價單在到達限價的那根 K 棒以限價成交,誠實的設定是只有在價格穿越該價位、而不是觸及時才算成交。
限價單能以比限價更好的價格成交嗎?
可以。限價單設定的是你接受的最差價格,不是確切價格。市場已低於你的價格時送出的買進限價單,會以較好的市場價格成交。在回測中,這出現在 K 棒開盤就穿過限價位時:成交記錄在開盤價,比限價更好,而這是正確的處理方式。
期貨回測中的滑價是什麼?
滑價是回測假設的成交價,與真實委託單可得價格之間的差額。它按每邊或每筆固定金額計入,加在手續費之上。對流動性佳的指數期貨使用市價單或停損單,每邊一個跳動點是常見的起點,清淡時段與多口委託則更多。把滑價加倍再重跑,能看出結果對低成本成交的依賴有多深。
參考文獻
- U.S. Securities and Exchange Commission. Understanding Order Types (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-14
- U.S. Securities and Exchange Commission. Stop, Stop-Limit, and Trailing Stop Orders (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-15
- Staffs of the CFTC and SEC (2010). Findings Regarding the Market Events of May 6, 2010. Report to the Joint Advisory Committee on Emerging Regulatory Issues, September 30, 2010.
- CME Group. E-mini Nasdaq-100 Futures Contract Specs. https://www.cmegroup.com/markets/equities/nasdaq/e-mini-nasdaq-100.contractSpecs.html

