2026年十月19日 · 執行

再平衡看似便宜,直到我們算進買賣價差

再平衡看似便宜,直到我們算進買賣價差

在 09:00 UTC,我們的橫截面加密貨幣期貨策略要在 10 個永續合約間調整 $200,000。回測顯示交易成本為 4 個基點。使用相同訊號和交易場所費率級別的模擬交易,估算成本則略高於 20。

費率表沒有問題。問題在於我們只算了手續費,就把它當成執行成本。這個錯誤一直沒被發現,因為策略交易的是流動性高的市場、下單規模不大,而且每天只換倉一次。這些說法聽起來都讓人安心,直到我們追問:訂單實際上能以什麼價格成交?

這次再平衡很適合拿來拆解分析。它清楚顯示,低手續費的回測仍可能低估成本,因為它把市場價格當成數量無限、隨時可成交的價格。

我們先從訂單清單著手。策略做多最強的 5 個合約,做空最弱的 5 個合約,各部位美元權重相同。大多數部位需要調整約 $20,000。一個合約只需調整 $3,400,另一個則需 $31,000。回測把每筆交易都按該根 K 線的收盤價估值,再對買賣雙方各收取交易場所 2 個基點的 taker 手續費。

成本項目回測假設模擬估算
交易場所手續費,每一側2 bp2 bp
價差,每一側0 bp約 4 bp
市場衝擊與延遲,每一側0 bp約 4 bp
預估來回成本4 bp約 20 bp

模擬估算不代表保證成交,而是成本模型:納入決策時點觀察到的價差,加上依訂單規模和近期成交量估算的市場衝擊,再為提交和執行訂單所需時間預留少量成本。最後這項預留刻意採用粗略估算。讓不確定性消失的模型,聽起來比較令人安心,實際上卻沒什麼用。

我們先檢查價差。訊號根據已完成的 1 分鐘 K 線計算,因此策略只能在該根 K 線收盤後送出訂單。對每個合約,我們取訂單抵達交易場所時可用的最佳買價和賣價。中間價是比較基準,不是可成交價格。買進要從賣價起算;賣出則從買價起算。

光是這項差異,平均每個標的的來回成本就約有 8 個基點。成本會隨合約和分鐘而變動。流動性最高的合約每一側接近 2 bp;流動性較低的合約則擴大到 9。所有訂單都套用同一個價差數字,反而會掩蓋我們需要看清楚的差異。

接著是訂單規模。$20,000 的市價買單通常可以吃進最佳賣價,而不會消耗太多深度,但「通常」要看當下的委託簿。我們透過逐層吃進快照中的可見掛單來估算市場衝擊:各價格上有多少報價金額,以及吃進足夠價位的掛單來成交後,成交量加權平均價會是多少。對於 $31,000 的調整,快照顯示,相較於中間價,還會多出約 6 bp 的成本。$3,400 的訂單幾乎沒有改變估算值。

而且快照本身也不完美。它呈現的是掛出的深度,沒有反映隱藏流動性,也不知道我們的訂單抵達時還會剩下多少。加密貨幣委託簿可能在觀察與送單之間改變;使用稀疏快照建立的回測,無法精確重建排隊狀況。我們用委託簿估出合理成本範圍,再拿模擬成交結果比較,確認估算是否一貫偏樂觀。

對市價單來說,中間價是衡量基準,不是你實際買進或賣出的價格。

我們用 3 種假設跑過這次再平衡。只跨越價差、不考慮深度,來回成本估算為 12 bp。逐層吃進可見委託簿後,估算升至 18 bp。再加上交易場所手續費,以及每一側 2 bp 的延遲預留,估算成本約為 22 bp。確切數字取決於訂單清單和委託簿快照,但成本增加的方向不變。

這不代表要放棄策略,而是要用會隨策略提出的交易而變動的成本重新跑回測。我們為每筆訂單加入價差和市場衝擊估算,在報告中把手續費分開列出,並在每筆模擬成交旁記錄基準價格、時間戳記和假設的執行方式。

下一次模擬交易時,其中一個合約的訂單被拆成較小的單筆委託,因為第一筆吃進的委託簿深度比預期更多。策略訊號沒有改變,但執行方式變了,光是這點就足以改變成本歸因。

如果你的回測顯示再平衡只花了手續費,就要求它列出每筆成交的價格、規模和背後可用的流動性。要讓答案令人信服,就得從這些細節說起,而不是只給一個標成「滑價」的數字。

market impactbid-ask spreadbacktestingportfolio rebalancingcrypto futures
← 所有文章