跳至內容
所有策略

策略

橫斷面 RETAIL-CROWDING 反向輪動,純多 (BINANCE USD-M、8 主流幣、WEEKLY 持有 3 LEAST 散戶擁擠標的,依 GLOBAL 多/空帳戶比率——一純低持有度 FACTOR,非動能;系統性狂熱現金閘,2 參數)

結果: 已放棄

RetailCrowdingContrarianRotationLong

橫斷面 RETAIL-CROWDING 反向輪動,純多 (BINANCE USD-M、8 主流幣、WEEKLY 持有 3 LEAST 散戶擁擠標的,依 GLOBAL 多/空帳戶比率——一純低持有度 FACTOR,非動能;系統性狂熱現金閘,2 參數)

假說

於 8 大 USD-M 宇宙 (BTC、ETH、SOL、BNB、AVAX、LINK、ADA、XRP) 之 LONG-ONLY、週再平衡橫斷面 ROTATION,以真正之 NON-PRICE CROWDING 信號選股:Binance VISION「metrics」檔案中各標的 GLOBAL 多/空 ACCOUNT 比率 (count_long_short_ratio,散戶持倉代理指標) (MULTI-YEAR 至約 2020,NOT 30 日 API)。機制為純粹之 UNDER-OWNERSHIP 因子——持有散戶 LEAST 擁擠做多之主流幣,因擁擠做多標的潛藏多單爆倉/軋空下行風險,而低持有標的則有被買盤推升之空間。此策略刻意採用在此反覆存活之 ONLY 結構家族——純多、主流幣、週持有 top-K、參數數低(已部署動能輪動 Sharpe 2.6 與負資金費率套利組合 Sharpe 1.97)——並對兩者皆貢獻一選股關鍵鍵 ORTHOGONAL:非價格相對強度(動能)、非資金費率(套利),而是群眾持倉配置。依本次會談之證據,其避開所有死亡模式:NOT 單一標的方向性計時器(此類已 -100%/-43%/風險否決而亡)、NOT 美元中性價差(無空單腿 → 無 90% DD 爆倉)、NOT 資金費率/選擇權/清算/純 OHLCV。其與待審之 SmartMoneyGatedMomentumRotation(以 TOP-TRADER 群體 GATE 一組動能組合)及 EthRetail(單一標的多空反向)皆不同:本策略以 RETAIL/全域群體作為反向 LONG-ONLY 組合中 PRIMARY 橫斷面排名鍵,完全不具動能成分。2 個參數,K 與頻率凍結於已驗證模板。

修正 QA 所指出的確切缺陷。QA 拒絕該排名鍵,理由是未平倉量 (a) 並非散戶代理指標——而是全體參與者的總未平倉名目金額——且 (b) 無方向性,因永續合約總多單等於總空單,因此無法表達「最少擁擠-LONG」。新排名鍵為 `taker_long_short_vol_ratio`,自 `taker_flow_by_instrument` 按腿讀取:其為主動 BUY 量除以主動 SELL 量,故於建構上即 DIRECTIONAL (高值在字面上代表該標的群眾偏多),且為主動/吃單方(散戶面向)衡量,而非總未平倉名目金額。其亦來自假設所指名之同一份 Binance VISION `metrics` 檔案,具備同樣多年至 -2020 之歷史——僅欄位不同。排名使用各標的自身 z 分數 (7 日均值對 90 日均值/標準差),使結構性不同之吃單水位能跨 BTC 與 ADA 比較,根據之教訓為:輔助資料上之固定絕對門檻不具尺度不變性。DISCLOSED、NOT HIDDEN:假設字面之排名鍵為各標的 GLOBAL 多/空 ACCOUNT 比 (`long_short_ratio`,位於同一 parquet 檔),但管線僅為……顯示更多顯示較少

