Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

MATIC Four-Hour Volume Breakout Long-Only (BINANCE USD-M Futures, 4H, OHLCV-Only)

Resulta: Inabandona

MaticFourHourVolumeConfirmedBreakoutLong

Buod ng Resulta

Tama ang pinakamahirap na bahagi ng ginawa ng developer: na-delist ang MATICUSDT bandang 2024-09 matapos palitan ng POL ang pangalan nito, at sa halip na mabigo sa data_unavailable, tama niyang itinuro muli ang strategy sa successor contract na POLUSDT. Tapat na ipinatupad ng code ang pamilya ng breakout — 90 long / 0 short, napunan ang bawat signal — pero tuloy-tuloy na bumaba ang POL mula nang palitan ang pangalan nito, kaya negatibo ang netong resulta ng long-only na bersiyon sa lahat ng tatlong taon. Naitala……Magpakita ng higit paMagpakita ng mas kaunti

Tama ang pinakamahirap na bahagi ng ginawa ng developer: na-delist ang MATICUSDT bandang 2024-09 matapos palitan ng POL ang pangalan nito, at sa halip na mabigo sa data_unavailable, tama niyang itinuro muli ang strategy sa successor contract na POLUSDT. Tapat na ipinatupad ng code ang pamilya ng breakout — 90 long / 0 short, napunan ang bawat signal — pero tuloy-tuloy na bumaba ang POL mula nang palitan ang pangalan nito, kaya negatibo ang netong resulta ng long-only na bersiyon sa lahat ng tatlong taon. Naitala sa docstring ang sandaling nasira ang palagay: pinahina ang trend gate hanggang lumitaw ang trades. Lalo itong pinalala ng mga gastos (total_impact_usd $23,079, halos doble ng $11,088 na komisyon, sa turnover na 745 sa manipis ang liquidity na alt), at umabot ang avg_position_pct sa 140.99% laban sa disenyong 1.2x, dahil ibinatay ang notional sa lumiit na equity kaya tumaas ang epektibong leverage habang nalulugi ang strategy. Tinanggihan ng reviewer ang pag-iterate (walang bug — magbabalik lang sa zero trades ang wastong filter, kaparehong hatol sa ibang paraan) at pag-optimize (hindi makalilikha ng uptrend ang sweep, at mag-aangkop lang sa ingay ang ~1.8 taon ng kasaysayan). Itinuro rin ng reviewer na resulta lang ng mas mabagal na pagkalugi kaysa sa mismong POL, at hindi edge, ang positibong information_ratio ng +0.4322 — -0.1189 ang alpha.

Hypothesis

Long-only MATIC 4-hour strategy sa BINANCE USD-M futures. Direktang analog ng nailapag nang pamilya ng BTC/ETH/SOL/BNB/AVAX/DOGE/XRP FourHourVolumeBreakoutLong — inilapat sa MATIC. Iniiwasan ng paglipat sa 4H ang tuloy-tuloy na isyu sa audit-refill ng daily bars na pumatay sa 12+ daily hypothesis sa session na ito. Iisang instrumento, OHLCV lang, entry na may iisang kondisyon, timeframe na 4H na inaprubahan ng factory.

Tinutugunan ng iteration 4 ang ONLY iniulat na pagkabigo sa Layer-3 (lumampas sa 300s wall-clock limit ang smoke test). Nakapasa na ang Layers 1 at 2, kaya hindi binago ang imports, class structure, signal semantics, entry/exit conditions, sizing at pagkakaugnay ng leverage. Nagmula ang timeout sa pag-aayos ng data sa bawat bar: bumuo muli ang dating rebisyon ng apat na numpy array sa bawat bar gamit ang list comprehension sa mga Bar object (`np.array([b.close.as_double() for b in recent])` x4), na gumugol ng……Magpakita ng higit paMagpakita ng mas kaunti

