HyperliquidSolFundingExtremeContrarian
Hipotezės
Hyperliquid SOL Perpetualų finansavimo ekstremumų kontrarinė strategija — ilgoji-trumpoji, vieno instrumento: FADE perpildytos pozicijos, kai slenkamasis finansavimo Z balas pasiekia ekstremumą (labai teigiamas finansavimas = per daug svertuotos ilgosios pozicijos → SHORT; labai neigiamas = kapituliavusios trumposios pozicijos → LONG), patvirtinama kainos nepatvirtinimu, išėjimas finansavimui grįžtant / ATR stopas / laiko stopas (SOLUSDT.HYPERLIQUID, 4H, 3 parametrų)
Hipotezės
LONG-SHORT, vieno instrumento, POSITIONING grindžiama priešingos krypties strategija, skirta Hyperliquid SOL neterminuotam ateities sandoriui ir paremta NON-OHLCV mechaniniu signalu — neterminuoto ateities sandorio FUNDING — buvo taikoma OPPOSITE būdu, palyginti su nepasiteisinusia strategijų kūrimo sistemos „cash-and-carry“ grupe. Tai yra NOT delta neutrali palūkanų skirtumo strategija (kuri nepasiteisino, nes finansavimo pelnas ir nuostoliai buvo per maži, palyginti su bazės triukšmu) ir NOT kainos momentumas (HL momentumo krepšeliai yra 0/84). Vietoj to finansavimas naudojamas kaip pozicijų susitelkimo / pasiskirstymo rodiklis, padedantis parinkti DIRECTIONAL prekybos prieš judėjimą laiką: gerai dokumentuota išvada, kad, kai neterminuotų ateities sandorių finansavimo norma yra itin teigiama, ilgųjų pozicijų turėtojai naudoja pernelyg didelį svertą ir moka už pozicijų laikymą — istoriškai po tokios būsenos seka LOWER vėlesnė neterminuotų ateities sandorių grąža (priverstinio pozicijų uždarymo / masinio likvidavimo rizika), o simetriškai itin neigiamas finansavimas rodo kapituliavusias trumpąsias pozicijas, po kurių seka atšokimai. Pasirinkta siekiant vienu metu papildyti tris nepakankamai atstovaujamas kategorijas: HYPERLIQUID (6.8%, palyginti su 20% tikslu), long_short (14.2%) ir duomenų požiūriu saugų ne OHLCV pranašumą, nepatenkantį į OHLCV dėl perteklinio pritaikymo žlugusių strategijų kapinyną. Sąmoningai pasirinktas vienas instrumentas ir 3 parametrų, kad strategiją būtų įmanoma įgyvendinti (kelių instrumentų HL krepšeliai žlugo viršijus programavimo laiko limitus) ir būtų išvengta perteklinio pritaikymo. IMPLEMENTATION NOTE: finansavimo atskaitos seką laikykite slenkančioje dvipusėje eilėje, atnaujinamoje inkrementiškai (O(1) vienam atnaujinimui) — NEVER iš naujo nuskaityti visą finansavimo seką on_bar viduje (dėl šio modelio izoliuotoje aplinkoje pakartotinai buvo viršyti 300s vykdymo laiko limitai).
Hipotezės
Iteracija 2 ištaiso vienintelę Layer-2 klaidą (`FactoryStrategy._bar_ts() takes 1 positional argument but 2 were given`, visi šeši scenarijai). Layer-2 `_StrategyProxy` per `types.MethodType` iš naujo susieja kiekvieną strategijos iškviečiamą atributą su paprastu apvalkalu, kuris bazinės klasės vieno argumento `_bar_ts` staticmethod paverčia susietuoju metodu — todėl `self._bar_ts(bar)` perduodamas su dviem argumentais. Minimalus pataisymas pakeičia tą vienintelį iškvietimą modulio lygio `_bar_timestamp_ns(bar)` pagalbine funkcija, kuri tiesiogiai nuskaito `bar.ts_event` (jei nėra, naudoja `ts_init`) — elgesys identiškas, o proxy perrišimas jam įtakos neturi. Daugiau niekas nepasikeitė: importai, klasės struktūra, finansavimo analizavimas, signalo logika, įėjimai, išėjimai ir pozicijos dydžio nustatymas baitas į baitą sutampa su previous_code, kuri išlaikė Layer 1 patikrą, todėl ankstesnė patikra negali regresuoti. Pastaba: `_bar_interval_ns` vis dar iškviečiamas iš `__init__`, kuris realiajame egzemplioriuje vykdomas prieš proxy perrišant bet ką, todėl tai nepaveikta. Svertas 2.0 naudojamas `position_size` per `self.config.leverage` bendrosios nominaliosios vertės riboje.
Hipotezės
Neigiamos tikėtinos vertės vieno instrumento priešingos krypties strategija, prekiaujanti prieš judėjimą esant ekstremalioms finansavimo normoms — nėra pranašumo, kurį būtų galima optimizuoti. PF 0.60, total_return -33.7%, Sharpe rodiklis -0.42, tikėtina vertė -$156/sandorį ir avg_trade_return_pct -0.37% (neigiama, žemiau 0.15% Hyperliquid komisinių sąnaudų ribos, L22). Nuostoliai kiekvienais metais (2024 -14.8%, 2025 -13.8%, 2026 -6.5%), tiek ilgųjų, tiek trumpųjų pozicijų pelningų sandorių dalis mažesnė nei -43%, o avg_loss > avg_win — ši prieš judėjimą prekiaujanti strategija sistemingai pasirenka klaidingą judėjimo pusę, o vienintelį pelningą mėnesį lėmė viena išskirtinė +10.77% diena (kurtozė 9.8). Mechanizmas įgyvendintas tinkamai (vykdymo laiko limitas neviršytas, finansavimo mokėjimai įskaityti), tačiau priklauso dviem grupėms, kuriose neišliko nė viena strategija: vieno instrumento grįžimo prie vidurkio / prekybos prieš judėjimą (L55) ir vieno neterminuoto ateities sandorio kryptinės prekybos su papildomų duomenų (finansavimo) filtru (L73). Kainos nepatvirtinimo filtras nesuteikė tikro pranašumo. Vieno sandorio pranašumo ženklas yra neigiamas, ir joks parametrų derinimas jo nepakeis. Neverta skirti 2 valandų optimizavimui. Nesėkmės modelis: fee_edge/no_edge vieno neterminuoto ateities sandorio priešingos krypties prekyba prieš judėjimą su finansavimo filtru.
Įgyvendinimas
Vieno instrumento priešingos krypties strategija su ilgosiomis ir trumposiomis pozicijomis, skirta Hyperliquid SOL neterminuotam ateities sandoriui (4 val. žvakės). Finansavimas naudojamas kaip pozicijų susitelkimo rodiklis: kiekvienoje žvakėje kaip tolydus signalas grąžinamas slenkantis hl_funding_rates reikšmės z įvertis, apskaičiuotas pagal jos pačios ankstesnių reikšmių pasiskirstymą. Esant itin teigiamam z (susitelkusios, per daug mokančios ilgosios pozicijos), prieš judėjimą prekiaujama naudojant SHORT; esant itin neigiamam z (kapituliavusios trumposios pozicijos) — naudojant LONG, bet tik tada, kai kaina nepatvirtina daugumos pozicijų krypties (uždarymo kaina nepasiekia naujo confirm_bars žvakių maksimumo / minimumo). Pozicija uždaroma finansavimui grįžus prie vidurkio (|z| <= exit_z), pasiekus atidarymo metu užfiksuotą ATR nuostolio ribą arba kalendorinio laiko limitą, skaičiuojamą nuo position.ts_opened. Pozicijos dydis pirmiausia parenkamas pagal riziką: pasiekus ATR nuostolio ribą prarandama ~risk_frac nuosavo kapitalo, taikant nepriklausomą bendrosios nominaliosios pozicijų vertės ribą.
Patikros rezultatai
CLEAN RESTART 2026-09-04 — šio vykdymo vertinimų istorija ir mokymosi įrašai buvo pašalinti, o vykdymas pradėtas iš naujo nuo patikros. Ankstesnį jo nutraukimą lėmė apdorojimo grandinė, o ne rinka: Layer-2 testavimo aplinka neteisingai susiejo @staticmethod pagalbines funkcijas (ištaisyta), QA pateikė galutinius rezultatų vertinimus pagal neoptimizuotą pirminį veikimo testą (pašalinta — QA dabar vertina tik teisingumą), o izoliuotos aplinkos vykdymo laiko limitai buvo viršyti dėl istorinio testavimo vykdymo vietų trūkumo (ištaisyta). Hipotezė ir strategijos kodas nepakeisti. Patikrinkite patį kodą; rezultatai bus įvertinti vėliau, atlikus išsamų istorinį testavimą ir optimizavimą.
Patikros rezultatai
Susiaurinti _param_bounds iki 3 pagrindinių derinamų parametrų (entry_z, exit_z, funding_lookback_prints); rizikos / infrastruktūros parametrus užfiksuoti kaip konstantas.
Patikros rezultatai
Hipotezėje reklamuojama konstrukcija su „sąmoningai pasirinktu 3 parametrų skaičiumi, siekiant išvengti perteklinio pritaikymo“, tačiau _param_bounds pateikia 11 optimizuojamų parametrų. Mechanizmas teisingas, tačiau 11 matmenų paieška slenkančiais laiko langais prieštarauja deklaruotam perteklinio pritaikymo vengimo pagrindimui ir didina PBO riziką. Tai netrukdo tęsti.
Patikros rezultatai
Nereikia; analitikas informuotas.
Patikros rezultatai
Visi Layer-2 sintetiniai signalai liko užfiksuoti ties 0.0 (finansavimo duomenys nebuvo įterpti), todėl prekybos vykdymo kelias buvo išbandytas tik izoliuotoje aplinkoje (kurioje, naudojant realius finansavimo duomenis, prekiauta 65 kartų). Nekritinė problema.
Istorinio testo peržiūra
Mechanizmas suveikia švariai ir sukuria pakankamą imtį (201 sandorių per 953 dienų), neviršydamas skirtojo laiko — O(log n) finansavimo įgyvendinimas veikia taip, kaip numatyta
Istorinio testo peržiūra
Vienas instrumentas, vienas papildomas duomenų srautas (hl_funding_rates), jokių duomenų / patikros anomalijų; finansavimas įskaitytas į PnL
Istorinio testo peržiūra
Neigiama tikėtina vertė: profit_factor 0.60, total_return -33.7%, tikėtina vertė -$156/sandorį
Istorinio testo peržiūra
avg_trade_return_pct -0.37% — neigiamas ir gerokai mažesnis už 0.15% Hyperliquid mokesčių ribą (L22)
Istorinio testo peržiūra
Nuostolingas visus trejus metus (2024 -14.8%, 2025 -13.8%, 2026 -6.5%) — ilgalaikis pranašumo nebuvimas, o ne jo sunykimas
Istorinio testo peržiūra
Abi dalys nuostolingos (ilgosios dalies laimėjimas 42%, trumposios dalies laimėjimas 42%), o avg_loss > avg_win — finansavimo ekstremumų fade yra neteisingoje judėjimo pusėje
Istorinio testo peržiūra
Vienintelį pelningą mėnesį lėmė viena išskirtinė +10.77% diena (kurtozė 9.8); pagrindinė prekybos rezultatų seka yra nuosekliai neigiama
Istorinio testo peržiūra
Vieno instrumento kryptinė prekyba prieš judėjimą su finansavimo filtru — grįžimo prie vidurkio (0/174) ir vieno neterminuoto ateities sandorio kryptinės prekybos su papildomų duomenų filtru (L73) klasės, kuriose neišliko nė viena strategija
Iteration History
Patikra nepavyko (Layer 2 — sintetiniai scenarijai):
Naudoti parametrai: ['exit_z', 'entry_z', 'atr_bars', 'risk_frac', 'min_prints', 'confirm_bars', '_param_bounds', 'atr_stop_mult', 'max_hold_bars', 'max_lag_seconds', 'max_notional_frac', 'funding_lookback_prints']
Patikrinkite, ar __init__ nustato visus atributus iš self.parameters.get().
- steady_uptrend: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
- steady_downtrend: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
- flat_ranging: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
- volatility_spike: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
- zero_volume: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
- price_gap: TypeError: FactoryStrategy._bar_ts() priima 1 pozicinį argumentą, tačiau buvo pateikti 2 (juostos laiko žyma: 1735690500000)
„Stratmill“ yra tyrimų ir popierinės prekybos įrankis, o ne finansų konsultantas ar brokeris. Testavimo ir popierinės prekybos rezultatai yra hipotetiniai. Prekyba susijusi su nuostolio rizika.