風險與交易計畫

市價單成交後的驗收清單:成交均價、手續費與滑價逐項核對

訂單顯示「已成交」不代表照預期成交。用 2026-10-14 的真實盤口示範市價單如何被拆成多筆成交,逐步算出成交均價、滑價金額與手續費,再確認數量、方向與合約設定。

市價單成交後的驗收清單:成交均價、手續費與滑價逐項核對

市價單按下去、畫面跳出「已成交」,很多人就直接去看損益了。可是「已成交」只代表訂單結束,不代表它照你預期的價格、數量和費用成交。成交後花兩分鐘對三個數字——成交均價、手續費、滑價——再確認數量與方向,才能知道這筆單實際花了多少錢、停損和目標價要不要跟著改。這篇用 2026-10-14 同一時刻的真實盤口,示範一張市價單怎麼被拆成幾十筆成交、均價怎麼算、滑價和手續費哪個比較痛,最後給一份可以照著勾的驗收表。

長條圖:假設市價買入 50,000 USDT,以 2026-10-14 約 04:46 UTC 的真實盤口逐檔成交。SOLUSDT 滑價 1.40 USDT、ARBUSDT 50.55、ORDIUSDT 140.92、ACHUSDT 1,839.80,對比每筆都是 50.00 USDT 的吃單手續費

同樣花 50,000 USDT、同樣付 50 USDT 手續費,滑價從 1.40 到 1,839.80 USDT 不等。盤口資料可用文末接口自行重拉,數字會隨時間改變。

為什麼一張市價單會變成好多筆成交

市價買單會從賣方最低價(最佳賣價 Ask)開始吃,這一檔的數量不夠,就繼續吃下一檔更貴的價格,直到買滿為止。所以成交明細裡經常出現同一張訂單、好幾個不同價格的成交紀錄。訂單簿怎麼一檔一檔排列,可以先看訂單簿與市場深度的完整實作。

以下算例全部是假設的下單,但盤口是真實資料:2026-10-14 約 04:46 UTC,從 https://data-api.binance.vision/api/v3/depth?symbol=ORDIUSDT&limit=5000 拉下的現貨賣方掛單。

第一步:用成交明細算出自己的成交均價

成交均價就是成交量加權平均價(VWAP):

成交均價 = Σ(每筆成交價 × 每筆成交數量) ÷ Σ 每筆成交數量

假設你在 ORDIUSDT 市價買入 10,000 USDT:

  1. 下單瞬間最佳賣價是 4.137,最佳買價 4.135。
  2. 10,000 USDT 吃掉了 6 檔賣單,最後一筆成交在 4.142。
  3. 總共買到 2,415.1612 ORDI,成交均價 = 10,000 ÷ 2,415.1612 ≈ 4.140510。

平台訂單頁通常會直接顯示「成交均價」。你要做的是:把成交明細逐筆加總,自己算一次,確認和訂單頁的均價、總成交額一致。對不上,多半是漏了同一訂單的部分成交,或把另一張訂單的成交混進來。

第二步:把滑價算成金額,而不是只看「差一點點」

滑價要先選一個基準價。最實用的是下單瞬間的最佳賣價(買單)或最佳買價(賣單),因為那是你按下去時看到、以為會拿到的價格。

滑價金額 = 實際成交額 − 成交數量 × 基準價 滑價(bp)=(成交均價 ÷ 基準價 − 1)× 10,000

代入上例:

  • 10,000 − 2,415.1612 × 4.137 ≈ 8.48 USDT
  • (4.140510 ÷ 4.137 − 1) × 10,000 ≈ 8.5 bp(0.085%)

同一時刻、同樣 10,000 USDT,換到其他交易對的結果(全部是假設下單、真實盤口):

交易對 吃掉檔數 滑價金額(USDT) 滑價(bp)
SOLUSDT 1 0.00 0.0
ARBUSDT 2 2.86 2.9
ORDIUSDT 6 8.48 8.5
ACHUSDT 4 29.89 30.0

金額放大到 50,000 USDT 時,ACHUSDT 吃掉 49 檔、最後一筆成交在 0.00645,比最佳賣價 0.00591 高了約 9%,滑價達 1,839.80 USDT(382 bp)——就是開頭那張圖最長的那一條。主流幣如 BTC、ETH 在這個金額下幾乎看不到滑價:同一時刻市價買入 20 BTC(約 167 萬 USDT)也只有約 0.2 bp。

