風險與交易計畫

停損單為什麼沒成交?跳空、滑價與流動性排查

從觸發價格、訂單狀態與訂單簿逐步排查停損未成交,分清 Stop-Market 滑價、Stop-Limit 掛單與流動性不足,附完整算例與處理清單。

停損單為什麼沒成交?跳空、滑價與流動性排查

停損單為什麼沒成交?先不要立刻再送一張相同訂單。你要先分清楚它是沒有觸發、觸發後變成限價單但沒有成交、只成交一部分,還是其實已成交但成交價和預期不同。這四種狀態的處理方法完全不同。本文適合已經會下條件單、但想在跳空或快速行情後核對剩餘曝險的讀者;停損只能管理退出流程,不能保證指定價格或限制所有損失。

Kraken Pro 的真實 Stop Loss Limit 賣出介面,顯示 Trigger 100000、Limit 99000、Quantity、Reduce only 與送單按鈕

上圖取自 Kraken 官方 Stop Loss Limit 說明,用來辨認觸發價與限價是兩個不同欄位。介面與可用訂單類型可能隨平台、產品及地區改變,送單前以當下規則為準。

先看訂單狀態,不要只看 K 線

打開訂單歷史、成交歷史與目前持倉,記下訂單 ID、建立時間、觸發時間、狀態、已成交數量、剩餘數量、平均成交價、觸發價格來源及拒單訊息。然後把問題歸入下列一類:

看到的狀態 代表什麼 優先檢查
Waiting/Untriggered 條件單仍在等待 觸發來源、方向、有效期、價格是否真的到達
Triggered/Open 已觸發並生成新委託 是否為 Stop-Limit、限價與目前買盤的關係
Partially filled 只有部分數量成交 剩餘量、深度、限價、最小數量與有效期
Filled 已全部成交 實際均價、費用、滑價及持倉是否歸零
Rejected/Canceled/Expired 沒有有效退出委託 拒單原因、手動取消、到期、餘額或參數限制

K 線最低價碰到 100,不代表你的條件一定用 100 觸發。有些產品可選最新成交價、標記價格或指數價格;K 線顯示的價格來源也可能不同。還要核對觸發方向:多單賣出停損通常設在市價下方,空單買入停損通常設在市價上方。平台規則各異,不能把一家的欄位名稱直接套到另一家。

Stop-Market 與 Stop-Limit 的失敗方式不同

Stop-Market 到達觸發條件後,通常轉為市價委託。它優先尋找可成交對手價,但觸發價不是成交價;行情快速移動、價差擴大或深度不足時,實際均價可能差很多。Investor.gov 的訂單類型說明也指出,市價單著重立即執行而不保證成交價,最後成交價不一定等於畫面上的最近成交價。這份說明針對美國證券,引用的是一般訂單原理,不代表任何加密平台一定提供相同保障。

Stop-Limit 到達觸發條件後,生成一張限價委託。賣出限價只會在限價或更高價格成交;若價格直接跳到限價下方,它就會留在委託簿,甚至完全沒有成交。Kraken 的官方示例也是 Trigger 100,000、Limit 99,000:價格跌得太快時,限價單可能無法成交。FINRA 的波動市場停損風險說明同樣提醒,Stop-Limit 增加價格控制,代價是可能不成交。

如果你還不確定觸發價、限價與市價單的差別,先對照市價、限價與 Stop-Limit 的選擇方法;本文不假設所有平台的 Stop、Trigger、TP/SL 或 Conditional 名稱相同。

完整案例:同一次跳空,兩種停損結果

以下是教學用假設數字,不是真實成交或績效。一筆多單有 1.2 單位,進場均價 105,預計在 100 觸發退出。價格原本的最佳買價為 100.2,下一筆可成交買盤卻跳到:

  • 98.8 有 0.4 單位
  • 98.5 有 0.5 單位
  • 98.0 有 0.3 單位

若 Stop-Market 能依這三層完成成交,加權平均價為:

(98.8 × 0.4 + 98.5 × 0.5 + 98.0 × 0.3) ÷ 1.2 = 98.475

相對 100 觸發價的滑價是:

(100 − 98.475) ÷ 100 = 1.525%

未計費用的部位損失是:

(105 − 98.475) × 1.2 = 7.83

若同一筆改用 Trigger 100、Sell Limit 99.5,觸發後所有買價都低於 99.5,這張限價單便不能成交,1.2 單位曝險仍在。這不是系統把 Stop-Limit 當成市價單失敗,而是限價條件正在阻止低於 99.5 的成交。實際檢查深度時,可用訂單簿與滑價的逐層計算法重算自己的數量。

八步排查與處理

  1. 先停止增加曝險。 在狀態不明前,不補倉、不提高槓桿,也不盲目重送同一張停損。
  2. 核對持倉與成交。 以目前持倉數量和成交歷史為準,不只看條件單列表。確認是否已部分成交。
  3. 核對原始條件單。 記錄觸發來源、方向、Stop、Limit、數量、有效期、Reduce only/Close position 與建立時間。
  4. 追蹤觸發後的新訂單。 某些系統會給條件單與實際委託不同 ID;只查原始 ID,可能漏掉已生成的限價單或成交。
  5. 對齊價格與時間。 使用與訂單相同的交易對、合約、觸發來源和時間戳;不要拿其他平台的 K 線當成交證據。
  6. 檢查市場深度。 用當時訂單簿或可取得的成交明細,估算你的數量能吃到哪些價位;只看最佳買賣價不足以解釋大單。
  7. 閱讀拒單訊息。 常見原因包括可用數量不足、最小數量/價格步進不符、Reduce only 會增加或反向建立部位、持倉模式不匹配、訂單到期或產品暫停。以平台返回的實際錯誤為準,不臆測。
  8. 依預案處理剩餘部位。 若曝險仍在,先取消會互相衝突的舊退出單,再依事先寫好的緊急退出方案評估市價退出、分批限價或暫停操作。不要因為想等回到原停損價而擴大可承受損失。

成交後要把原本的風險報酬比改用實際均價和費用重算;可直接使用把滑價與費用納入風險報酬比的方法

常見錯誤與修正

  • 把觸發等同成交:Triggered 只代表下一步委託已建立;繼續看 Open、Partial 或 Filled。
  • 看到價格穿越就認定平台漏單:先確認 K 線與訂單使用的價格來源、交易對和時間。
  • Stop 與 Limit 設成同一價格:快速下跌時可成交區間幾乎沒有緩衝;限價越緊,未成交風險通常越高。
  • 重送後留下兩張有效退出單:舊單稍後成交可能造成超額賣出或反向部位;每次重送前先盤點有效訂單。
  • 用理想停損價記帳:復盤必須用實際成交明細、加權均價與費用。
  • 把強平當備用停損:強平機制服務的是平台風險控制,不是你的價格保證;退出計畫應在它介入前留有緩衝。

完成檢查表

  • 已確認目前持倉、已成交量與剩餘量
  • 已保存訂單 ID、狀態、時間與拒單訊息
  • 已確認觸發來源是最新價、標記價或其他來源
  • 已分清 Stop-Market 與 Stop-Limit
  • 已核對觸發後生成的新訂單及其 ID
  • 已用當時深度估算滑價與可成交數量
  • 已取消衝突或重複的退出委託
  • 已用實際均價和費用重算損失與下一筆風險
  • 已保存平台狀態頁、訂單紀錄和時間戳,必要時供客服核查

風險邊界很清楚:Stop-Market 主要承擔成交價不確定,Stop-Limit 主要承擔未成交與剩餘曝險;極端行情、交易暫停、連線或平台故障還可能讓兩者都無法按預期運作。只用可承受損失的資金,並在持倉前就寫好觸發來源、最大可接受滑價、部分成交及系統異常時的退出方案。