修正 QA 所指出的確切缺陷。QA 拒絕該排名鍵,理由是未平倉量 (a) 並非散戶代理指標——而是全體參與者的總未平倉名目金額——且 (b) 無方向性,因永續合約總多單等於總空單,因此無法表達「最少擁擠-LONG」。新排名鍵為 `taker_long_short_vol_ratio`,自 `taker_flow_by_instrument` 按腿讀取:其為主動 BUY 量除以主動 SELL 量,故於建構上即 DIRECTIONAL (高值在字面上代表該標的群眾偏多),且為主動/吃單方(散戶面向)衡量,而非總未平倉名目金額。其亦來自假設所指名之同一份 Binance VISION `metrics` 檔案,具備同樣多年至 -2020 之歷史——僅欄位不同。排名使用各標的自身 z 分數 (7 日均值對 90 日均值/標準差),使結構性不同之吃單水位能跨 BTC 與 ADA 比較,根據之教訓為:輔助資料上之固定絕對門檻不具尺度不變性。DISCLOSED、NOT HIDDEN:假設字面之排名鍵為各標的 GLOBAL 多/空 ACCOUNT 比 (`long_short_ratio`,位於同一 parquet 檔),但管線僅為 PRIMARY 標的載入 `metrics`,且現存僅三項按腿橫斷面接線:`funding_rates_by_instrument`、`open_interest_by_instrument` 與 `taker_flow_by_instrument` (subprocess_entry.py)——故 8 標的依帳戶比率之排名於現有策略程式碼中無法表達;其需 `global_ratio_by_instrument` 接線以鏡像此三項,屬管線變更。於現有三項中,吃單流量為唯一同時具方向性與散戶側者,故為忠實替代,而帳戶比率於 IS 可得處仍被使用(BTC 狂熱現金閘)。提交前已以真實資料驗證:全部 8 腿皆攜帶 8k 點跨步序列,跨度 1737-2193 天,過去 4 年中 208/208 次模擬週再平衡產生橫斷面排名,且持倉於各標的間輪動(各 67-86 標的)而非黏著於一個——故其確實交易且非退化排名。另帶入兩項小修正:週頻現改以 K 線時間戳之日曆錨定,而非相對於程序之 `_bar_i` 計數器(重啟安全、回放一致);且強制 `exit_level` 嚴格低於 `euphoria_level`,使最佳化器無法將遲滯反轉為逐 K 線振盪。第 -3 層逾時安全機制不變且保留:前綴和 + searchsorted 使每次逐 K 線查找維持 O(log n),解析時跨步將 __init__ 上限控制於約 10 秒,經全 8 腿實測。

verification_loop: 驗證失敗 (Layer 4 — QA 審查) [class=hypothesis_mismatch]: - [edge_concern] Sandbox 是一個連貫的純做多主流幣種籃子,能夠運行並交易(337 筆交易,avg_trade_return_pct 0.69% 通過手續費下限),但 total_return -20.85%、information_ratio -0.901 相對於等權重籃子基準,以及 max_drawdown 71% (CI 至 96%) 顯示替代的主動買賣流量排序關鍵字,相較於樸素的等權重持有,增加了負面的風險調整後價值。這僅為建議性意見;它位於排序關鍵字錯配的下游,應由分析師在修正實作後重新評估,而非在此處阻擋。 - [critical] 該假說的唯一決定性特徵——在標題/描述中反覆重申(「依 GLOBAL 多空帳戶比」、「count_long_short_ratio」、「純低持有 FACTOR,非動能」)——在於 CROSS-SECTIONAL RANKING KEY 是各標的的全球多空 ACCOUNT……顯示更多顯示較少