Tinutugunan ng iteration 4 ang ONLY iniulat na pagkabigo sa Layer-3 (lumampas sa 300s wall-clock limit ang smoke test). Nakapasa na ang Layers 1 at 2, kaya hindi binago ang imports, class structure, signal semantics, entry/exit conditions, sizing at pagkakaugnay ng leverage. Nagmula ang timeout sa pag-aayos ng data sa bawat bar: bumuo muli ang dating rebisyon ng apat na numpy array sa bawat bar gamit ang list comprehension sa mga Bar object (`np.array([b.close.as_double() for b in recent])` x4), na gumugol ng ~200 Cython attribute call at apat na numpy allocation bawat bar. Naka-limit na ang window, pero nangingibabaw ang nakapirming overhead ng allocation ng numpy sa ~52 elemento. Ang ayos: kinukuha ng paraang `_ingest()` ang bawat OHLCV float ng bar nang isang beses pagdating nito (idempotent sa pamamagitan ng `bar.ts_init`, kaya hindi ito madodoble ng muling pagpasok ng proxy ng Layer-2) at inilalagay sa apat na magkahanay na Python float list na sabay-sabay pinuputol bilang iisang yunit para manatiling magkatugma ang mga index. Gumagamit na ngayon ang lahat ng rolling statistic ng builtin `sum`/`min`/`max` sa maliliit na slice — mas mura ito kaysa numpy sa ganitong laki ng window at O(window), hindi O(history). Inalis ang numpy para sa `math.isfinite`, na pinapayagang stdlib import at nagpapanatiling green ang Layer 1. Nananatiling parameterized ang bawat threshold, tuloy-tuloy pa ring nagbabalik ang `calculate_signal` ng breakout-distance proxy sa bawat bar (hindi kailanman ginagawang constant), nilalagyan pa rin ng threshold ng `should_enter` ang flag na `_armed`, at binabasa pa rin ng `position_size()` ang `self.config.leverage` kaya tunay na ginagamit ang setting na 2.0x (0.60 x 2.0 = 1.2x notional ng equity). Nilalayon ng 20-bar breakout na may 6% stop at 18% target ang mga galaw bawat trade na mas malaki kaysa sa ~0.10% round-trip taker cost.

Long-only breakout sa asset na may structural na pagbaba — nalulugi ito sa bawat taon ng pag-iral nito, at walang parameter na makakaayos sa premise. total_return -33.21%, sharpe_ratio -3.1496, sortino -5.697, profit_factor 0.742, omega_ratio 0.553, expectancy -$370.65 sa 90 na trades, max_drawdown 44.83% (CI hanggang 66.20%), probabilistic_sharpe 0.0885, at negatibo ang annual_returns sa lahat ng tatlong taon (2024 -0.19%, 2025 -17.45%, 2026 -19.11%), at tuloy-tuloy na negatibo ang rolling Sharpe mula 2025-07-18……Magpakita ng higit paMagpakita ng mas kaunti

Long-only breakout sa asset na may structural na pagbaba — nalulugi ito sa bawat taon ng pag-iral nito, at walang parameter na makakaayos sa premise. total_return -33.21%, sharpe_ratio -3.1496, sortino -5.697, profit_factor 0.742, omega_ratio 0.553, expectancy -$370.65 sa 90 na trades, max_drawdown 44.83% (CI hanggang 66.20%), probabilistic_sharpe 0.0885, at negatibo ang annual_returns sa lahat ng tatlong taon (2024 -0.19%, 2025 -17.45%, 2026 -19.11%), at tuloy-tuloy na negatibo ang rolling Sharpe mula 2025-07-18 hanggang sa dulo ng run. Ang pinakamalinaw na palatandaan ay nasa sarili nitong docstring ng estratehiya: pinaikli ng developer ang regime filter mula ~200 na bar patungong 50 dahil 'ang isang 200-day na SMA regime filter ay halos haharang sa bawat long at magbubunga ng zero trades.' Ang zero-trade na output na ito WAS ang tamang sagot — ito ang filter na nag-uulat na ang POL ay walang tuloy-tuloy na bull regime sa window na ito — at ang pagpapahina rito hanggang lumitaw ang mga trade ay iniaangkop ang parameter sa nais na bilang ng trade sa halip na sa asset. Sinisira rin nito ang premise na 'direktang analog ng landed family' na nakasandig dito ang hypothesis. Hindi 'iterate': tama ang code at tapat nitong ipinatutupad ang mekanismo (90 long / 0 short, 90/90 na orders na naisumite, zero drops), kaya walang bug na aayusin; ang pagbabalik ng wastong 200-bar regime filter ay magbibigay lang ng zero trades, na parehong hatol sa ibang ruta. Hindi 'optimize': ang 225-trial sweep sa isang long-only breakout ay hindi makakalikha ng uptrend sa underlying, at ang run ay sumasaklaw lamang mula 2024-09-13 pataas (~1.8 na taon, data_days 75) dahil na-delist ang MATICUSDT, kaya ang 3-window walk-forward ay mag-fi-fit lang sa ingay sa isang bahagi ng history na na-validate ng mga sibling. Pinalalala ng mga gastos ang problema: total_impact_usd $23,079 ay humigit-kumulang DOUBLE total_commission $11,088 sa turnover na 745 sa isang manipis na alt, at ang avg_position_pct 140.99% ay lumalampas sa nakasaad na 1.2x na disenyo dahil naka-size ang notional batay sa lumiliit na equity, kaya tumataas ang epektibong leverage habang nalulugi ang estratehiya. Tandaan mo na ang information_ratio +0.4322 ay dapat NOT basahin bilang edge — ang alpha ay -0.1189, at ang positibong IR ay nagpapakita lamang ng mas mabagal na pagkalugi kaysa sa sariling buy-and-hold ng POL. FAILURE PATTERN: ang pag-port ng na-promote na 4H Volume-Confirmed Breakout family (BTC/ETH/SOL/BNB/AVAX/DOGE/XRP) sa MATIC/POL ay NOT nagmamana ng promotability. Ang edge ng mga sibling ay nagmula sa mga asset na nagte-trend UP sa test window; ang POL ay patuloy na bumaba mula nang i-rename ito, kaya negatibo ang net ng long-only na expression bago pa ang anumang tuning. Dalawang pangkalahatang tuntunin: (1) kapag hinaharangan ng regime filter ang bawat entry, ito ay isang VERDICT tungkol sa instrumento, hindi isang parameter na dapat paluwagin — ang estratehiyang kailangang i-disable ang sarili nitong trend gate para makapag-trade ay nagsasabi sa iyo na wala ang trend; (2) bago i-port ang long-biased na mekanismo sa bagong asset, tingnan mo kung ang price trend ng asset sa available na history ay hindi negatibo — ang parehong aral na naitala na ng BCH drawdown-accumulation abandon.

