Sadyang simple at panlaban sa overfitting ang LtcFourHourMacdBullishMomentumContinuationLong; layunin nitong makisabay sa momentum gamit ang textbook crossover ng MACD(12/26/9) sa mga LTC 4H bar, purong OHLCV upang makaiwas sa mga naunang sunod-sunod na pagkabigo ng karagdagang datos. Malinis ang implementasyon — 219 long entry sa loob ng 6.5 taon — pero sa 2020 (+74%) lang nagkaroon ng edge at nalugi ito bawat taon hanggang 2026, na nagtapos sa kabuuang return na -37.3%, Sharpe na -0.23, at pinakamataas na drawdown na 83.6%. Iniwan ito ng analyst sa yugto ng pagsusuri sa backtest, dahil wala nang mapapahusay ang optimizer sa crossover na klasikong lubos nang na-arbitrahe at tuloy-tuloy na nalugi sa loob ng limang taon. Itinigil matapos ang 3 ulit nang hindi umabot sa pag-optimize o pagsusuri para sa promosyon ng analyst.
Isang long-only na estratehiyang MOMENTUM-CONTINUATION para sa iisang instrumento sa LTCUSDT perpetual futures (Binance USD-M), gamit ang klasikong indicator na MACD (12, 26, 9) sa mga 4-oras na bar. CRITICAL DESIGN CHOICES na direktang hinubog ng pinakabagong mga bugso ng pagkabigo sa 4: (a) ZERO pagdepende sa karagdagang datos — ang mga karagdagang feed sa buong sistema (funding, liquidation, open_interest, taker_ratio, premium_index) ay ALL nabigo sa nakaraang 4 siklo ng hypothesis dahil walang laman o hindi……Magpakita ng higit paMagpakita ng mas kaunti
Isang long-only na estratehiyang MOMENTUM-CONTINUATION para sa iisang instrumento sa LTCUSDT perpetual futures (Binance USD-M), gamit ang klasikong indicator na MACD (12, 26, 9) sa mga 4-oras na bar. CRITICAL DESIGN CHOICES na direktang hinubog ng pinakabagong mga bugso ng pagkabigo sa 4: (a) ZERO pagdepende sa karagdagang datos — ang mga karagdagang feed sa buong sistema (funding, liquidation, open_interest, taker_ratio, premium_index) ay ALL nabigo sa nakaraang 4 siklo ng hypothesis dahil walang laman o hindi available ang mga feed; gumagamit ang estratehiyang ito ng ONLY OHLCV. (b) NOT mean reversion — tahasang pinasinungalingan ang mean reversion na VWAP deviation sa mga alt perps (XRP), na may negatibong Sharpe sa 623 trade; disenyong momentum-CONTINUATION ito. (c) NOT isang kontraryong short — tiyak na napatunayang mali ang kontraryong short batay sa funding rate na BTC ('senyas ng pagpapatuloy ang matinding funding, hindi mean reversion' sa makabagong microstructure ng crypto); ipinagpapalit ng estratehiyang ito ang WITH momentum, long-only. (d) 4H + Binance USD-M — ang napatunayang kombinasyon para sa beripikasyon (nagkaroon ng pagkabigo sa auditor ang bawat estratehiyang Hyperliquid/araw-araw na pattern). (e) simbolong NEW — kabilang ang LTC sa mga crypto perp na may pinakamahabang kasaysayan ng likidong kalakalan (10+ taon ng kasaysayan ng spot price), kaya malawak ang saklaw ng backtest at wala ito sa kasalukuyang portfolio. (f) Gumagamit ng MACD kasama ang mga kanonikong parameter na FIXED (12/26/9) — mga pangkalahatang default ang mga ito, NOT curve-fit, kaya naaalis ang alalahanin sa overfitting na itinuro sa feedback tungkol sa mga pagkabigo.
Sa iteration 3, inaayos lang ang iniulat na pagkabigo sa Layer-2: `_ema_series() takes 2 positional arguments but 3 were given`. Ang ugat nito ay ang pag-clone ng `_Wrapper` ng verifier (strategy_verifier.py:118-132), na muling nagbubuklod sa bawat callable attribute gamit ang `types.MethodType` at naglalagay ng di-inaasahang unang argumento sa anumang static/plain-function helper. Ang pinakasimple at tiyak na ayos ay ganap na alisin ang helper method at kalkulahin ang EMA gamit ang kaparehong nested function na……Magpakita ng higit paMagpakita ng mas kaunti
Sa iteration 3, inaayos lang ang iniulat na pagkabigo sa Layer-2: `_ema_series() takes 2 positional arguments but 3 were given`. Ang ugat nito ay ang pag-clone ng `_Wrapper` ng verifier (strategy_verifier.py:118-132), na muling nagbubuklod sa bawat callable attribute gamit ang `types.MethodType` at naglalagay ng di-inaasahang unang argumento sa anumang static/plain-function helper. Ang pinakasimple at tiyak na ayos ay ganap na alisin ang helper method at kalkulahin ang EMA gamit ang kaparehong nested function na LOCAL (`ema_series`) sa loob ng `calculate_signal` — hindi kinokopya o muling ibinubuklod ng harness ang closure, kaya hindi na mauulit ang TypeError. Hindi nagbabago kahit isang byte ang matematikang EMA, pagbuo ng linyang/signal/histogram na MACD, mga kundisyon ng bull/bear-cross, tuloy-tuloy at hindi nagyeyelong signal, at lahat ng lohika ng should_enter/should_exit/position_size; kaya napapanatili ang mga static check sa Layer-1 na dati nang pumasa at ang mekanismo ng entry/exit. Malinis pa rin ang mga import (numpy lang). Tunay na ginagamit ang leverage sa pagkalkula ng laki ng posisyon (equity*position_pct*leverage).
Estratehiyang nalulugi sa malaking sample ng 219 trade na naipatupad nang tama — hindi bug sa code o epekto ng maliit na sample. Negatibo ang expectancy (-369/trade), profit_factor 0.907, Sharpe -0.23, Sortino -0.48, at 83.6% ang pinakamataas na drawdown. Ang tanging kumitang taon ay 2020 (+74%); nalugi ang bawat sumunod na taon (2022 -11%, 2023 -30%, 2024 -13%, 2025 -76%, 2026 -16%), na nagpapakita ng humina/wala nang edge. Ang klasikong bullish-crossover continuation na MACD(12/26/9), long-only sa iisang alt perp, ay lubos nang na-arbitrahe at wala nang edge; hindi makalilikha ng expectancy ang pag-optimize sa pamamagitan ng pagbabago ng mga parameter sa loob ng mekanismo kapag tuloy-tuloy ang pagkalugi sa malaking sample sa loob ng 5 taon. Huwag nang ulitin (tama ang implementasyon), at hindi sulit ang 2 oras na pag-optimize.
Implementasyon
Long-only na momentum-continuation strategy ng MACD(12/26/9) sa LTCUSDT.BINANCE USD-M perpetual futures, 4H bars, purong OHLCV (walang karagdagang datos). Nagbubukas ng long kapag nag-crossover pataas ang histogram ng MACD habang nasa itaas ng zero ang linyang MACD (nakikipagkalakalan sa naitatag nang bullish momentum na WITH); nagsasara sa bearish crossover, stop-loss na 4%, o take-profit na 8%. Leverage na 2.0, laki ng posisyon na 0.60*2.0 = 1.2x equity notional, batay sa kapital.
Mga Resulta ng Beripikasyon
Bigo ang beripikasyon (Layer 2 — mga sintetikong senaryo): Mga ginamit na parameter: ['fast_period', 'slow_period', 'min_notional', 'position_pct', 'signal_period', 'stop_loss_pct', 'take_profit_pct', 'require_above_zero'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000) - steady_downtrend:……Magpakita ng higit paMagpakita ng mas kaunti
Bigo ang beripikasyon (Layer 2 — mga sintetikong senaryo):
Mga ginamit na parameter: ['fast_period', 'slow_period', 'min_notional', 'position_pct', 'signal_period', 'stop_loss_pct', 'take_profit_pct', 'require_above_zero']
Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get().
- steady_uptrend: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
- steady_downtrend: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
- flat_ranging: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
- volatility_spike: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
- zero_volume: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
- price_gap: TypeError: LtcFourHourMacdBullishMomentumContinuationLong._ema_series() ay tumatanggap ng 2 positional argument pero 3 ang ipinasa (timestamp ng bar: 1735691940000)
Pagsusuri ng Backtest
Sharpe
-0.23
Kabuuang Return
-37.29%
Max Drawdown
83.63%
Kabuuang Trade
219
Win Rate
31.1%
Profit Factor
0.91
Malinis ang implementasyon: gumagana ayon sa disenyo ang 219 long-only MACD continuation entry, purong OHLCV, sapat ang sample at saklaw nito ang 6.5 taon.
Ipinapakita ng isang tunay na positibong taon (2020, +74%) na hindi baligtad ang signal.
Likas na nalulugi sa malaking sample: total_return -37.3%, Sharpe -0.23, Sortino -0.48, profit_factor 0.907, expectancy -369/trade.
Napakalubhang panganib: max_drawdown 83.6%, tagal ng drawdown na 1833 araw, at hanggang 12 sunod-sunod na pagkalugi.
May edge lang sa 2020, pagkatapos ay nalulugi nang 5 sunod-sunod na taon (2022 -11%, 2023 -30%, 2024 -13%, 2025 -76%, 2026 -16%) — klasikong signal na humina/wala nang edge.
Negatibong alpha (-0.031) at information_ratio (-0.35) kumpara sa buy-hold na LTC; lubos nang na-arbitrahe ang klasikong MACD crossover at wala nang natitirang edge na ma-optimize.
Pagsusuri
Huwag pang i-optimize ang NOT — invalid ang backtest dahil sa leverage bug na nagtatambak ng mga posisyon. SPECIFIC FIX: sa should_enter(), magbalik ng None kung may bukas nang posisyon (hal. `if self.cache.positions_open(instrument_id=self.instrument_id): return None`) bago tingnan ang self._armed. Sa kasalukuyan, bawat bagong bullish MACD crossover sa isang uptrend ay nagsusumite ng panibagong 1.2x tranche bukod pa sa kasalukuyang long, kaya lumalaki ang notional hanggang ~6x ng equity (avg_position_pct 595.6%)……Magpakita ng higit paMagpakita ng mas kaunti
Huwag pang i-optimize ang NOT — invalid ang backtest dahil sa leverage bug na nagtatambak ng mga posisyon. SPECIFIC FIX: sa should_enter(), magbalik ng None kung may bukas nang posisyon (hal. `if self.cache.positions_open(instrument_id=self.instrument_id): return None`) bago tingnan ang self._armed. Sa kasalukuyan, bawat bagong bullish MACD crossover sa isang uptrend ay nagsusumite ng panibagong 1.2x tranche bukod pa sa kasalukuyang long, kaya lumalaki ang notional hanggang ~6x ng equity (avg_position_pct 595.6%) at nagbubunga ng imposibleng >100% na galaw kada araw at sub -100% na taunang return. Pagkatapos idagdag ang flat-check, patakbuhin muli at tiyaking malapit ang avg_position_pct sa nilalayong 120% at makatwiran ang saklaw ng mga daily return. Opsyonal ding tiyaking muling kinakalkula ng position_size() ang laki batay sa kasalukuyang equity sa bawat entry (ginagawa nito iyon), kaya lumiliit ang laki habang bumababa ang equity. Kapag tama na ang sizing, saka masusuri ang tunay na edge ng MACD-continuation — tandaan na nagpapahiwatig na ng mahinang edge ang kontaminadong run (PF 0.89, 30.6% na win rate), kaya kung net-negative pa rin ang malinis na run, dapat itong abandunahin sa halip na i-optimize.
Buod ng Resulta
Ang mga klasikong indicator na kilala ng lahat gaya ng crossover ng MACD(12/26/9) sa iisang malaking perp ay halos lubos nang na-arbitrahe — wala nang edge na mapagkukunan ng pag-optimize sa signal na gumana lang noong 2020 at humina sa loob ng limang sunod-sunod na taon.
Naglabas ang analyst ng hatol na 'iwan na' sa yugto ng pagsusuri sa backtest bago mag-optimize: signal na naipatupad nang tama sa malaking sample, may negatibong expectancy at wala nang natitirang edge na ma-optimize, kaya hindi na umabot sa pag-optimize o mga susunod na yugto.
Long-only at purong OHLCV na momentum-continuation strategy sa mga LTCUSDT 4H perp; pumasok ito sa klasikong bullish histogram crossover ng MACD(12/26/9) habang nasa itaas ng zero ang linyang MACD, at lumabas sa bearish crossover, stop-loss, o take-profit na may leverage na 2x.
Sa humigit-kumulang 6.5 taon, nagbigay ito ng 219 malilinis na long entry pero nalugi: kabuuang return na -37.3%, Sharpe -0.23, Sortino -0.48, profit factor 0.907, expectancy na -$369/trade, win rate na 31%, at pinakamataas na drawdown na 83.6%; 2020 (+74%) lang ang kumita, at nalugi ang bawat taon mula 2022 hanggang 2026 (2025 -76%).
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.