Preskoči na vsebino

Ogled izvirnika

BtcSpotDualTimeframeMomentumConfluenceLong

Hipoteze

BTC Spot Dual-Timeframe Momentum Confluence, LONG-ONLY 1x (BTCUSDT.BINANCE_SPOT, 4H Primarni + 1D Potrditev, Samo Dolgo Ko BOTH Časovna Okvira Kažeta UP, Sicer FLAT v Gotovino, Izhod z ATR-Sledenjem + Prelom Dnevnega Režima, Ohranjeni Izvorno-Optimizirani Parametri)

Hipoteze

LONG-ONLY, 1x, CASH-računski prenos najboljše promovirane strategije tovarne (BtcDualTimeframeMomentumConfluenceLS, Sharpe 1.99, 458 trgovanj, +$4,774 v 29 dneh papirnega trgovanja) na BTCUSDT.BINANCE_SPOT, ustvarjen posebej kot FIRST LIVE-TRADING CANDIDATE, ker je produkcijska borza samo-spot. Mehanizem nespremenjen, čisto-OHLCV, en instrument: FAST krak = predznak sledilnega 18-barnega donosa na 4-HOUR barih; SLOW krak = predznak sledilnega 15-barnega donosa na DAILY barih (bran preko on_extra_bar kot kontekstni krak, nikoli kot sinhronizacijska bariera). Oba morata AGREE. Edina strukturna sprememba, ki jo vsili račun CASH, je skrčitev {LONG/FLAT/SHORT} v {LONG/FLAT}: kjer terminski starševski sistem ob skupnem padcu odpre SHORT, spot različica ostane 100% USDT. Vse ostalo je ohranjeno dobesedno: sledilni stop ATR(14) pri 3.033x ATR od tekočega ekstrema, izhod ob dnevnem prelomu režima, z volatilnostjo skalirano kapitalno-relativno dimenzioniranje (risk_pct 1.011% / razdalja do stopa 3.033xATR), omejitev najvišje nominalne vrednosti 49.7%, in natanko tisti vektor parametrov, ki ga je izbrala izvorna optimizacija (fast_lookback 18, slow_lookback 15, trail_atr_mult 3.033). Trije nastavljivi parametri, brez dopolnilnih podatkov, brez shortov, brez vzvoda. Spot-specifične spremembe kode: borza BINANCE_SPOT CASH (brez vzvodnega množitelja v position_size), size_precision 5 / price_precision 2, min_notional $10, prodaje dimenzionirane samo na imeti bazno količino. Preverjeno prisotni podatki: BTCUSDT.BINANCE_SPOT 4-HOUR in 1-DAY bari tečejo neprekinjeno od 2017-08-17 (~9 let, ~19,800 4H barov).

Hipoteze

Neposredna prenositev promoviranega terminskega starševskega sistema BtcDualTimeframeMomentumConfluenceLS na spot borzo, ker je nameravana produkcijska borza samo-spot. Mehanizem ohranjen dobesedno: ista dva momentum kraka, isti AGREE-ali-ravno vrata, isti ATR(14) 3.033x sledilni stop od tekočega ekstrema, isti dnevni izhod ob prelomu režima, isto z volatilnostjo skalirano dimenzioniranje risk_pct / razdalje do stopa z omejitvijo nominalne vrednosti 49.7%, ter natanko tisti vektor parametrov, ki ga je izbrala izvorna optimizacija (fast_lookback 18, slow_lookback 15, trail_atr_mult 3.033). Račun CASH vsili natanko eno strukturno spremembo, kot določa hipoteza: {LONG,FLAT,SHORT} se skrči v {LONG,FLAT} — should_enter vrne BUY samo pri skupnem vzponu, sicer None, torej je skupni padec 100% USDT namesto shorta. Spot-specifične spremembe: borza BINANCE_SPOT z vzvodom 1.0 in brez vzvodnega člena v position_size, size_precision 5 / price_precision 2 (BTCUSDT spot), min_notional zvišan na $10, vsi izhodi pa speljani skozi reduce-only close_position osnovne predloge, tako da lahko SELL le zmanjša imeti bazno količino (goli spot short je po zasnovi nemogoč, varovalka _would_open_spot_short osnove pa nikoli ne sproži). calculate_signal vsak bar vrne zvezen 18-barni 4H donos (spreminja se od bara do bara); diskretna vrata konfluence so v should_enter, kot zahtevano. Strošek na bar je O(1): ATR uporablja fiksno 15-barno okno, hitri donos pa je enojen indeksiran dostop, zato ni dela, ki bi se skaliralo z zgodovino. Ena poštena opomba za analitika: strošek povratnega kroga za spot je ~0.20% proti ~0.10% pri terminskem starševskem sistemu, zato mora rob na posamezno trgovanje pokriti dvojno trenje — struktura izhodov trendovskega sledenja (sledilni stop + prelom režima, brez fiksnega jemanja dobička) je tisto, kar naredi povprečno trajanje dovolj dolgo, da je to verjetno, a to je metrika, ki jo je treba spremljati najprej.

