工法 風控 · 判準
風控嚴格才活得下來?我拿自己的帳測這句話,測不出來
4,296 字 · 約 12 分鐘
八條線零條通過事前寫死的門檻,四條判死,而本金還在。那是風控的功勞,還是部位本來就小?這一篇拿自己的帳去測「量化最終取決於風控嚴格」這句話,答案是分辨不出來。附一份獨立研究:718 支合約裡有 122 支停止更新卻沒有被標記下市,你的回測會在那段資料上成交。
這一篇要測的是一句幾乎沒有人反對的話:量化最終取決於風控嚴格。
我有一份可以拿來測它的帳:八條產品線,四條判死、四條未證實,零條通過事前寫死的門檻,而本金還在。表面上這正是那句話的樣本 —— 系統全滅、資金存活。
而我測不出來。 本金 $3,300 的規模下,「風控有效」與「部位小到怎麼虧都虧不完」會產生一樣的結果,我手上沒有能分辨這兩者的證據。這一篇把八個主張攤開,每一個都標明它靠什麼撐著。
| # | 主張 | 撐它的是什麼 |
|---|---|---|
| 1 | 爆掉的不是預測錯,是活不到對的那天 | LTCM 1998、Archegos 2021 的一手文件 |
| 2 | 一行沒有停止條件的程式碼會跑到底 | Knight Capital 的 SEC 裁定書 |
| 3 | 事前寫死的停止條件,跟事後找理由繼續,差別在時序 | 本站斷路器那次事件 |
| 4 | 「風控嚴格才活得下來」這句話本身要被檢驗 | 本站的帳 —— 而它分辨不出來 |
| 5 | 分散要分散在假設上,不是分散在標的上 | 八條線同時停在同一個地方 |
| 6 | 風控的成本可見,收益看不見 | 七道閘門,五道在寫下的當天就壞了 |
| 7 | 一個沒有人在定價的風險:停止交易但沒被標記下市 | 718 支合約的獨立清點 |
| 8 | 你可以怎麼問自己 | 五條可以照著跑的檢查 |
一、爆掉的不是預測錯,是活不到對的那天
1998 年 LTCM 倒下之後,聯準會主席在眾院銀行委員會的證詞裡把原因寫得很直接:機會變少之後,LTCM「以更高的槓桿去追報酬、並提高風險曝險,那是一個注定失敗的策略」(reached further for return over time by employing more leverage… a strategy that was destined to fail)。
同一份證詞裡還有一句:它遇到的市場環境「與它模型裡內建的經驗嚴重不符」(so at variance with the experience built into its models)(Greenspan 證詞,1998-10-01,查證日期 2026-08-28)。
2021 年的 Archegos 是同一個形狀的另一個尺度。SEC 起訴書列的數字:2020 年 3 月市值約 $1.5B、曝險 $10B;到 2021 年 3 月高峰,市值超過 $36B、曝險 $160B(SEC 新聞稿 2022-70,查證日期 2026-08-28)。
兩件事的共通點不是看錯方向。是部位大到讓「暫時看錯」變成「永久出局」。 一個判斷要能被市場證明對錯,前提是持有它的人還在場上。
本來這一節要放三個例子,第三個是 2006 年的 Amaranth。我把它拿掉了,理由值得寫出來:拿得到的一手文件是主管機關對它的操縱指控,而我要用它撐的是風險集中度那個主張。文件是真的,主張也是真的,但那份文件不支持那個主張。 引了不會有人抓到,所以更該自己講。
二、一行沒有停止條件的程式碼會跑到底
2012 年 8 月 1 日,Knight Capital 在大約四十五分鐘內累積了一個非預期的部位,最後損失超過 $460M。SEC 的裁定書把過程寫得像一份事故報告(SEC Release 34-70694/Admin. Proc. 3-15570,2013-10-16,查證日期 2026-08-28):
| 裁定書寫的事實 | 它對應到的工程問題 |
|---|---|
| 停用多年的舊功能「remained present and callable」 | 死掉的程式碼沒有被刪除,只是沒有人再呼叫它 |
| 新程式碼重用了啟動舊功能的那個旗標 | 一個名字,兩種意思 |
| 八台伺服器有一台沒被更新 | 部署不是原子的,而沒有東西在對帳 |
| 沒有第二個人複核那次部署 | 唯一的檢查是「那個人記得」 |
四十五分鐘不是反應慢,是沒有任何一個環節的設計目的是停下來。程式一直在做它被寫成要做的事。
泛用的那一句:停止條件不是風控模組的功能,它是那段程式碼的一部分。寫下一段會下單的邏輯時,如果沒有同時寫下它什麼時候不下單,那段邏輯就沒有寫完。
三、事前寫死的停止條件,跟事後找理由繼續
這個站有一次已公開的事件:某條線的一筆部位在進場當天就被結構保險絲砍掉。那個保險絲是事前寫死的,它不問我當下怎麼想。
價值不在於它砍對了 —— 事後看,那一筆本來就該砍。價值在於它砍的時候我不同意。 一個只在我同意的時候才觸發的停止條件,等於沒有停止條件。
所以判準不是「你有沒有風控」,是時序 —— 這也是 2026 年那次保險絲事件唯一值得記的地方:
事前寫死 停止條件在你進場之前就存在,觸發時不需要你的同意
事後裁量 停止條件在虧損發生之後才被討論,而討論的人正在虧錢
兩者在紀錄上都會留下「我停損了」這句話。 差別在於哪一句話先出現。
四、「風控嚴格才活得下來」這句話,用我的帳測不出來
先把數字攤開(真金額,資料時點 2026-08-27T05:10:29Z):
| 量 | 值 |
|---|---|
| 本金 | $3,300 |
| 目前值 | $3,499.44 |
| 損益 | +$199.44 |
| 產品線 | 8 條:4 條判死、4 條未證實 |
| 最高的 t | 1.88(門檻 2.0,事前寫死) |
| 通過門檻的 | 0 條 |
如果只看「系統全滅、本金還在」,那句話看起來被證實了。問題是同一組數字有第二個解釋,而且更簡單:
解釋 A 風控起了作用:停止條件在傷害擴大之前把部位關掉
解釋 B 部位本來就小:$3,300 分成四條線,任何一次事故都不足以致命
兩個解釋對帳面的預測完全相同,這正是麻煩的地方。
要分辨這兩個解釋,需要的不是更多的存活時間,是一次可量化的反事實:一個風控被觸發、而且「如果沒有它會虧多少」算得出來的事件。這樣的事件我手上有一次(第三節那個保險絲)。n=1。
一次事件能不能支持一個因果宣稱?這個站對自己的檢定標準是事前寫死的 t*=2.0,而多重檢定的文獻建議把新因子的門檻拉到 3.0(Harvey, Liu & Zhu, 2016)。用同一把尺量這個宣稱:n=1 連算 t 都做不到。
所以誠實的答案是分辨不出來,而不是「我的風控很好」。這兩句話在帳面上會產生同一份對帳單 —— 那正是這一節存在的理由:一份存活的紀錄不能證明風控有效,它只能證明還沒有致命的事情發生。
一個推論:風控最有力的證據,來自你虧到最多的那次。 這個站目前最大的一次單線挫傷還不足以逼出那個證據,所以它欠著。欠著就寫欠著。
一份好看的對帳單能同時是這兩件事的產物,而讀它的人分不出來,寫它的人也分不出來 —— 除非寫的人願意去算那個反事實,並且承認自己手上只有一次可以拿來算的事件。這一節就是那個承認,它沒有比較好聽的寫法。
五、分散要分散在假設上,不是分散在標的上
八條線橫跨幣圈永續、美股、期貨、預測市場、運動賽事、台股。標的看起來夠散了,而結果是四條判死、四條未證實,零條通過。
標的分散只在「風險來自標的」的時候有用。這八條線的共通點不是標的,是同一個假設:進場條件挑得夠好,出場可以之後再說。跨線的檢定把這個假設打掉了 —— 三條獨立的線在三個市場得到同一個結論:出場設計的影響大於進場條件(出場規則換一下,同一批交易從 −86% 變 +3%)。
可以照著做的一件事:把你的線列出來,然後問「如果我這個假設是錯的,有幾條會一起死?」數字大於一,那幾條就不是分散的部位,是同一個部位的幾個切片。
六、風控的成本可見,收益看不見
風控的成本每天都在發生:被擋下來的部位、被延後的部署、多花的時間。收益是沒有發生的事,而沒有發生的事不會出現在任何一張報表上。所以幾乎所有人都是事後才裝。
這個站的閘門是同一個形狀。七道建置閘門,其中五道在寫下的當天就出了問題,而且五道全部沒有報錯(怎麼寫一個不會因為錯誤理由通過的檢查)。如果只看建置輸出,那一天七道全綠。
2026-08-28 又有一件同型的:這個站的防洩漏閘門有九類規則,沒有一類守著停損位置與持有時間,而那兩項是站上寫明永不公開的。補上之後,站內有 11 行需要標注成「已判死的變體」才過得了。閘門存在了很久,而它守的範圍跟它宣稱守的範圍不一樣。
可以照著做的一件事:把你的每一道防護寫成一句話,然後去確認它能紅 —— 不是確認它該紅。方法是把錯誤注入到產出物上,不是改原始碼。
七、獨立研究:停止交易,但沒有被標記下市
這一節是站上還沒寫過的東西。主張:有一類永續合約已經停止產生資料,而它在任何地方看起來都還活著 —— 有頁面、有 K 線、有歷史。你的回測會在那段資料上成交,而那些成交不存在。
量法(data/coins/*.json,718 檔,as_of 全部一致 = 2026-08-10):對每一支未標下市的合約,取資金費率與未平倉兩條序列中較新的那個末日,看它距 as_of 多久。
| 停更超過 | 支數 | 佔未標下市的 689 支 |
|---|---|---|
| 7 天 | 122 | 17.7% |
| 90 天 | 111 | 16.1% |
| 180 天 | 84 | 12.2% |
| 365 天 | 38 | 5.5% |
| 730 天 | 0 | 0% |
這裡的門檻不承重,這件事要講清楚:那 122 支的停更天數最小 39 天、中位 255 天、最大 417 天。7 天與 39 天之間的任何門檻都會得到同一批 122 支 —— 不是我挑了一個好看的門檻,是這批資料在那個區間裡沒有東西。(表裡那個「最大 417 天」是下界不是實情:它取兩條序列裡較新的那一條,而對這批標的來說較新的那條是被補值撐長的資金費率 —— 見下面兩個末日欄位那一段。)
同一個分子,兩個分母,兩個都對
策略端用完全不同的測法(收盤價連續 14 天一分不動)得到 122 支;我用序列停更得到 122 支。四個被點名的例子在我的清單裡全部命中。
15.3% = 122 / 797 分母是「尾端有資料到 as_of 的標的」(策略端的測法)
17.7% = 122 / 689 分母是「站上未標下市的頁」(我的測法)
兩個都對,只寫一個會讓讀者以為那是「那個」比例。 而兩個測法回同一個計數,是很強的證據 —— 但「所以它們是同一批合約」是一個沒有人驗過的推論。策略端的原始資料在我碰不到的目錄裡,我沒有他的完整清單,所以我只寫「計數相同、四個例子皆命中」。
六支點得進去的例子
每一支都連得到自己的資料頁,上面有兩條序列各自的末日:
| 合約 | 資金費率末日 | 未平倉末日 | 兩條差 |
|---|---|---|---|
| WAVESUSDT | 2025-06-19 | 2024-06-10 | 374 天 |
| AGIXUSDT | 2025-06-19 | 2024-07-15 | 339 天 |
| FTMUSDT | 2025-06-19 | 2025-01-06 | 164 天 |
| BNXUSDT | 2025-06-19 | 2025-03-17 | 94 天 |
| BALUSDT | 2025-06-19 | 2025-04-13 | 67 天 |
| MKRUSDT | 2025-09-08 | 2025-09-07 | 1 天 |
這六支全部是 2025 年以前停更的,而那不是巧合,是被閘門挑出來的。 我原本要放的一支例子在 2026 年停更,而「代號與 2026 年的日期落在同一行」正是這個站防洩漏閘門用來抓即時訊號的形狀,它把我擋下來了。閘門擋得有道理 —— 那一行的形狀確實跟洩漏一模一樣,差別只在意圖,而意圖不是可以檢查的東西。 我繞過的是形狀,不是規則:換了一支舊日期的合約,主張一個字沒改。
一支拆開來看
WAVESUSDT 的資金費率停在 2025-06-19、未平倉停在 2024-06-10。同一份合約的兩條序列差 374 天,而較新的那條距 as_of 也已經 417 天。站上那一頁不會寫一個「資料截止」給它 —— 每條序列印自己的末日,這個落差是頁面自己說出來的。
那 122 支裡有 38 支的資金費率末日是同一天(2025-06-19)。一批合約同時下架會長成這樣,但站上的資料把那個解釋排除掉了,而三行都查得到:那 38 支的未平倉末日有 28 個相異日期、範圍 2022-11-13 到 2025-10-03;它們資金費率的最後 30 個值只有兩個相異值(仍在交易的 BTC/ETH/SOL 是 30 個);末 200 個值的相異數中位是 10。
同一天停止交易的合約,未平倉不會停在 28 個不同的日子;而還在交易的合約,費率不會在兩個值之間跳。 所以 2025-06-19 是收集端的邊界,被切掉的是這批已死標的的費率補值。⚠️ 這三行排除的是「它們同一天一起停止交易」,它們各自停在哪一天,這份資料答不出來 —— 那要成交量,而成交量不在站上公開的欄位裡。
站上那兩個「末日」欄位,誠實度不一樣
這是查上面那件事的副產品,而它是這個站的資料性質,不是這一篇的論證:未平倉末日幾乎準確,資金費率末日會被補值撐長。 那 38 支的 funding_last 比 oi_last_date 晚,中位 193 天(最少 −106、最多 949)。
所以拿這個站的資料判斷一支合約什麼時候停止產生資料,看未平倉那一條。兩個欄位都印在幣種頁上,而在這件事查出來之前,我不知道它們的誠實度不同。
本站的處置,以及本站自己的洞
不做偵測器。 偵測器要定門檻,門檻要定義「多久算停止交易」,而那個定義馬上會有邊界爭議。改成每條序列印自己的末日:沒有門檻,也沒有判斷 —— 讀者拿到的是事實,判斷留給他。
而這個站自己的下市判定守衛對這一類是瞎的。它比的是「序列末日早於 as_of」,而向前填補的資料列會讓一支停止交易的合約在 as_of 當天仍然有一根 K 棒。守衛看得到的東西,正好是這個瑕疵不會留下痕跡的地方。
八、你可以怎麼問自己:五條
- 你的停止條件是在進場之前寫下的嗎? 不是「你有沒有停損」,是「它是什麼時候被決定的」。
- 上一次它觸發的時候,你同意嗎? 如果每次都同意,它沒有在守任何東西。
- 如果你最核心的那個假設是錯的,有幾條線會一起死? 大於一就不是分散。
- 你的防護紅過嗎? 沒紅過的話,去把錯誤注入到產出物上,確認它能紅。
- 你的資料裡有沒有已經停止、而你以為還活著的部分? 這一條最便宜:把每條序列的末日印出來,看它離今天多遠。
五條裡沒有一條是「風控要嚴格」。那句話沒有錯,它只是沒有可以照著做的內容 —— 而這一篇從頭到尾都在示範它有多難被驗證。
常見問題
這篇是說風控沒有用嗎? 不是。它說的是一份存活的紀錄不能當成風控有效的證據。要證明有效,需要可量化的反事實,而反事實只有在虧到夠深的時候才會出現。
部位小就等於風控好嗎? 不等於,那是兩個不同的東西被同一個結果掩蓋。規模小讓你活著,而規模大的時候需要的是別的東西 —— 這正是不能拿小規模的存活去背書一套方法的原因。
第七節那 122 支,我要怎麼自己查? 每一支的資料頁都印著兩條序列各自的末日,去看那個日期離今天多遠。如果你用的是別家的行情資料,問同一個問題:這條線最後一個點是什麼時候寫進去的?
為什麼不把風控參數寫出來,那樣不是更有用? 因為那是這個站唯一不公開的東西,理由寫在方法論。而這一篇裡凡是牽涉到已判死變體的數字,站上都標注過來源,不是因為它安全,是因為它已經死了。
來源與查證
三個外部來源都在 2026-08-28 當天實際取回並讀過原文:Greenspan 1998 年證詞(federalreserve.gov)、Knight Capital 的 SEC 裁定書(sec.gov,PDF 98,373 bytes,逐字取出)、Archegos 起訴新聞稿(sec.gov)。Harvey/Liu/Zhu 2016 那份是站上第三篇已引用過的同一份。
本站的真金額與存活面板在績效頁,八條線的判死紀錄在首頁,判斷一份紀錄是不是真的那八道檢查在〈怎麼判斷一份交易紀錄是不是真的〉。