verification_loop: 驗證失敗 (Layer 4 — QA 審查) [class=hypothesis_mismatch]: - [edge_concern] Sandbox 是一個連貫的純做多主流幣種籃子,能夠運行並交易(337 筆交易,avg_trade_return_pct 0.69% 通過手續費下限),但 total_return -20.85%、information_ratio -0.901 相對於等權重籃子基準,以及 max_drawdown 71% (CI 至 96%) 顯示替代的主動買賣流量排序關鍵字,相較於樸素的等權重持有,增加了負面的風險調整後價值。這僅為建議性意見;它位於排序關鍵字錯配的下游,應由分析師在修正實作後重新評估,而非在此處阻擋。 - [critical] 該假說的唯一決定性特徵——在標題/描述中反覆重申(「依 GLOBAL 多空帳戶比」、「count_long_short_ratio」、「純低持有 FACTOR,非動能」)——在於 CROSS-SECTIONAL RANKING KEY 是各標的的全球多空 ACCOUNT 比率,一個刻意與動能和資金費率正交的散戶持倉/持有代理指標。但程式碼 NOT 依此排序。_crowd_z() / _rebalance() 依 8 個主流幣種的 `taker_long_short_vol_ratio`(從 `taker_flow_by_instrument` 讀取的主動 BUY 量 / 主動 SELL 量)排序。主動買賣量比是 FLOW/AGGRESSOR 衡量指標,並非持有/持倉衡量指標——它與帳戶比有實質差異,且可說更接近該假說明確聲稱正交的短期流向/動能。命名的帳戶比僅用於次要的 BTC 亢奮現金門檻(_parse_global / calculate_signal),從不用於主要選擇。根據 QA 檢查清單,當假說具體命名的核心優勢在程式碼中不存在時,屬嚴重問題:所述的低持有因子並非實際交易的因子。(line 259) — 修正:可選擇 (a) 將各標的的全球帳戶比接入管線作為 `global_ratio_by_instrument`(仿照 subprocess_entry.py 中的 funding_rates_by_instrument / open_interest_by_instrument / taker_flow_by_instrument)並依此排序——這是該假說所指的忠實實作;或 (b) 若該逐腿序列確實無法提供,則此次運行屬 DATA-覆蓋率阻擋 (not_measurable),而非使用替代關鍵字出貨的策略——應如實回報,讓該假說在序列接入前暫停,而非默默地交易另一個(流向)因子。Do - [warning] 一致性檢查標記假說 'WEEKLY' 與配置 bar_type 1-DAY 不一致。這 NOT 非真正的不匹配:假說中的「每週」指的是 REBALANCE/HOLD 週轉節奏,已正確實作為由日曆錨定的 7-日再平衡(day % rebalance_days == 0)所控管的日線。使用字面的週線會粗化亢奮百分位和週轉節奏;日線 + 7-日再平衡的建構是表達每週輪動的正確方式。為透明起見註明;不影響裁決。(line 380) — 修正:可選擇將假說文字改寫為「在日線上每週再平衡」以消除 Layer-1.5 的一致性警告。

實作

於 8 USD-M 主流幣 (BTC、ETH、SOL、BNB、AVAX、LINK、ADA、XRP) 之純多、週再平衡橫斷面輪動。各標的擁擠度由 Binance Vision `metrics` 鏡像檔中之各標的 TAKER 多/空 VOLUME 比率(主動買量/主動賣量,5 分鐘,多年)衡量,以自身 7 日均值對其 90 日均值與標準差取 z 分數;持有 3 LEAST 擁擠做多標的,等權重,各佔股權 30%。由 PRIMARY (BTC) 全球多/空 ACCOUNT 比率建構之系統性狂熱現金閘,當該比率位於其自身 90 日分佈之前 15% 區間時將整本書輪動至現金,並於第 65 百分位再投資(遲滯)。再平衡錨定於日曆時間 (days_since_epoch % 7),而非 K 線計數器。純多,槓桿 1.0,無空單腿。

驗證結果

