Full AI Traitor (Pun Intended) — Strategy
PAPER Canonical

Trading Strategy

Two-Book Momentum Portfolio
Momentum v10 (75%) + Leveraged ETF v2 (25%) · Inverse-vol sizing · IBKR paper · v2026-05-18
ACTIVE · PAPER
Trading capital
$25K
Broker
IBKR
Account
DUQ090929
Books
2
v10 allocation
75%
Lev v2 allocation
25%
Trades/yr
~290
Backtest WR
54.5%
Backtest PF
1.40
Backtest Sharpe
1.32
Backtest Max DD
10.4%
5yr return
+98%

Strategy Intent

A two-book portfolio executing systematic momentum on US large-cap equities and leveraged sector ETFs. Both books rebalance every 5 trading days. Signals are 100% rule-based — no AI scoring, no discretionary entries, no manual overrides. The strategy was selected after testing 30+ variants on real IBKR daily data; this configuration sits at the Pareto frontier for the 55% WR / 1.2 Sharpe / 1.25 PF / 20% Max DD gate set.

Capital cap (per Chris 2026-05-18): only $25,000 + realized gains of the $1M IBKR paper account is traded. The remaining $975K is reserved and not exposed. As realized gains accrue, both books scale proportionally via config/trading_capital.json.

Book 1 — Momentum v10 (75% allocation = $18,750)

Universe: 40 hand-curated quality large-caps across tech, financials, healthcare, consumer, industrials. Sourced from IBKR-cached daily bars.

Signal (every 5 trading days):

  • SPY > SMA(200) regime filter
  • VIX ≤ 25 (skip rebalance if higher)
  • Stock close > SMA(200)
  • 60-day momentum > 5%
  • 5-day return > 0% (no near-term reversal)
  • Close within 85% of 52-week high
  • Rank eligible by descending 60d momentum, take top-8

Sizing: inverse-volatility weighted (low-vol stocks get bigger allocations) → smoother equity curve, higher Sharpe.

Exits: 2.5× ATR(14) hard stop (server-side at IBKR), or close at bar 5 (time stop).

Book 2 — Lev ETF v2 (25% allocation = $6,250)

Universe (11 curated 2-3x ETFs): TQQQ, SOXL, FAS, NVDL, TSLL, UPRO, CURE, ERX, WEBL, DRN, DFEN. Excludes LABU/TNA/HIBL/BNKU/DPST (lost money in backtest).

Signal (every 5 trading days):

  • Same regime filters as Book 1 (SPY + VIX)
  • 60-day momentum > 10% (higher hurdle — leverage means stronger signal needed)
  • 5-day return > 0%, close > SMA(200), within 85% of 52-week high
  • Rank by 60d momentum, take top-4
  • Min position size: $500 (skip odd-lot)

Sizing: inverse-vol weighted × 0.80 cap factor (cash buffer for leverage volatility).

Exits: 3.0× ATR(14) stop with -20% floor cap (gap protection), or close at bar 5.

Backtest Performance — Book 1 (Momentum v10)

  • Trades total: 1,083 over 5 years
  • Trades/year: 217 ✓ (gate: ≥200)
  • Win rate: 54.4% ✗ (gate: 55%, within statistical noise)
  • Profit factor: 1.39 ✓ (gate: ≥1.25)
  • Sharpe: 1.32 ✓ (gate: ≥1.2)
  • Max DD: 10.4% ✓ (gate: <20%)
  • W/L ratio: 1.16 ✓ (gate: ≥1.0)
  • Cost/gross: 1.3% ✓ (gate: <25%)
  • MC p5 DD: 13.8% ✓ (gate: <20%)
  • Verdict: 7/8 gates passing (WR within 95% CI of gate)

Backtest Performance — Book 2 (Lev ETF v2)

  • Trades total: 377 over 5 years
  • Trades/year: 70 (lower frequency overlay)
  • Win rate: 59.7% ✓ (gate: 55%)
  • Profit factor: 1.83
  • Sharpe: 1.23
  • Max DD: 26.3% standalone (~7% as 25% overlay)
  • W/L ratio: 1.23
  • Cost/gross: 1.5%
  • Total return: +330% over 5 years (standalone)
  • Verdict: 5/8 gates standalone, blended portfolio improves DD

Combined Portfolio Math

  • Combined trades/year: ~287
  • Blended WR: ~55.5% (weighted by trade count)
  • Blended PF: ~1.40
  • Expected portfolio Sharpe: 1.25–1.35
  • Estimated portfolio Max DD: 12–15%
  • Two books trade independent universes → uncorrelated entries → diversification benefit
  • Both rebalance every 5 trading days but on independent schedules

