在加密貨幣中,選市場和選策略哪個更重要?
六個市場、六種策略、十四個樣本外季度,以及一場針對研究者兩種慣用起手式的預先登記對決。
大多數加密貨幣研究都從兩種起手式之一開始。你找到一個看起來有東西的市場,然後把好幾套規則丟上去。或者你找到一套自己相信的規則,再把它鋪到所有吃得下它的市場上。兩種做法都說得通,但它們對報酬從哪裡來下了很不一樣的賭注:一種認為優勢在市場本身,另一種認為優勢在規則的邏輯裡。
幾乎沒有人真的去測哪一種做法比較划算,因為這兩者很少被放在相同的條件下比較。測市場選擇時,通常會綁一套自己偏好的策略;測策略選擇時,又通常只在自己偏好的市場上跑。結果就是,研究者原本就相信的那一軸,手上總是拿到比較好的牌。
我們讓兩邊用完全相同的方式搭建,然後直接對決。六種結構性策略與六個流動性良好的Binance USDT永續合約市場組成一個平衡網格;一邊可以挑市場,挑完必須在該市場上持有全部六種策略,另一邊可以挑策略,挑完必須把它持有在全部六個市場上。相同的資金、相同的前推保留樣本內證據、相同的淨損益目標、相同的十四個樣本外季度。
樣本範圍規則、策略定義、walk-forward邊界、成本模型與凍結的雜湊值都放在獨立的一頁,才不會擠壓這裡的論述空間。
我們測試了什麼
六個市場、六種策略、一個網格。市場是Binance上的BTC、ETH、DOGE、XRP、BNB與SOL永續合約,依成交金額排序,並在測試期開始之前就固定下來。策略則是系統化加密交易裡最常見的那幾套家具:EMA趨勢、Donchian突破、時間序列動能、RSI反轉、Bollinger通道反向,以及波動壓縮突破。全部36個策略x市場格子都交易小時K棒,而且每個格子都在三個投資組合中運作,所以沒有任何一方能碰到對手碰不到的商品或規則。
數值參數不算策略。回看長度、門檻、停損、目標與最長持有時間都是旋鈕,在每個walk-forward窗口內重新擬合,就像交易台實際會做的那樣,而且每個家族在每個市場、每個窗口都拿到同樣的固定搜尋預算。某個家族就算可調空間比別人大,也沒辦法靠多搜一點來取勝。
每一個樣本外季度前面都接著一年的樣本內歷史,這一年再切成兩段:前九個月用來擬合每個格子的數值參數。後三個月則原封不動地重播已經選定的設定,而選擇者做決定時看到的是這些前推保留的分數,不是擬合階段的分數。
這個切分正是這場對決公平的原因,因為如果選擇者依據的是當初挑出參數的那份損益,它不過是在把自己最佳化器的輸出再讀一次給自己聽。
每個窗口都會產出三個投資組合,三者部署的固定資金完全相同。不做選擇的組合以等權持有全部36個格子,什麼都不挑。選市場方拿走六種策略前推保留平均值最好的那個市場,並在上面持有全部六種策略。選策略方則是鏡像操作,拿走六個市場平均下來最好的那套策略,然後在每個市場上都持有它。
資金不複利,空手的分倉留在現金,所以任何一方都不會悄悄集中到剩下還在跑的部位上。成本各處都用同一套算法:每一筆成交都是taker成交,支付5個基點手續費與2個基點滑價;資金費率則在Binance真實的結算事件上、以真實的正負號計入。小時K棒內部的停損與目標由一分鐘資料還原,而不是用假設帶過,因為高點與低點誰先到,決定了一筆交易是被停損還是打到目標。
主要比較在任何樣本外數字出現之前就已登記:選市場方的累積淨損益減去選策略方的累積淨損益,配對信賴區間則以在每個固定季度內重抽日曆週的方式建立。判定規則也事先定死:區間完全在零以上代表市場選擇勝出,完全在零以下代表策略選擇勝出,區間包含零則代表這個實驗沒有產生可靠的贏家。
結果
兩軸都沒有贏。十四個季度下來,市場選擇領先策略選擇193.9個基點的固定資金,配對95%信賴區間從-7,868.3到8,194.8個基點。點估計值大約只有自身區間寬度的1%,換句話說,這個實驗分不出兩者的差別。
| 組別 | 累積樣本外淨報酬 | 相對於不做選擇 | BH校正後p值 |
|---|---|---|---|
| 選市場方 | -45.22% | +13.20 pp | 0.7513 |
| 選策略方 | -47.16% | +11.26 pp | 0.7513 |
| 不做軸向選擇 | -58.42% |
十四個季度、以固定資金計算的累積樣本外淨報酬。資金不複利,因此這些是各分倉報酬的算術加總,而不是帳戶回撤。
三個組別都虧錢。兩邊的選擇者都比什麼都不挑的組合虧得少,分別少虧13.20與11.26個百分點,但兩項改善都沒有通過事先登記的兩項檢定Benjamini-Hochberg校正。
季度紀錄說明了那個區間的寬度是哪裡來的。市場選擇在六個窗口領先,策略選擇在八個窗口領先,十四個窗口裡領先權易手四次。單季差距對市場選擇最有利的一次是1,852.7個基點,對策略選擇最有利的一次是1,386.9。
兩項預先登記的敏感度測試把點估計值推過了零,卻沒有讓任何東西變窄。改用各合約自上市以來的完整歷史來擬合參數,而不是滾動的九個月,符號翻轉成策略選擇領先,數值為-1,596.7個基點;把真實資金費率換成每次事件固定不利的1個基點,則把數值推得更偏向市場選擇,來到1,359.1。三個區間在零的兩側各自延伸大約14,000個基點。
網格底下的樣子
36個格子裡有七個在整段期間賺錢。其餘都虧,而且虧損大到讓每個市場的平均值與每個策略的平均值全部為負。
看一眼邊帶,選擇者的結果就不再令人意外。市場平均值之間的落差是5,151個基點,從BNB的-3,771到SOL的-8,922;策略平均值之間的落差更大,8,209個基點,從時間序列動能的-3,123到RSI反轉的-11,332。兩軸都拉得開,但沒有一軸會連續兩次以同樣的方式拉開,而那恰好是選擇者唯一需要的東西。
離散程度落在哪裡
把36格網格在全部十四個窗口上做固定效果分解,可以把樣本外的平方和拆成持續性的市場效果、持續性的策略效果、兩者的交互作用、共同的時間效果,以及剩下的一切。
交互作用是三個橫斷面成分中最大的一個,同時bootstrap區間也把它放在兩個主效果之上:市場減交互作用從-11.45到-1.61個百分點,策略減交互作用從-9.96到-0.12,兩者完全落在零以下;而市場減策略從-6.40到+3.44,什麼也定不了。
講白一點,規則與市場的特定搭配,比規則本身或市場本身都更重要。RSI反轉在DOGE上虧了25,027個基點,時間序列動能在同一個市場上卻賺了5,533,而這件事既不是市場決定的,也不是策略決定的。
這個發現救不了選擇者,因為搭配不是他們被允許挑的東西,也因為殘差是交互作用占比的十二倍以上。每個格子x窗口只有一個觀測值,那個殘差裡裝著時變的市場效果、時變的策略效果與所有特異的部分,沒有一項穩定到可以靠三個月的前推保留證據去挑。
成本做了什麼
這個網格在扣成本之前是賺錢的。把全部36個格子與十四個季度加總,毛損益是27,454.6個基點的分倉資金,接著手續費吃掉168,288.4,滑價吃掉67,315.4,資金費率吃掉2,147.0,於是+27,454.6變成-210,296.2。
換算到每筆交易,是1.63個基點的毛損益對上14.13個基點的成本,樣本外共16,826筆交易:每筆成交七個基點、每筆交易兩次成交、持有時間中位數11小時。沒有任何選擇規則能修好這樣的比例,這才是三個組別都深陷紅字的老實原因。這場軸向對決,跑在一群相對於自身優勢交易得太頻繁的小時級規則上。
哪裡看起來脆弱
每次拿掉一個市場,是這個結果最吃緊的地方。六次刪除裡有五次仍讓市場選擇領先,但拿掉BNB會讓差值反轉成-4,494.8個基點。一個六市場的比較,只要少一個市場就變號,那它其實是關於裡面某一個市場的比較,而不是這個交易所的普遍性質。
clone處理完全沒有改變任何東西,因為帶正負號的每日部位相關性在每個窗口都形成六個單獨的群組,沒有任兩個家族接近到可以併成一個。移轉測試從另一個方向講了同樣的故事:把每個窗口凍結的參數在全部六個市場上重播,十四個窗口中有十二個在總損益與期望值兩種評分下都沒有出現正的跨市場整體優勢,一個窗口通過市場依賴性檢查,還有一個是靠單一市場撐起來的。
檢查
最終語料庫包含31,770,479筆候選交易列與16,826筆入選的樣本外交易。帳本成本一致性誤差在5.55e-17報酬單位以內;Python參考實作與Rust生產引擎在72組真實資料對照案例、共25,259筆交易上一致,最大絕對損益差異為1.94e-16;30個種子的零漂移隨機漫步語料庫則沒有產生任何家族的入選樣本外信賴下界能越過零。
兩項自動化警告是靠直接核對資料、而不是靠爭辯解決的。通用檢查把樣本內與樣本外共用的時間戳讀成零天的purge間隔,但這套引擎是在交易層級做purge,直接清點邊界的結果是零筆交易跨越或落在自己登記的窗口之外。同一套檢查裡以夏普為導向的階段回報了低檢定力,以及各家族之間的雜訊尺度差異,這在這裡既不選擇也不決定任何東西,但正是網格中沒有任何單一家族被當成一項優勢來呈現的原因。
決定要去搜市場還是搜策略,等於把力氣分配到一個只承載了兩者之間不到2.5%離散程度的軸上,而搭配承載了6.98%,剩下的都由時間承載。
就這六個市場、這六種策略與這十四個季度而言,先挑市場並沒有可靠地贏過先挑策略,而兩者贏過什麼都不挑的幅度,小到無法與雜訊區分。兩軸上持續性的主效果都很小,搭配效果比其中任何一個都大上數倍,而所有橫斷面成分加起來也不過接近變異的十分之一。
對這一類小時級永續合約系統來說,這場爭論在兩邊的選擇者跑起來之前就已經結束了,結束在一條是毛優勢8.7倍大的成本線上。
限制
- 這個結果涵蓋六個Binance永續合約市場、六個結構性家族與十四個季度的小時資料,並不是對整體加密貨幣、其他交易所或其他持有期間的宣稱。
- 沒有一個未經觸碰的外部市場面板,因此超出這六個市場的移轉性尚未獲得證明。
- 拿掉BNB之後比較結果會變號,這使得六市場估計值依賴於自身樣本範圍中的某一個成員。
- 留一市場的組別在拿掉一個市場之後所持有的分倉數量並不相同,因此那些估計值是描述性的依賴性檢查,不能拿來取代主結果的數字。
- 每個組別都虧錢,所以這場對決比的是兩種虧得比較少的方式。一群會賺錢的策略,可能會把兩軸排出不一樣的順序。
- 這項分解在一個刻意挑選出來的網格上回報描述性的平方和占比,而不是母體變異數成分。
本頁每一張圖表都是在你的瀏覽器中,根據 研究已發布的結果數據表繪製而成,與文字內容及可重現性頁面所引用的是同一批數字,背後沒有任何圖片檔案。
樣本範圍規則、六種策略定義、執行與成本模型、walk-forward迴圈、統計推論、變異分解,以及全部十九項預先登記關卡,附雜湊值與程式碼片段。