驗證失敗 (Layer 4 — QA 審查) [class=hypothesis_mismatch]: - [edge_concern] Sandbox 是一個連貫的純做多主流幣種籃子,能夠運行並交易(337 筆交易,avg_trade_return_pct 0.69% 通過手續費下限),但 total_return -20.85%、information_ratio -0.901 相對於等權重籃子基準,以及 max_drawdown 71% (CI 至 96%) 顯示替代的主動買賣流量排序關鍵字,相較於樸素的等權重持有,增加了負面的風險調整後價值。這僅為建議性意見;它位於排序關鍵字錯配的下游,應由分析師在修正實作後重新評估,而非在此處阻擋。 - [critical] 該假說的唯一決定性特徵——在標題/描述中反覆重申(「依 GLOBAL 多空帳戶比」、「count_long_short_ratio」、「純低持有 FACTOR,非動能」)——在於 CROSS-SECTIONAL RANKING KEY 是各標的的全球多空 ACCOUNT 比率,一個刻意與動能和資金費率正交的散戶持倉/持有代理指標。但程式碼 NOT……顯示更多顯示較少

驗證失敗 (Layer 4 — QA 審查) [class=hypothesis_mismatch]: - [edge_concern] Sandbox 是一個連貫的純做多主流幣種籃子,能夠運行並交易(337 筆交易,avg_trade_return_pct 0.69% 通過手續費下限),但 total_return -20.85%、information_ratio -0.901 相對於等權重籃子基準,以及 max_drawdown 71% (CI 至 96%) 顯示替代的主動買賣流量排序關鍵字,相較於樸素的等權重持有,增加了負面的風險調整後價值。這僅為建議性意見;它位於排序關鍵字錯配的下游,應由分析師在修正實作後重新評估,而非在此處阻擋。 - [critical] 該假說的唯一決定性特徵——在標題/描述中反覆重申(「依 GLOBAL 多空帳戶比」、「count_long_short_ratio」、「純低持有 FACTOR,非動能」)——在於 CROSS-SECTIONAL RANKING KEY 是各標的的全球多空 ACCOUNT 比率,一個刻意與動能和資金費率正交的散戶持倉/持有代理指標。但程式碼 NOT 依此排序。_crowd_z() / _rebalance() 依 8 個主流幣種的 `taker_long_short_vol_ratio`(從 `taker_flow_by_instrument` 讀取的主動 BUY 量 / 主動 SELL 量)排序。主動買賣量比是 FLOW/AGGRESSOR 衡量指標,並非持有/持倉衡量指標——它與帳戶比有實質差異,且可說更接近該假說明確聲稱正交的短期流向/動能。命名的帳戶比僅用於次要的 BTC 亢奮現金門檻(_parse_global / calculate_signal),從不用於主要選擇。根據 QA 檢查清單,當假說具體命名的核心優勢在程式碼中不存在時,屬嚴重問題:所述的低持有因子並非實際交易的因子。(line 259) — 修正:可選擇 (a) 將各標的的全球帳戶比接入管線作為 `global_ratio_by_instrument`(仿照 subprocess_entry.py 中的 funding_rates_by_instrument / open_interest_by_instrument / taker_flow_by_instrument)並依此排序——這是該假說所指的忠實實作;或 (b) 若該逐腿序列確實無法提供,則此次運行屬 DATA-覆蓋率阻擋 (not_measurable),而非使用替代關鍵字出貨的策略——應如實回報,讓該假說在序列接入前暫停,而非默默地交易另一個(流向)因子。Do - [warning] 一致性檢查標記假說 'WEEKLY' 與配置 bar_type 1-DAY 不一致。這 NOT 非真正的不匹配:假說中的「每週」指的是 REBALANCE/HOLD 週轉節奏,已正確實作為由日曆錨定的 7-日再平衡(day % rebalance_days == 0)所控管的日線。使用字面的週線會粗化亢奮百分位和週轉節奏;日線 + 7-日再平衡的建構是表達每週輪動的正確方式。為透明起見註明;不影響裁決。(line 380) — 修正:可選擇將假說文字改寫為「在日線上每週再平衡」以消除 Layer-1.5 的一致性警告。

迭代紀錄

