Lumaktaw papunta sa nilalaman
Lahat ng estratehiya

Mga Estratehiya

BTC Long-short na Single-Asset Macro Trend Regime sa BINANCE Daily (50d/200d MA Crossover, Ilang Buwang Hawak, Macro Horizon)

Resulta: Inabandona

BtcDailyMacroTrendRegime50200CrossLS

Buod ng Resulta

Inilapat ng strategy ang textbook na 50/200-day macro crossover sa BTC long-and-short, para punan ang halos bakanteng quota ng ilang-buwang horizon gamit ang multi-horizon stack. Bumagsak ang naunang iteration sa Layer-2 dahil sa staticmethod descriptor issue; dahil sa ayos ng iter-2 (module-level na SMA helper), tumakbo ito at gumawa ng 12 regime trade sa loob ng 6.4 taon. Pero nagwawhip­saw ang mabagal na crossover sa mga paglipat ng regime ng BTC: profit factor na 0.66, negatibong expectancy, 42% drawdown, at ~-30% na realized record na natatago sa likod ng bukas na posisyong MTM na nagpalaki sa headline bilang -1.4%. Iniwan ito ng analyst bago mag-optimize, dahil wala itong edge at napakakaunti rin ng trade (~2/taon) para mapatunayan—hindi lang talaga makalilikha ng sapat na regime cycle ang single-asset macro crossover para makakuha o sumubok ng edge.

Hypothesis

Single-asset na macro trend regime strategy sa BTCUSDT.BINANCE, gamit ang classic na 50-day / 200-day moving average crossover—isa sa pinakamaraming dokumentasyon at pinakasimpleng macro-regime classifier sa literaturang pinansyal. LONG kapag 50d_MA > 200d_MA AND lumalawak ang spread (kumpirmadong bull regime); SHORT kapag 50d_MA < 200d_MA AND lumalawak pababa ang spread (kumpirmadong bear regime); FLAT habang naglilipat ng regime (mga crossover event na walang kumpirmasyon). Ito ang SINGLE-ASSET aplikasyon ng……Magpakita ng higit paMagpakita ng mas kaunti

Single-asset na macro trend regime strategy sa BTCUSDT.BINANCE, gamit ang classic na 50-day / 200-day moving average crossover—isa sa pinakamaraming dokumentasyon at pinakasimpleng macro-regime classifier sa literaturang pinansyal. LONG kapag 50d_MA > 200d_MA AND lumalawak ang spread (kumpirmadong bull regime); SHORT kapag 50d_MA < 200d_MA AND lumalawak pababa ang spread (kumpirmadong bear regime); FLAT habang naglilipat ng regime (mga crossover event na walang kumpirmasyon). Ito ang SINGLE-ASSET aplikasyon ng framework na 'Dual Momentum' ni Antonacci 2014, na pinasimple sa time-series lang. MONTHS ang mga holding period (tumatagal nang 3-12 buwan ang mga regime cycle sa BTC), kaya pinupunan ang quota ng SEVERELY UNDER-REPRESENTED macro_1w_plus horizon (kasalukuyang 0.5%—halos hindi nagalaw sa 1135 eksperimento). Ang mekanismo ay FUNDAMENTALLY DIFFERENT mula sa pamilya kong TSM na nasa pipeline (mabilis na signal batay sa t-stat, lingguhang turnover) at pamilya ng RSI MR (signal ng matinding reversal na panandalian): kinukuha ng macro regime ang pinakamabagal na pagpapatuloy ng trend na makukuha sa BTC daily data. Walang multi-asset translation curse dahil iisang asset lang ang saklaw. Nasa tahasang safe-list ng system ang BTCUSDT.BINANCE 1D. Tumutulong ito sa direction quota (90.0% long-only—nagdaragdag ng long/short/flat na posisyon). Pinupunan ang macro horizon quota (0.5% kumpara sa ipinahiwatig na pangangailangan ng mas mabagal na horizon strategy para balansehin ang konsentrasyong 48.8% mid_long_4h_12h). Lumilikha sa iisang instrumento ang kombinasyon ng TSM (linggo) + RSI MR (araw) + MACRO REGIME (buwan) ng multi-horizon strategy stack.

Ang pinakamaliit na ayos sa Iteration-2 para sa Layer-2 TypeError (_sma() takes 2 positional arguments but 3 were given). Kapareho ng kilalang proxy-binding trap ang ugat nito: idineklarang @staticmethod ang _sma, pero muling itinatali ng Layer-2 _StrategyProxy ang mga callable ng klase sa isang pamalit na instance, kaya nawawala ang staticmethod descriptor at ipinapasa ang proxy instance bilang unang positional argument. Dahil dito, tinatawag ang 2-param na helper gamit ang 3 argumento. Inilipat ang _sma bilang……Magpakita ng higit paMagpakita ng mas kaunti

