Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

Binance USD-M 52-Week-High Proximity Momentum Dollar-Neutral Basket (Established Majors, Nearness-to-High Rank, No-Leverage Capped Sizing, Weekly Rebalance, Long-Short)

Resulta: Inabandona

HighProximityMomentumDollarNeutralBasketDaily

Tunay na naiiba at dokumentadong signal (George-Hwang 52-week-high proximity), na may malinis na konstruksyong iisa ang parameter at mababa ang turnover (commission na 1.1% lang ng gross)

Hypothesis

Dollar-neutral, daily cross-sectional momentum basket sa humigit-kumulang 10 matatag na Binance USD-M majors na may kumpirmadong buong kasaysayan (BTC, ETH, SOL, BNB, XRP, DOGE, ADA, LTC, LINK, BCH), gamit ang signal na 52-WEEK-HIGH PROXIMITY (George & Hwang) sa halip na momentum batay sa trailing return. Binibigyan ng score ang bawat asset batay sa lapit ng kasalukuyang presyo nito sa trailing high nitong humigit-kumulang 1-taon (proximity = close / trailing-252-day high, malapit sa 1.0 = nasa high); naglo-long……Magpakita ng higit paMagpakita ng mas kaunti

Dollar-neutral, daily cross-sectional momentum basket sa humigit-kumulang 10 matatag na Binance USD-M majors na may kumpirmadong buong kasaysayan (BTC, ETH, SOL, BNB, XRP, DOGE, ADA, LTC, LINK, BCH), gamit ang signal na 52-WEEK-HIGH PROXIMITY (George & Hwang) sa halip na momentum batay sa trailing return. Binibigyan ng score ang bawat asset batay sa lapit ng kasalukuyang presyo nito sa trailing high nitong humigit-kumulang 1-taon (proximity = close / trailing-252-day high, malapit sa 1.0 = nasa high); naglo-long ang basket sa LONG majors na pinakamalapit sa kanilang highs at nagsho-short sa SHORT pinakamalayo sa ibaba, na may pantay na dollar notional. Isa itong dokumentadong STANDALONE momentum anomaly na bahagya lamang ang empirical correlation sa momentum batay sa return — patuloy na nahihigitan ng mga asset na malapit sa kanilang highs ang iba (dahil sa anchoring o mabagal na reaksiyon sa magandang balita) — kaya talagang naiibang signal ito kumpara sa return-based trend basket na itinataguyod ng factory, sa cross-sectional RETURN-rank basket (akin, nakabinbin), at sa Donchian BREAKOUT (tuloy-tuloy na proximity state kumpara sa breakout event). Nananatili ito sa loob ng nag-iisang validated edge family (DAILY momentum sa matatag na majors — napabulaanan ang intraday, short-only, MR, at long-horizon na mga variant), gumagamit ng daily OHLCV ng purong majors (ligtas ang datos — bumabagsak sa datos ang broad-alt/HL basket), at idinisenyo upang maiwasan ang BOTH paulit-ulit na failure mode: (1) iisang FROZEN parameter (ang high window) para walang mapagtuunan nang sobra ang walk-forward optimizer (lunas sa pagbagsak dulot ng overfit), at (2) walang vol-targeting leverage scalar na NO at walang uncapped inverse-vol weights na NO — halos pantay at capped ang sizing, na mahigpit na nililimitahan ang gross sa 1.0× (lunas sa pagsabog ng leverage). Pinapahusay ng market-neutral na pagkakabuo ang skew na 87%-long; napakaliit ng fees dahil lingguhan ang rebalance.

Pagwawasto sa iteration 4 para sa Layer-2 failure: nagtaas ang `self._bar_ts(bar)` ng `TypeError: _bar_ts() takes 1 positional argument but 2 were given` dahil may `_bar_ts` na ibang signature ang synthetic proxy ng Layer-2 kumpara sa live base. Pinakamaliit na pagbabago: nagdagdag ng lokal na static `_ts_of(bar)` na direktang nagbabasa ng `bar.ts_event`/`bar.ts_init` at pinalitan ang iisang call site. Hindi binago ang istruktura, imports, at signal/rebalance logic na pumapasa sa lahat ng Layer-1, kaya walang naunang layer ang babagsak muli. Ipinapatupad nito ang George & Hwang 52-week-high proximity anomaly bilang hiwalay na daily momentum signal, na may nag-iisang nakapirming edge parameter (high_window) at walang vol-targeting o inverse-vol leverage, upang direktang tugunan ang dalawang dating paulit-ulit na failure mode.