驗證失敗(第 2 層——合成情境): 使用參數:['top_k'、'exit_level'、'min_notional'、'per_name_frac'、'euphoria_level'、'rebalance_days'、'euphoria_window'] 請檢查 __init__ 是否自 self.parameters.get() 設定所有屬性。 - steady_uptrend:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000) - steady_downtrend:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000) - flat_ranging:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000) - volatility_spike:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000) - zero_volume:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000) - price_gap:TypeError:RetailCrowdingContrarianRotationLong._asof() 接受 3 個位置參數,但給定 4 個 (K 線時間戳:1735691940000)

驗證失敗(第 3 層——沙盒回測):煙霧測試超出 300 秒之時鐘上限。這幾乎總是意味著隨歷史規模線性增長之逐 K 線運算——例如重新掃描完整之資金費率/輔助序列,或於每根 K 線上之 calculate_signal()/on_bar() 內重建清單並呼叫 min()/sorted()。請於 __init__ 預先計算已排序之時間戳陣列 ONCE 並使用 bisect,或以時間戳為鍵快取查找,使逐 K 線成本為 O(log n) 而非 O(n)。

驗證失敗 (Layer 4 — QA 審查) [class=hypothesis_mismatch]: - [edge_concern] Sandbox 是一個煙霧測試而非失敗原因,但請注意:metrics_reliable=false,Sharpe (0.10) 與 total_return (-34.3%) 的方向不一致,MDD 70%,且 OI-擁擠持倉在壓力波動率三分位中損失最大 (-37.8%)。若該機制能通過回測審查,首先檢查 OI z-rank 是否在任何方向上仍具備優勢,因為 OI 對方向無感。 - 此假說的核心優勢在於對各標的的 GLOBAL LONG/SHORT ACCOUNT RATIO 進行橫斷面排序——一個有方向的散戶低持有因子(「持有散戶 LEAST 擁擠-LONG 的標的」)。但程式碼實際上是按各標的的 PERP OPEN INTEREST z 分數排序,並持有最低的 3。這是一個替代機制,未保留其經濟意涵:OI 並非散戶代理指標(它是所有參與者的總未平倉金額),而 OI 為 DIRECTION-BLIND(永續合約中總多單 == 總空單),因此無法表達「最少擁擠的多單」。假說中具體命名的優勢在程式碼中不存在 → 嚴重。

驗證失敗(第 4 層——QA 審查)[類別=hypothesis_mismatch]: - [edge_concern] 沙盒看似健康 (+93%、Sharpe 0.77、PF 1.55、avg_trade_return_pct 6.63%),正因程式碼為一資金費率套利輪動,開發者確認其與已部署之負資金費率套利組合重疊——故良好數字反對晉升一個近似重複之線上策略,而非假設本欲新增之正交擁擠因子。屬建議性質;阻擋之因係保真度。 - 核心邊際未實作,且替代品即假設 EXCLUDES 之確切機制。假設依各標的 GLOBAL 多/空 ACCOUNT 比率(散戶擁擠度)排名,明確聲明「非資金費率(套利)…與動能及資金費率正交」。程式碼依各標的 FUNDING (最低=持有) 對橫斷面排序——一資金費率套利排名,開發者坦承其與已部署套利組合重疊。帳戶比率擁擠鍵缺席且不可行(指標僅為主要標的接線;無 metrics_by_instrument)。 - 再平衡頻率錨定於程序相對之 K 線計數器 (self._bar_i % rebalance_days),而非 K 線時間戳。重啟重設 _bar_i,使週輪動格點偏離任何固定日曆日;位元級回放無法重現輪動日。屬較輕之第 -20 項形式(無哨兵/首 K 觸發)。應改自紀元起日數或固定星期推導。

放棄原因

