Hopp til innhold
Alle strategier

Strategier

ETH Gjennomsnittstilbakevending i perp-basis mellom børser (Hyperliquid mot Binance, 4t, long-short)

Utfall: Forlatt

EthCrossVenuePerpBasisMeanReversionLS4H

Utfallssammendrag

Denne strategien var ment å dekke de underrepresenterte kategoriene Hyperliquid, handel på tvers av børser og long-short med en markedsnøytral ETH-basishandel mellom Hyperliquid og Binance, der z-score-avvik bredere enn 2.0 ble dempet i påvente av konvergens. Mekanisk fungerte den feilfritt – 446 rene, markedsnøytrale handler, nær null beta, ingen feil – men den tapte penger alle måneder unntatt én og alle tre årene, med Sharpe -9.85 og totalavkastning -24.9%, mens provisjonen spiste 10.1% av brutto. Analytikerens gjennomgang av backtesten vurderte tapet som iboende: en rundtur på to børser med fire fyllinger koster 0.2–0.4%, mer enn basisen på noen få bps mellom ETH går tilbake med. En høyere inngangsterskel kutter derfor bare antall handler uten å skape edge. Strategien ble droppet ved porten før optimalisering etter 5 iterasjoner, fordi mekanismen strukturelt domineres av gebyrer og ikke er verdt å optimalisere.

Hypotese

Markedsnøytral basisarbitrasje på tvers av børser for ETH-perpetuals mellom Hyperliquid (ETHUSD.HYPERLIQUID) og Binance USD-M-futures (ETHUSDT.BINANCE). De to børsene har ulike deltakergrupper (HL domineres av sofistikerte tradere og risikovillige småsparere; Binance USD-M har den dypeste globale perp-ordreboken) og ulike funding-sykluser (HL hver time, Binance 8t). Dette skaper kortvarige prisspread mellom børser på 0.20–0.80% som konvergerer igjen i løpet av 1–3 firetimersbarer når arbitrasjeaktører på tvers av……Vis merVis mindre

Markedsnøytral basisarbitrasje på tvers av børser for ETH-perpetuals mellom Hyperliquid (ETHUSD.HYPERLIQUID) og Binance USD-M-futures (ETHUSDT.BINANCE). De to børsene har ulike deltakergrupper (HL domineres av sofistikerte tradere og risikovillige småsparere; Binance USD-M har den dypeste globale perp-ordreboken) og ulike funding-sykluser (HL hver time, Binance 8t). Dette skaper kortvarige prisspread mellom børser på 0.20–0.80% som konvergerer igjen i løpet av 1–3 firetimersbarer når arbitrasjeaktører på tvers av børser (market makere, basistradere) lukker gapet. Strategien oppdager når prosentvis spread (HL_close - BIN_close) / BIN_close overskrider en rullerende z-score-terskel på |z| > 2.0 over et tilbakeblikk på 60 barer, og går deretter long på den billigste børsen og short på den dyreste med lik nominell verdi. Posisjonen lukkes når z-score går tilbake til |z| < 0.3 eller etter en tidsstopp på 4 barer (16t). Dette er NOT et klassisk diagrammønster, NOT en retningsbestemt momentum- eller reverseringshandel og NOT funding-carry – det er ren gjennomsnittstilbakevending mellom børser drevet av en strukturell arbitrasjemekanisme. Retter seg samtidig mot den sterkt underrepresenterte HYPERLIQUID-børsen (4.1% mot 20% kvote), omfang på tvers av børser (4.6% mot 15% kvote) og long-short-retning (9.2% mot ~45% mål).

Iterasjon-5-retting (leverage_set_but_unused). Porten skanner den lagrede strategikoden etter en referanse til giring (config.leverage / self._lev / .leverage) og avviser når giring>1 er angitt, men mangler i koden. Jeg koblet giring entydig til posisjonsstørrelsen: position_size() leser nå `leverage = float(self.config.leverage)` direkte og beregner `notional = equity * exposure_frac * leverage`, og det speilede Hyperliquid-beinet bruker samme giringsjusterte nominelle verdi – dermed dobler 2x giring den nominelle verdien på begge bein (reell margineffekt, ikke passiv). Dette er den minste endringen som tilfredsstiller porten og samtidig bevarer all signal-logikk som tidligere besto (spread-z-score, inngang/utgang, samlet håndtering av to bein) og importene. Giring 2.0 passer her fordi posisjonen er markedsnøytral (long og short med lik nominell verdi), så 2x per bein holder retningsrisikoen nær null samtidig som basis-edge-en får økonomisk betydning.

Gjennomsnittstilbakevending i basis på tvers av børser, dominert av gebyrer, med en strukturell negativ edge som ikke kan justeres bort – ikke verdt å optimalisere. Basisen mellom ETH perpetuals på Hyperliquid og Binance er bare noen få bps til ~0.3%, men en markedsnøytral rundtur betaler FOUR taker-fyllinger (åpning + lukking på begge bein), så kostnadsgulvet på ~0.2-0.4% for to børser overstiger det spreaden går tilbake med. Backtesten taper jevnt: Sharpe -9.85, Sortino -13.8, profit_factor 0.908, omega 0.097,……Vis merVis mindre