Implementacija

LONG-ONLY 1x BTCUSDT spot (BINANCE_SPOT, CASH) dvo-časovna momentum konfluenca. FAST krak = predznak sledilnega 18-barnega donosa na 4-HOUR barih (primarni); SLOW krak = predznak sledilnega 15-barnega donosa na 1-DAY barih, porabljen preko on_extra_bar kot počasnejši kontekstni krak (drug časovni okvir, zato bariera poravnave krakov osnovne predloge nikoli ne odloži 4H signala). Oba kraka morata kazati UP, da se drži BTC; skupni padec (kjer terminski starševski sistem odpre short) in nestrinjanje obakrat pomenita ostati 100% USDT. Izhodi: sledilni stop ATR(14) pri 3.033x ATR pod tekočim vrhom pozicije, OR dnevni krak obrne navzdol pod dolgo pozicijo (prelom režima na višjem časovnem okviru). Dimenzioniranje je z volatilnostjo skalirano in kapitalno-relativno: kapital * 1.011% / (3.033 * ATR), omejeno na 49.7% stanja USDT v nominalni vrednosti, z NO množiteljem vzvoda (CASH račun ne more izposojati), kvantizirano na size_precision 5 in zavrnjeno pod minimalno nominalno vrednostjo $10 za spot. Trije nastavljivi parametri, čisto OHLCV, brez dopolnilnih podatkov, brez shortov.

Rezultati preverjanja

Ali uporabi self._atr (trenutni) v primerjavi sledilnega stopa v should_exit, da natančno ustreza staršu, ali pa v opisu izrecno navedi, da je sledilni stop sidran na ATR vstopnega bara, da analitik odstopanja od staršev ne pripiše menjavi borze.

Rezultati preverjanja

Sledilni stop ATR je FROZEN ob vstopu (self._entry_atr, zabeležen v should_enter / ob prevzemu pozicije) in se nikoli ne osveži, zato je razdalja sledenja 3.033 x ATR-ob-vstopu, ne pa 3.033 x trenutni ATR(14). Promovirani terminski starševski sistem (BtcDualTimeframeMomentumConfluenceLS4H) svoj sledilni stop vsak bar zategne z CURRENT ATR. Besedilo hipoteze ('ATR(14) sledilni stop pri 3.033x ATR od tekočega ekstrema') je izpolnjeno v obeh primerih, in ker je _extreme monoton, se stop raven še vedno le zvišuje, zato to ni napaka pravilnosti — a ob razširitvi volatilnosti po vstopu je učinkoviti stop tesnejši od starševskega, kar je resnična vedenjska razlika od strategije, za katero se trdi, da je 'dobesedno' prenesena.

Rezultati preverjanja

Nastavi stanje trgovanja iz izvršitve (on_order_filled / prvi bar z odprto pozicijo), ne znotraj should_enter, ali ga obrambno ponastavi na vrhu calculate_signal pred iskanjem pozicije.

Rezultati preverjanja

should_enter() spremeni stanje trgovanja (_in_long = True, _extreme, _entry_atr) BEFORE, ko je osnovna predloga že dimenzionirala naročilo in uporabila vrata minimalne nominalne vrednosti. Če position_size() vrne 0 ali preverjanje minimalne nominalne vrednosti $10 zavrže vstop, strategija ostane označena kot v-dolgi poziciji z aktiviranim sledilnim stopom, čeprav je ravna. V praksi se to na naslednjem baru samodejno popravi (calculate_signal vidi, da je pozicija None, in ponastavi zastavice, should_exit pa nikoli ni dosežen, dokler je ravna), zato ni opazljive vedenjske napake — vendar je invarianta krhka, če bi se pot izhoda kdaj spremenila.

Rezultati preverjanja

Popravek ni potreben za pravilnost. Če je želena poraba znotraj istega bara, naj se _slow_dir preračuna leno iz self._extra_bars[...] znotraj calculate_signal namesto predpomnjenja v on_extra_bar.

Rezultati preverjanja

