把「我覺得這招有效」變成一個你真的能檢查的數字。
你有一個想法:某個型態出現就進場,跌 3% 出場。回頭看圖覺得對,可是真的下單之後,你分不出來自己是看對了,還是只是挑了幾根順眼的 K 棒。量化交易處理的就是這個落差。
量化交易是用數據和統計把進出場規則事先定義清楚,再讓規則決定每一筆交易,而不是臨場判斷。規則可以很簡單(均線交叉、RSI 超賣),也可以很複雜(多因子模型、機器學習)。複雜度不是重點。
重點是:寫下來的規則每次跑都給你同一個答案。這件事讓它變得可以檢查。你可以把這套規則套回四年的歷史資料,得到具體的數字——報酬多少、最糟的那段跌了多深、手續費吃掉多少。
這三個詞常被混著用,而搞混它們,是一個有潛力的想法最後跑不起來最常見的原因。
| 名詞 | 是什麼 | 不包含什麼 |
|---|---|---|
| 訊號 | 一個條件的輸出,通常是 +1(做多)、0(空手)、−1(做空)。它回答的是現在有沒有事發生。 | 要買多少、什麼時候砍、下單失敗怎麼辦 |
| 策略 | 訊號再加上部位大小、風控上限、執行規則。這才是可以部署、可以被檢驗的東西。 | 它跟你其他部位怎麼互動 |
| 投資組合 | 多個策略或多個標的,加上彼此之間的權重配置。 | — |
大部分說「我有一個策略」的人,手上其實是一個訊號。這不是在挑毛病——訊號是最難、最需要創意的那一段。但訊號本身沒辦法被誠實地回測,因為結果完全取決於你還沒寫下來的部位與風控規則。同一個訊號,兩個人用不同的部位大小,跑出來是兩回事。
在 Blave Agent 裡,這個區分是寫進結構的:訊號式、單一標的的策略是 Type A,必須回測;多標的加權重向量的投資組合是 Type C,也必須回測;其餘都是 Type B,不回測。
| 手動交易 | 量化交易 | |
|---|---|---|
| 進出場依據 | 當下判斷 | 寫死的規則——同樣的輸入,永遠同樣的答案 |
| 能不能驗證 | 沒辦法用你真正用的那套邏輯回頭驗 | 可以——Sharpe、最大回撤、手續費全都算得出來 |
| 什麼時候在跑 | 只有你醒著、盯著的時候 | 部署完就是 24 小時 |
| 會壞在哪 | 壓力來的時候紀律會斷 | 規則會在它適用的市場消失之後,繼續照跑 |
注意最後一列。自動化不是消除失敗模式,是換一種。手動交易的人在最糟的時候放棄計畫;自動化的策略則是在計畫已經失效之後還繼續執行。兩種都真實存在,而且第二種比較安靜,所以更危險。
這是 Blave Agent 回測引擎跑出來的真實例子——btc_sma_cross,BTCUSDT 1 小時線,SMA45/SMA100,2022–2026。總報酬是買入持有的兩倍多。它同時有 −42.6% 的最大回撤,而且四年下來手續費付掉了本金的 22%。
三個數字都重要,但大家只會引用第一個。一個報酬翻倍、卻要你撐過 42% 回撤的策略,不見得比一個報酬少一點、但從來沒把你嚇出場的策略好。而手續費等於本金 22% 這件事表示交易頻率不是免費的——同一個想法做得更快一點,優勢就有可能整碗端給交易所。
能產生這三個數字的流程永遠是同樣五步:把想法寫成明確規則 → 用一段至少包含一次真正下跌的期間回測 → 檢查參數稍微變動後結果還在不在 → 部署 → 監控。第三步是大多數想法安靜死掉的地方。
Blave Agent 把「想邏輯」和「蓋基礎設施」拆開。你用對話描述策略——Telegram、瀏覽器裡一鍵開啟的 VS Code 工作區,或是習慣終端機的話走 SSH——由 agent 負責研究、寫程式、跑回測,並部署到你自己的獨立伺服器上,24 小時執行與監控。
其中兩件事值得單獨講,因為自己做的話,這兩塊最貴:
資料。行情資料走 Blave 自己的 API——加密貨幣、台股、期貨——你不需要各自去談授權、各自維護一條接資料的管線。
下單。Binance、BingX、OKX、Gate.io 是官方支援,合約與現貨的下單程式都是實測過才出貨的;台股經永豐證券下單。其他交易所由 agent 依需求現場串接。
如果你還沒有想法,官方策略是免費的,每一個都附真實回測。它們上架前要過三道閘門:誠實回測、MCPT 顯著性檢定、參數穩健性檢查。過不了的策略不會被列出來。
五個檢查。任何一個沒過,回測數字的意義都跟你以為的不一樣。
你的規則能不能寫成一句話?「當 X 成立就做 Y,遇到 Z 就出場。」寫不出來,代表你手上是直覺不是策略——現在還沒有東西可以測。
回測期間有沒有包含一次真正的下跌?只在多頭跑過的策略等於沒被測過。去找你這個標的歷史上最糟的那段,確認它在你的回測窗口裡面。
回測有沒有算手續費?前面 btc_sma_cross 的例子四年付掉本金 22%。用一個現實的費率(FEE = 0.0005 對應 Binance maker/taker 的 0.05%),不要假設它可以四捨五入掉。
你試過幾組參數?掃一百組,純靠運氣也會有幾組看起來顯著。如果你用全部資料調參數,再用同一段資料報告績效,你報告的是訓練誤差,不是它未來的表現。
報告裡最大的那段回撤,你撐得住嗎?−42.6% 對 100 萬的部位是 42.6 萬的帳面虧損。如果那會讓你把策略關掉,就先把部位縮到不會——你撐不住的那段回撤,就是把帳面虧損變成真虧損的那一段。
它不會幫你找到優勢。回測是驗證你已經有的想法,不是產生想法;把一套系統性流程包在一條沒有優勢的規則外面,只會讓你賠得更穩定。
它不會把過去變成承諾。回測量的是已經發生過的事,而那些條件不保證重演。市場結構會變,為舊結構寫的規則不會自己知道要停。
它也不會把人的判斷拿掉。你還是得決定自己能承受多深的回撤、要投多少錢。這些選擇在模型外面,而且它們決定的結果比模型本身還多。
不用等到想出一個完美的策略才開始。Blave Agent 的官方策略是免費的,附真實回測,也都過了上面那三道閘門。先部署一個,看它在一個虧錢的星期裡怎麼表現,等你看懂它的數字在講什麼,再改成自己的版本。