Gjennomsnittstilbakevending i basis på tvers av børser, dominert av gebyrer, med en strukturell negativ edge som ikke kan justeres bort – ikke verdt å optimalisere. Basisen mellom ETH perpetuals på Hyperliquid og Binance er bare noen få bps til ~0.3%, men en markedsnøytral rundtur betaler FOUR taker-fyllinger (åpning + lukking på begge bein), så kostnadsgulvet på ~0.2-0.4% for to børser overstiger det spreaden går tilbake med. Backtesten taper jevnt: Sharpe -9.85, Sortino -13.8, profit_factor 0.908, omega 0.097, forventet verdi -$103/handel, total_return -24.9%, med negative resultater hver måned bortsett fra én og negative resultater alle tre årene (2024 -7.6%, 2025 -11.3%, 2026 -6.0%); provisjonen er 10.1% av brutto ($45.9k + $23.4k i markedspåvirkning). Den nåværende konfigurasjonen velger allerede de største avvikene (inngang z>2 over 60 barer), men taper fortsatt med en treffprosent på 48.4% og avg_win ~ avg_loss. Å øke entry_z eller forlenge posisjonstiden reduserer antall handler, men kan ikke løfte en basis på noen få bps over kostnadsgulvet på 4 fyllinger. Dette er ingen kodefeil (strategien kjører uten problemer, markedsnøytralt, beta 0.002), og det finnes ingen promotert søsterstrategi på tvers av børser som er strandet på et utgått mål – mekanismen selv begrenses av gebyrgulvet. FAILURE PATTERN: gjennomsnittstilbakevending i perp-basis på tvers av børser for en stor aktør (ETH HL mot Binance) domineres strukturelt av gebyrer: det omsettelige spreadet mellom børser (ensifret antall bps) er mindre enn rundturskostnaden på 4 fyllinger for to børser, og gir et jevnt tap med PF<1 som justering av z-terskelen ikke kan snu.

Implementasjon

Markedsnøytral gjennomsnittstilbakevending i basis på tvers av børser for ETH-perpetuals mellom ETHUSDT.BINANCE (primær) og ETHUSD.HYPERLIQUID (ekstra bein), 4t-barer. Prosentvis spread (HL-BIN)/BIN får z-score over et rullerende vindu på 60 barer; når |z|>2.0 går strategien long på den billigste børsen og short på den dyreste med lik nominell verdi, og lukker begge bein når spreadet konvergerer igjen (|z|<0.3) eller ved en tidsstopp på 4 barer (16t). Nominell verdi per bein = egenkapital * exposure_frac * giring, så den konfigurerte giringen på 2x dobler faktisk den samlede bruttoeksponeringen.

Verifiseringsresultater

Verifisering mislyktes (leverage_set_but_unused): konfigurasjonen setter giring=2.0, men strategien bruker aldri giring i posisjonsstørrelsen. Beregn posisjonsstørrelsen med den – nominell verdi = egenkapital * andel * giring / pris (les self.config.leverage) – eller sett giring=1.0. Slik den står, er giringen passiv, og backtesten er identisk med 1x.

Backtest-gjennomgang

Sharpe
-9,85
Total avkastning
-24,94%
Maks nedgang
27,95%
Totalt antall handler
446
Andel vinnende handler
48,4%
Profittfaktor
0,91

Strategien er mekanisk solid og kjører uten problemer: 446 markedsnøytrale handler, tidsjustert SyncedBuffer, genuint lav beta (0.002) og korrelasjon med referanseindeksen (0.03), ingen likvidering eller feil

Retter seg som planlagt mot de underrepresenterte kategoriene Hyperliquid, handel på tvers av børser og long-short

Jevnt strukturelt tap: Sharpe -9.85, Sortino -13.8, profit_factor 0.908, omega 0.097, forventet verdi -$103/handel, total_return -24.9% – negative resultater hver måned bortsett fra én, og alle tre årene negative

Gebyrdominert: en rundtur for basis på tvers av børser betaler 4 taker-fyllinger (åpning + lukking på både Binance- og HL-beina); provisjonen er 10.1% av brutto ($45.9k provisjon + $23.4k markedspåvirkning), og basisen på noen få bps mellom ETH HL og Binance kan ikke dekke kostnadsgulvet

Utvalg av de største spreadene feiler allerede: ved entry_z>2 er treffprosenten 48.4% med avg_win ~ avg_loss – de største avvikene konvergerer ikke pålitelig med gevinst, så en høyere terskel kan ikke skape edge

Ingen kodefeil og ingen promotert søsterstrategi på tvers av børser – den negative edge-en ligger i mekanismen og skyldes ikke en feil som kan rettes i implementasjonen

Analyse

