Langsung ke konten
Semua strategi

Strategi

Hyperliquid SOL Kontrarian Ekstrem Funding Perp — Long-Short, Nama Tunggal: FADE Posisi Padat Ketika Z-Score Funding Bergulir Mencapai Ekstrem (Funding Sangat Positif = Long Over-Leveraged → SHORT; Funding Sangat Negatif = Short Kapital → LONG), Dikonfirmasi oleh Non-Konfirmasi Harga, Keluar pada Reversi Funding / ATR Stop / Time Stop (SOLUSDT.HYPERLIQUID, 4J, Parameter 3)

Hasil: Ditinggalkan

HyperliquidSolFundingExtremeContrarian

Mekanisme berjalan bersih dan menghasilkan sampel yang memadai (201 trade selama 953 hari) tanpa timeout — implementasi funding O(log n) berfungsi sesuai rancangan

Hipotesis

Sebuah strategi kontrarian LONG-SHORT, instrumen tunggal, digerakkan oleh POSITIONING pada perpetual SOL Hyperliquid, dibangun di sekitar sinyal mekanis NON-OHLCV — perpetual FUNDING — menggunakan cara OPPOSITE menuju keluarga cash-and-carry mati milik factory. Ini NOT bukan carry delta-neutral (yang mati karena P&L funding terlalu kecil vs noise basis) dan NOT bukan momentum harga (keranjang momentum HL adalah 0/84). Sebaliknya, funding digunakan sebagai pengukur crowding/positioning untuk mengatur waktu fade……Tampilkan lebih banyakTampilkan lebih sedikit

Sebuah strategi kontrarian LONG-SHORT, instrumen tunggal, digerakkan oleh POSITIONING pada perpetual SOL Hyperliquid, dibangun di sekitar sinyal mekanis NON-OHLCV — perpetual FUNDING — menggunakan cara OPPOSITE menuju keluarga cash-and-carry mati milik factory. Ini NOT bukan carry delta-neutral (yang mati karena P&L funding terlalu kecil vs noise basis) dan NOT bukan momentum harga (keranjang momentum HL adalah 0/84). Sebaliknya, funding digunakan sebagai pengukur crowding/positioning untuk mengatur waktu fade DIRECTIONAL: hasil terdokumentasi dengan baik bahwa ketika funding perp sangat positif, pihak long over-leveraged dan membayar untuk menahan — kondisi yang secara historis mendahului return perp LOWER ke depan (risiko squeeze/washout), dan secara simetris funding sangat-negatif menandai short yang kapitulasi yang mendahului pantulan. Dipilih untuk mengisi tiga bucket yang kurang terwakili sekaligus: HYPERLIQUID (6.8% vs target 20%), long_short (14.2%), dan edge non-OHLCV yang aman-data yang tidak berada di kuburan overfit OHLCV. Nama tunggal dan parameter 3 secara sengaja, agar tetap dapat diimplementasikan (keranjang multi-instrumen HL mati karena timeout pengkodean) dan untuk menahan overfitting. IMPLEMENTATION NOTE: pertahankan baseline funding sebagai deque bergulir yang diperbarui secara inkremental (O(1) per pembaruan) — NEVER memindai ulang seri funding lengkap di dalam on_bar (pola tersebut menyebabkan timeout sandbox 300s berulang).

Iterasi 2 memperbaiki satu-satunya kegagalan Layer-2 (`FactoryStrategy._bar_ts() takes 1 positional argument but 2 were given`, keenam skenario). Layer-2 `_StrategyProxy` mengikat ulang setiap atribut callable dari strategi ke wrapper polos melalui `types.MethodType`, yang mengonversi staticmethod `_bar_ts` argumen-satu dari base class menjadi bound method — sehingga `self._bar_ts(bar)` diterima dengan dua argumen. Perbaikan minimal mengganti satu panggilan tersebut dengan helper `_bar_timestamp_ns(bar)`……Tampilkan lebih banyakTampilkan lebih sedikit

Iterasi 2 memperbaiki satu-satunya kegagalan Layer-2 (`FactoryStrategy._bar_ts() takes 1 positional argument but 2 were given`, keenam skenario). Layer-2 `_StrategyProxy` mengikat ulang setiap atribut callable dari strategi ke wrapper polos melalui `types.MethodType`, yang mengonversi staticmethod `_bar_ts` argumen-satu dari base class menjadi bound method — sehingga `self._bar_ts(bar)` diterima dengan dua argumen. Perbaikan minimal mengganti satu panggilan tersebut dengan helper `_bar_timestamp_ns(bar)` tingkat-modul yang membaca `bar.ts_event` (fallback ke `ts_init`) secara langsung — secara perilaku identik, kebal terhadap rebinding proxy. Tidak ada yang lain berubah: impor, struktur kelas, parsing funding, logika sinyal, entry, exit, dan sizing secara byte-identik dengan previous_code yang lulus Layer 1, sehingga tidak ada pemeriksaan sebelumnya yang dapat regresi. Catatan `_bar_interval_ns` masih dipanggil dari `__init__`, yang berjalan pada instance nyata sebelum proxy mengikat ulang apa pun, sehingga tidak terpengaruh. Leverage 2.0 dikonsumsi di `position_size` melalui `self.config.leverage` dalam cap gross-notional.