這說明的是:滑價大小取決於你的單量相對於該交易對盤口有多厚,不是固定比例。如果成交後發現滑價明顯大於預期,下一次在同一交易對就該改用限價單、拆單,或縮小部位。停損單觸發後也可能出現同樣的情況,排查方式見停損單為什麼沒成交。

第三步:核對手續費率、吃單或掛單,以及扣了哪個幣

手續費要對三件事:

  1. 費率對不對:市價單一定是吃單(Taker)。以 Binance 現貨為例,2026-10-14 查看的繁中手續費頁顯示普通用戶現貨掛單/吃單皆為 0.100%,用 BNB 抵扣為 0.07500%。你的等級與費率以帳戶當下顯示為準。
  2. 你以為是掛單,結果是吃單:限價買單的價格如果掛在最佳賣價或更高,一送出就會立刻成交,算吃單。成交明細若有「Maker/Taker」或「角色」欄位,逐筆看一次。
  3. 扣的是哪個幣:現貨買入時,沒開 BNB 抵扣的話,手續費常從你收到的幣裡扣,例如上例 0.1% 會是約 2.4152 ORDI,實際到帳就是 2,412.7460 ORDI。這時候要拿到帳數量去設賣單或算兩平,不是用下單數量。實際扣法以成交明細的手續費幣種欄為準。

Binance 繁體中文手續費頁面「手續費與交易總覽」,現貨與槓桿分頁的費率表:普通用戶 30 日交易量小於 1,000,000 USD,掛單方/吃單方 0.100% / 0.100%,BNB 7.5 折後 0.07500% / 0.07500%,下方依序為 VIP 1 至 VIP 4

Binance 繁中手續費頁(2026-10-14 截圖,未登入狀態)。費率表會調整,以頁面與帳戶當下顯示為準。

上例算下來,ORDIUSDT 那筆 10,000 USDT 的總執行成本是手續費 10.00 + 滑價 8.48 = 18.48 USDT,約 0.18%。這個數字要帶回你的交易計畫:把它代進損益兩平價格重算一次,你的停損與目標價的實際風險報酬比也會跟著變。合約倉位還要再加上資金費用,算法見線性永續合約總成本。

第四步:數量、方向與合約設定

最後確認那些「錯了就會一路錯下去」的項目:

  • 成交數量 = 你要的數量嗎:限價單可能只部分成交,剩下的還掛在委託列表裡。要嘛取消,要嘛記下來,否則之後價格回來又會多成交一筆。
  • 方向:買/賣、開倉/平倉。合約單向持倉模式下,平倉方向按反就會變成加倉。
  • 合約專屬:槓桿倍數、全倉或逐倉、倉位均價與強平價。成交後打開倉位頁,看強平價距離是否還在你原本設定的範圍內。
  • 停損與止盈有沒有跟著掛上:附帶的 TP/SL 是否真的出現在委託列表,數量是否與實際成交量一致。

驗收不合格時怎麼處理

發現 先做什麼
均價自己算的和訂單頁不同 檢查是否漏掉部分成交、是否混入其他訂單
滑價超過計畫中的上限 依新均價重算停損距離與部位;下次改限價或拆單
原以為掛單卻被收吃單費 確認限價是否穿過對手價;需要只做掛單時改用「只做 Maker」選項(若平台提供)
到帳數量少於下單數量 確認手續費扣在哪個幣,用到帳數量重設賣單
還有未成交的剩餘委託 決定取消或保留,並記錄

每一筆驗收結果都值得記進交易紀錄,累積下來就能看出哪個交易對、哪個時段的滑價最傷。紀錄欄位怎麼設計,參考交易日誌怎麼做。

自己重拉盤口資料

本文表格可用公開接口自行重算(不需 API Key,數字會隨時間不同):

  • 盤口:https://data-api.binance.vision/api/v3/depth?symbol=ORDIUSDT&limit=5000,把 ORDIUSDT 換成其他交易對。
  • 回傳的 asks 每列是 [價格, 數量],由低到高排列;從第一列開始累加「價格 × 數量」,直到達到你的下單金額,就能算出均價與滑價。

本文所有下單金額都是示範用的假設,不構成交易建議。市價單在盤口薄的交易對上可能遠比示範更差,下單前請先確認可接受的最大滑價。