Strategien taper fordi den handler et spread som er mindre enn sin egen kostnad for en rundtur. To nødvendige endringer før den er verdt å optimalisere: (1) Legg til en HARD kostnadsbevisst inngangsgrense: Gå bare inn når prosentvis spread RAW |(HL-BIN)/BIN| på signalstidspunktet overstiger en grense som dekker kostnaden for en rundtur med to bein (BINANCE ~0.10% + HYPERLIQUID ~0.09% ≈ 0.20% for en rundtur; krev at spreaden er minst ~2x av dette, for eksempel > 0.40%). En z-score på 2.0 for et spread med en……Vis merVis mindre

Strategien taper fordi den handler et spread som er mindre enn sin egen kostnad for en rundtur. To nødvendige endringer før den er verdt å optimalisere: (1) Legg til en HARD kostnadsbevisst inngangsgrense: Gå bare inn når prosentvis spread RAW |(HL-BIN)/BIN| på signalstidspunktet overstiger en grense som dekker kostnaden for en rundtur med to bein (BINANCE ~0.10% + HYPERLIQUID ~0.09% ≈ 0.20% for en rundtur; krev at spreaden er minst ~2x av dette, for eksempel > 0.40%). En z-score på 2.0 for et spread med en absolutt størrelse på bare noen få bps kan ikke handles – bruk en grense basert på absolutt spreadstørrelse, ikke bare z. (2) Loggfør og bekreft at spreadet er REAL, ikke et resultat av feiljusterte barer: loggfør fordelingen av rått inngangsspread. Hvis handler utløses ved |spread| på bare 0.05-0.15% (noen få bps til ~15bps), finnes ikke den antatte premien på 0.20-0.80% for dette paret, og signalet skyldes tidsstøy mellom børsene. Da kan mekanismen ikke fungere på ETH HL mot Binance, uansett z-terskler, og bør legges om til et børspar med en reelt bredere basis som konvergerer saktere, eller droppes. Reduser også handelsfrekvensen: tidsstoppen på 4 barer tvinger fram utganger som betaler gebyrer uten å vente på konvergens. Kjør backtesten på nytt. Hvis den kostnadsfiltrerte versjonen fortsatt viser profit_factor < 1.0, er premisset dødt, og dette bør ikke gå videre til optimaliseringen på 2 timer.

Iterasjonshistorikk

Verifisering mislyktes (lag 2 – syntetiske scenarioer): Parametere brukt: ['exit_z', 'entry_z', 'lookback', 'min_notional', 'exposure_frac', 'time_stop_bars'] Kontroller at __init__ setter alle attributter fra self.parameters.get(). - steady_uptrend: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - steady_downtrend: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - flat_ranging: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - volatility_spike: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - zero_volume: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - price_gap: TypeError: FactoryStrategy._bar_ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000)

Verifisering mislyktes (lag 2 – syntetiske scenarioer): Parametere brukt: ['exit_z', 'entry_z', 'lookback', 'min_notional', 'exposure_frac', 'time_stop_bars'] Kontroller at __init__ setter alle attributter fra self.parameters.get(). - steady_uptrend: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - steady_downtrend: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - flat_ranging: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - volatility_spike: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - zero_volume: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000) - price_gap: TypeError: EthCrossVenuePerpBasisMeanReversionLS4H._ts() tar 1 posisjonsargument, men fikk 2 (bar-tidsstempel: 1735689600000)

Utfallssammendrag

Mean-reversion i perp-basis på tvers av børser for en likvid stor kryptovaluta har et kostnadsgulv satt av gebyrene: En rundtur med fire ordreutførelser på to børser koster mer enn spreaden på noen få basispunkter som reverserer, og en høyere z-terskel kan ikke skape et fortrinn mekanismen strukturelt mangler.

Analytikerens gjennomgang av backtesten før optimalisering ga dommen «dropp», fordi den negative edge-en ble vurdert som strukturell og ikke som en kodefeil – en rundtur på to børser betaler fire taker-fyllinger, med et kostnadsgulv på ~0.2–0.4% som overstiger spreadet på noen få bps mellom ETH. Strategien ble derfor droppet før optimaliseringen i 3 faser.

En markedsnøytral long-short-basisarbitrasje som beregnet z-score for ETH-perp-prisspreadet mellom Hyperliquid og Binance USD-M, og som, når |z| > 2.0, gikk long på den billigste børsen og short på den dyreste i forventning om at avviket på 0.2–0.8% skulle konvergere igjen i løpet av 1–3 firetimersbarer.

Den kjørte uten problemer og markedsnøytralt (beta 0.002, korrelasjon med referanseindeks 0.03) gjennom 446 handler, men tapte jevnt: totalavkastning -24.9%, Sharpe -9.85, Sortino -13.8, profittfaktor 0.908, forventet verdi -$103/handel, treffprosent 48.4% med avg_win ≈ avg_loss, og provisjon på 10.1% av brutto ($45.9k i gebyrer + $23.4k i markedspåvirkning).

Stratmill er et forsknings- og papirhandelsverktøy, ikke finansiell rådgivning eller en megler. Backtest- og papirresultater er hypotetiske. Handel innebærer risiko for tap.