Implementasyon

Long-only 4H volume-confirmed Donchian breakout sa POLUSDT (ang kasalukuyang nakalistang successor ng na-delist na MATICUSDT) sa Binance USD-M futures sa leverage na 2x. Naglo-long kapag nagsara ang 4H sa ibabaw ng dating 20-bar high, lumampas ang volume sa 1.2x ng 20-bar average nito, at nasa itaas ang presyo ng 50-bar SMA (bull regime). Lumalabas kapag nabasag ang Donchian low na 10-bar, naabot ang 6% stop, 18% take-profit, o 30-bar time stop. Purong OHLCV, iisang instrumento, walang supplementary data.

Mga Resulta ng Beripikasyon

Bigo ang beripikasyon (Layer 3 — sandbox backtest): lumampas sa 300s wall-clock limit ang smoke test. Karaniwang nangangahulugan ito ng trabahong inuulit sa bawat bar at lumalaki kasabay ng kasaysayan — halimbawa, muling pag-scan sa buong funding/supplementary series, o muling pagbuo ng listahan at pagtawag sa min()/sorted() sa loob ng calculate_signal()/on_bar() sa bawat bar. Paunang isaayos ang mga timestamp array na ONCE sa __init__ at gumamit ng bisect, o i-cache ang mga lookup ayon sa timestamp, para maging O(log n) sa halip na O(n) ang gastos sa bawat bar.

Pagsusuri ng Backtest

Sharpe
-3.15
Kabuuang Return
-33.21%
Max Drawdown
44.83%
Kabuuang Trade
90
Win Rate
40.0%
Profit Factor
0.74

Mahusay ang pagkakasulat ng code at tapat nitong ipinapatupad ang pamilya ng volume-confirmed Donchian breakout: 90 long / 0 short (tama para sa long-only hypothesis), ipinapakita ng entry_diag na 90 ang nasenyasan -> 90 ang isinumite at walang na-drop. Walang hindi pagtutugma sa mekanismo at walang bug sa code.

Tamang natukoy ng developer na na-delist ang MATICUSDT (~2024-09) at itinuro muli ang strategy sa successor contract na POLUSDT, sa halip na mabigo sa data_unavailable. Tama ang diagnosis na iyon.

Sapat na sample sana ang bilang ng trade (90) kung paborable ang direksiyon ng resulta.

THE STRATEGY LOSES MONEY IN EVERY YEAR OF ITS LIFE. annual_returns: 2024 -0.19%, 2025 -17.45%, 2026 -19.11%. total_return -33.21%, sharpe_ratio -3.1496, sortino -5.697, profit_factor 0.742, omega_ratio 0.553, expectancy -$370.65/trade. probabilistic_sharpe 0.0885. Naging negatibo ang rolling Sharpe noong 2025-07-18 at hindi na nakabawi sa sumunod na labindalawang buwan.

THE REGIME FILTER WAS DISABLED BECAUSE IT WORKED. Sinasabi ng docstring na ang 200-bar SMA regime filter ay “halos haharang sa lahat ng long at magbubunga ng zero trades,” kaya ibinaba ang regime_bars sa 50. Tamang resulta ang zero trades, hindi hadlang: ibig sabihin, walang napapanatiling bull regime ang POL sa panahong ito. Ang pagpapaikli sa filter hanggang lumitaw ang trades ay pag-aangkop ng parameter sa ninanais na bilang ng trades, at paglihis ito sa napatunayang sibling template na nagpapawalang-bisa sa palagay na “direktang analog” ito.