Fade kontrarian funding-ekstrem nama-tunggal dengan ekspektasi negatif — tidak ada edge untuk dioptimasi. PF 0.60, total_return -33.7%, Sharpe -0.42, ekspektansi -$156/trade, dan avg_trade_return_pct -0.37% (negatif, di bawah lantai biaya Hyperliquid 0.15%, L22). Merugi di setiap tahun (2024 -14.8%, 2025 -13.8%, 2026 -6.5%) dengan kedua kaki long maupun short memiliki win rate sub-43% dan avg_loss > avg_win — fade kontrarian secara sistematis berada di sisi yang salah dari pergerakan, dan satu-satunya bulan positif adalah satu hari pencilan +10.77% (kurtosis 9.8). Mekanisme diimplementasikan dengan benar (tanpa timeout, funding dikreditkan) tetapi berada di dua keluarga zero-survivor: mean-reversion/fade nama-tunggal (L55) dan direksional gated-supplementary(funding) single-perp (L73). Gate non-konfirmasi harga tidak menambah edge nyata. Tanda edge per-trade negatif, yang tidak dapat dibalik oleh tuning parameter apa pun. Tidak值得 2 jam optimasi. Pola kegagalan: fade kontrarian gated-funding single-perp fee_edge/no_edge.

Implementasi

Kontrarian nama-tunggal long-short pada perp SOL Hyperliquid (bar 4J). Funding digunakan sebagai pengukur crowding: z-score bergulir dari print hl_funding_rates terhadap distribusinya yang berurutan dikembalikan setiap bar sebagai sinyal kontinu. Z positif ekstrem (padat, long over-paying) di-fade dengan SHORT; z negatif ekstrem (short kapitulasi) di-fade dengan LONG, tetapi hanya ketika harga gagal mengonfirmasi keramaian (close tidak membuat high/low segar confirm_bars-bar). Exit pada reversi funding (|z| <= exit_z), stop ATR yang di-snapshot saat entry, atau time stop kalender yang diukur dari position.ts_opened. Sizing berbasis risiko: stop ATR berharga ~risk_frac ekuitas, dengan cap gross-notional independen.

Hasil Verifikasi

CLEAN RESTART 2026-09-04 — riwayat putusan dan catatan pembelajaran pada run ini dihapus dan dijalankan ulang dari tahap verifikasi. Pengabaian sebelumnya berasal dari pipeline, bukan dari pasar: harness Layer-2 salah mengikat helper @staticmethod (sudah diperbaiki), QA mengeluarkan putusan performa terminal pada smoke test yang belum dioptimasi (dihapus — QA sekarang hanya menilai kebenaran), dan timeout sandbox disebabkan oleh kehabisan slot backtest (sudah diperbaiki). Hipotesis dan kode strategi tidak berubah. Verifikasi kode berdasarkan kelebihannya; performa diputuskan kemudian oleh backtest penuh dan optimizer.

Persempit _param_bounds ke tunable headline 3 (entry_z, exit_z, funding_lookback_prints); kunci parameter risiko/plumbing sebagai konstanta.

Hipotesis secara sengaja menjual desain '3-parameter untuk menahan overfitting', tetapi _param_bounds memperlihatkan 11 parameter yang dapat dioptimasi. Mekanisme benar, tetapi pencarian walk-forward 11-dimensi bertentangan dengan rasional anti-overfit yang dinyatakan dan meningkatkan risiko PBO. Tidak memblokir.

Tidak diperlukan; dicatat untuk analis.

Sinyal sintetis Layer-2 semua dibekukan pada 0.0 (tanpa funding yang diinjeksi), sehingga jalur perdagangan hanya dijalankan oleh sandbox (yang melakukan trade 65 kali pada funding nyata). Tidak fatal.

Tinjauan Backtest

Sharpe
-0.42
Total Return
-33.71%
Max Drawdown
40.24%
Total Trade
201
Rasio Menang
42.3%
Faktor Profit
0.60

Mekanisme berjalan bersih dan menghasilkan sampel yang memadai (201 trade selama 953 hari) tanpa timeout — implementasi funding O(log n) berfungsi sesuai rancangan

Instrumen tunggal, satu feed suplementer (hl_funding_rates), tanpa patologi data/verifikasi; funding dikreditkan dalam PnL

Ekspektansi negatif: profit_factor 0.60, total_return -33.7%, ekspektansi -$156/trade

avg_trade_return_pct -0.37% — negatif dan jauh di bawah lantai biaya Hyperliquid 0.15% (L22)

Merugi di ketiga tahun (2024 -14.8%, 2025 -13.8%, 2026 -6.5%) — no-edge persisten, bukan yang terdegenerasi

Kedua kaki kalah (win long 42%, win short 42%) dengan avg_loss > avg_win — fade funding-ekstrem berada di sisi yang salah dari pergerakan

Satu-satunya bulan positif adalah satu hari pencilan +10.77% (kurtosis 9.8); tape di baliknya secara seragam negatif

Fade direksional gated-funding nama-tunggal — kelas zero-survivor mean-reversion (0/174) dan direksional gated-suplementer single-perp (L73)

Riwayat Iterasi

Verifikasi gagal (Layer 2 — skenario sintetis): Parameter yang digunakan: ['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'] Periksa bahwa __init__ menyetel semua atribut dari self.parameters.get(). - steady_uptrend: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - steady_downtrend: TypeError:……Tampilkan lebih banyakTampilkan lebih sedikit

Verifikasi gagal (Layer 2 — skenario sintetis): Parameter yang digunakan: ['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'] Periksa bahwa __init__ menyetel semua atribut dari self.parameters.get(). - steady_uptrend: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - steady_downtrend: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - flat_ranging: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - volatility_spike: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - zero_volume: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000) - price_gap: TypeError: FactoryStrategy._bar_ts() mengambil 1 argumen posisional tetapi 2 diberikan (timestamp bar: 1735690500000)

Stratmill adalah alat riset dan paper trading, bukan nasihat keuangan atau broker. Hasil backtest dan paper trading bersifat hipotetis. Trading mengandung risiko kerugian.