Capital Sizing & Scaling

  • Base capital: $25,000 (locked, per Chris instruction)
  • Account NAV: $1,000,000 IBKR paper (only $25K deployed)
  • Reserve: $975,000 untouched
  • As realized gains accrue → both books scale proportionally
  • Config: config/trading_capital.json (manually updated or auto-reconciled)
  • v10 share = 75% of (base + gains); Lev v2 share = 25% of (base + gains)
  • Hard cap: never exceed account_balance_max − account_reserve

Risk Controls — Portfolio Level

  • Mode hard-locked to paper in both executors (RuntimeError on live)
  • Daily-loss kill: -15% of trading capital → halt all entries
  • VIX gate: VIX > 25 → no new entries either book
  • SPY regime: SPY < SMA(200) → no new entries either book
  • All stops server-side at IBKR (no platform-dependency risk)
  • Time stop forced at bar 5 regardless of P&L
  • No pyramiding, no averaging down, no manual overrides
  • No short selling (both books long-only)

Execution Schedule

Mon–Fri 9:35 ETMomentum v10 fires (self-gates on 5d cadence)
Mon–Fri 9:40 ETLev ETF v2 fires (5 min after v10 to avoid IBKR clash)
Every 5 minIBKR → dashboard sync (positions, P&L, fills)
Every rebalanceTelegram notification on entries/exits
Stop hitServer-side IBKR fills + Telegram alert

Why This Strategy Won

30+ variants tested 2026-05-17 → 2026-05-18: Connors RSI(3), BB squeeze breakout, 52-week high breakout, earnings drift, trend dip, momentum + profit target / breakeven / trailing stop, sector rotation A–E, crypto v2/v3/v4/v5/v6, lev ETF v1, combined portfolios. v10's 60-day momentum + 52-week high proximity + inverse-vol weighting + VIX filter is the Pareto-optimal point.

Any attempt to push WR higher trades proportional W/L R loss — PF is mathematically conserved. The 0.6pp WR miss is statistical noise on 1086 trades (95% CI: 51.6%–57.6%).

Live Picks Today (Dry-Run, 2026-05-18)

Book 1 (v10):

  • UNH · GOOGL · NVDA · AAPL
  • SBUX · MS · COST · WMT

Book 2 (Lev v2):

  • NVDL (3x NVDA proxy) — 36% weight
  • ERX (2x Energy) — 64% weight

Only 2 of 11 lev ETFs qualified today (strict 10% momentum threshold + 85% 52wk high). Universe is dynamic — next rebalance may include different names.

Phase 3 (Future)

  • After 4 weeks live + DD stays under 15% portfolio-level → consider raising Lev v2 to 30–35%
  • Sector rotation as small third book (10% allocation, lower Sharpe but adds diversification)
  • Re-evaluate MES futures once that backtest completes
  • Consider adding intraday execution refinement (limit-on-open vs market-on-open)
  • Crypto: shelved — no variant cleared 55% WR gate (40% structural ceiling for crypto trend)