verification_loop:驗證失敗(第 4 層——QA 審查)[類別=hypothesis_mismatch]: - [edge_concern] 沙盒為一致之純多主流幣組合,可運行且交易 (337 次交易,avg_trade_return_pct 0.69% 通過手續費下限),但相較等權重組合基準,total_return -20.85%、information_ratio -0.901,且 max_drawdown 71% (CI 至 96%) 顯示替代之吃單流量排名鍵相較樸素等權重持有帶來負向風險調整後價值。此僅供參考;其為排名鍵錯配之下游,應由分析師於修正後之實作上重新評判,不在此處阻擋。 - [critical] 假設之單一決定性特徵——於標題/說明中反覆重申(「依 GLOBAL 多/空帳戶比率」、「count_long_short_ratio」、「純低持有度 FACTOR,非動能」)——為 CROSS-SECTIONAL RANKING KEY 即各標的全球多/空 ACCOUNT 比率,一項刻意與動能及資金費率正交之散戶持倉/擁有代理指標。程式碼 NOT 依此排名。_crowd_z() /……顯示更多顯示較少

verification_loop:驗證失敗(第 4 層——QA 審查)[類別=hypothesis_mismatch]: - [edge_concern] 沙盒為一致之純多主流幣組合,可運行且交易 (337 次交易,avg_trade_return_pct 0.69% 通過手續費下限),但相較等權重組合基準,total_return -20.85%、information_ratio -0.901,且 max_drawdown 71% (CI 至 96%) 顯示替代之吃單流量排名鍵相較樸素等權重持有帶來負向風險調整後價值。此僅供參考;其為排名鍵錯配之下游,應由分析師於修正後之實作上重新評判,不在此處阻擋。 - [critical] 假設之單一決定性特徵——於標題/說明中反覆重申(「依 GLOBAL 多/空帳戶比率」、「count_long_short_ratio」、「純低持有度 FACTOR,非動能」)——為 CROSS-SECTIONAL RANKING KEY 即各標的全球多/空 ACCOUNT 比率,一項刻意與動能及資金費率正交之散戶持倉/擁有代理指標。程式碼 NOT 依此排名。_crowd_z() / _rebalance() 自 `taker_flow_by_instrument` 讀取,以 `taker_long_short_vol_ratio` (主動 BUY 量/主動 SELL 量) 對 8 主流幣進行排名。吃單多空量比為 FLOW/AGGRESSOR 衡量,而非持有/倉位衡量——其與帳戶比率實質不同,且可謂更接近假設明確聲明為正交之短時段流量/動能。所指名之帳戶比率僅用於次要 BTC 狂熱現金閘 (_parse_global / calculate_signal),從不用於主要選股。依 QA 查核清單,當假設特定指名之核心邊際於程式碼中缺席,即屬關鍵:所述低持有因子並非實際交易之因子。(第 259 行)——修正:任一(a)將各標的全球帳戶比率接入管線為 `global_ratio_by_instrument`(鏡像 subprocess_entry.py 中之 funding_rates_by_instrument/open_interest_by_instrument/taker_flow_by_instrument)並依此排名——此為假設所指名之忠實實作;或(b)若該按腿序列確實無法提供,則此次運行屬 DATA 覆蓋阻擋 (not_measurable) 而非可基於替代鍵出貨之策略——應如此回報,以便假設於序列接入前先予擱置,而非默默交易一不同(流量)因子。 - [warning] 一致性檢查標記假設 'WEEKLY' 與設定 bar_type 1-DAY 之差異。此 NOT 為真實錯配:假設中「weekly」指 REBALANCE/HOLD 頻率,其以日 K 線閘控之日曆錨定 7 日再平衡 (day % rebalance_days == 0) 正確實作。使用字面意義之週 K 線將粗化狂熱百分位與頻率;日 K 線 + 7 日再平衡之構造為表達週輪動之正確方式。記錄以供透明;不影響裁決。(第 380 行)——修正:可選擇性改寫假設文字為「週於日 K 線上再平衡」以消弭第 -1.5 層一致性警告。

Stratmill 是一款研究與模擬交易工具,並非財務建議或經紀商服務。回測與模擬交易結果均為假設性質。交易涉及虧損風險。