期貨 / CFD fade 未證實
我以為它過了,多五天資料後沒過
更新 3,459 字 · 約 10 分鐘
真倉 t 從 1.52 掉到 0.79(n 由 30 增至 53),影子回放同期升到 2.59。實測價差顯示成本只解釋落差的 10.2%;2026-08-27 更新:主因是進場延遲(82%),而延遲是窗內單向累積的。
資料截止 2026-08-26。 這條線是另一套系統跑的,數字由該端提供。每個統計量都附樣本數。 本頁在 8/20 曾以較樂觀的數字寫過一版,8/26 被推翻並改寫 —— 下面第一節就是那次推翻。
先講最難看的部分
一週前這條線看起來是全站唯一有機會通過的。現在不是了。
| 真倉(那斯達克,美股開盤窗) | 8/19 | 8/26 |
|---|---|---|
| 樣本 | 30 | 53 |
| 每筆平均 | +$29.50 | +$11.36 |
| t | +1.52 | +0.79 |
| 累計 | +$884.90 | +$601.84 |
新增的 23 筆合計 −$283.06(每筆 −$12.31)。另一腿的差價合約帳戶同向:n=53、每筆 +$0.64、t=0.69。
而影子回放反而上升了:16 天、n=60、每筆 +$32.93、t=+2.59。
站上一直在講的判準是「t 隨樣本增加往哪走」。這次它往下走。
三個佐證倒了一個,而且是最強的那個
8/20 那版寫的三個獨立佐證(下列狀態為 2026-08-26 重算):
- 樣本從 25 加到 50,t 從 1.74 上升到 2.19 —— ✅ 仍成立(影子端現在 2.59)
- 新增交易日獨立同號 —— ✅ 2026-08-20 當時成立
- 真倉對得上影子,差 $2.67/筆,正好是成本量級 —— 🔴 不成立了
現在影子 $32.93 vs 真倉 $11.36,差 $21.57/筆。
第 3 點本來是三個裡最有力的,因為它是唯一一個不靠統計、靠對帳的證據。它倒了,前兩點的份量跟著掉。
實測價差:成本只能解釋 10%
原本最自然的解釋是「執行落差擴大了」—— 滑價變差、掛單掛不到。所以直接去量。
從逐筆行情裡撈 8/24–8/25 兩天的最佳買賣報價,取中位數:
| 商品 | 時窗 | 中位價差 | 來回成本 |
|---|---|---|---|
| 那斯達克 | 美股開盤 | 2 tick | $1.00 |
| 那斯達克 | 亞洲 / comex | 2 tick | $1.00 |
| 那斯達克 | 倫敦 | 3 tick | $1.50 |
| 黃金 | 美股開盤 / comex / 倫敦 | 2 tick | $2.00 |
| 黃金 | 亞洲 | 3 tick | $3.00 |
那斯達克美股開盤窗:來回價差 $1.00,加手續費約 $1.22,執行成本合計約 $2.2/筆。
而影子與真倉現在差 $21.57/筆。
$2.2 / $21.57 = 10.2% — 成本只能解釋這個落差的十分之一。
對照樣本數還是 30 的時候:落差 $2.67 ≈ 成本 $2.2,幾乎完全吻合。所以:
- 早期:落差 = 執行成本,模型與現實一致
- 現在:落差 = 成本 $2.2 + 約 $19.4 無法用成本解釋的部分
而且價差沒有變寬(8/24–8/25 量到的還是 2 tick)。「執行落差擴大」這個解釋被實測大幅削弱了。
嫌疑推向另外兩個方向:期間不同(影子算到 8/21、真倉算到 8/26),或者真倉的進出場與影子模型本身就有偏離。1
2026-08-27 更新:解了,主因是延遲不是成本
當時把嫌疑指向「期間不同」或「模型偏離」,答案是後者的一個具體版本:模型偏離的內容就是進場延遲。
另一組人在評測帳戶上對同一套系統做了執行拆解(同一份行情、同一批訊號,唯一差別是執行):
| 階段 | 每筆 | 勝率 |
|---|---|---|
| 理想模型(假設瞬間成交) | +$25.58 | 60% |
| 減 進場延遲與持有超時 | −$11.67(82%) | |
| 減 價差與手續費 | −$2.55(18%) | |
| 真倉實際 | +$11.36 | 51% |
驗證方式是把實測到的延遲寫進回放模型重跑,結果幾乎完全複製了實際帳戶:勝率 51% 對 51%,平均只差 $2.55。而那個 $2.55 與本節上面量到的「價差加手續費約 $2.2」是同一個量級。
兩邊獨立量測,指向同一件事:成本確實只解釋一小部分(本節量到 10%,那邊拆出 18%),主因是延遲。
而延遲不是隨機的,是窗內單向累積:當日第 1 筆只差 5 秒,第 5 筆差到 82 秒,每一輪多花約 19 秒。回測假設每筆都在同一個相對時點進場,實盤第五筆已經晚了一分多鐘。2
完整拆解與方法在〈Your backtest win rate is 60%. Live is 51%. It isn’t costs.〉。
多重檢定:把話說死
同一批實驗有 16 格(網格版 72 格)。16 次檢定下純靠運氣出現 |t|>2 的期望次數是 0.8 次 —— 而實際正好出現一次 +2.29 和一次 −2.28。
如果把那斯達克這一格當成 16 格之一,Bonferroni 校正(NIST/SEMATECH e-Handbook §7.4.7.3,查證日期 2026-08-27)以 α=0.05/16 給出 t*≈2.95。它的 2.19(現在影子 2.59)不通過。
順帶一提,這條線用的 2.0 在文獻標準裡本來就偏鬆。Harvey、Liu 與 Zhu 在 〈… and the Cross-Section of Expected Returns〉(Review of Financial Studies 29(1), 2016,查證日期 2026-08-27)主張:把整個文獻累積的多重檢定算進去,新因子的門檻應該提高到 t>3.0。用那把尺,連影子那條 2.59 也出局。
該端的辯護是:這一格不屬於那 16 格家族。它在網格掃描之前就已經是真倉在跑的窗,來自 8/11 一份基於最大不利偏移歸因的分析(獨立資料、獨立方法)。那 16 格是後來為了找「第二個 edge」才掃的,它只是順帶被算進同一張表。
實際採用的門檻是 t*=2.0,未做多重檢定校正,理由是預先註冊。
這個辯護是合理的:預先註冊(Center for Open Science,查證日期 2026-08-27)的整個用意就是把 confirmatory 與 exploratory 分開,事前寫下的假設本來就不該被後來的搜尋懲罰。
但它也不可證偽。真正的預先註冊有一份時間戳記在第三方登錄處,我這裡沒有,只有一句「它在網格掃描之前就在跑」。宣稱「這格是事前的」在事後永遠說得通。讀者自己判斷,我的判準與界線寫在〈方法論〉。
現在的誠實狀態
| 項目 | 結果 |
|---|---|
| 影子回放 | 通過(t=2.59,未校正、預先註冊、樣本內) |
| 真倉 | 未通過(t=0.79,而且在下降) |
| 兩者 | 正在分歧,成本只解釋 10%,原因待查 |
這不是一個通過的案例,是一個尚未收斂的案例。
🔴 原油:我以為在收資料,其實沒有
這條原本寫的是「樣本不足,還需要約 85 筆才夠判」。
去量價差的時候才發現:行情側錄從 2026-08-17 之後就斷了。 8/18 起完全沒有資料,到發現時已經 6 個交易日。
原因是設定檔裡把合約代號寫死,而原油前月已經滾到下一個。訂閱的是一個失效的合約,程式沒有報錯,只是收不到東西。
所以「繼續累積樣本」實際上從來沒有發生。樣本凍結在 n=18–23。
截至 2026-08-26 仍未修復。 修法很單純(改代號 + 重啟行情服務),但重啟會讓標準分數的歷史窗歸零重建,期間真倉拿不到訊號 —— 那是一個要人來決定的取捨,不是隨手改掉的事。
證據一直在眼前
週六那份 16 天回放裡,原油四個窗的樣本數是 18 / 17 / 18 / 23。
10 天版本的樣本數:一模一樣。
多跑了 6 個交易日,樣本數一個都沒增加。 當時沒人注意到。
這跟站上那套「事前寫死判準」是同一個主題的另一面:判準寫得再好,如果資料管線悄悄斷掉,你會拿著一個凍結的樣本反覆分析,還以為自己在累積證據。
而且它不會報錯。訂閱一個不存在的合約,回傳的是「沒有資料」,不是「訂閱失敗」。
一條很土但有效的檢查
同一支回放跑更多天,每個標的的 n 都必須變大。沒變大的那個,管線斷了。
不需要監控、不需要告警、不需要新工具。就是把兩次回放的 n 並排看一眼。
這條規則同時抓到問題也出具了健康證明
發現原油斷線之後,用同一條規則回頭檢查其他三個商品。兩次回放之間隔了 2 個交易日:
| 標的 | 10 天 n | 16 天 n | 增加 | 判定 |
|---|---|---|---|---|
| 那斯達克 usopen | 50 | 60 | +10 | 恰好等於 2 個交易日的上限,一筆不差 ✅ |
| 黃金 asia | 47 | 56 | +9 | 正常 ✅ |
| 黃金 comex | 49 | 58 | +9 | 正常 ✅ |
| 黃金 usopen | 49 | 58 | +9 | 正常 ✅ |
| 原油四窗 | 18/17/18/23 | 18/17/18/23 | +0 | 管線斷 🔴 |
黃金是 +9 不是 +10,因為某個窗某天訊號觸發數不足,屬正常波動。
獨立佐證:逐日掃行情檔案裡各合約有無資料,8/18–8/26 七個交易日中,那斯達克、黃金、歐元每天都有,只有原油每天都是零。查 API 的現行前月也一致 —— 只有原油滾了合約。
所以那斯達克影子回放的 n=60 是乾淨的。同一條規則,對一個標的判死、對另外三個出具健康證明。
⚠️ 這不是一次事故,是一個會再發生的缺陷
那斯達克和歐元的現行合約都在九月到期。到期時會發生和原油一模一樣的事。
差別在代價:原油斷線只是研究樣本凍結。那斯達克斷線是真倉沒有訊號來源。3
根治方式不是「記得手動換代號」,是在健康檢查裡加一條「每個訂閱合約當天有沒有報價」的告警。人會忘記,檢查不會。
原油那段結論維持:t=0.84、n=18,樣本不足,不是判死。成本估算約 $14/筆仍未實測。 並且在管線修好之前,這條線不會有新樣本。
判死的兩條(數字穩定,不會再變)
黃金:雙向否證
淡化方向,樣本加倍後:
| 窗 | 第一輪 | 加倍後 |
|---|---|---|
| comex | t=1.51(n=24) | t=0.66(n=49) |
| asia | t=1.55 | t=1.25 |
每筆平均同時從 +4.54 點腰斬到 +1.13。真訊號加樣本 t 會上升,噪音加樣本 t 會下降。
反過來做順勢呢?跑 z 門檻 × 持有時間 × 時段窗的 3×3×4 網格,事前寫死判準:
如果動能是真的,拉長持有時間,效果應該增強。
美股開盤窗實際結果:+11.0 → −3.3 → +1.3。沒有梯度,拉長就死。
外部資料同向:266 個交易日的獨立資料集上,60 秒動能因子 IC −0.023、跨日 t=−10.1。黃金在秒級是反轉不是順勢。
雙向否證。這條的價值在事前寫死判準 —— 網格裡一定找得到某格是正的(+11.0 就在那裡),事後看最大值一定會說服自己。
歐元:多重檢定的教科書案例
倫敦窗曾經跑出 t=−2.28。下一輪洗成 −0.04。t 值輪輪洗牌,這就是噪音的定義。
兩個沒進結論的東西
① 預先註冊的假設(尚未驗證)
黃金亞洲窗、順勢方向、長持有。3×3 網格九格全部單調:每列都是短持有為負 → 長持有為正,三個 z 門檻各自獨立重現。最佳格 +$17.7/筆、t=+1.17、n=25。
物理解讀:亞洲時段實體買盤的冰山單足跡 —— 瞬間衝擊會回吐(短持有該淡化),底層累積會延續(長持有該跟隨)。獨立同向觀察:黃金隔夜 +11.7bp/日、日內 −2.7bp。
這是預先註冊,不是發現。 寫在這裡是為了讓它之後沒法被事後修改。t=1.17、n=25,什麼都還沒證明。
② 參與者結構推論(無資料驗證)
淡化的前提是「大額流量不帶資訊」。黃金的大額流量多半是金商銀行在對沖真實場外部位 —— 那是帶資訊的。前提在那斯達克成立、在黃金不成立。4
五個通用教訓
一、判準是走向不是絕對值 —— 包括對自己。 這頁本身就是示範:8/20 我把它寫成三個佐證同向的好案例,8/26 多五天資料後最強的那個佐證倒了。t 從 1.52 掉到 0.79。只看 8/20 那天的絕對值,會得到相反的結論。
二、先量再猜。 「執行落差擴大」聽起來完全合理,直到去量了價差發現它只能解釋 10%。花兩天資料量一次,省下往錯誤方向調參數的一整週。
三、樣本數不長就是管線斷了。 見上面原油那節。判準再嚴謹,也擋不住一個悄悄停止供料的管線。
四、停損位置可以完全翻轉結論。 早期版本的停損蓋在最大不利偏移分布的 p25 上,72% 的單被掃出場,把 +9.3 點/筆的訊號磨成 +0.9。同一訊號、同一段資料,換個停損就從有 edge 變成沒 edge。停損不是風控參數,是策略本身。
五、資料格式決定你能問什麼問題。 買了 13 個月的黃金每秒報價快照,但那個格式沒有主動方向。所以算得出買賣價失衡、算得出動能,唯獨算不出實際在跑的那個訊號。一整年的資料,回答不了最想問的那個問題。
常見問題
影子回放是什麼?跟真倉差在哪? 影子回放是拿同一組規則對歷史行情重跑一次,沒有錢在裡面;真倉是實際下單的帳戶。兩者在早期每筆只差 $2.67,那個差正好是執行成本的量級;現在差 $21.57,成本只能解釋 10.2%。差額變大的原因未解,這條線因此不算收斂。
t 掉下來會不會只是樣本還不夠? 有可能,所以判準是走向而不是單點:真訊號加樣本 t 會往上。這條線在 8/19 到 8/26 之間加了 23 筆,t 往下,而且那 23 筆合計 −$283.06。要翻案得靠後續樣本把它拉回去,不是靠解釋。
原油那條為什麼不直接修好? 修法本身很單純,但重啟行情服務會讓標準分數的歷史窗歸零重建,重建期間真倉拿不到訊號。那是一個要人決定的取捨,不是隨手改掉的事。截至 2026-08-26 未修復,樣本凍結在 n=18–23。
這些數字可以拿來做什麼? 拿來判斷我有沒有在事後修改故事。進出場參數、門檻、停損位置都不公開,理由寫在〈方法論〉;帳戶的真金額與已平倉逐筆在〈績效〉。