Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

Cross-Sectional SMART-MONEY POSITIONING Rotation, Long-Only (BINANCE USD-M, 8 Majors, WEEKLY Hold Top-3 batay sa conviction ng TOP-TRADER Long/Short Account-Ratio — ang deployed Momentum-Rotation STRUCTURE, pero niraranggo gamit ang NON-PRICE na Positioning Key, na may Absolute Cash Gate; 2 parameter

Resulta: Inabandona

SmartMoneyGatedFundingRotationLong

Cross-Sectional SMART-MONEY POSITIONING Rotation, Long-Only (BINANCE USD-M, 8 Majors, WEEKLY Hold Top-3 batay sa conviction ng TOP-TRADER Long/Short Account-Ratio — ang deployed Momentum-Rotation STRUCTURE, pero…

Hypothesis

Isang LONG-ONLY, lingguhang nire-rebalance na cross-sectional ROTATION sa kaparehong 8-major na USD-M universe ng deployed Sharpe-2.6 momentum winner (BTC, ETH, SOL, BNB, AVAX, LINK, ADA, XRP) — pero tunay na NON-PRICE signal ang batayan ng ranggo sa halip na price relative-strength: ang TOP-TRADER long/short ACCOUNT ratio (count_toptrader_long_short_ratio) mula sa mga 'metrics' file ng Binance VISION (MULTI-YEAR hanggang ~2020, NOT ang 30-araw na API). Sadyang ginagaya nito ang ONE na estruktural na template na……Magpakita ng higit paMagpakita ng mas kaunti

Isang LONG-ONLY, lingguhang nire-rebalance na cross-sectional ROTATION sa kaparehong 8-major na USD-M universe ng deployed Sharpe-2.6 momentum winner (BTC, ETH, SOL, BNB, AVAX, LINK, ADA, XRP) — pero tunay na NON-PRICE signal ang batayan ng ranggo sa halip na price relative-strength: ang TOP-TRADER long/short ACCOUNT ratio (count_toptrader_long_short_ratio) mula sa mga 'metrics' file ng Binance VISION (MULTI-YEAR hanggang ~2020, NOT ang 30-araw na API). Sadyang ginagaya nito ang ONE na estruktural na template na nananatili sa factory na ito — long-only, majors, lingguhang hawak sa top-K, kaunting parameter — at pinapalitan lamang ang selection signal, gaya mismo ng pinapahintulutan ng L30 ('nangangailangan ng tunay na non-price data dependency'). Batay sa mabagsik na ebidensiya ng sesyon: pumalya ang bawat SINGLE-NAME directional signal-timing strategy (taker -100%, positioning-fade risk-reject, breakout verification_loop, exhaustion -43%), bumagsak ang bawat DOLLAR-NEUTRAL momentum spread (>90% DD), pumalya ang cross-venue two-leg carry sa verification_loop, at structurally dead ang options/liquidations/pure-OHLCV — samantalang ang LONG-ONLY MAJORS BASKET (momentum Sharpe 2.6, negative-funding carry Sharpe 1.97) ang reproducible survivor. Kaya nananatili ito sa hulma ng survivor at nagdaragdag ng signal na hiwalay sa dalawang deployed basket: conviction ng informed trader na RELATIVE sa iba't ibang pangalan, hindi price trend (momentum) o funding (carry). Naiiba ito sa nakabinbing SmartMoneySpotRegimeAccumulation, na gumagamit sa top-trader ratio bilang PER-NAME time-series risk-on/off gate sa SPOT; ginagamit naman ito ng THIS nang CROSS-SECTIONALLY sa PERPS para rangguhan ang mga pangalang 8 laban sa isa't isa at hawakan lamang ang 3 na may pinakamataas na smart-money conviction. Nagbibigay ng proteksiyon sa drawdown ang absolute cash gate na wala sa laging invested na momentum book. 2 parameter.

Pagwawasto sa Iteration-4 para sa sandbox_timeout ng Layer-3. Natukoy ang ugat ng problema sa framework, hindi sa per-bar code: tinukoy ng nakaraang bersyon ang 'metrics' key ng primary symbol, at nilo-load iyon ng supp_collector sa pamamagitan ng _load_parquet('metrics') nang walang NO downsampling o window filter — isang 15 MB, 5-minuto, multi-year na mirror na pinalawak sa humigit-kumulang 600k row-dict, JSON ibinalik sa subprocess at muling binasa habang binubuo ang strategy. Naubos nito ang 300 segundong……Magpakita ng higit paMagpakita ng mas kaunti

Pagwawasto sa Iteration-4 para sa sandbox_timeout ng Layer-3. Natukoy ang ugat ng problema sa framework, hindi sa per-bar code: tinukoy ng nakaraang bersyon ang 'metrics' key ng primary symbol, at nilo-load iyon ng supp_collector sa pamamagitan ng _load_parquet('metrics') nang walang NO downsampling o window filter — isang 15 MB, 5-minuto, multi-year na mirror na pinalawak sa humigit-kumulang 600k row-dict, JSON ibinalik sa subprocess at muling binasa habang binubuo ang strategy. Naubos nito ang 300 segundong smoke budget bago maproseso ang mga bar. Hindi na tinutukoy ng bersyong ito ang 'metrics' o 'top_account_ratio' at sa halip ay ginagamit ang 'top_trader_ratio_by_instrument' series ng bawat leg na ikinakabit ng subprocess_entry._add_per_leg_top_trader_ratio (oras-oras, nililimitahan sa run window — dalawang order of magnitude na mas maliit). Hindi nagbago ang hugis ng gastos sa bawat bar at O(log n): minsan lang binubuo ang mga nakaayos na numpy array sa __init__, may mga searchsorted bound, at isang np.mean bawat leg. Ibinalik din ng pagbabagong ito ang katapatan sa hypothesis: kinailangang aminin ng nakaraang iteration na hindi praktikal ang literal na top-trader ranking key sa bawat pangalan at bumalik ito sa pagraranggo batay sa funding; naging IS praktikal ito sa pamamagitan ng wiring ng bawat leg, kaya ngayon ay eksaktong smart-money positioning key na tinutukoy ng hypothesis ang batayan ng pagraranggo sa cross-section, at tuluyang inalis ang funding sa signal. Dalawa pang maliit na pagbabagong dala: nakatali na sa kalendaryo ang lingguhang iskedyul (mga araw mula epoch batay sa bar.ts_event, hindi nagbabago sa restart) sa halip na uptime bar counter, at tinutukoy pa rin ang 'funding_rates_by_instrument' (sa module docstring, na sinusuri ng loader gate) para lang singilin ng engine ang bawat long perp leg ng sarili nitong funding — kung hindi magbabayad ng funding ang basket na may 8 leg na long-only perp, sosobra ang tantya sa return. Nananatili ang naunang pagsisiwalat: weighted sa POSITION ang top-trader ratio sa multi-year mirror; nasa kamakailang daily shard lang ang variant ng account-COUNT, at magdudulot ng pagbabago sa antas sa loob ng trailing percentile ang paghahalo sa mga ito. Dalas ng pagpasok: nasa 0.45 ang percentile ng gate, kaya sa karaniwang linggo ay kwalipikado ang humigit-kumulang kalahati ng universe at karaniwang puno ang book (3 pangalan) — hindi ito bihirang sabayang kundisyon. Hindi nagbago ang hugis ng Layers 1 at 2: mga import, estruktura ng klase, apat na kinakailangang method at tuloy-tuloy na finite signal (cross-sectional dispersion ng paniniwala).

verification_loop: sandbox_timeout: Nabigo ang beripikasyon (Layer 3 — sandbox backtest): lumampas ang smoke test sa limitasyong 300s sa isang ~20000-bar na window (2400 araw ng BTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL). Karaniwang ibig sabihin nito ay may trabahong ginagawa sa bawat bar na lumalaki kasabay ng kasaysayan — halimbawa, muling pag-scan sa buong funding/supplementary series, o muling pagbuo ng listahan at pagtawag sa min()/sorted() sa loob ng calculate_signal()/on_bar() sa bawat bar. Paunang kalkulahin ang mga nakaayos na timestamp array ONCE sa __init__ at gumamit ng bisect, o mag-cache ng mga lookup na nakatali sa timestamp, para O(log n) sa halip na O(n) ang gastos sa bawat bar.

Implementasyon

Long-only na lingguhang cross-sectional rotation sa 8 Binance USD-M majors (BTC, ETH, SOL, BNB, AVAX, LINK, ADA, XRP), na niraranggo gamit ang NON-PRICE na pamantayan: ang sariling top-trader (smart-money) long/short ratio ng bawat asset, ginawang trailing percentile nito para maihambing ang mga asset. Tuwing 7 araw sa kalendaryo, hawak ng portfolio ang nangungunang -3 asset ayon sa conviction percentile; kailangan lumampas ang percentile ng asset sa entry_level para maisama, kaya kapag nagbabawas ng risk ang informed cohort sa buong universe, walang pasok at cash ang portfolio. Pantay na 30% notional bawat asset (0.9x gross, walang leverage).

Mga Resulta ng Beripikasyon

sandbox_timeout: Nabigo ang beripikasyon (Layer 3 — sandbox backtest): lumampas ang smoke test sa limitasyong 300s sa isang ~20000-bar na window (2400 araw ng BTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL). Karaniwang ibig sabihin nito ay may trabahong ginagawa sa bawat bar na lumalaki kasabay ng kasaysayan — halimbawa, muling pag-scan sa buong funding/supplementary series, o muling pagbuo ng listahan at pagtawag sa min()/sorted() sa loob ng calculate_signal()/on_bar() sa bawat bar. Paunang kalkulahin ang mga nakaayos na timestamp array ONCE sa __init__ at gumamit ng bisect, o mag-cache ng mga lookup na nakatali sa timestamp, para O(log n) sa halip na O(n) ang gastos sa bawat bar.

Kasaysayan ng Iterasyon

Hindi pumasa sa beripikasyon (Layer 4 — pagsusuri ng QA): - Hindi naipatupad ang CORE EDGE ng hypothesis. Tahasang sinasabi ng hypothesis na tunay na NON-PRICE signal ang batayan ng pagraranggo — ang ratio ng long/short ACCOUNT ng TOP-TRADER, na niraranggo nang CROSS-SECTIONALLY para hawakan ang 3 pangalan na may pinakamataas na paniniwala ng smart money. Pero sa _rebalance(), PRICE momentum lang ang batayan ng pagraranggo sa cross-section (close[-1]/close[-1-lookback]-1); ginagamit lang ang ratio ng top-trader……Magpakita ng higit paMagpakita ng mas kaunti

Hindi pumasa sa beripikasyon (Layer 4 — pagsusuri ng QA): - Hindi naipatupad ang CORE EDGE ng hypothesis. Tahasang sinasabi ng hypothesis na tunay na NON-PRICE signal ang batayan ng pagraranggo — ang ratio ng long/short ACCOUNT ng TOP-TRADER, na niraranggo nang CROSS-SECTIONALLY para hawakan ang 3 pangalan na may pinakamataas na paniniwala ng smart money. Pero sa _rebalance(), PRICE momentum lang ang batayan ng pagraranggo sa cross-section (close[-1]/close[-1-lookback]-1); ginagamit lang ang ratio ng top-trader bilang iisang BTC-wide na on/off cash gate, ONLY hindi bilang susi sa pagpili ng bawat pangalan. Inaamin mismo ng developer sa docstring na niraranggo ang cross-section batay sa praktikal na survivor key (price relative-strength). Wala ang buong ipinahayag na edge ng hypothesis (relatibong paniniwala ng informed trader sa iba't ibang pangalan); ang nailabas ay dati nang naka-deploy na price-momentum rotation kasama ang regime gate — isang malaking DIFFERENT strategy. - Dahil bumabalik ang pagpili sa sumusunod na price relative-strength sa basket ng mga major, nauuwi ang mekanismong ipinatupad sa klase ng 'cross-sectional momentum rank' na may rekord na zero survivor (L7). Mapagtatanggol lang ang hypothesis dahil hiwalay ito sa naka-deploy na momentum basket; ayon sa code, hindi ito NOT hiwalay — iyon mismo ang basket na may BTC gate. - Tiyak na negatibo ang resulta sa sandbox at mababa sa hangganan ng masusukat: total_return -31.2%, Sharpe -1.69 (CI [-3.01, -0.06]), profit_factor 0.175, avg_trade_return_pct -7.17%, max_drawdown 35.8%, sa 14 trade / 362 araw lang. Baligtad ang reward/risk (avg_loss $4731 kumpara sa avg_win $1107).

Nabigo ang beripikasyon (Layer 3 — sandbox backtest): Walang nagawang trade Ginamit na uri ng bar: BTCUSDT.BINANCE-1-DAY-LAST-EXTERNAL, Naprosesong bar: 363 Diagnostics: nagbalik ang should_enter() ng side nang 0 beses sa 324 nasuring bar → hindi kailanman na-trigger ang ENTRY CONDITION. Luwagan ang lohika / mga threshold sa pagpasok. Tiyaking nakakagawa ng mga trade ang strategy mo gamit ang ibinigay na data at parameter.

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Walang impormasyong maibibigay ang sandbox: metrics_reliable=false, total_trades=1, PF 0.0, isang posisyong hinawakan nang 2135 araw na may end_unrealized 118%. Iisang pangalan lang ang +140% return ng buy-and-hold beta (benchmark_correlation 0.77), hindi edge ng rotation — walang mababasang performance. - Wala at sinasalungat ang pangunahing edge: niraranggo ng hypothesis ang bawat pangalan gamit ang OWN top-trader……Magpakita ng higit paMagpakita ng mas kaunti

Nabigo ang beripikasyon (Layer 4 — pagsusuri ng QA) [class=hypothesis_mismatch]: - [edge_concern] Walang impormasyong maibibigay ang sandbox: metrics_reliable=false, total_trades=1, PF 0.0, isang posisyong hinawakan nang 2135 araw na may end_unrealized 118%. Iisang pangalan lang ang +140% return ng buy-and-hold beta (benchmark_correlation 0.77), hindi edge ng rotation — walang mababasang performance. - Wala at sinasalungat ang pangunahing edge: niraranggo ng hypothesis ang bawat pangalan gamit ang OWN top-trader long/short account ratio nito at tahasang inaalis ang funding-carry, pero pinapalitan ito ng code ng per-name FUNDING bilang pamantayan sa ranggo (hindi magamit ang per-name metrics → walang metrics_by_instrument). Eksaktong carry signal ang ipinapatupad nito na sinasabi ng hypothesis na NOT, at nagsasapawan ito sa deployed basket. - Nauwi sa buy-and-hold ng iisang pangalan ang lingguhang rotation na top-3 sa 8 majors (1 trade, 2135-araw na hawak, ~30% single leg). Malamang na dahilan: dahil hindi tugma ang funding_rates_by_instrument key para sa 7 karagdagang leg, BTC fallback lang ang nakakabit → iisa ang entry sa ranked → k=min(3,1)=1 → minsanang binibili ang BTC, at hindi na iniikot.

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.