Mga Estratehiya
Hyperliquid BTC 15-Minutong Estratehiya sa Breakout ng Saklaw sa Pagbubukas ng Sesyong Asyano, Long-Short (3-Parameter na Crabel ORB, OHLCV-Lamang)
Resulta: Inabandona
BtcHl15mAsianOpeningRangeBreakoutLS
Malinis ang paggana ng mekanismo (133 nagsignal, 133 naisumite, walang na-drop) — hindi ito bug sa code/data plumbing
Hypothesis
Pag-aayos sa iteration 2 para sa `leverage_set_but_unused`: minultiply na ng dating code ang notional sa leverage, pero binasa nito ang value sa pamamagitan ng getattr(self.config, "leverage", 1.0) gamit ang string literal, na hindi nakikilala ng attribute-access detector ng static analyzer na AST bilang totoong pagtukoy sa self.config.leverage. Pinalitan ito ng minimal na pagbabago ng direktang pag-access sa attribute na `self.config.leverage` (leverage = float(self.config.leverage or 1.0)), kaya malinaw na ginagamit na ngayon ng notional = equity * position_fraction * leverage ang leverage na 2.0, at tugma ang margin model ng engine sa notional sa loob ng strategy. Walang ibang lohika ang binago: hindi ginalaw ang state machine na ORB, tuloy-tuloy na normalized-band signal, mga tuntunin sa entry/exit, at lahat ng naunang pumasa na layer, kaya walang regression. Angkop ang leverage na 2x para sa intraday breakout na ito na may mahigpit na stop (money stop na 1%) at pasok ito sa limitasyon ng Hyperliquid na 20x.
Sa saligan, hindi kumikita at may panganib na malugi nang malaki — hindi na mae-optimize. Ipinapakita ng total_return -59.6%, profit_factor 0.41, expectancy na -$452/trade, at avg_trade_return_pct -0.266% (negatibo) na malakas ang negatibong expectancy ng breakout na ORB sa BTC-HL 15m; kumpirmasyon na walang risk-adjusted edge ang Sharpe -2.58 na may CI [-4.39, -0.65] na pawang mas mababa sa zero at PSR 0.0016. Sa iisang araw (2026-06-10), nalugi ng -33.8% ang posisyong may 138% average size, na may max_drawdown 62.3% (CI hanggang 93.7%) — mapanganib ang leveraged sizing bukod pa sa kawalan ng edge. May dalawang magkahiwalay na hadlang: (1) walang parameter tuning na makapagpapabago sa negatibong expectancy ng directional breakout na OHLCV na iisang pangalan tungo sa positibo (L9/L41 uring walang nakaliligtas), at (2) halos 167 araw lang ang saklaw ng data sa Hyperliquid, napakaikli para suportahan ang walk-forward at holdout. Hindi sulit ang 2 oras ng optimization.
Implementasyon
Classical Crabel Opening Range Breakout (long+short) sa Hyperliquid BTC-USD perpetual, 15-minute bars, OHLCV-only. Ang opening range ng bawat araw na UTC ay ang high/low sa unang 60 minuto (00:00-01:00 UTC, simula ng Asian session). Pagkalipas ng OR window, kung magsara ang 15-minute bar sa itaas ng OR_high (+buffer), mag-long; sa ibaba ng OR_low (-buffer), mag-short. Isang round-trip bawat araw, mag-reset sa 00:00 UTC. Mga exit: protective money stop, structural range-failure stop (muling pagtawid sa kabilang hangganan ng OR), at pagsasara ng posisyon bago matapos ang araw. Nakakabit ang leverage na 2x sa sizing na batay sa kapital.
Mga Resulta ng Beripikasyon
CLEAN RESTART 2026-09-04 — inalis ang history ng hatol at mga tala ng pagkatuto sa run na ito, at sinimulan itong muli mula sa verification. Pipeline, hindi merkado, ang sanhi ng dating pag-abandona: mali ang pagkakabind ng Layer-2 harness sa mga @staticmethod helper (naayos); naglabas ang QA ng panghuling hatol sa performance batay sa smoke test na hindi na-optimize (inalis — correctness na lang ang hinahatulan ngayon ng QA); at backtest-slot starvation ang sanhi ng mga timeout sa sandbox (naayos). Hindi nagbago ang hypothesis at code ng strategy. Suriin ang code batay sa merito nito; ang performance ay pagpapasyahan kalaunan ng buong backtest at optimizer.
Maglagay ng totoong stop_market() sa entry para ipatupad ang 1% stop sa loob ng bar, at/o ibaba ang leverage sa 1.0 para hindi lumaki dahil sa gap at humantong sa loss sa iisang trade na lampas 20% ng equity.
Ang protective stop ay pagsusuri ng PnL sa pagsasara ng bar (get_position_pnl_pct <= -stop_loss_pct sa should_exit) na isinasagawa minsan bawat 15m bar, kaya hindi nito maipapatupad ang 1% loss sa loob ng bar; sa mabilis na 15m BTC bar, gumagalaw ito nang ilang porsiyento bago magsara at napupunan sa susunod na open. Sa leverage na 2x (1.2x notional), nagdulot ito ng iisang -$25,846 loss (~26% ng equity, 25x avg loss). Tama ang sizing math at paggamit ng leverage (2.0 sa loob ng limitasyong HL 20x), kaya hindi ito depekto sa code; pero hindi maisasakatuparan ang thesis ng mahigpit na stop sa pamamagitan ng pagsusuri sa pagsasara ng bar sa 2x.
Kumpirmahing ginagamit ng buong backtest ang lahat ng makukuhang HL 15m history; mag-ingat sa pag-promote dahil maikli ang saklaw.
Saklaw lang ng sandbox ang data_days=140, halos katumbas ng makukuhang history na HL BTCUSD 15m. Magagamit ang 133 trade, pero manipis na window na 140 araw sa kalendaryo at iisang regime para sa walk-forward (3 IS + holdout). Hindi ito kawalan ng data (may data at gumagana ang signal), pero magiging limitado at makitid sa regime ang OOS ebidensiya.
Pagsusuri ng Backtest
- Sharpe
- -2.58
- Kabuuang Return
- -59.58%
- Max Drawdown
- 62.33%
- Kabuuang Trade
- 133
- Win Rate
- 27.1%
- Profit Factor
- 0.41
Malinis ang paggana ng mekanismo (133 nagsignal, 133 naisumite, walang na-drop) — hindi ito bug sa code/data plumbing
OHLCV lang, walang pagdepende sa karagdagang feed
Tiyak na net loser: total_return -59.6%, profit_factor 0.41, expectancy na -$452/trade sa 133 trade
Negatibong edge bawat trade: avg_trade_return_pct -0.266% (mas mababa sa anumang minimum ng venue)
Sharpe -2.58 na may CI [-4.39, -0.65] ay puro negatibo; PSR 0.0016; information_ratio -3.9
Napakapinsalang tail: -33.8% sa iisang araw (2026-06-10), largest_loss -$26,268, avg_position_pct 138% — walang-ingat na leveraged sizing, max_drawdown 62.3% (CI hanggang 93.7%)
167 araw lang ng data sa Hyperliquid (~5.7 buwan) — napakaikli para sa walk-forward + holdout
Directional breakout ng estratehiya sa iisang asset na OHLCV — uring halos walang nakaliligtas (L9/L41)
Kasaysayan ng Iterasyon
Bumagsak ang verification (leverage_set_but_unused): itinatakda ng config ang leverage=2.0, pero hindi ito ginagamit ng strategy sa sizing. Ibase rito ang laki ng posisyon — notional = equity * fraction * leverage / price (basahin ang self.config.leverage) — o itakda ang leverage=1.0. Gaya ng pagkakasulat, walang epekto ang leverage at kapareho ang backtest ng 1x.
data_unavailable: hindi nakolekta ang backtest data para sa BTCUSD.HYPERLIQUID matapos ang 5 retry: - bars (bar_type=BTCUSD.HYPERLIQUID-15-MINUTE-LAST-EXTERNAL): nakuha ang 0, kailangan ang 200, o saklaw na 14+ araw Ang data layer (hindi ang strategy) ang hadlang — suriin muli ang hypothesis kapag naayos na ang pagkolekta / na-backfill na ang symbol.
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.