{"product_id":"micro-bitcoin-futures-trading-bot-regulatory-momentum-python-strategy-mbtm6-cme","title":"Micro Bitcoin Futures Trading Bot — Regulatory Momentum Python Strategy (MBTM6 CME)","description":"\u003cp\u003e\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eWHAT YOU ARE GETTING\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eYou receive a single Python file (~895 lines) containing a complete, live-tested\u003cbr\u003ealgorithmic trading strategy written for CME Micro Bitcoin Futures (MBTM6).\u003c\/p\u003e\n\u003cp\u003eThe portable file has had all proprietary broker-connectivity code (Rithmic API,\u003cbr\u003eRedis message bus, registry manager, dotenv) surgically removed and replaced with\u003cbr\u003eclearly-marked placeholder comments (# BROKER INTEGRATION: ...). Every single\u003cbr\u003eline of strategy logic — the regulatory catalyst scoring, momentum composite,\u003cbr\u003eATR-based risk sizing, partial scale-outs, circuit breakers, and execution\u003cbr\u003eframework — is 100% intact.\u003c\/p\u003e\n\u003cp\u003eA self-contained BaseTradingBot stub is injected at the top of the file, giving\u003cbr\u003eyou a complete, runnable class hierarchy that you can wire to any broker API,\u003cbr\u003epaper-trading engine, or backtesting framework.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eBOT CREATION DATE \u0026amp; CONTEXT\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eCreated: September 8, 2026 · 5:24 PM CT\u003cbr\u003eRun stamp: run_2026-09-08_172418\u003c\/p\u003e\n\u003cp\u003eThis bot was developed in the context of the U.S. CLARITY Act legislative\u003cbr\u003ecalendar — a crypto-market-structure bill that created recurring, predictable\u003cbr\u003eperiods of heightened directional momentum in Bitcoin futures as institutional\u003cbr\u003eparticipants positioned ahead of scheduled Congressional votes. The strategy\u003cbr\u003ecaptures that window using a composite momentum filter anchored by a time-decay\u003cbr\u003eproximity signal relative to a known vote date.\u003c\/p\u003e\n\u003cp\u003eThe strategy was first run live on CME Micro Bitcoin (MBTM6) on September 8, 2026,\u003cbr\u003eand has been preserved in the bar_historical archive of the QLN live-trading\u003cbr\u003eresearch repository.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eBACKTEST PERFORMANCE — HONEST DISCLOSURE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eIMPORTANT: Read before purchasing.\u003c\/p\u003e\n\u003cp\u003eThis strategy is classified as \"paper \/ Gen1\" in our internal backtesting\u003cbr\u003epipeline. Our pipeline requires a minimum of 20 trades and 2+ profitable months\u003cbr\u003eof live backtest data before a strategy is promoted to the \"profitable bot\u003cbr\u003eranking\" — this bot does not currently appear in that ranking.\u003c\/p\u003e\n\u003cp\u003eWHY THE LOW TRADE COUNT?\u003c\/p\u003e\n\u003cp\u003eThis is an event-driven strategy tied to a specific legislative calendar event\u003cbr\u003e(a regulatory vote proxy dated September 15). The strategy has a high-selectivity\u003cbr\u003eentry filter — it only enters when:\u003c\/p\u003e\n\u003cp\u003e  1. 60-minute trend is aligned (fast MA \u0026gt; slow MA)\u003cbr\u003e  2. Composite momentum score exceeds a dynamic threshold\u003cbr\u003e  3. Catalyst proximity bias is elevated\u003cbr\u003e  4. No circuit breakers are active\u003cbr\u003e  5. Spread and staleness gates are passed\u003c\/p\u003e\n\u003cp\u003eIn practice this means the bot may generate only a handful of entries per month.\u003cbr\u003eA low trade count is a design feature, not a defect — the strategy is built to\u003cbr\u003ewait for high-probability setups rather than churn.\u003c\/p\u003e\n\u003cp\u003eWHAT THE CODE DEMONSTRATES:\u003c\/p\u003e\n\u003cp\u003eEven with a limited live-backtest trade sample, this strategy is valuable as a\u003cbr\u003estudy in:\u003cbr\u003e  • Regulatory catalyst signal construction\u003cbr\u003e  • Multi-layer momentum composite scoring (RSI + MACD + Donchian + Volume)\u003cbr\u003e  • Dynamic ATR-based stop calibration under crypto volatility regimes\u003cbr\u003e  • Partial scale-out architecture (3-tier: 1R, 2R, 3R)\u003cbr\u003e  • Professional-grade circuit breaker design\u003cbr\u003e  • Event-driven entry timing using time-decay proximity functions\u003c\/p\u003e\n\u003cp\u003eESTIMATED SHORT-TERM PROFIT POTENTIAL (from source code header):\u003cbr\u003e  $1,200 – $4,500 (developer estimate, not guaranteed, not backtested performance)\u003c\/p\u003e\n\u003cp\u003eSTARTING CAPITAL ASSUMED IN INTERNAL PIPELINE: $17,092\u003cbr\u003eACCOUNT CAPITAL DEFAULT IN BOT: $50,000\u003c\/p\u003e\n\u003cp\u003ePast potential estimates are not guarantees of future performance.\u003cbr\u003eFutures trading involves substantial risk of loss. See full risk disclaimer below.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eSTRATEGY ARCHITECTURE DEEP-DIVE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e1. THE REGULATORY CATALYST ENGINE\u003c\/p\u003e\n\u003cp\u003eThe strategy's most distinctive feature is a time-decay proximity function\u003cbr\u003ethat generates a \"catalyst bias\" score based on how close the current date is\u003cbr\u003eto a known legislative vote date (default: September 15).\u003c\/p\u003e\n\u003cp\u003e  days_to_vote = (vote_date - today).days\u003cbr\u003e  proximity = max(0.0, 1.0 - days_to_vote \/ 30.0)   # ramps up to 1.0 at vote date\u003cbr\u003e  pre_vote_bias = 1.0 if days_to_vote \u0026gt;= 0 else -0.5  # bullish pre-vote, muted post\u003cbr\u003e  catalyst_bias = proximity x pre_vote_bias\u003c\/p\u003e\n\u003cp\u003eThis generates a continuous [0.0, 1.0] catalyst boost that is composited into\u003cbr\u003ethe final momentum score and used to dynamically adjust:\u003cbr\u003e  • Profit target percentage (3% + up to 2% bonus based on catalyst strength)\u003cbr\u003e  • Entry signal threshold sensitivity\u003c\/p\u003e\n\u003cp\u003eThis models the well-documented market behavior where Bitcoin and crypto assets\u003cbr\u003erally in anticipation of favorable regulatory outcomes — and gives the strategy\u003cbr\u003ea time-aware edge over purely technical momentum approaches.\u003c\/p\u003e\n\u003cp\u003e2. THE MOMENTUM COMPOSITE SCORE\u003c\/p\u003e\n\u003cp\u003eOn each 60-minute bar close, the bot computes a 0-100 composite score:\u003c\/p\u003e\n\u003cp\u003e  score = 50.0 (baseline)\u003cbr\u003e       + 30.0 x tanh_approx(trend_strength)       # SMA fast vs slow trend\u003cbr\u003e       + 20.0 x tanh_approx(momentum_return)       # recent return direction\u003cbr\u003e       + (RSI - 50) x 0.4                          # RSI deviation from neutral\u003cbr\u003e       + +\/-15.0 for MACD sign                     # MACD above\/below zero\u003cbr\u003e       + 10.0 if close \u0026gt;= Donchian high             # channel breakout\u003cbr\u003e       + 10.0 x tanh_approx(vol_ratio - 1.0)       # volume surge\u003cbr\u003e       + 10.0 x catalyst_bias                      # regulatory proximity\u003c\/p\u003e\n\u003cp\u003eEntry fires when:\u003cbr\u003e  trend_aligned = True  (fast SMA \u0026gt; slow SMA)\u003cbr\u003e  AND score \u0026gt;= dynamic_threshold  (~50 +\/- 10, adjusted for volatility regime)\u003c\/p\u003e\n\u003cp\u003eThe use of tanh-approximation normalizers (x \/ (|x| + epsilon)) prevents any\u003cbr\u003esingle component from dominating the score, making the signal robust across\u003cbr\u003edifferent volatility environments.\u003c\/p\u003e\n\u003cp\u003e3. DYNAMIC ATR-BASED RISK SIZING\u003c\/p\u003e\n\u003cp\u003eStop distance is calibrated dynamically:\u003c\/p\u003e\n\u003cp\u003e  ATR multiplier = 2.0-3.0 (based on VIX-proxy)\u003cbr\u003e    VIX-proxy \u0026lt;= 15 -\u0026gt; 2.0x  (low vol regime: tighter stops)\u003cbr\u003e    VIX-proxy \u0026gt;= 35 -\u0026gt; 3.0x  (high vol regime: wider stops)\u003c\/p\u003e\n\u003cp\u003e  Position size (contracts) =\u003cbr\u003e    (account_capital x risk_pct) \/ (stop_distance x contract_multiplier x point_value)\u003cbr\u003e    x VIX size adjustment (0.25-1.0)\u003cbr\u003e    x volatility adjustment (ATR baseline \/ ATR effective)\u003cbr\u003e    x momentum size scale\u003cbr\u003e    capped at max_contracts = 2\u003c\/p\u003e\n\u003cp\u003e  Risk percent = 1-2% of account (dynamically shrunk in high-vol environments)\u003c\/p\u003e\n\u003cp\u003e  VIX proxy size scaling:\u003cbr\u003e    \u0026gt; 35 VIX units -\u0026gt; 0.25x (quarter size — extreme vol caution)\u003cbr\u003e    \u0026gt; 25 VIX units -\u0026gt; 0.5x\u003cbr\u003e    \u0026gt;= 15 VIX units -\u0026gt; 0.75x\u003cbr\u003e    \u0026lt; 15 VIX units -\u0026gt; 1.0x\u003c\/p\u003e\n\u003cp\u003e4. THREE-TIER PARTIAL SCALE-OUT ARCHITECTURE\u003c\/p\u003e\n\u003cp\u003eWhen a position is entered, three exit levels are pre-computed:\u003c\/p\u003e\n\u003cp\u003e  Level 1 = entry + 1R (stop_distance x rr_ratio x 0.5)  -\u0026gt; exit 50% of position\u003cbr\u003e  Level 2 = entry + 2R (stop_distance x rr_ratio x 0.75) -\u0026gt; exit 25% of remaining\u003cbr\u003e  Level 3 = entry + 3R (stop_distance x rr_ratio x 1.0)  -\u0026gt; exit remainder\u003c\/p\u003e\n\u003cp\u003eThis architecture locks in partial profits at 1R while letting the remaining\u003cbr\u003eposition ride toward 2R and 3R targets — a professional-grade scale-out that\u003cbr\u003eimproves realized P\u0026amp;L stability versus all-or-nothing exits.\u003c\/p\u003e\n\u003cp\u003e5. EXIT LOGIC HIERARCHY\u003c\/p\u003e\n\u003cp\u003eThe strategy uses a four-layer exit hierarchy applied on every execution bar:\u003c\/p\u003e\n\u003cp\u003e  Priority 1: Protective stop (hard stop price or trailing stop, whichever is\u003cbr\u003e              tighter) — enforced on every market tick, not just bar close\u003c\/p\u003e\n\u003cp\u003e  Priority 2: Three partial profit targets (1R \/ 2R \/ 3R) on each 5-minute\u003cbr\u003e              execution bar close\u003c\/p\u003e\n\u003cp\u003e  Priority 3: Time-based exit — if position held \u0026gt; dynamic max hold bars\u003cbr\u003e              (5-20 bars based on vol regime), exit to prevent overnight\/\u003cbr\u003e              excessive-hold decay\u003c\/p\u003e\n\u003cp\u003e  Priority 4: Thesis invalidation — if fast MA crosses below slow MA AND MACD\u003cbr\u003e              goes negative AND RSI \u0026lt; 50 simultaneously, the original momentum\u003cbr\u003e              thesis is considered invalidated and position is closed\u003c\/p\u003e\n\u003cp\u003e  Priority 5: Session profit target — if daily realized P\u0026amp;L reaches 3-5% of\u003cbr\u003e              account capital (adjusted by catalyst bias), lock in the day's\u003cbr\u003e              gains by exiting all remaining position\u003c\/p\u003e\n\u003cp\u003e6. CIRCUIT BREAKER \u0026amp; RISK CONTROL SYSTEM\u003c\/p\u003e\n\u003cp\u003eFive independent circuit breakers gate new entries and protect capital:\u003c\/p\u003e\n\u003cp\u003e  CB1 — Daily loss limit:\u003cbr\u003e    Computed dynamically as -(ATR x contracts x point_value x session_risk_multiplier)\u003cbr\u003e    Stops new entries if daily P\u0026amp;L \u0026lt;= this threshold\u003c\/p\u003e\n\u003cp\u003e  CB2 — Weekly loss limit:\u003cbr\u003e    min(daily_loss_limit x 2, 10% of account capital)\u003cbr\u003e    Stops new entries if weekly P\u0026amp;L \u0026lt;= this threshold\u003c\/p\u003e\n\u003cp\u003e  CB3 — Consecutive losses:\u003cbr\u003e    Rejects new entries after 5 consecutive losing trades\u003cbr\u003e    Triggers cooldown mode (see CB5)\u003c\/p\u003e\n\u003cp\u003e  CB4 — CME maintenance window exclusion:\u003cbr\u003e    Mon-Thu 5:00-6:00 PM ET and Fri 4:00-5:00 PM ET are blocked\u003cbr\u003e    Prevents entering during exchange downtime \/ roll risk windows\u003c\/p\u003e\n\u003cp\u003e  CB5 — Cooldown period:\u003cbr\u003e    After 5 consecutive losses, the bot enters a cooldown period until\u003cbr\u003e    end-of-day (UTC), preventing revenge-trading\u003c\/p\u003e\n\u003cp\u003e  Additionally: spread gate (P95 spread vs dynamic limit) and stale-data gate\u003cbr\u003e  (feed age vs poll interval) provide execution-quality filters on every entry.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eTECHNICAL SPECIFICATIONS\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eInstrument            : Micro Bitcoin Futures (MBTM6)\u003cbr\u003eExchange              : CME (Chicago Mercantile Exchange)\u003cbr\u003eDirection             : LONG\u003cbr\u003eSignal Timeframe      : 60-minute bars\u003cbr\u003eExecution Timeframe   : 5-minute bars\u003cbr\u003eMax Contracts         : 2\u003cbr\u003ePoint Value           : $0.10 per point (env-overridable)\u003cbr\u003eDefault Account Cap   : $50,000 (env-overridable)\u003cbr\u003eBase Risk Per Trade   : 1% of account (env-overridable)\u003cbr\u003eMax Risk Per Trade    : 2% of account (env-overridable)\u003cbr\u003eATR Period            : 14 bars\u003cbr\u003eATR Multiplier Range  : 2.0x - 3.0x (dynamic, VIX-proxy based)\u003cbr\u003eHolding Period        : 5 - 20 execution bars (dynamic)\u003cbr\u003eProfit Targets        : 1R \/ 2R \/ 3R (3-tier partial scale-out)\u003cbr\u003eStop Type             : Initial hard stop + trailing ATR stop\u003cbr\u003eWarmup Bars Required  : 20 signal bars\u003cbr\u003eConsec. Loss Limit    : 5 trades\u003cbr\u003eGeneration            : Gen1 (pre-Gen2 AI probability enhancement)\u003cbr\u003eLanguage              : Python 3.10+\u003cbr\u003eLines of Code         : ~895\u003cbr\u003eBroker Dependencies   : None (portable version — stub only)\u003cbr\u003eCreated               : September 8, 2026\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eKEY FEATURES AT A GLANCE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e[+] Regulatory Catalyst Engine — unique time-decay proximity function anchored\u003cbr\u003e    to known legislative vote dates gives this strategy a temporal edge\u003cbr\u003e    unavailable in purely technical approaches.\u003c\/p\u003e\n\u003cp\u003e[+] 6-Component Momentum Score — SMA crossover + RSI + MACD + Donchian channel\u003cbr\u003e    breakout + Volume surge + Regulatory proximity all composited into a single\u003cbr\u003e    0-100 score with non-linear normalizers for crypto robustness.\u003c\/p\u003e\n\u003cp\u003e[+] Regime-Adaptive Risk Sizing — VIX-proxy dynamically scales stop distances\u003cbr\u003e    and position sizes. In extreme volatility (VIX-proxy \u0026gt; 35), size cuts to\u003cbr\u003e    25% of normal — protecting capital during crypto flash crashes.\u003c\/p\u003e\n\u003cp\u003e[+] Professional 3-Tier Scale-Out — partial exits at 1R, 2R, and 3R ensure\u003cbr\u003e    you never give back all your gains waiting for the final target.\u003c\/p\u003e\n\u003cp\u003e[+] Five-Layer Circuit Breaker Stack — daily loss limit, weekly loss limit,\u003cbr\u003e    consecutive-loss cooldown, CME maintenance window exclusion, and\u003cbr\u003e    data-staleness gate — a complete institutional-grade risk management stack.\u003c\/p\u003e\n\u003cp\u003e[+] Trailing Stop + Thesis Invalidation Exit — the bot tightens its stop as\u003cbr\u003e    the trade moves in your favor, and closes if the momentum thesis is\u003cbr\u003e    invalidated (MA flip + MACD negative + RSI \u0026lt; 50).\u003c\/p\u003e\n\u003cp\u003e[+] Broker-Agnostic Portable Format — all Rithmic\/Redis\/dotenv dependencies\u003cbr\u003e    stripped, BaseTradingBot stub included, clearly marked integration points.\u003c\/p\u003e\n\u003cp\u003e[+] Fully Documented \u0026amp; Readable Code — JSON-structured logging throughout\u003cbr\u003e    makes debugging and performance analysis straightforward.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eWHO THIS IS FOR\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e[*] Python developers wanting a complete, well-structured crypto futures bot\u003cbr\u003e    as a learning reference or starting scaffold.\u003cbr\u003e[*] Algo traders wanting a professionally designed event-driven momentum\u003cbr\u003e    framework adaptable to any regulatory or macro catalyst calendar.\u003cbr\u003e[*] Students of quantitative finance studying composite momentum signals,\u003cbr\u003e    dynamic risk sizing, and multi-layer exit architectures.\u003cbr\u003e[*] Researchers wanting to backtest a regulatory-event-driven Bitcoin futures\u003cbr\u003e    strategy using their own historical data pipeline.\u003cbr\u003e[*] Developers integrating crypto futures strategies into IBKR, Alpaca, or\u003cbr\u003e    custom broker gateways who want a battle-tested reference implementation.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eGEN1 vs GEN2: UNDERSTANDING THE DIFFERENCE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eThis is a Gen1 strategy — built on pure technical + catalyst signal logic.\u003cbr\u003eGen2 bots (not included) add an AI-derived probability layer for +5-10%\u003cbr\u003eimprovement in entry selectivity.\u003c\/p\u003e\n\u003cp\u003eFeature                           Gen1 (this)   Gen2 (not included)\u003cbr\u003eSMA\/RSI\/MACD composite signal     YES           YES\u003cbr\u003eRegulatory proximity catalyst     YES           YES\u003cbr\u003eATR dynamic stops                 YES           YES\u003cbr\u003e3-tier partial scale-out          YES           YES\u003cbr\u003eCircuit breaker stack             YES           YES\u003cbr\u003eAI probability enhancement        NO            YES\u003cbr\u003eSignal quality                    Baseline      +5-10% improvement\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eFREQUENTLY ASKED QUESTIONS\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eQ: What broker or platform does this work with?\u003cbr\u003eA: The portable file has all Rithmic\/Redis broker code removed. It includes a\u003cbr\u003e   BaseTradingBot stub with clearly marked \"# BROKER INTEGRATION:\" comments\u003cbr\u003e   showing exactly where to plug in your broker's order submission, market data\u003cbr\u003e   feed, and fill callback. Compatible with any Python-accessible broker API:\u003cbr\u003e   Interactive Brokers (ib_insync), Alpaca, NinjaTrader, TradeStation, or custom.\u003c\/p\u003e\n\u003cp\u003eQ: What account size do I need to trade MBTM6?\u003cbr\u003eA: Micro Bitcoin (MBT) futures have lower margin requirements than full BTC\u003cbr\u003e   contracts. CME margin requirements change — check current SPAN margin with\u003cbr\u003e   your broker. The bot defaults to a $50,000 account capital assumption, which\u003cbr\u003e   can be changed via the MBT_ACCOUNT_CAPITAL environment variable. At 1-2%\u003cbr\u003e   risk per trade with max 2 contracts, the strategy is sized conservatively.\u003c\/p\u003e\n\u003cp\u003eQ: Is this strategy fully automated or does it require manual decisions?\u003cbr\u003eA: Designed for full automation. All entry, exit, sizing, and risk decisions are\u003cbr\u003e   made programmatically. You must handle order submission via your broker's API\u003cbr\u003e   at the marked \"# BROKER INTEGRATION:\" points.\u003c\/p\u003e\n\u003cp\u003eQ: How many trades per month should I expect?\u003cbr\u003eA: This is a high-selectivity strategy. Expect anywhere from 2-15 trades per\u003cbr\u003e   month depending on market conditions and how close the current date is to the\u003cbr\u003e   regulatory vote anchor (default: September 15).\u003c\/p\u003e\n\u003cp\u003eQ: Can I change the vote date or use a different event?\u003cbr\u003eA: Yes. The vote date is a single line in execute_strategy:\u003cbr\u003e     vote_date = datetime(year=now.year, month=9, day=15, tzinfo=timezone.utc)\u003cbr\u003e   Change month\/day to match any scheduled event: Fed meeting, ETF approval\u003cbr\u003e   hearing, SEC deadline, earnings, etc.\u003c\/p\u003e\n\u003cp\u003eQ: Can I backtest this strategy?\u003cbr\u003eA: Yes. Replace the BaseTradingBot stub's on_bar_closed and on_market_data hooks\u003cbr\u003e   with your backtesting engine's event callbacks. The entire strategy logic lives\u003cbr\u003e   in those methods with no hidden state.\u003c\/p\u003e\n\u003cp\u003eQ: What Python version is required?\u003cbr\u003eA: Python 3.10 or later. Standard library only in the portable version — no\u003cbr\u003e   third-party packages required beyond what your broker integration needs.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eINTEGRATION QUICK-START GUIDE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eStep 1 — Install:  pip install \u0026lt;your broker library\u0026gt;\u003c\/p\u003e\n\u003cp\u003eStep 2 — Find integration points:\u003cbr\u003e  grep -n \"BROKER INTEGRATION\" bot_mbtc_regulatory_momentum_portable.py\u003c\/p\u003e\n\u003cp\u003eStep 3 — Fill market data feed in on_market_data(data):\u003cbr\u003e  Pass a dict: {\"price\": float, \"bid\": float, \"ask\": float, \"symbol\": str}\u003c\/p\u003e\n\u003cp\u003eStep 4 — Fill bar feed in on_bar_closed(tf_key, bar):\u003cbr\u003e  tf_key = \"signal\" (60m) or \"execution\" (5m)\u003cbr\u003e  bar = {\"open\": float, \"high\": float, \"low\": float, \"close\": float,\u003cbr\u003e         \"volume\": float, \"spread_stats\": {\"mean\": float}}\u003c\/p\u003e\n\u003cp\u003eStep 5 — Fill order submission at # BROKER INTEGRATION: SUBMIT ORDER points:\u003cbr\u003e  Call your broker buy\/sell API using self.sim_entry_price, self.sim_position,\u003cbr\u003e  and self.stop_price\u003c\/p\u003e\n\u003cp\u003eStep 6 — Run:\u003cbr\u003e  bot = MicroBitcoinRegulatoryMomentumBot()\u003cbr\u003e  asyncio.run(bot.run())\u003c\/p\u003e\n\u003cp\u003eStep 7 — Tune (optional) via env vars:\u003cbr\u003e  MBT_ACCOUNT_CAPITAL=50000\u003cbr\u003e  MBT_RISK_PCT=0.01\u003cbr\u003e  MBT_MAX_RISK_PCT=0.02\u003cbr\u003e  MBT_POINT_VALUE=0.1\u003cbr\u003e  MBT_TRADEABLE=true\u003cbr\u003e  MBT_MIN_STOP_TICKS=5\u003cbr\u003e  MBT_TICK_SIZE=1.0\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eRISK DISCLAIMER — PLEASE READ BEFORE PURCHASING\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eThis product is sold for EDUCATIONAL AND INFORMATIONAL PURPOSES ONLY.\u003c\/p\u003e\n\u003cp\u003eFutures trading involves a substantial risk of loss and is not appropriate for\u003cbr\u003eall investors. Trading cryptocurrency futures (including Micro Bitcoin\/MBTM6)\u003cbr\u003einvolves additional risks due to extreme price volatility, 24-hour market\u003cbr\u003eoperation, liquidity gaps, and regulatory uncertainty.\u003c\/p\u003e\n\u003cp\u003eThe strategy code provided:\u003cbr\u003e  * Has NOT been independently verified or audited\u003cbr\u003e  * Is NOT a registered investment advisor product\u003cbr\u003e  * Does NOT constitute financial, investment, or trading advice\u003cbr\u003e  * Is NOT guaranteed to be profitable\u003cbr\u003e  * Has a limited live-trade backtest sample (see Backtest Disclosure above)\u003c\/p\u003e\n\u003cp\u003ePast performance, simulated performance, or developer estimates are NOT\u003cbr\u003eindicative of future results.\u003c\/p\u003e\n\u003cp\u003eYou are solely responsible for your own trading decisions, compliance with all\u003cbr\u003eapplicable laws, proper paper-trade testing before live deployment, understanding\u003cbr\u003eleverage and margin requirements, and any losses incurred through use of this\u003cbr\u003esoftware. Consult a licensed financial advisor before trading futures.\u003c\/p\u003e\n\u003cp\u003eBy purchasing this product you acknowledge and accept all risks described above.\u003c\/p\u003e\n\u003cp\u003e\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eWHAT YOU ARE BUYING\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eYou receive a single Python file (~895 lines) containing a complete, live-tested\u003cbr\u003ealgorithmic trading strategy written for CME Micro Bitcoin Futures (MBTM6).\u003c\/p\u003e\n\u003cp\u003eThe portable file has had all proprietary broker-connectivity code (Rithmic API,\u003cbr\u003eRedis message bus, registry manager, dotenv) surgically removed and replaced with\u003cbr\u003eclearly-marked placeholder comments (# BROKER INTEGRATION: ...). Every single\u003cbr\u003eline of strategy logic — the regulatory catalyst scoring, momentum composite,\u003cbr\u003eATR-based risk sizing, partial scale-outs, circuit breakers, and execution\u003cbr\u003eframework — is 100% intact.\u003c\/p\u003e\n\u003cp\u003eA self-contained BaseTradingBot stub is injected at the top of the file, giving\u003cbr\u003eyou a complete, runnable class hierarchy that you can wire to any broker API,\u003cbr\u003epaper-trading engine, or backtesting framework.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eBOT CREATION DATE \u0026amp; CONTEXT\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eCreated: September 8, 2026 · 5:24 PM CT\u003cbr\u003eRun stamp: run_2026-09-08_172418\u003c\/p\u003e\n\u003cp\u003eThis bot was developed in the context of the U.S. CLARITY Act legislative\u003cbr\u003ecalendar — a crypto-market-structure bill that created recurring, predictable\u003cbr\u003eperiods of heightened directional momentum in Bitcoin futures as institutional\u003cbr\u003eparticipants positioned ahead of scheduled Congressional votes. The strategy\u003cbr\u003ecaptures that window using a composite momentum filter anchored by a time-decay\u003cbr\u003eproximity signal relative to a known vote date.\u003c\/p\u003e\n\u003cp\u003eThe strategy was first run live on CME Micro Bitcoin (MBTM6) on September 8, 2026,\u003cbr\u003eand has been preserved in the bar_historical archive of the QLN live-trading\u003cbr\u003eresearch repository.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eBACKTEST PERFORMANCE — HONEST DISCLOSURE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eIMPORTANT: Read before purchasing.\u003c\/p\u003e\n\u003cp\u003eThis strategy is classified as \"paper \/ Gen1\" in our internal backtesting\u003cbr\u003epipeline. Our pipeline requires a minimum of 20 trades and 2+ profitable months\u003cbr\u003eof live backtest data before a strategy is promoted to the \"profitable bot\u003cbr\u003eranking\" — this bot does not currently appear in that ranking.\u003c\/p\u003e\n\u003cp\u003eWHY THE LOW TRADE COUNT?\u003c\/p\u003e\n\u003cp\u003eThis is an event-driven strategy tied to a specific legislative calendar event\u003cbr\u003e(a regulatory vote proxy dated September 15). The strategy has a high-selectivity\u003cbr\u003eentry filter — it only enters when:\u003c\/p\u003e\n\u003cp\u003e  1. 60-minute trend is aligned (fast MA \u0026gt; slow MA)\u003cbr\u003e  2. Composite momentum score exceeds a dynamic threshold\u003cbr\u003e  3. Catalyst proximity bias is elevated\u003cbr\u003e  4. No circuit breakers are active\u003cbr\u003e  5. Spread and staleness gates are passed\u003c\/p\u003e\n\u003cp\u003eIn practice this means the bot may generate only a handful of entries per month.\u003cbr\u003eA low trade count is a design feature, not a defect — the strategy is built to\u003cbr\u003ewait for high-probability setups rather than churn.\u003c\/p\u003e\n\u003cp\u003eWHAT THE CODE DEMONSTRATES:\u003c\/p\u003e\n\u003cp\u003eEven with a limited live-backtest trade sample, this strategy is valuable as a\u003cbr\u003estudy in:\u003cbr\u003e  • Regulatory catalyst signal construction\u003cbr\u003e  • Multi-layer momentum composite scoring (RSI + MACD + Donchian + Volume)\u003cbr\u003e  • Dynamic ATR-based stop calibration under crypto volatility regimes\u003cbr\u003e  • Partial scale-out architecture (3-tier: 1R, 2R, 3R)\u003cbr\u003e  • Professional-grade circuit breaker design\u003cbr\u003e  • Event-driven entry timing using time-decay proximity functions\u003c\/p\u003e\n\u003cp\u003eESTIMATED SHORT-TERM PROFIT POTENTIAL (from source code header):\u003cbr\u003e  $1,200 – $4,500 (developer estimate, not guaranteed, not backtested performance)\u003c\/p\u003e\n\u003cp\u003eSTARTING CAPITAL ASSUMED IN INTERNAL PIPELINE: $17,092\u003cbr\u003eACCOUNT CAPITAL DEFAULT IN BOT: $50,000\u003c\/p\u003e\n\u003cp\u003ePast potential estimates are not guarantees of future performance.\u003cbr\u003eFutures trading involves substantial risk of loss. See full risk disclaimer below.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eSTRATEGY ARCHITECTURE DEEP-DIVE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e1. THE REGULATORY CATALYST ENGINE\u003c\/p\u003e\n\u003cp\u003eThe strategy's most distinctive feature is a time-decay proximity function\u003cbr\u003ethat generates a \"catalyst bias\" score based on how close the current date is\u003cbr\u003eto a known legislative vote date (default: September 15).\u003c\/p\u003e\n\u003cp\u003e  days_to_vote = (vote_date - today).days\u003cbr\u003e  proximity = max(0.0, 1.0 - days_to_vote \/ 30.0)   # ramps up to 1.0 at vote date\u003cbr\u003e  pre_vote_bias = 1.0 if days_to_vote \u0026gt;= 0 else -0.5  # bullish pre-vote, muted post\u003cbr\u003e  catalyst_bias = proximity x pre_vote_bias\u003c\/p\u003e\n\u003cp\u003eThis generates a continuous [0.0, 1.0] catalyst boost that is composited into\u003cbr\u003ethe final momentum score and used to dynamically adjust:\u003cbr\u003e  • Profit target percentage (3% + up to 2% bonus based on catalyst strength)\u003cbr\u003e  • Entry signal threshold sensitivity\u003c\/p\u003e\n\u003cp\u003eThis models the well-documented market behavior where Bitcoin and crypto assets\u003cbr\u003erally in anticipation of favorable regulatory outcomes — and gives the strategy\u003cbr\u003ea time-aware edge over purely technical momentum approaches.\u003c\/p\u003e\n\u003cp\u003e2. THE MOMENTUM COMPOSITE SCORE\u003c\/p\u003e\n\u003cp\u003eOn each 60-minute bar close, the bot computes a 0-100 composite score:\u003c\/p\u003e\n\u003cp\u003e  score = 50.0 (baseline)\u003cbr\u003e       + 30.0 x tanh_approx(trend_strength)       # SMA fast vs slow trend\u003cbr\u003e       + 20.0 x tanh_approx(momentum_return)       # recent return direction\u003cbr\u003e       + (RSI - 50) x 0.4                          # RSI deviation from neutral\u003cbr\u003e       + +\/-15.0 for MACD sign                     # MACD above\/below zero\u003cbr\u003e       + 10.0 if close \u0026gt;= Donchian high             # channel breakout\u003cbr\u003e       + 10.0 x tanh_approx(vol_ratio - 1.0)       # volume surge\u003cbr\u003e       + 10.0 x catalyst_bias                      # regulatory proximity\u003c\/p\u003e\n\u003cp\u003eEntry fires when:\u003cbr\u003e  trend_aligned = True  (fast SMA \u0026gt; slow SMA)\u003cbr\u003e  AND score \u0026gt;= dynamic_threshold  (~50 +\/- 10, adjusted for volatility regime)\u003c\/p\u003e\n\u003cp\u003eThe use of tanh-approximation normalizers (x \/ (|x| + epsilon)) prevents any\u003cbr\u003esingle component from dominating the score, making the signal robust across\u003cbr\u003edifferent volatility environments.\u003c\/p\u003e\n\u003cp\u003e3. DYNAMIC ATR-BASED RISK SIZING\u003c\/p\u003e\n\u003cp\u003eStop distance is calibrated dynamically:\u003c\/p\u003e\n\u003cp\u003e  ATR multiplier = 2.0-3.0 (based on VIX-proxy)\u003cbr\u003e    VIX-proxy \u0026lt;= 15 -\u0026gt; 2.0x  (low vol regime: tighter stops)\u003cbr\u003e    VIX-proxy \u0026gt;= 35 -\u0026gt; 3.0x  (high vol regime: wider stops)\u003c\/p\u003e\n\u003cp\u003e  Position size (contracts) =\u003cbr\u003e    (account_capital x risk_pct) \/ (stop_distance x contract_multiplier x point_value)\u003cbr\u003e    x VIX size adjustment (0.25-1.0)\u003cbr\u003e    x volatility adjustment (ATR baseline \/ ATR effective)\u003cbr\u003e    x momentum size scale\u003cbr\u003e    capped at max_contracts = 2\u003c\/p\u003e\n\u003cp\u003e  Risk percent = 1-2% of account (dynamically shrunk in high-vol environments)\u003c\/p\u003e\n\u003cp\u003e  VIX proxy size scaling:\u003cbr\u003e    \u0026gt; 35 VIX units -\u0026gt; 0.25x (quarter size — extreme vol caution)\u003cbr\u003e    \u0026gt; 25 VIX units -\u0026gt; 0.5x\u003cbr\u003e    \u0026gt;= 15 VIX units -\u0026gt; 0.75x\u003cbr\u003e    \u0026lt; 15 VIX units -\u0026gt; 1.0x\u003c\/p\u003e\n\u003cp\u003e4. THREE-TIER PARTIAL SCALE-OUT ARCHITECTURE\u003c\/p\u003e\n\u003cp\u003eWhen a position is entered, three exit levels are pre-computed:\u003c\/p\u003e\n\u003cp\u003e  Level 1 = entry + 1R (stop_distance x rr_ratio x 0.5)  -\u0026gt; exit 50% of position\u003cbr\u003e  Level 2 = entry + 2R (stop_distance x rr_ratio x 0.75) -\u0026gt; exit 25% of remaining\u003cbr\u003e  Level 3 = entry + 3R (stop_distance x rr_ratio x 1.0)  -\u0026gt; exit remainder\u003c\/p\u003e\n\u003cp\u003eThis architecture locks in partial profits at 1R while letting the remaining\u003cbr\u003eposition ride toward 2R and 3R targets — a professional-grade scale-out that\u003cbr\u003eimproves realized P\u0026amp;L stability versus all-or-nothing exits.\u003c\/p\u003e\n\u003cp\u003e5. EXIT LOGIC HIERARCHY\u003c\/p\u003e\n\u003cp\u003eThe strategy uses a four-layer exit hierarchy applied on every execution bar:\u003c\/p\u003e\n\u003cp\u003e  Priority 1: Protective stop (hard stop price or trailing stop, whichever is\u003cbr\u003e              tighter) — enforced on every market tick, not just bar close\u003c\/p\u003e\n\u003cp\u003e  Priority 2: Three partial profit targets (1R \/ 2R \/ 3R) on each 5-minute\u003cbr\u003e              execution bar close\u003c\/p\u003e\n\u003cp\u003e  Priority 3: Time-based exit — if position held \u0026gt; dynamic max hold bars\u003cbr\u003e              (5-20 bars based on vol regime), exit to prevent overnight\/\u003cbr\u003e              excessive-hold decay\u003c\/p\u003e\n\u003cp\u003e  Priority 4: Thesis invalidation — if fast MA crosses below slow MA AND MACD\u003cbr\u003e              goes negative AND RSI \u0026lt; 50 simultaneously, the original momentum\u003cbr\u003e              thesis is considered invalidated and position is closed\u003c\/p\u003e\n\u003cp\u003e  Priority 5: Session profit target — if daily realized P\u0026amp;L reaches 3-5% of\u003cbr\u003e              account capital (adjusted by catalyst bias), lock in the day's\u003cbr\u003e              gains by exiting all remaining position\u003c\/p\u003e\n\u003cp\u003e6. CIRCUIT BREAKER \u0026amp; RISK CONTROL SYSTEM\u003c\/p\u003e\n\u003cp\u003eFive independent circuit breakers gate new entries and protect capital:\u003c\/p\u003e\n\u003cp\u003e  CB1 — Daily loss limit:\u003cbr\u003e    Computed dynamically as -(ATR x contracts x point_value x session_risk_multiplier)\u003cbr\u003e    Stops new entries if daily P\u0026amp;L \u0026lt;= this threshold\u003c\/p\u003e\n\u003cp\u003e  CB2 — Weekly loss limit:\u003cbr\u003e    min(daily_loss_limit x 2, 10% of account capital)\u003cbr\u003e    Stops new entries if weekly P\u0026amp;L \u0026lt;= this threshold\u003c\/p\u003e\n\u003cp\u003e  CB3 — Consecutive losses:\u003cbr\u003e    Rejects new entries after 5 consecutive losing trades\u003cbr\u003e    Triggers cooldown mode (see CB5)\u003c\/p\u003e\n\u003cp\u003e  CB4 — CME maintenance window exclusion:\u003cbr\u003e    Mon-Thu 5:00-6:00 PM ET and Fri 4:00-5:00 PM ET are blocked\u003cbr\u003e    Prevents entering during exchange downtime \/ roll risk windows\u003c\/p\u003e\n\u003cp\u003e  CB5 — Cooldown period:\u003cbr\u003e    After 5 consecutive losses, the bot enters a cooldown period until\u003cbr\u003e    end-of-day (UTC), preventing revenge-trading\u003c\/p\u003e\n\u003cp\u003e  Additionally: spread gate (P95 spread vs dynamic limit) and stale-data gate\u003cbr\u003e  (feed age vs poll interval) provide execution-quality filters on every entry.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eTECHNICAL SPECIFICATIONS\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eInstrument            : Micro Bitcoin Futures (MBTM6)\u003cbr\u003eExchange              : CME (Chicago Mercantile Exchange)\u003cbr\u003eDirection             : LONG\u003cbr\u003eSignal Timeframe      : 60-minute bars\u003cbr\u003eExecution Timeframe   : 5-minute bars\u003cbr\u003eMax Contracts         : 2\u003cbr\u003ePoint Value           : $0.10 per point (env-overridable)\u003cbr\u003eDefault Account Cap   : $50,000 (env-overridable)\u003cbr\u003eBase Risk Per Trade   : 1% of account (env-overridable)\u003cbr\u003eMax Risk Per Trade    : 2% of account (env-overridable)\u003cbr\u003eATR Period            : 14 bars\u003cbr\u003eATR Multiplier Range  : 2.0x - 3.0x (dynamic, VIX-proxy based)\u003cbr\u003eHolding Period        : 5 - 20 execution bars (dynamic)\u003cbr\u003eProfit Targets        : 1R \/ 2R \/ 3R (3-tier partial scale-out)\u003cbr\u003eStop Type             : Initial hard stop + trailing ATR stop\u003cbr\u003eWarmup Bars Required  : 20 signal bars\u003cbr\u003eConsec. Loss Limit    : 5 trades\u003cbr\u003eGeneration            : Gen1 (pre-Gen2 AI probability enhancement)\u003cbr\u003eLanguage              : Python 3.10+\u003cbr\u003eLines of Code         : ~895\u003cbr\u003eBroker Dependencies   : None (portable version — stub only)\u003cbr\u003eCreated               : September 8, 2026\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eKEY FEATURES AT A GLANCE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e[+] Regulatory Catalyst Engine — unique time-decay proximity function anchored\u003cbr\u003e    to known legislative vote dates gives this strategy a temporal edge\u003cbr\u003e    unavailable in purely technical approaches.\u003c\/p\u003e\n\u003cp\u003e[+] 6-Component Momentum Score — SMA crossover + RSI + MACD + Donchian channel\u003cbr\u003e    breakout + Volume surge + Regulatory proximity all composited into a single\u003cbr\u003e    0-100 score with non-linear normalizers for crypto robustness.\u003c\/p\u003e\n\u003cp\u003e[+] Regime-Adaptive Risk Sizing — VIX-proxy dynamically scales stop distances\u003cbr\u003e    and position sizes. In extreme volatility (VIX-proxy \u0026gt; 35), size cuts to\u003cbr\u003e    25% of normal — protecting capital during crypto flash crashes.\u003c\/p\u003e\n\u003cp\u003e[+] Professional 3-Tier Scale-Out — partial exits at 1R, 2R, and 3R ensure\u003cbr\u003e    you never give back all your gains waiting for the final target.\u003c\/p\u003e\n\u003cp\u003e[+] Five-Layer Circuit Breaker Stack — daily loss limit, weekly loss limit,\u003cbr\u003e    consecutive-loss cooldown, CME maintenance window exclusion, and\u003cbr\u003e    data-staleness gate — a complete institutional-grade risk management stack.\u003c\/p\u003e\n\u003cp\u003e[+] Trailing Stop + Thesis Invalidation Exit — the bot tightens its stop as\u003cbr\u003e    the trade moves in your favor, and closes if the momentum thesis is\u003cbr\u003e    invalidated (MA flip + MACD negative + RSI \u0026lt; 50).\u003c\/p\u003e\n\u003cp\u003e[+] Broker-Agnostic Portable Format — all Rithmic\/Redis\/dotenv dependencies\u003cbr\u003e    stripped, BaseTradingBot stub included, clearly marked integration points.\u003c\/p\u003e\n\u003cp\u003e[+] Fully Documented \u0026amp; Readable Code — JSON-structured logging throughout\u003cbr\u003e    makes debugging and performance analysis straightforward.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eWHO THIS IS FOR\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003e[*] Python developers wanting a complete, well-structured crypto futures bot\u003cbr\u003e    as a learning reference or starting scaffold.\u003cbr\u003e[*] Algo traders wanting a professionally designed event-driven momentum\u003cbr\u003e    framework adaptable to any regulatory or macro catalyst calendar.\u003cbr\u003e[*] Students of quantitative finance studying composite momentum signals,\u003cbr\u003e    dynamic risk sizing, and multi-layer exit architectures.\u003cbr\u003e[*] Researchers wanting to backtest a regulatory-event-driven Bitcoin futures\u003cbr\u003e    strategy using their own historical data pipeline.\u003cbr\u003e[*] Developers integrating crypto futures strategies into IBKR, Alpaca, or\u003cbr\u003e    custom broker gateways who want a battle-tested reference implementation.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eGEN1 vs GEN2: UNDERSTANDING THE DIFFERENCE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eThis is a Gen1 strategy — built on pure technical + catalyst signal logic.\u003cbr\u003eGen2 bots (not included) add an AI-derived probability layer for +5-10%\u003cbr\u003eimprovement in entry selectivity.\u003c\/p\u003e\n\u003cp\u003eFeature                           Gen1 (this)   Gen2 (not included)\u003cbr\u003eSMA\/RSI\/MACD composite signal     YES           YES\u003cbr\u003eRegulatory proximity catalyst     YES           YES\u003cbr\u003eATR dynamic stops                 YES           YES\u003cbr\u003e3-tier partial scale-out          YES           YES\u003cbr\u003eCircuit breaker stack             YES           YES\u003cbr\u003eAI probability enhancement        NO            YES\u003cbr\u003eSignal quality                    Baseline      +5-10% improvement\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eFREQUENTLY ASKED QUESTIONS\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eQ: What broker or platform does this work with?\u003cbr\u003eA: The portable file has all Rithmic\/Redis broker code removed. It includes a\u003cbr\u003e   BaseTradingBot stub with clearly marked \"# BROKER INTEGRATION:\" comments\u003cbr\u003e   showing exactly where to plug in your broker's order submission, market data\u003cbr\u003e   feed, and fill callback. Compatible with any Python-accessible broker API:\u003cbr\u003e   Interactive Brokers (ib_insync), Alpaca, NinjaTrader, TradeStation, or custom.\u003c\/p\u003e\n\u003cp\u003eQ: What account size do I need to trade MBTM6?\u003cbr\u003eA: Micro Bitcoin (MBT) futures have lower margin requirements than full BTC\u003cbr\u003e   contracts. CME margin requirements change — check current SPAN margin with\u003cbr\u003e   your broker. The bot defaults to a $50,000 account capital assumption, which\u003cbr\u003e   can be changed via the MBT_ACCOUNT_CAPITAL environment variable. At 1-2%\u003cbr\u003e   risk per trade with max 2 contracts, the strategy is sized conservatively.\u003c\/p\u003e\n\u003cp\u003eQ: Is this strategy fully automated or does it require manual decisions?\u003cbr\u003eA: Designed for full automation. All entry, exit, sizing, and risk decisions are\u003cbr\u003e   made programmatically. You must handle order submission via your broker's API\u003cbr\u003e   at the marked \"# BROKER INTEGRATION:\" points.\u003c\/p\u003e\n\u003cp\u003eQ: How many trades per month should I expect?\u003cbr\u003eA: This is a high-selectivity strategy. Expect anywhere from 2-15 trades per\u003cbr\u003e   month depending on market conditions and how close the current date is to the\u003cbr\u003e   regulatory vote anchor (default: September 15).\u003c\/p\u003e\n\u003cp\u003eQ: Can I change the vote date or use a different event?\u003cbr\u003eA: Yes. The vote date is a single line in execute_strategy:\u003cbr\u003e     vote_date = datetime(year=now.year, month=9, day=15, tzinfo=timezone.utc)\u003cbr\u003e   Change month\/day to match any scheduled event: Fed meeting, ETF approval\u003cbr\u003e   hearing, SEC deadline, earnings, etc.\u003c\/p\u003e\n\u003cp\u003eQ: Can I backtest this strategy?\u003cbr\u003eA: Yes. Replace the BaseTradingBot stub's on_bar_closed and on_market_data hooks\u003cbr\u003e   with your backtesting engine's event callbacks. The entire strategy logic lives\u003cbr\u003e   in those methods with no hidden state.\u003c\/p\u003e\n\u003cp\u003eQ: What Python version is required?\u003cbr\u003eA: Python 3.10 or later. Standard library only in the portable version — no\u003cbr\u003e   third-party packages required beyond what your broker integration needs.\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eINTEGRATION QUICK-START GUIDE\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eStep 1 — Install:  pip install \u0026lt;your broker library\u0026gt;\u003c\/p\u003e\n\u003cp\u003eStep 2 — Find integration points:\u003cbr\u003e  grep -n \"BROKER INTEGRATION\" bot_mbtc_regulatory_momentum_portable.py\u003c\/p\u003e\n\u003cp\u003eStep 3 — Fill market data feed in on_market_data(data):\u003cbr\u003e  Pass a dict: {\"price\": float, \"bid\": float, \"ask\": float, \"symbol\": str}\u003c\/p\u003e\n\u003cp\u003eStep 4 — Fill bar feed in on_bar_closed(tf_key, bar):\u003cbr\u003e  tf_key = \"signal\" (60m) or \"execution\" (5m)\u003cbr\u003e  bar = {\"open\": float, \"high\": float, \"low\": float, \"close\": float,\u003cbr\u003e         \"volume\": float, \"spread_stats\": {\"mean\": float}}\u003c\/p\u003e\n\u003cp\u003eStep 5 — Fill order submission at # BROKER INTEGRATION: SUBMIT ORDER points:\u003cbr\u003e  Call your broker buy\/sell API using self.sim_entry_price, self.sim_position,\u003cbr\u003e  and self.stop_price\u003c\/p\u003e\n\u003cp\u003eStep 6 — Run:\u003cbr\u003e  bot = MicroBitcoinRegulatoryMomentumBot()\u003cbr\u003e  asyncio.run(bot.run())\u003c\/p\u003e\n\u003cp\u003eStep 7 — Tune (optional) via env vars:\u003cbr\u003e  MBT_ACCOUNT_CAPITAL=50000\u003cbr\u003e  MBT_RISK_PCT=0.01\u003cbr\u003e  MBT_MAX_RISK_PCT=0.02\u003cbr\u003e  MBT_POINT_VALUE=0.1\u003cbr\u003e  MBT_TRADEABLE=true\u003cbr\u003e  MBT_MIN_STOP_TICKS=5\u003cbr\u003e  MBT_TICK_SIZE=1.0\u003c\/p\u003e\n\u003cp\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003cbr\u003eRISK DISCLAIMER — PLEASE READ BEFORE PURCHASING\u003cbr\u003e━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u003c\/p\u003e\n\u003cp\u003eThis product is sold for EDUCATIONAL AND INFORMATIONAL PURPOSES ONLY.\u003c\/p\u003e\n\u003cp\u003eFutures trading involves a substantial risk of loss and is not appropriate for\u003cbr\u003eall investors. Trading cryptocurrency futures (including Micro Bitcoin\/MBTM6)\u003cbr\u003einvolves additional risks due to extreme price volatility, 24-hour market\u003cbr\u003eoperation, liquidity gaps, and regulatory uncertainty.\u003c\/p\u003e\n\u003cp\u003eThe strategy code provided:\u003cbr\u003e  * Has NOT been independently verified or audited\u003cbr\u003e  * Is NOT a registered investment advisor product\u003cbr\u003e  * Does NOT constitute financial, investment, or trading advice\u003cbr\u003e  * Is NOT guaranteed to be profitable\u003cbr\u003e  * Has a limited live-trade backtest sample (see Backtest Disclosure above)\u003c\/p\u003e\n\u003cp\u003ePast performance, simulated performance, or developer estimates are NOT\u003cbr\u003eindicative of future results.\u003c\/p\u003e\n\u003cp\u003eYou are solely responsible for your own trading decisions, compliance with all\u003cbr\u003eapplicable laws, proper paper-trade testing before live deployment, understanding\u003cbr\u003eleverage and margin requirements, and any losses incurred through use of this\u003cbr\u003esoftware. Consult a licensed financial advisor before trading futures.\u003c\/p\u003e\n\u003cp\u003eBy downloading this product you acknowledge and accept all risks described above.\u003c\/p\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"HFTCODE.COM","offers":[{"title":"Default Title","offer_id":53624651940149,"sku":null,"price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0967\/8549\/8421\/files\/mbtcmeregulatirymomentum.png?v=1790039843","url":"https:\/\/hftcode.com\/products\/micro-bitcoin-futures-trading-bot-regulatory-momentum-python-strategy-mbtm6-cme","provider":"HFTCODE.COM","version":"1.0","type":"link"}