Ang pinakamaliit na ayos sa Iteration-2 para sa Layer-2 TypeError (_sma() takes 2 positional arguments but 3 were given). Kapareho ng kilalang proxy-binding trap ang ugat nito: idineklarang @staticmethod ang _sma, pero muling itinatali ng Layer-2 _StrategyProxy ang mga callable ng klase sa isang pamalit na instance, kaya nawawala ang staticmethod descriptor at ipinapasa ang proxy instance bilang unang positional argument. Dahil dito, tinatawag ang 2-param na helper gamit ang 3 argumento. Inilipat ang _sma bilang free function sa antas ng module (hindi ito itinatali sa instance kaya walang self na maituturok) at inayos ang dalawang call site; lubusang iniiwasan ng mga function ng module ang descriptor protocol. Wala nang ibang binago: malinis pa rin ang mga import (berde ang Layer 1), at byte-identical pa rin ang 50/200 spread / regime-confirmation / entry / crossover-exit / sizing logic na sinubok ng synthetic harness. Nananatiling BINANCE USD-M futures ang venue (kailangan ng margin ang long-short), leverage 1.0 (walang amplification kaya hindi nagti-trigger ang leverage_set_but_unused gate). Pinupunan ng strategy ang kulang na macro horizon na tumatagal nang ilang buwan gamit ang iisang asset at translation-safe na regime classifier.

Ang BTC 50/200 macro-regime long-short ay may negatibong realized expectancy at napakakaunti ng trade para mapatunayan. profit_factor 0.664, expectancy -$2,513/trade, Sharpe -0.066, max_drawdown 42%, at ilusyon ang headline na -1.4%: mas mataas ang end_unrealized_pct 28.7 kaysa total_return, kaya ~-30% ang aktuwal na tala ng mga naisarang trade (ang headline ay mark-to-market ng bukas na posisyon na kasalukuyang tumaas ng 28.7%). Nagwawhip­saw ang 50/200 crossover sa iisang asset (maling golden/death cross), at……Magpakita ng higit paMagpakita ng mas kaunti

Ang BTC 50/200 macro-regime long-short ay may negatibong realized expectancy at napakakaunti ng trade para mapatunayan. profit_factor 0.664, expectancy -$2,513/trade, Sharpe -0.066, max_drawdown 42%, at ilusyon ang headline na -1.4%: mas mataas ang end_unrealized_pct 28.7 kaysa total_return, kaya ~-30% ang aktuwal na tala ng mga naisarang trade (ang headline ay mark-to-market ng bukas na posisyon na kasalukuyang tumaas ng 28.7%). Nagwawhip­saw ang 50/200 crossover sa iisang asset (maling golden/death cross), at nalulugi sa 3 sa 6 taon (2021 -36%, 2022 -13%, 2025 -28%), na may avg_loss > avg_win at kurtosis na 397. Macro regime ito na ilang buwan hinahawakan at 12 trade lang ang ginagawa sa loob ng 6.4 taon (~2/taon)—napakakaunti para masuportahan ang walk-forward (3 window ay magkakaroon ng ~4 trade bawat isa, holdout na ~0) o anumang makabuluhang optimization. Tama ang code at eksaktong ayon sa disenyo ang mga trade, kaya pinabulaanan ang palagay at may estruktural na kakulangan ng trade; hindi ito bug sa code. Walang maitutulong ang pag-ulit, at pag-aangkop sa ingay lang ang pag-optimize sa 12 netong luging trade. Hindi sulit ang 2 oras. FAILURE PATTERN: ang single-asset macro 50/200 MA-crossover long-short sa BTC daily ay nagbibigay ng kakaunti (~2/taon), netong luging realized record (PF 0.66, negatibong expectancy, ~-30% na realized na tinatakpan ng bukas na posisyong MTM) at may 42% drawdown. Nagwawhip­saw ang mabagal na crossover sa paglipat ng iisang asset sa bull/bear; hindi makalilikha ng sapat na trade para mapatunayan ang macro regime na ilang buwan hinahawakan. Kailangan ng mga classic na trend-crossover regime signal ang malawak na cross-section o maraming regime cycle para makakuha ng edge; wala ang alinman sa iisang BTC instrumento sa loob ng 6 taon.

Implementasyon

Long-short na BTC macro trend regime sa BTCUSDT.BINANCE USD-M futures, DAILY bars, purong OHLCV single feed. Ginagamit ang 50/200-day SMA crossover na may kumpirmasyon ng lumalawak na spread: LONG kapag 50d > 200d at mas malawak ang normalized spread kaysa noong 5 bars ang nakalipas (kumpirmadong bull); SHORT kapag 50d < 200d at lumalawak pababa ang spread (kumpirmadong bear); FLAT sa mga paglipat na wala pang kumpirmasyon. Sinusundan nito ang buong ilang-buwang regime, at lumalabas sa kabaligtarang crossover o sa 25% catastrophic stop. Ang signal ay tuloy-tuloy na normalized 50/200 spread (nag-iiba sa bawat bar); sinasala ng discrete na direksyon ng regime ang pagpasok. Leverage na 1.0.