Latenca enega bara na dnevnem kraku: bar DAILY in zadnji 4H bar dneva si delita isti časovni žig zaključka. Če motor najprej dostavi primarni 4H bar, se izvede _maybe_process_primary() in zabeleži _last_processed_ts, posodobitev dnevnega bara _slow_dir (ki prispe ob istem ts) pa se upošteva šele pri NEXT 4H baru. To je konservativno (lahko le zamakne signal, nikoli ne pušča prihodnjih podatkov), a pomeni, da lahko izhod ob prelomu dnevnega režima sproži do 4 ur po dnevnem zaključku v približno polovici primerov, parnost backtest/papirno trgovanje pa je odvisna od stabilnega vrstnega reda dostave.

Rezultati preverjanja

Zvesta implementacija, vendar mora analitik na celotni zgodovini pretehtati tri stvari: (1) povratni krog za spot je ~0.20% v primerjavi z ~0.10% pri terminskem starševskem sistemu, tako da isti bruto rob neto skoraj prepolovi — sandbox že kaže provizijo pri 10.03% bruto zneska; (2) vektor parametrov (hitri 18 / počasni 15 / sledilni 3.033) je bil izbran z optimizacijskim tekom na DIFFERENT borzi, kombinaciji časovnih okvirov in naboru smeri (LONG/SHORT terminski posli), zato gre za prenos zunaj vzorca, ne za optimiziran konfig — sandbox Sharpe je 0.527 z sharpe_ci_low -0.233 in information_ratio -0.760 glede na referenčno vrednost, tj. samo-dolga knjiga BTC, ki na oknu preizkusa zaostaja za držanjem BTC; (3) opustitev kratke noge odstrani približno polovico starševske populacije trgovanj (250 trgovanj, vsa dolga, 43.6% izpostavljenost), zato je treba realizirani Sharpe pričakovati precej pod starševskim 1.99, ne blizu njega. Prva stvar za preverjanje pri pravem backtestu: avg_trade_return_pct glede na 0.25% spodnjo mejo za spot (sandbox kaže 0.82%, a to okno izključuje 2017 in traja le 2401 dni) ter ali 'normalen' volatilnostni tercil (-8.77% v sandboxu) ostane negativen skozi celotno zgodovino.

Pregled backtesta

314 zaključenih trgovanj v 3146 dneh (2017-08 → 2026-03), metrics_reliable=true, entry_diag 314/314 vnosov oddanih, 0 opuščenih.

Pregled backtesta

Trgovanja izvajajo hipotezo: vsa 314 LONG / 0 short (pravilna CASH skrčitev starševskega LONG/FLAT/SHORT), najvišja nominalna vrednost/kapital 0.50 proti omejitvi 0.497, povprečno trajanje 4d8h, izpostavljenost 43.6% pa reproducira terminski starševski sistem.

Pregled backtesta

avg_trade_return_pct 1.20% proti ~0.20% BINANCE_SPOT povratnemu krogu; provizije le 8.97% bruto zneska, vpliv 4.33% — ni mejno odvisno od provizij.

Pregled backtesta

max_drawdown 10.3% (pod privzeto vrednostjo 15% za spot), PF 1.41, izplačilo 2.07 pri stopnji zadetkov 40.4% (pravilna oblika trenda), obremenjen volatilnostni tercil +28.0%.

Pregled backtesta

Ekstremna koncentracija: zgornjih 10 od 314 trgovanj = 93.8% seštetega donosa na posamezno trgovanje, zgornjih 20 = 141% (trgovanja 21–314 neto negativna).

Pregled backtesta

Le 6/10 koledarska leta pozitivna — natanko na trdi spodnji meji — obe zadnji leti pa negativni (2025 −10.5%, 2026 −9.9%).

Pregled backtesta

Sharpe 0.664 z sharpe_ci_low 0.0042 in PSR 0.924 (<0.95): že mejno pred pragom izbire ~225 poskusov.

Pregled backtesta

Pomislek QA delno potrjen: 'normalen' volatilnostni tercil ostaja negativen (−7.70%, 16.1% DD), information_ratio −0.757, alfa le +2.4%/leto — zaostaja za držanjem BTC, in benchmark_meaningful=true, zato je ta primanjkljaj realen.

Pregled backtesta

Parametri so prenos zunaj vzorca z druge borze/nabora smeri — neprilagojeni, ne prekomerno prilagojeni, a tudi tukaj še netestirani.
Poročilo o strategiji

Stratmill je orodje za raziskave in simulirano trgovanje, ne finančno svetovanje ali borzni posrednik. Rezultati backtestov in simuliranega trgovanja so hipotetični. Trgovanje vključuje tveganje izgube.