Netong nalulugi ang dollar-neutral basket na may 52-week-high proximity at matinding drawdown — hindi sulit ang 2 oras ng optimization. Sa mahigit 252 trade: total_return -68.84%, CAGR -17.0%, profit_factor 0.775, expectancy -$263.55/trade, avg_trade_return_pct -2.22% (negatibo), Sharpe -0.108 (CI [-0.85, 0.70] na sumasaklaw sa zero), PSR 0.40, at max_drawdown 83.6% (CI hanggang 98.7%) — malayong lampas sa L19 hard-abandon line, habang nasa -73% ang normal-vol regime. Nalulugi ito sa 4 sa 7 taon (2021 -67.4%,……Magpakita ng higit paMagpakita ng mas kaunti

Netong nalulugi ang dollar-neutral basket na may 52-week-high proximity at matinding drawdown — hindi sulit ang 2 oras ng optimization. Sa mahigit 252 trade: total_return -68.84%, CAGR -17.0%, profit_factor 0.775, expectancy -$263.55/trade, avg_trade_return_pct -2.22% (negatibo), Sharpe -0.108 (CI [-0.85, 0.70] na sumasaklaw sa zero), PSR 0.40, at max_drawdown 83.6% (CI hanggang 98.7%) — malayong lampas sa L19 hard-abandon line, habang nasa -73% ang normal-vol regime. Nalulugi ito sa 4 sa 7 taon (2021 -67.4%, 2024 -23.2%, 2025 -18.8%), kaya hindi nailipat sa crypto majors ang George-Hwang 52-week-high anomaly. Dulot din ito ng outlier, at hindi umubra ayon sa disenyo ang neutrality/leverage controls: return_kurtosis 137, isang -67.77% single-day return sa 2021-04-19, at exposure_pct 605.88% sa kabila ng ipinahayag na dollar-neutral gross cap na -1.0x. Ito ang L45/L52 uri ng market-neutral cross-sectional basket (0/84 multi_instrument); wastong false ang benchmark_meaningful at negatibo ang lahat ng absolute risk-adjusted metric. Dahil iisa lang ang nakapirming high_window, halos walang matitira sa optimizer para i-tune, at hindi maitatama ng tuning ang 84% drawdown o negatibong edge kada trade. Pattern ng failure: market-neutral cross-sectional momentum basket na no_edge/risk_reject, na may mahigit 50% DD.

Implementasyon

Basket ng momentum na dollar-neutral at cross-sectional batay sa lapit sa pinakamataas na presyo sa loob ng 52 linggo, sa humigit-kumulang 10 matatag na Binance USD-M major na may pang-araw-araw na bar. Kinakalkula ang score ng bawat asset sa lapit = close / pinakamataas na presyo sa nakaraang -252 araw; lingguhang nirerebalanse ang basket: long sa top_k asset na pinakamalapit sa pinakamataas nilang presyo at short sa bottom_k pinakamalayo rito, na may pantay na notional na halaga sa dolyar at gross na limitasyong 1.0x ng equity (walang leverage). Gumagamit ang rebalancing ng mga order na delta (target minus kasalukuyang signed qty) sa pamamagitan ng netting OMS.

Mga Resulta ng Beripikasyon

CLEAN RESTART 2026-09-04 — inalis ang kasaysayan ng hatol at mga tala ng pagkatuto sa run na ito, at sinimulan itong muli mula sa verification. Pipeline ang dahilan ng dating pag-abandona, hindi ang merkado: mali ang pag-bind ng Layer-2 harness sa mga @staticmethod helper (naayos na), naglabas ang QA ng mga pinal na hatol sa performance batay sa smoke test na hindi na-optimize (inalis na — correctness lang ang hinahatulan ngayon ng QA), at dulot ng kakulangan ng backtest slot ang mga timeout sa sandbox (naayos na). Hindi nagbago ang hypothesis at strategy code. Suriin ang code batay sa merito nito; sa buong backtest at optimizer pa huhusgahan ang performance.

Pagsusuri ng Backtest

Sharpe
-0.11
Kabuuang Return
-68.84%
Max Drawdown
83.61%
Kabuuang Trade
252
Win Rate
49.2%
Profit Factor
0.78

Tunay na naiiba at dokumentadong signal (George-Hwang 52-week-high proximity), na may malinis na konstruksyong iisa ang parameter at mababa ang turnover (commission na 1.1% lang ng gross)

Netong nalulugi: total_return -68.84%, CAGR -17.0%, profit_factor 0.775, expectancy -$263.55/trade, avg_trade_return_pct -2.22% (negatibo)

max_drawdown 83.6% (CI hanggang 98.7%) — lampas na sa 50% hard-abandon line (L19); normal-regime bucket -73%

Walang makabuluhang edge: Sharpe -0.108 (CI [-0.85, 0.70] na sumasaklaw sa zero), PSR 0.40; nalulugi sa 4 sa 7 taon, at napangingibabawan ng 2021 -67.4%

Hindi ayon sa disenyo ang exposure/sizing: exposure_pct 605.88% at isang -67.77% single-day return (2021-04-19) para sa sinasabing dollar-neutral na gross-1.0x book; kurtosis 137, skew -2.7 — dulot ng outlier

L45/L52 uri ng market-neutral cross-sectional basket (0/84); walang matitira sa optimizer para i-tune dahil iisa lang ang nakapirming parameter

Kasaysayan ng Iterasyon

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError:……Magpakita ng higit paMagpakita ng mas kaunti

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - flat_ranging: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - volatility_spike: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - zero_volume: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - price_gap: TypeError: HighProximityMomentumDollarNeutralBasketDaily._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000)

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1……Magpakita ng higit paMagpakita ng mas kaunti

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - flat_ranging: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - volatility_spike: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - zero_volume: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - price_gap: TypeError: FactoryStrategy._bar_ts() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000)

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError:……Magpakita ng higit paMagpakita ng mas kaunti

Bumagsak ang verification (Layer 2 — mga synthetic scenario): Mga parameter na ginamit: ['top_k', 'assets', 'high_window', 'min_notional', 'qty_precision', 'gross_cap_frac', 'rebalance_days', 'default_qty_precision'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - steady_downtrend: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - flat_ranging: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - volatility_spike: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - zero_volume: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000) - price_gap: TypeError: HighProximityMomentumDollarNeutralBasketDaily._ts_of() kumukuha ng 1 positional argument pero 2 ang naipasa (bar timestamp: 1735704780000)

Ang Stratmill ay isang tool para sa pananaliksik at paper trading, hindi payo sa pananalapi o isang broker. Ang mga resulta ng backtest at paper trading ay hypothetical. May panganib ng pagkalugi ang pangangalakal.