SOL USD-M intraday opening-range breakout, long-short (BINANCE perp, 15m bars, i-trade ang breakout ng range sa bukas ng session sa 00:00 UTC, gamit ang structural range stop at paglabas batay sa oras sa loob ng parehong session — directional continuation, hindi reversion, 3 parameter)
Resulta: Inabandona
SolIntradayOpeningRangeBreakout
Pamantayan ng backtest: - hindi maaasahan ang mga sukatan: Hindi tugma: salungat ang sign ng Sharpe na 0.14 sa total_return -74.91% — kinukuwenta ang Sharpe mula sa seryeng mtm_equity_curve, samantalang mula sa equity…
Isang LONG-SHORT, iisang instrumento na intraday opening-range breakout (ORB) strategy sa SOLUSDT.BINANCE (USD-M perpetual, 15-minutong bars). Sa bawat UTC na araw, tinutukoy ng strategy ang 'opening range' mula sa high/low ng unang N 15m bars pagkatapos ng 00:00 UTC (ang daily funding-settlement / Asia-session boundary), saka nagte-trade ng FIRST na malinis na break ng range na iyon sa alinmang direksyon at sinusundan ang continuation hanggang sa pagtatapos ng session. Sinadya itong OPPOSITE mekanismo mula sa……Magpakita ng higit paMagpakita ng mas kaunti
Isang LONG-SHORT, iisang instrumento na intraday opening-range breakout (ORB) strategy sa SOLUSDT.BINANCE (USD-M perpetual, 15-minutong bars). Sa bawat UTC na araw, tinutukoy ng strategy ang 'opening range' mula sa high/low ng unang N 15m bars pagkatapos ng 00:00 UTC (ang daily funding-settlement / Asia-session boundary), saka nagte-trade ng FIRST na malinis na break ng range na iyon sa alinmang direksyon at sinusundan ang continuation hanggang sa pagtatapos ng session. Sinadya itong OPPOSITE mekanismo mula sa mga mean-reversion strategy na patuloy na namamatay sa strategy factory na ito (XRP RSI(2), BNB Bollinger reversion, VWAP fades) — BUYS nito ang lakas at SELLS ang kahinaan sa halip na mag-fade ng matitinding galaw — at iba ito sa horizon at direksyon kumpara sa mga long-only daily basket na nangingibabaw sa portfolio (85% long-only, 71% BINANCE-futures, 5.4% lamang na short-horizon). Iniiwasan nito ang bawat kamakailang graveyard: walang funding-level signal (L13), walang liquidation feed (L3), walang options (L23), walang cross-sectional basket (L12), walang cross-venue carry (L1), walang Hyperliquid (L11), walang 200-SMA regime timing. 3 lamang na parameter para mapanatiling mababa ang overfitting risk (ang #1 killer, 202x). Itinakda sa BINANCE sa kabila ng sobrang representasyon nito dahil ang short-horizon validation ay nangangailangan ng multi-year na sub-hourly history, na hindi kayang ibigay ng Hyperliquid (~2.5 linggo sa 15m) at walang na-catalog na SOL perp bars ang Bybit at Deribit sa aming infra; mas mabigat ang direction+horizon diversity na pinupunan nito kaysa sa bilang ng venue.
Tinutugunan ng Iteration 5 ang backtest gate (hindi tugma ang equity curve na -74.91% sa Sharpe na hinango sa mtm) sa pamamagitan ng isang nakatuong ayos sa execution. Natukoy ng dating code ang structural stop/target sa loob ng bar (bar low/high) pero lumabas gamit ang order na MARKET sa CLOSE ng bar: sa 15m SOL bars, bawat lugi ay naisakatuparan nang WORSE kaysa sa ~1% structural stop, at bawat target na nahawakan at binaligtad sa loob ng bar ay naisara sa presyong nabaligtad na sa pagsasara. Sapat na ang……Magpakita ng higit paMagpakita ng mas kaunti
Tinutugunan ng Iteration 5 ang backtest gate (hindi tugma ang equity curve na -74.91% sa Sharpe na hinango sa mtm) sa pamamagitan ng isang nakatuong ayos sa execution. Natukoy ng dating code ang structural stop/target sa loob ng bar (bar low/high) pero lumabas gamit ang order na MARKET sa CLOSE ng bar: sa 15m SOL bars, bawat lugi ay naisakatuparan nang WORSE kaysa sa ~1% structural stop, at bawat target na nahawakan at binaligtad sa loob ng bar ay naisara sa presyong nabaligtad na sa pagsasara. Sapat na ang ganitong di-magkapantay na slippage para mabaligtad mismo ang expectancy ng continuation edge, dahil 2.9:1 ang dinisenyong reward:risk. Mga bracket na pinamamahalaan na ngayon ng venue (use_bracket_orders) ang mga entry; aktuwal na antas ang pinagmumulan ng pag-trigger ng mga leg na STOP_MARKET at LIMIT. Nananatiling STRUCTURAL ang stop/target (stop_frac x opening range, tp_mult x opening range) sa pamamagitan ng pag-convert ng distansya ng bawat trade sa stop_loss_pct/take_profit_pct sa should_enter(), na binabasa ng base template kapag nagsusumite ito ng bracket. should_exit() na ngayon ang humahawak sa ONLY paglabas ng signal (time stop sa parehong session) para walang dobleng paglabas. Hindi ginalaw ang signal logic, pag-lock sa isang trade bawat araw, min_range_pct gate para sa bayarin, at path-independent sizing na nakapasa na sa Layers 1-3. Tapat na paalala: kung hindi maitataas ng intra-bar exit execution ang expectancy lampas sa ~0.10% round-trip fee, napabulaanan ang premise ng ORB continuation sa SOL 15m at dapat nang abandunahin ang run sa halip na muling i-tune.
Negatibo ang inaasahang kita sa maaasahang sampol na 1139 trade / 6 taon: avg_trade_return_pct -0.115% (mas mababa sa ZERO, malayong mas mababa sa pinakamababang singil ng Binance na 0.15% USD-M), profit_factor 0.759, inaasahang kita na -$68.95/trade, total_return -77.2%, Sharpe -0.55 (CI [-1.39,0.27]). Tama ang pagsasagawa ng mga trade sa haypotesis (unang malinis na paglagpas sa alinmang direksiyon, balanseng 585 long / 554 short, samantalahin ang pagpapatuloy ng galaw), kaya patas itong pagsubok sa palagay na……Magpakita ng higit paMagpakita ng mas kaunti
Negatibo ang inaasahang kita sa maaasahang sampol na 1139 trade / 6 taon: avg_trade_return_pct -0.115% (mas mababa sa ZERO, malayong mas mababa sa pinakamababang singil ng Binance na 0.15% USD-M), profit_factor 0.759, inaasahang kita na -$68.95/trade, total_return -77.2%, Sharpe -0.55 (CI [-1.39,0.27]). Tama ang pagsasagawa ng mga trade sa haypotesis (unang malinis na paglagpas sa alinmang direksiyon, balanseng 585 long / 554 short, samantalahin ang pagpapatuloy ng galaw), kaya patas itong pagsubok sa palagay na pagpapatuloy ng ORB sa SOL 15m — at napasinungalingan ang palagay: nalulugi ang estratehiya sa EVERY rehimen ng pagkasumpungin (mahinahon -32%, karaniwan -36%, matindi -100%) at EVERY taon ng kalendaryo (2020-2026). 9% lamang ng kabuuang return bago ibawas ang mga bayarin ang komisyon, kaya ito ay NOT kahinaan sa bayarin — negatibo ang return bago ibawas ang mga bayarin ng senyas na pagpapatuloy matapos ang paglagpas (antas ng panalo na 0.26 na may avg_win/avg_loss ~2.15, negatibo pa rin ang netong kita dahil mas madalas bumabaligtad ang mga paglagpas kaysa nagpapatuloy; skew -6.7). Hindi kayang baligtarin ng 3 na mga parameter na maaaring i-optimize ang senyas na PF-0.759 at may negatibong inaasahang kita — walang positibong kalamangan sa return bago ibawas ang mga bayarin na maaaring pagtuunan ng pag-aayos. Ito ang ika-5 ulit na ang parehong mekanismo ay nagdudulot pa rin ng kurba ng equity na nauuwi sa lubos na pagkalugi. Hindi sulit ang 2 oras ng pag-optimize. abandon_class=negative_expectancy.
Implementasyon
SOLUSDT.BINANCE USD-M perp, 15-minutong bars, long-short intraday opening-range breakout. Ang opening range ay ang high/low ng unang 4 bars pagkatapos ng 00:00 UTC; magla-long sa unang malinis na breakout lampas sa range_high*(1+buffer) at magla-short lampas sa range_low*(1-buffer), isang beses bawat UTC araw, kung hindi bababa sa min_range_pct ang lapad ng opening range (gate para sa bayarin). Istruktural ang risk: stop sa stop_frac x range at target sa tp_mult x range, na inilalagay ngayon bilang mga bracket leg na pinamamahalaan ng venue para mag-execute ang mga ito INTRA-BAR sa kani-kanilang antas ng presyo, at paglabas batay sa oras sa 23:30 UTC ng parehong session (walang overnight carry). Nakatakda ang notional ng posisyon bilang takdang bahagi ng reference capital; pababa lang ang pagbabawas ng risk.
Mga Resulta ng Beripikasyon
Ayusin ang peripheral params (breakout_buffer, min_range_pct, position_frac, exit_cutoff_min) bilang makabuluhang constant at ilantad lamang ang 3 na binabanggit ng hypothesis (hal. range_bars, stop_frac, tp_mult), o i-update ang teksto ng hypothesis para tumugma sa tunay na bilang ng mga puwedeng i-tune. Bantayang mabuti ang ratio ng IS/OOS sa optimization.
Tahasang sinasabi ng hipotesis na '3 na parameter lamang para mapanatiling mababa ang overfitting risk', ngunit ipinapakita ng code ang 7 na maaaring i-optimize na parameter sa parameters['_param_bounds'] (tp_mult, stop_frac, range_bars, min_range_pct, position_frac, breakout_buffer, exit_cutoff_min). Naipatupad nang tapat ang core ORB structure, kaya hindi ito mismatch sa mekanismo, ngunit humina ang argumento tungkol sa overfitting risk na sinasandigan ng hipotesis. Maghahanap ang optimizer sa isang 7-dimensional na espasyo, hindi 3.
Mababa rito ang panganib — sinasala na ng calculate_signal ang mga entry batay sa _range_ready (na nangangailangan ng naipong range_bars bars sa loob ng session), hiwalay sa min_bars_required, kaya hindi magiging maaga ang entry kahit malampasan ang override. Kumpirmahing iginagalang ng base ang override o panatilihin ang internal gate bilang garantiya.
Ino-override ng min_bars_required(self) ang isang framework method (babala sa static analysis na base_shadow). Kung hindi pinapansin ng base template ang override para sa warm-up gating, maaaring hindi maipatupad ang opening-range warm-up bago ang unang pagsusuri ng entry.
Ipinapakita ng sandbox smoke test (31 trades, 208 araw) ang negatibong expectancy: avg_trade_return_pct -0.097% (mas mababa sa ~0.10% round-trip fee ng futures), profit_factor 0.73, Sharpe -1.42 (CI [-4.14, 1.09]), total_return -1.96%. Kaya ng idinisenyong istruktura ang mga bayarin (min_range_pct 1.4% gate, tp_mult 1.75x range, stop_frac 0.6x range → lampas na lampas sa bayarin ang mga target/stop), kaya drawdown ito mula sa hindi pa ino-optimize na estratehiya, hindi sirang mekanismo — pero hindi pa napapatunayan ang edge ng ORB-continuation sa SOL 15m. Dapat kumpirmahin ng analyst sa buong history na itinataas ng intra-bar bracket execution ang aktuwal na return bawat trade lampas sa pinakamababang antas ng bayarin; inaamin ng sariling tala ng developer na dapat itong abandunahin kung hindi. Kapansin-pansing mas mahina ang Long_win_rate (0.25) kaysa short_win_rate (0.40) — sulit suriin ang simetriya ng direksyon sa buong backtest.
Pagsusuri ng Backtest
Sharpe
-0.55
Kabuuang Return
-77.25%
Max Drawdown
78.43%
Kabuuang Trade
1139
Win Rate
26.1%
Profit Factor
0.76
Maayos ang pagkakabuo at magkakaiba ang direksyon ng mekanismo (585 long / 554 short), na tapat na nagpapatupad sa nakasaad na hypothesis ng ORB-continuation gamit ang malaking sample na 1139 trades / 6 taon
Dinisenyong lampas na lampas sa bayarin ang structural stop/target, kaya tunay na pagsubok ito sa edge at hindi basta bunga ng marupok na resulta dahil sa bayarin
Komisyon ay 9% lang ng gross — NOT na dulot ng bayarin ang lugi; ito ang hilaw na signal
Negatibo ang expectancy sa mapagpasyang sample: avg_trade_return_pct -0.115% (BELOW ZERO, malayong mas mababa sa pinakamababang bayad na 0.15% USD-M), profit_factor 0.759, expectancy na -$68.95/trade, total_return -77.2%, Sharpe -0.55 (CI [-1.39, 0.27])
Napabulaanan ang premise sa bawat rehimen (kalma -32%, normal -35%, stressed -100%) at bawat taon sa kalendaryo (negatibo ang lahat mula 2020 hanggang 2026) — walang panahong gumagana ang ORB-continuation
Hindi kanais-nais na hugis ng kita at lugi (avg_win 835 kumpara sa avg_loss 388 ngunit 0.26 lamang ang antas ng panalo; skew -6.7, kurtosis 242) — mas madalas bumabaligtad ang pagpapatuloy laban sa breakout kaysa nagpapatuloy ito sa direksiyon ng breakout
max_drawdown 78.4% na perp, may tagal na 2114 araw na underwater; kumpirmado sa buong history ang pag-aalala ni QA tungkol sa negatibong expectancy mula sa smoke test
Pagsusuri
Pamantayan ng backtest:
- hindi maaasahan ang mga sukatan: Hindi tugma: salungat ang sign ng Sharpe na 0.14 sa total_return -74.91% — kinukuwenta ang Sharpe mula sa seryeng mtm_equity_curve, samantalang mula sa equity curve ang return. Hatulan batay sa equity curve.
Kasaysayan ng Iterasyon
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA): - FEE/EDGE FAILURE (mapagkakatiwalaan, diagnostic na backtest). NEGATIVE ang aktuwal na edge bawat trade: avg_trade_return_pct -0.2617% net, profit_factor 0.77, win_rate 0.33, omega 0.925, tail_ratio 0.49. Sa loob ng 2131 trades, bumagsak ang account sa -100% at LIQUIDATED (2023-01-25). 7.77% ng gross ang komisyon — hindi natatakpan ng galaw ng ORB continuation ang ~0.10% taker cost sa round-trip. Mababa sa 0.15% na threshold para kayanin ang bayarin ang……Magpakita ng higit paMagpakita ng mas kaunti
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA):
- FEE/EDGE FAILURE (mapagkakatiwalaan, diagnostic na backtest). NEGATIVE ang aktuwal na edge bawat trade: avg_trade_return_pct -0.2617% net, profit_factor 0.77, win_rate 0.33, omega 0.925, tail_ratio 0.49. Sa loob ng 2131 trades, bumagsak ang account sa -100% at LIQUIDATED (2023-01-25). 7.77% ng gross ang komisyon — hindi natatakpan ng galaw ng ORB continuation ang ~0.10% taker cost sa round-trip. Mababa sa 0.15% na threshold para kayanin ang bayarin ang breakout_buffer 0.07% (checklist #7). Karaniwang pagkamatay dahil sa bayarin at mataas na turnover (L6/L16).
- RISK-CONTROL INCONSISTENCY: may leverage na 1.0 at dokumentadong notional cap na equity*leverage, pero avg_position_pct 227.70% at buong LIQUIDATION. Hindi dapat ma-liquidate sa karaniwang galaw ng SOL ang posisyong tunay na nililimitahan sa 1x, ni lumampas sa average na >100% ng equity. Maaaring hindi ipinapatupad ang cap kaugnay ng aktuwal na margin ng engine, o paulit-ulit na umaabot sa cap ang risk-based sizing sa makikitid na range habang lumiliit ang naluluging account at nagiging mas mababa rito hanggang sa liquidation. Nabigo ang pangunahing pananggalang na itinakda.
- Tapat namang ipinapatupad ng code ang hypothesis: opening range mula sa unang range_bars 15m bars pagkatapos ng 00:00 UTC, unang malinis na breakout sa alinmang direksyon, structural stop sa kabilang gilid, paglabas batay sa oras sa parehong session, eksaktong isang trade/araw (1071 long + 1060 short = 2131 = data_days), long-short SOLUSDT.BINANCE 15m. Tugma ang direksyon/instrument/timeframe/horizon. Ang resulta ang dahilan ng pagharang, hindi hindi pagtutugma.
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA): - THE NOTIONAL CAP IS PROVABLY NOT ENFORCED. Itinakda sa max_gross_frac=0.35 ang iterasyong ito, kaya naka-code na hindi hihigit sa 0.35x ng equity ang notional ng posisyon sa entry, pero iniulat ng backtest ang avg_position_pct 151.74% (~4.3x ng itinakdang cap) at ang account ay STILL LIQUIDATED (2025-08-02). Hindi maaaring mag-average ng 1.5x ng equity o ma-liquidate ang posisyong tunay na nilimitahan sa 0.35x ng equity sa account na may 1x leverage. Ito……Magpakita ng higit paMagpakita ng mas kaunti
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA):
- THE NOTIONAL CAP IS PROVABLY NOT ENFORCED. Itinakda sa max_gross_frac=0.35 ang iterasyong ito, kaya naka-code na hindi hihigit sa 0.35x ng equity ang notional ng posisyon sa entry, pero iniulat ng backtest ang avg_position_pct 151.74% (~4.3x ng itinakdang cap) at ang account ay STILL LIQUIDATED (2025-08-02). Hindi maaaring mag-average ng 1.5x ng equity o ma-liquidate ang posisyong tunay na nilimitahan sa 0.35x ng equity sa account na may 1x leverage. Ito ang depekto ng SAME sa tatlong kaparehong strategy (SOL v1 cap 1.0x->227%, ETH pivots cap 1.0x->497%, SOL v2 cap 0.35x->151%); hindi proporsyonal na binawasan ng paghigpit sa cap ang aktuwal na exposure — hindi naisasalin ng position_size() ang halaga sa aktuwal na exposure sa engine (malamang ay get_account_equity base, pagpapalaki ng laki ng venue na default_leverage, o hindi pag-flat ng mga exit bago muling mag-entry). Hindi mapagkakatiwalaan ang anumang backtest mula sa grupong ito hangga't hindi natutukoy nang hiwalay ang ugat ng problema.
- FEE/EDGE FAILURE PERSISTS. Sa kabila ng min_range_pct gate, 0.18% buffer at pagbabagong-ayos sa reward>risk, netong lugi pa rin ang strategy: PF 0.79, win_rate 0.30, avg_trade_return_pct -0.0713% (negatibo, mababa sa round-trip cost), omega 0.98, komisyon na 9.69% ng gross sa 1596 trades, nagtatapos sa -100%. Binawasan lang ng gate ang turnover mula 2131 tungo sa 1596; walang lumitaw na positibong edge. Ipinapakita ng return_kurtosis 1386 na may largest_loss (-1806) na ~3.7x avg_loss ang pagsagasa ng intrabar sa mga stop na batay sa close sa 15m perp, kaya hindi nililimitahan ng 'masikip na stop' ang lugi bawat trade.
- Tapat pa rin ang mekanismo ng ORB (opening range mula sa unang range_bars 15m bars pagkatapos ng 00:00 UTC, unang malinis na breakout sa alinmang direksyon na may min_range_pct gate, masikip na stop + target + paglabas batay sa oras sa parehong session, isang trade/araw = 794 long + 802 short = 1596 = data_days, long-short SOL 15m). Tugma ang direksyon/instrument/timeframe/horizon. Resulta at depekto sa sizing ang dahilan ng pagharang, hindi hindi pagtutugma.
Nabigo ang beripikasyon (Layer 1 — config): instrument_id at bar_type ng config ay REQUIRED (nakuha ang instrument_id=None, bar_type=None). Itakda ang dalawa sa instrumento ng hypothesis, hal. instrument_id='BTCUSDT.BINANCE', bar_type='BTCUSDT.BINANCE-4-HOUR-LAST-EXTERNAL'.
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA): - FEE/EDGE FAILURE sa mapagkakatiwalaang backtest na CLEAN na ngayon. Nang maayos na ang sizing, diagnostic ang mga sukatan (annualized_volatility 15.85%, avg_position_pct 35.86%, liquidated=False, metrics_reliable) — at pinatutunayan ng mapagkakatiwalaang resulta na ORB-continuation ang edge ay NEGATIVE: total_return -74.77%, Sharpe -2.15 (PSR 0.00, CI [-3.18,-1.18] pawang negatibo), PF 0.77, win_rate 0.28, omega 0.71, CAGR -21.06%. avg_trade_return_pct……Magpakita ng higit paMagpakita ng mas kaunti
Bumagsak ang beripikasyon (Layer 4 — pagsusuri ng QA):
- FEE/EDGE FAILURE sa mapagkakatiwalaang backtest na CLEAN na ngayon. Nang maayos na ang sizing, diagnostic ang mga sukatan (annualized_volatility 15.85%, avg_position_pct 35.86%, liquidated=False, metrics_reliable) — at pinatutunayan ng mapagkakatiwalaang resulta na ORB-continuation ang edge ay NEGATIVE: total_return -74.77%, Sharpe -2.15 (PSR 0.00, CI [-3.18,-1.18] pawang negatibo), PF 0.77, win_rate 0.28, omega 0.71, CAGR -21.06%. avg_trade_return_pct -0.0855% (negatibo, mababa sa round-trip cost), komisyon na 9.34% ng gross sa 1199 trades. Hindi nakalikha ng positibong edge ang min_range_pct gate, mas malawak na buffer at R:R (stop_frac 0.6 / tp_mult 1.75) — napakababa ng 28% win rate para sa 1.75x na reward; mas madalas pumalya at bumaligtad ang breakout kaysa magpatuloy. Tiyak na hatol sa bayarin/edge (L6/L16): walang ORB edge sa SOL 15m kapag ibinawas ang bayarin.
- CREDIT / RESOLVED: inayos ng path-independent na fixed-notional sizing (notional = min(base_capital, live_equity) * position_frac) ang depektong hindi naipapatupad ang sizing. Nalimitahan na ngayon ang avg_position_pct sa 35.86% (kumpara sa 227% sa iter-1), liquidated=False, annualized_volatility 324%->15.85% — nagpapatunay na ang ugat ng problema ay ang pag-angkla ng laki sa maling iniulat/leverage-inflated na get_account_equity(). Naayos din ang intrabar low/high stop/target (kurtosis 1386->6.8). Mga napatunayang ayos ito, hindi dahilan ng pagkabigo.
- Tapat pa rin ang mekanismo ng ORB (opening range mula sa unang range_bars 15m bars pagkatapos ng 00:00 UTC, unang malinis na breakout sa alinmang direksyon na may min_range_pct gate, takdang stop/target + paglabas batay sa oras sa parehong session, isang trade/araw = 611 long + 588 short = 1199 = data_days, long-short SOL 15m). Tugma ang alignment; negatibong edge ang dahilan ng pagharang.
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.