LONG-ONLY BREAKOUT ON Isang STRUCTURALLY DECLINING ASSET. Ito ang kilalang BCH drawdown-accumulation failure pattern. Ang mga BTC/ETH/SOL/BNB/AVAX/DOGE/XRP sibling ay nagmamana ng kanilang edge mula sa mga asset na nagte-trend pataas sa test window; ang POL ay hindi. Walang parameter sa loob ng long-only breakout ang makakalikha ng uptrend, kaya walang target na mapag-tune-an ang optimization.

SIZING EXCEEDS SPEC AND COMPOUNDS THE LOSS: 140.99% ang avg_position_pct kumpara sa itinakdang disenyong position_pct 0.60 x leverage 2.0 = 1.2x. Kinukuwenta ang notional batay sa lumiit na equity, kaya tumataas ang epektibong leverage habang nauubos ang pondo ng strategy. Kasama ng max_drawdown 44.83% (hanggang 66.20% ang CI) at annualized_volatility 61.77%, nangangahulugan ito ng 1.4x leverage sa bumababang asset.

COSTS ARE SEVERE: humigit-kumulang DOUBLE total_commission $11,088 ang total_impact_usd $23,079, sa turnover na 745 sa isang manipis ang liquidity na alt. commission_pct_of_gross 11.54%. Mahihirapan itong lampasan kahit ng tunay na edge.

HISTORY IS TOO SHORT REGARDLESS: nagsimula lang ang kontratang POLUSDT noong 2024-09-13 (data_days 75, 3,901 4H bars, ~1.8 taon). Na-validate ang mga nailapag na sibling sa loob ng ~6 taon. Mag-aangkop lang sa ingay ng datos ang 3-window walk-forward dito.

Ang information_ratio ay +0.4322 lamang dahil nalugi ang estratehiya nang LESS kaysa sa simpleng pag-hold ng POL; ang alpha ay -0.1189. Ang pag-underperform sa cash habang nag-outperform sa isang bumabagsak na asset ay hindi edge.

Kasaysayan ng Iterasyon

Bigo ang beripikasyon (Layer 3 — sandbox backtest): Walang nabuong trades Uri ng bar na ginamit: POLUSDT.BINANCE-4-HOUR-LAST-EXTERNAL, Mga bar na naproseso: 3903 Diagnostics: nagbalik ang should_enter() ng side nang 0 beses sa 0 sinuring bar -> hindi kailanman nag-trigger ang ENTRY CONDITION. Luwagan ang entry logic / thresholds. Tiyaking nakakagawa ng trades ang strategy mo gamit ang ibinigay na data at mga parameter.

Buod ng Resulta

Kapag hinaharangan ng regime filter ang bawat entry, hatol iyon tungkol sa instrumento, hindi parameter na dapat luwagan — at namamana lang ng mekanismong nakahilig sa long ang promotability ng mga sibling nito kung hindi negatibo ang trend ng bagong asset sa makukuhang kasaysayan.

Inabandona ito ng backtest-review gate bago pa tumakbo ang optimization: ang mapagpasyang palatandaan ay nasa docstring mismo ng strategy, kung saan ibinaba ng developer ang regime filter mula ~200 bars tungo sa 50 dahil “halos haharang sa lahat ng long at magbubunga ng zero trades” ang 200-bar SMA — long-only breakout ito sa asset na patuloy na bumababa ang presyo sa estruktura nito, kung saan walang parameter na makalilikha ng uptrend.

Ilipat ang pamilya ng na-promote nang 4H Volume-Confirmed Breakout Long (BTC/ETH/SOL/BNB/AVAX/DOGE/XRP) sa MATIC — i-trade ang successor contract na POLUSDT.BINANCE USD-M sa 4-hour bars; mag-long kapag nag-breakout ang volume-confirmed Donchian sa taas ng 50-bar SMA regime filter, at lumabas kapag nabasag ang channel, naabot ang take-profit o stop-loss, o natapos ang max-hold time stop.

Sa 90 long trade (90 ang nasenyasan, 90 ang isinumite, walang na-drop), nagbalik ito ng -33.21% sa kabuuan; Sharpe -3.1496, Sortino -5.697, profit_factor 0.742, omega_ratio 0.553 at expectancy na -$370.65 bawat trade, laban sa max drawdown na 44.83% (CI hanggang 66.20%). Nalugi ito sa bawat taon ng pag-iral — 2024 -0.19%, 2025 -17.45%, 2026 -19.11% — at naging negatibo ang rolling Sharpe noong 2025-07-18 at hindi na nakabawi.

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.