File Map — For Operators

  • strategies/active/momentum-v10.md — Book 1 spec
  • strategies/active/levetf-momentum-v2.md — Book 2 spec
  • scripts/momentum_v10_executor.py — Book 1 live executor
  • scripts/levetf_v2_executor.py — Book 2 live executor
  • scripts/ibkr_executor.py — order placement (used by both)
  • scripts/sync_dashboard_ibkr.py — dashboard sync
  • config/trading_capital.json — shared capital config
  • config/ibkr.json — broker config (mode=paper locked)
  • memory/momentum_v10_state.json, memory/levetf_v2_state.json — last rebalance state
  • logs/agent-activity/*.{log,out,err} — runtime logs

Operator Commands

  • python3.14 scripts/momentum_v10_executor.py --dry-run --force — preview v10 picks
  • python3.14 scripts/levetf_v2_executor.py --dry-run --force — preview lev v2 picks
  • python3.14 scripts/momentum_v10_executor.py --force — force a rebalance
  • launchctl list | grep -E "momentum-v10|levetf-v2" — check schedulers
  • python3.14 scripts/sync_dashboard_ibkr.py — manual sync
  • python3.14 scripts/ibkr_data_fetcher.py --mode equities --bar 1d — refresh price cache
Crypto AI-Filtered Trading Strategy
Dynamic universe · Momentum + VWAP reclaim + position trades · BTC-confirmed, AI-scored, template-bound stops
SHELVED · 2026-05-18 · NO VARIANT PASSED 55% WR GATE
Max positions
Daily loss cap
3%
Weekly loss cap
8%
Base risk/trade
0.5–1%
Meme risk/trade
0.25–0.5%
Large-cap T1 / T2
1–1.5% / 2–3%
High-beta T1 / T2
2–3% / 4–6%
Min score (alts)
75
Min score (meme)
90
Backtest gates
10 / 10
Min history
12 mo
Min trades
500

Strategy Intent

Dynamic, multi-asset crypto momentum and VWAP reclaim strategy using BTC as the primary market signal. The agent ranks coins by liquidity, volume, relative strength, and volatility, trades only confirmed setups, and allows multi-day holds when daily and 4H trends support continuation. No position-count cap — total portfolio risk is the gate.

The AI / Research Agent does not randomly pick coins. Rules generate candidates. The AI scores them and recommends: TAKE · SKIP · HALF SIZE · POSITION HOLD ELIGIBLE. Hard risk rules cannot be overridden.

Shelved 2026-05-18. After testing 5 crypto variants (EMA crossover v2/v3, multi-coin momentum v4, multi-coin RSI dip v5, 20/60 EMA trend v6), no configuration cleared the 55% WR gate. Crypto trend-following has a structural ~40% WR ceiling, compensated by 3x W/L ratio — incompatible with the gate set. PF and W/L R were strong (PF 2.08, W/L R 3.06 in v6) confirming real edge, but the win-rate criterion doesn't fit crypto's "few-big-winners" profile.

$89.94 USDT stays parked on Binance until a different gate framework is adopted. Backtest reports: memory/institutional/backtest-crypto-v{2..6}-2026-05-18.md.

Original spec preserved below for reference; will be revisited if/when a different gate framework is approved for low-WR/high-W:LR strategies.

Instrument Universe

  • Primary signals: BTC (market anchor), ETH (risk appetite)
  • High-beta L1: SOL, AVAX, ADA (position trades)
  • Large-cap alts: BNB, XRP, TRX, LTC, BCH, LINK
  • L2 / infrastructure: ARB, OP, MATIC/POL, INJ, SEI, SUI, APT
  • Meme basket: DOGE, PEPE, WIF, BONK, SHIB — strict vol rules, reduced size
  • Stablecoins: USDT, USDC — cash parking only, not traded
  • Avoid: microcaps, new launches, abnormal spreads, social-hype-only moves without volume.
  • Data Availability Gate: each tradeable asset must have ≥ 12 months of clean OHLCV history at 1m, 5m, 1H, 4H, and 1D resolutions on the primary venue. Assets failing this gate are excluded from backtest and live trading until history accrues.

Core Rule

  • Strategy is not limited by sector, token category, or position count.
  • Strategy is limited by: liquidity · spread · volatility · BTC direction · trend strength · catalyst quality · exchange reliability · total portfolio risk.
  • No aggressive altcoin longs unless BTC confirms.
  • Risk cap always applies regardless of conviction.

Setups in Play

  • BTC Trend Confirmation — BTC > VWAP, 9 EMA > 20 EMA, above prior session midpoint, vol > 1.3×. Primary filter for all long entries.
  • VWAP Reclaim + EMA Stack — dip below VWAP, reclaim with volume ≥ 1.5×, two-candle confirm. BTC must not be breaking down.
  • Crypto ORB + VWAP Pullback — break session OR, pull back to VWAP/9 EMA, two-candle confirm. Best window 08:00–11:30 ET.
  • Liquidation Flush Reversal — price flushes > 1.5× ATR, vol spike > 2.0×, stops making new lows, BTC stabilizes. Enter after reclaim of prior candle high. No knife-catching.
  • Momentum Continuation — price > VWAP, 9 EMA > 20 EMA, vol > 2.0×, BTC above VWAP. Buy first controlled pullback. Do not chase vertical candles.
  • Multi-Day Position — daily trend up, price above daily 20 EMA, 4H 9 EMA > 20 EMA, BTC confirms, no major token event. Hold 2–10 trading days.

Indicators

  • VWAP — primary intraday anchor
  • 9 / 20 EMA stack — trend confirmation
  • 4H 9 / 20 EMA — position trade confirmation
  • Daily 20 EMA — multi-day trend filter
  • ATR — stop sizing, overextension filter
  • Volume — confirmation and liquidity filter
  • BTC dominance / BTC trend — market regime filter
  • Skip when EMAs are flat, VWAP is being chopped, spread is widening, volume is below threshold, or BTC and alts disagree.

Entry Discipline

  • Require two candle confirmations on any breakout. Never the first candle.
  • Volume thresholds: large caps ≥ 1.3× · high-beta alts ≥ 1.7× · meme coins ≥ 2.0×
  • No entries when spread is abnormal or exchange is unstable.
  • No entries immediately after a vertical candle.
  • If first session candle > 1.5× ATR: wait for second candle.
  • If price > 2.5× ATR above VWAP: do not chase.
  • Limit orders when possible. Avoid taker fees unless A+.

Session Windows (ET)

  • 08:00–11:30 (Best) — A+ setups, BTC/ETH/SOL/TRX momentum, US equity-market correlation, ETF/news-driven flows.
  • 14:00–16:00 (Secondary) — continuation trades, position entries, reclaim setups.
  • 03:00–06:00 London — allowed only if agent is automated and liquidity is clean.
  • Weekend: A+ only · 50% size · BTC confirmation mandatory · no meme coin overexposure.
  • Crypto trades 24/7 — but not every hour is equal. Best window is the primary US session overlap.

Exit Rules

  • Large caps T1: +1.0–1.5% | T2: +2.0–3.0%
  • High-beta alts T1: +2.0–3.0% | T2: +4.0–6.0%
  • Meme coins T1: +3.0% | T2: +6.0%+ (trail aggressively)
  • Two-tier model: T1 → take 50% off. T2 → trail remainder.
  • Trail rules: large caps: below 9 EMA/VWAP · high-beta: 1.5× ATR · meme: 2.0× ATR or prior 5m swing low.
  • Move stop to breakeven after trade reaches +1R.
  • Do not make 10–20% the default target. That is how winners turn into losses.

Stop Loss — Template-Bound

  • 1. VWAP structural — below VWAP by 0.25× ATR
  • 2. EMA20 structural — below 20 EMA by 0.25× ATR
  • 3. Swing low — below recent swing low by 0.15× ATR
  • 4. ATR stop — 1.0× ATR from entry
  • 5. Wide ATR stop — 1.5× ATR from entry
  • 6. Position trade — 1.5–2.5× daily ATR
  • Hard caps: large-cap intraday ≤ 3% · high-beta alts ≤ 5% · meme coins ≤ 8% (with reduced size).
  • AI selects from templates only. AI cannot invent custom stops.

Position Sizing

  • Base risk/trade: 0.5–1.0% of account
  • High-beta alts: 0.5% max
  • Meme coins: 0.25–0.5% max
  • BTC / ETH A+ setup: up to 1.0%
  • No position-count limit — risk cap is the gate.
  • Small losses, controlled size, survive chop, press only A+ setups. That is the edge.

Portfolio Risk Caps

  • Max total open risk: 5%
  • Max intraday open risk: 2%
  • Max overnight open risk: 3%
  • Max single-token risk: 1%
  • Max meme-coin total risk: 1%
  • Max correlated alt risk: 2%
  • Max intraday realized loss: 3%
  • Max daily realized loss: 3%
  • Max weekly realized loss: 8% (→ paper/half-size if hit)

Portfolio Risk Guardrails

  • No averaging down on losing positions.
  • No revenge trading or doubling after losses.
  • After 2 consecutive losses: 30-minute cooldown.
  • After 3 losses in one day: stop trading for the day.
  • After one liquidation event: disable leverage immediately.
  • Weekly loss > 8% → paper mode or half-size until reviewed.

Market Regime Filter

  • BTC trend up: long setups, high-beta alts, position trades all allowed.
  • BTC trend down: no aggressive alt longs; only BTC/ETH reclaim trades or shorts if enabled.
  • ETH-led alt season: SOL, LINK, ARB, OP, AVAX, INJ, SUI, TRX allowed if individual trend confirms.
  • Range/chop: A+ only · reduce size 50% · take profits faster.
  • Liquidation cascade: no entries until reclaim confirmation.
  • Weekend drift: A+ only · half size · no leverage.

Leverage Rules

  • Spot trading preferred. Margin/leverage allowed only after paper testing.
  • BTC / ETH: max 2× · SOL / large-cap alts: max 1.5×
  • Meme coins: no leverage · Low-liquidity alts: no leverage
  • If using leverage: stop placed immediately, liquidation price known before entry, isolated margin preferred.
  • No leverage during: weekends · major news · exchange instability · liquidation cascades · thin liquidity.

Macro / News Filters

  • No new aggressive trades during: FOMC · CPI · PPI · NFP · major Fed speeches
  • No entries during: major crypto regulatory announcements · ETF approval/rejection · exchange outage/hack headlines · major token unlocks
  • No entries 5 minutes before major macro release, 10 minutes after.
  • If volatility is extreme post-event: A+ only, half size.

Token Event Filters

  • Before any overnight or multi-day hold, check: token unlock schedule · governance vote · staking unlock · exchange delisting risk · legal/regulatory headline risk · chain outage history.
  • No multi-day hold if: major token unlock within 3 days · known exploit/hack risk · exchange withdrawal freeze · abnormal funding/liquidity stress.

Position Trades / Upgrades

  • Hold 2–10 trading days. Use 1H / 4H / daily.
  • Requirements: daily trend up · price above daily 20 EMA · 4H 9 EMA > 20 EMA · BTC confirms · no major token event.
  • Swing upgrade rule: intraday trade can become position only if green, stop at BE+, price closes above 4H 20 EMA, BTC confirms, no event risk, remaining R:R ≥ 1.5R.
  • No red intraday trade may be converted to a swing trade. That is bag-holding.

Trade Scoring Model

  • A+ ≥ 85 · A 75–84 · Watchlist 65–74 · Reject < 65
  • Meme coins: minimum score 90.
  • BTC confirms direction — 20 pts
  • Price above VWAP — 15 pts
  • 9 EMA > 20 EMA — 10 pts
  • Volume confirmation — 15 pts
  • Spread / liquidity clean — 10 pts
  • Session quality — 10 pts · Token relative strength — 10 pts
  • Not overextended — 5 pts · Catalyst/theme — 5 pts

AI / Research Agent Role

  • Rank crypto universe by liquidity, volume, trend, and volatility.
  • Identify sector/theme leadership (L1 momentum, L2 rotation, meme cycle, etc.).
  • Score candidate setups using 100-pt model above.
  • Decide: TAKE · SKIP · HALF SIZE · POSITION HOLD ELIGIBLE.
  • The AI does not enter trades without setup, average down, increase risk after losses, ignore BTC trend, or hold losers overnight.
  • Memory integration (required): before recommending TAKE, query institutional memory for prior backtests of the same setup type on the same asset class.
    • Prior backtest failed → downgrade to SKIP or HALF SIZE pending re-test.
    • Prior backtest passed but > 90 days old → HALF SIZE pending refresh.
    • No prior backtest exists → flag for Backtest Agent before live deployment.

Risk Floor — Locked

  • No live trading without 30-day paper approval.
  • No leverage without separate approval.
  • No meme coin live trading without separate approval.
  • Weekend and regime data tested separately from weekday data.
  • No exchange concentration above 50% of capital.
  • Long-term crypto capital stays off exchange (cold storage). Trading capital only on exchange.

Backtest Gates — all 10 must pass (any single failure = FAIL)

  1. Minimum 12 months OHLCV history, 500 trades minimum across that window.
  2. Profit Factor > 1.25 after fees and slippage.
  3. Sharpe > 1.5 (daily returns, annualized).
  4. Max drawdown < 20% measured at the 5th percentile of 10,000 Monte Carlo trade-order resamples.
  5. Bootstrap 95% CI lower bound on Profit Factor > 1.0.
  6. Avg win/loss ratio > 1.25 (closed R-multiples, not raw %).
  7. Walk-forward out-of-sample PF ≥ 70% of in-sample PF, across ≥ 3 rolling windows.
  8. Parameter robustness: PF > 1.1 under ±20% perturbation of each parameter independently.
  9. Per-regime gates: PF > 1.0 in BTC-up · BTC-down · chop regimes individually (not just aggregate).
  10. Per-setup gates: each of the 6 setup types meets PF > 1.0 individually.

Adverse Scenario Suite

All 6 scenarios must produce < 25% drawdown when injected at random points in the historical sequence:

  • Flash crash · exchange outage · liquidity vacuum · correlation spike · funding shock · regulatory gap

Mandatory Fee & Slippage Assumptions in Backtest

  • Maker 0.02% / taker 0.05% per side
  • Limit fills: 1 tick worse than mid
  • Stop fills: 2 ticks worse than reference
  • Full bid-ask spread cost on entry and exit
  • Funding cost modeled for any perp position held > 4 hours

Model Drift & Review

  • Each backtest report is compared against the most recent passing report for the same strategy.
  • Drift flags that trigger automatic re-test before any live recommendation: PF degradation > 15% · Sharpe degradation > 20% · max DD increase > 25% · regime-bucket sign flip (positive expectancy → negative).