Mga Resulta ng Beripikasyon

Bigo ang beripikasyon (Layer 2 — synthetic scenarios): Mga parameter na ginamit: ['fast_period', 'slow_period', 'min_notional', 'position_pct', 'stop_loss_pct', 'confirm_lookback'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - steady_downtrend: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional……Magpakita ng higit paMagpakita ng mas kaunti

Bigo ang beripikasyon (Layer 2 — synthetic scenarios): Mga parameter na ginamit: ['fast_period', 'slow_period', 'min_notional', 'position_pct', 'stop_loss_pct', 'confirm_lookback'] Tiyaking itinatakda ng __init__ ang lahat ng attribute mula sa self.parameters.get(). - steady_uptrend: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - steady_downtrend: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - flat_ranging: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - volatility_spike: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - zero_volume: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000) - price_gap: TypeError: BtcDailyMacroTrendRegime50200CrossLS._sma() takes 2 positional arguments but 3 were given (bar timestamp: 1735701960000)

Pagsusuri ng Backtest

Sharpe
-0.07
Kabuuang Return
-1.43%
Max Drawdown
42.02%
Kabuuang Trade
12
Win Rate
41.7%
Profit Factor
0.66

Naipatupad nang tama at ayon sa espesipikasyon ang mga trade: 12 macro-regime entry (6 long / 6 short), 0 naalis, ilang-buwang paghawak—walang bug sa code; pinupunan ang kakulangan sa macro horizon

Itinatago ng headline ang malaking realized na lugi: mas mataas ang end_unrealized_pct 28.7 kaysa total_return -1.4, kaya ~-30% ang realized na return ng mga naisarang trade (ang -1.4% ay mark-to-market ng bukas na posisyon)

Walang realized na edge: profit_factor 0.664, expectancy -$2,513/trade, Sharpe na -0.066 (CI -1.17 hanggang 0.53), omega na 0.90, max_drawdown 42%; avg_loss > avg_win, kurtosis na 397

Napakakaunti ng trade para i-optimize/patunayan: 12 trade sa 6.4 taon (~2/taon, karaniwang hawak nang 154d)—~4 trade lang ang makukuha ng walk-forward window at ~0 ng holdout

Nagwawhip­saw ang 50/200 crossover sa BTC: negatibo sa 3 sa 6 taon (2021 -36%, 2022 -13%, 2025 -28%), largest_loss -$24,940

Buod ng Resulta

Kailangan ng mabagal na 50/200 MA-crossover regime signal ang malawak na cross-section o maraming regime cycle para makakuha ng edge—walang alinman sa mga ito ang maibibigay ng iisang BTC instrumento sa loob ng 6 taon. Kaya nagwawhip­saw ito sa maling golden/death cross, nagbubunga ng netong luging tala na ~2 trade/taon na natatakpan ng mark-to-market ng bukas na posisyon, at hindi ito mapatutunayan dahil sa estruktura.

Iniwan ito ng analyst sa pagsusuri ng backtest bilang pinabulaanang palagay na may estruktural na kakulangan ng trade, sa halip na bug—eksaktong ayon sa disenyo ang naging trade ng code, pero nagwawhip­saw ang 50/200 crossover sa paglipat ng iisang asset sa bull/bear (mas malaki ang karaniwang lugi kaysa karaniwang kita, negatibo ang realized expectancy), at napakakaunti ng ~2 trade/taon para masuportahan ang walk-forward (magkakaroon lang ng ~4 trade bawat isa ang 3 window) o holdout, kaya ingay lang ang maiaangkop ng optimization.

Long-short na single-asset macro trend-regime strategy sa BTCUSDT daily perpetual futures (purong OHLCV), gamit ang classic na 50/200-day SMA crossover—long sa kumpirmadong bull regime na lumalawak ang spread (50d > 200d), short sa kumpirmadong bear regime na lumalawak ang spread, flat habang naglilipat ng regime, at hinahawakan sa buong ilang-buwang mga cycle ng regime na may catastrophic na 25% stop, para punan ang kulang na macro horizon.

Sa loob ng 6.4 taon, 12 trade lang ang nagawa nito (6 long, 6 short, ~2/taon, ~154-araw ang karaniwang hawak, walang naalis) at walang realized na edge: profit factor na 0.664, expectancy na -$2,513/trade, Sharpe na -0.066 (CI -1.17 hanggang 0.53), 42% max drawdown, kurtosis na 397; ilusyon ang headline na -1.4% dahil mas mataas dito ang end-unrealized na 28.7%, kaya nasa bandang -30% ang realized na return ng mga naisarang trade. Nalugi ito sa 3 sa 6 taon (2021 -36%, 2022 -13%, 2025 -28%).

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.