4 AI agents. One open runbook. Real $25K, live and verifiable.
Live portfolio card β generated from current positions. Open the full dashboard β
| Account value | Total return | Return vs. SPY | Max drawdown | Days live |
|---|---|---|---|---|
| $32,276.56 | +29.11% | +14.54 pp (SPY +14.57%) | β12.14% | 168 |
As of August 24, 2026. Same-window comparison begins with the first stored live observation. Portfolio data Β· Performance data Β· SPY data Β· refreshed weekly by GitHub Actions.
Quick start: Copy the live incumbent Β· Connect MCP β python3 start.py β paste prompt.txt into a fresh agent chat
- What is this?
- Live books
- Agent bakeoff
- What this repo gives you
- How the runbook works
- What's inside
- Community leaderboard
- Get started
- Risk disclaimer
- More links
In February 2026 I deposited $25,000 into a live Public brokerage account on NexusTrade and made the entire book public β every position, every fill, every model test, every bug, every failure.
Not paper. Not a backtest screenshot. Real money, documented in real time.
The live story is a blog series. Episode 10 is the write-up of this repo in action: Claude Fable 5 ran episode-10/BAKEOFF_RUNBOOK.md end to end β engine sanity checks, 16 strategy variants, walk-forward certification, a single-touch lockbox β and deployed a live momentum-options book that beat the market out of sample. Fable 5 was subsequently banned; the runbook, snapshots, and full campaign logs in episode-10/ are still here so you can run the same discipline with any model.
| Full series β | Ten episodes and counting: model bakeoffs, deploy day, production bugs, week-one gains, panic sells, engine rewrites, and the open runbook. |
| Episode 1 β | Where it started β why $25k, why Public, why total transparency. |
| Episode 10 β | The full story of Fable 5 running this runbook β every gate, engine bug, and dead end logged in FABLE_CAMPAIGN.MD. |
| Episode 10 on Medium β | Same article, syndicated on Medium β included here so readers who follow the challenge off-platform can find it without hunting. |
This repo is the open playbook. Episode 10 documents one agent's run through it. The runbook is yours to replay with whatever model you have. The agents don't just trade the accountβthey commit to this repo.
Three Public brokerage books. Each has its own folder. Do not merge them.
| Book | Public | Capital | Live config | Runbook |
|---|---|---|---|---|
| Public Portfolio Challenge: Original | live id 69a7dc7acdb6bf6a4681d36c |
$25,000 | Episode 10 incumbent. Do not touch. | episode-10/ |
| Public Portfolio Challenge: Biotech | 5OH86568 Β· id 6a5e20a3ea0d6db55c69a171 |
$5,500 | KEEP (design-frozen) | episode-11/moderna/ |
| Public Portfolio Challenge: Semis | 5OH79160 Β· id 6a45f218e6b1f2131d1f26be |
$8,000 | NOW RUNNING S13 A (G3 was replaced). Auto-approve still false. Monday 9am CT reconcile queues tickets. | episode-semis/ |
Semis method and the certified SMH comparison live in episode-semis/RUNBOOK.md. Biotech KEEP stays in episode-11/moderna/RUNBOOK.md β do not rewrite or merge that body.
Four agents received the same Episode 10 discipline. The useful result is not a single giant backtestβit is whether a fixed deploy-shape candidate cleared the frozen out-of-sample gates.
| Agent | Best comparable OOS mean return | Passed every gate? | Outcome | Notable failure |
|---|---|---|---|---|
| Claude Code | +53.7% | No | No deploy | Cleared breadth, absolute return/Sortino, drawdown, and posture; failed Gate 4 against the incumbent. |
| Codex | +32.3% | No | No deploy | The strongest fixed deploy-shape candidate still failed the incumbent bar and two fold Sortino floors. |
| Cursor | +33.9% | No | Incomplete; no deploy | Solved breadth at low allocation, then failed Gate 4; later studies were still running when the log ended. |
| Claude Fable 5 | +88.3% | Noβowner override | Deployed | Strong return and drawdown, but missed strict breadth, fold-Sortino, stability, and posture gates; later engine fixes weakened the selection-provenance claim. |
Honest headline: none of the four runs produced a clean pass under every frozen gate. Fable's strategy was deployed after a documented owner override, not because the runbook quietly moved the bars. Follow the links for fold-level evidence and every failure.
|
Connect the NexusTrade MCP server to Cursor, Claude, or any OAuth-capable client. No NexusTrade install, no API keys to rotate β OAuth signs you in once in the browser. (Grab |
|
Walk-forward validation, a held-out lockbox, deploy gates, and capital-posture rules. A high in-sample backtest number is never the headline. |
The campaign is built around one idea: out-of-sample performance is the only result that counts.
flowchart LR
A["π Search<br/><small>backtests & optimization</small>"] --> B["β Certify<br/><small>walk-forward folds</small>"]
B --> C["π Lockbox<br/><small>single-touch confirm</small>"]
C --> D["π Deploy<br/><small>live portfolio</small>"]
| Layer | Job |
|---|---|
| Search | Invent and tune candidate strategies fast β variants, sweeps, backtests. |
| Certify | Walk-forward: each fold optimizes in-sample, scores on held-out OOS the optimizer never saw. |
| Lockbox | A final untouched window. One touch. No peeking. |
| Deploy | Clone to a live portfolio, parity-check, attach monitoring. |
Fixed by the runbook: a frozen watchlist (20 names in the Episode 10 bakeoff), $25,000 capital, the fold calendar, the gates, the lockbox rules, and the deploy procedure. Yours to design: signals, structures, deltas, exits, sizing β anything that clears the gates is valid.
The watchlist (frozen β 20 names)
ANET Β· DUOL Β· HOOD Β· LLY Β· GS Β· META Β· TSM Β· AVGO Β· XOM Β· COP Β· OSCR Β· AMAT Β· ADI Β· DDOG Β· OKTA Β· NET Β· APP Β· GLD Β· MU Β· SNDK
The discipline lives in two forms. The skills library (skills/) is the runbooks decomposed into composable agent skills on the open SKILL.md standard β the same folder runs in Claude Code, Codex CLI, Cursor, Gemini CLI, Copilot and ~15 other tools (skills/install.sh handles each tool's path + adapter). Connect the NexusTrade MCP and the agent auto-invokes the skill that fits the task, no paste required. The episode folders preserve the complete public timeline: historical indexes for Episodes 1β9, then the original runbooks and campaign logs for the reproducible campaigns.
skills/ β the skills library (install into ANY agent β see skills/README.md)
βββ README.md β index + how the skills compose
βββ run-episode/ β entry point: /run-episode 10 (sequences the stages)
βββ portfolio-certification/ β umbrella orchestrator (the staged PASS/FAIL run)
βββ walk-forward-oos/ β the OOS certification engine
βββ breadth-audit/ β true participation at fixed $25k
βββ sweep-reoptimization/ β re-sweep on structural change + provenance
βββ options-structure-rules/ β spread-shape rule + hard constraints
βββ alt-data-indicators/ β custom indicators (Reddit, congressional, β¦)
βββ bug-protocol/ β "loudly declare" + hand-off doc template
βββ deploy-gate/ β the gated deploy + reconcile flow
βββ engine-sanity/ β Stage-S0 pre-flight contract checks
βββ strategy-bakeoff/ β the SEARCHβCERTIFY multi-family funnel
βββ lockbox-holdout/ β single-touch holdout + A/B/C baselines
Each episode is a self-contained folder: the runbook to paste, plus the campaign logs from each operator/agent run.
Episodes 1β9 predate the current repository format. Their folders preserve the runbook provenance that still exists, the outcome, an honest historical grade, and the canonical article instead of pretending missing artifacts can be reconstructed.
| Episode | Outcome | Grade | Record |
|---|---|---|---|
| 1 | Opened the real-money challenge and established the public record. | Historical; not scored under current gates | episode-01/ |
| 2 | Converted expert feedback into a more disciplined agent workflow. | Historical; not scored under current gates | episode-02/ |
| 3 | Compared 11 AI models on strategy construction. | Research bakeoff; pre-current gates | episode-03/ |
| 4 | Tested automated hill-climbing and found optimization did not automatically beat the first attempt. | Research result; pre-current gates | episode-04/ |
| 5 | Reached the first live options deployment milestone. | Deployed under episode-era controls | episode-05/ |
| 6 | Documented day-one live behavior. | Live observation; not a certification | episode-06/ |
| 7 | Hit a close-order failure and rebuilt the risk engine around it. | Failure documented and remediated | episode-07/ |
| 8 | Published the week-one gain with the live book visible. | Live snapshot; not forward evidence | episode-08/ |
| 9 | Documented the gain, the panic sell, and the human override risk. | Failure documented | episode-09/ |
episode-10/
βββ BAKEOFF_RUNBOOK.md β paste this into a fresh MCP session
βββ RUNBOOK_OG.md β the original (Episode 1) runbook, kept for reference
βββ snapshots/ β baseline + incumbent seed portfolios the runbook loads
βββ addendum/ β entry/exit redesign, deploy evidence, diagram, and bug note
βββ FABLE_CAMPAIGN.MD β operator run log (Fable 5)
βββ CLAUDE_CODE_CAMPAIGN_LOG_*.md β agent run log (Claude)
βββ CODEX_CAMPAIGN_LOG_*.md β agent run log (Codex)
βββ CURSOR_CAMPAIGN_LOG_*.md β agent run log (Cursor)
| File | What it is |
|---|---|
skills/ |
The skills library. 12 composable agent skills on the open SKILL.md standard (Claude Code, Codex, Cursor, Gemini, Copilot, β¦) β the whole certification discipline, auto-invoked instead of pasted. Entry point: /run-episode 10. skills/README.md is the index. |
start.py + example_profile.json |
Start here (fast path). python3 start.py walks you through your watchlist + risk tolerance, writes profile.json and a prompt.txt to paste β the agent builds you a personalized strategy. No runbook needed. |
episode-10/BAKEOFF_RUNBOOK.md |
The agent brief you run β walk-forward validation, lockbox, deploy gates. Paste and execute top to bottom. |
episode-10/RUNBOOK_OG.md |
The original Episode-1 runbook, kept for reference (the brief has since expanded). |
episode-10/snapshots/ |
Baseline A/B and incumbent seed portfolios the runbook loads via create_portfolio. |
episode-10/addendum/ |
Episode 10 entry/exit redesign addendum: runbook, campaign evidence, OOS comparison diagram, and bug note. |
episode-10/addendum/RAW_RETURN_VNEXT_RESULTS_20260817.md |
Raw-return vNext sweep, GA, walk-forward, event audit, winners/losers, risk trade-offs, and deployment record. |
| Campaign logs | Per-run logs from each operator/agent: FABLE_CAMPAIGN.MD, CLAUDE_CODE_β¦, CODEX_β¦, CURSOR_β¦. |
episode-11/moderna/RUNBOOK.md |
Biotech KEEP β design-frozen. Live name Public Portfolio Challenge: Biotech. Do not rewrite or merge this body. |
episode-semis/RUNBOOK.md |
Semiconductor S13 A β SMH-bar walk-forward, exam-only lockbox. Now running on Public 5OH79160. |
episode-semis/
βββ README.md β index for the Semis Public book
βββ RUNBOOK.md β paste this; S13 A is design-frozen
βββ CAMPAIGN_LOG.md β facts already recorded (no invented fills)
Episode 11 is the Biotech KEEP book at episode-11/moderna/ β Public Portfolio Challenge: Biotech (Public 5OH86568). The semiconductor book is a separate episode at episode-semis/ β Public Portfolio Challenge: Semis (Public 5OH79160), now running S13 A. Do not steal the Episode 11 folder for chips.
Think your agent can beat the incumbent without moving the gates? Prove it. Fork the repo, run the campaign on NexusTrade, and open a PR under community-runs/.
| Rank | Run | Agent | OOS return | OOS Sortino | Worst max drawdown | Gates | Evidence |
|---|---|---|---|---|---|---|---|
| β | No verified community runs yet | β | β | β | β | β | Submit the first run |
Only runs that pass every current gate are ranked by mean OOS return. Failed runs stay visibleβthe point is reproducibility, not survivor bias. Start with the submission guide and result template.
Open nexustrade.io/developers.
You'll need a NexusTrade account to authorize MCP and access portfolios, backtests, and live trading tools.
Recommended: OAuth. No keys to copy, rotate, or leak. Sign in once in the browser when your client first calls a NexusTrade tool.
https://nexustrade.io/api/mcp
- On the Developers page, expand API Keys.
- Under Connect an AI tool to NexusTrade, click Add to Cursor.
- OAuth runs automatically on first tool use.
Manual Cursor config
{
"mcpServers": {
"nexustrade": {
"url": "https://nexustrade.io/api/mcp"
}
}
}Claude Desktop / Claude Code
Click Copy install command on the Developers page, or:
claude mcp add nexustrade --transport http https://nexustrade.io/api/mcpVS Code, ChatGPT, Windsurf, Zed, and other MCP clients
Use Add to VS Code on the Developers page, or paste the MCP URL into your client's connector settings. OAuth 2.1 discovery works the same everywhere.
Advanced: API keys
For scripts without OAuth support: expand Advanced: API Keys on the Developers page and pass the key in the Authorization header. See the API Reference.
Fast path β a personalized strategy in one paste. Run:
python3 start.pyOn the first run it walks you through a few questions (defaults come from example_profile.json β mine) and writes your profile.json, then writes your ready-to-paste prompt to prompt.txt. Open prompt.txt, copy it, and paste into a fresh MCP-connected chat. Run it again any time after editing profile.json to regenerate the prompt.
No Python? Copy example_profile.json to profile.json, edit it, then paste the JSON into your agent with one line: "Build me a personalized strategy from this profile, backtest it out-of-sample, and ask before deploying."
Either way, the agent designs a strategy on your names, backtests it, compares it to buy-and-hold, and asks before risking a dollar.
profile.json fields
risk_toleranceβconservativeΒ·moderateΒ·aggressiveasset_classesβ any ofstocks,crypto,optionswatchlistβ the only tickers the agent may tradecapitalβ starting USD
Full rigor β the runbook. Want walk-forward validation, a held-out lockbox, and deploy gates? Open episode-10/BAKEOFF_RUNBOOK.md, paste the entire file into a fresh session, and tell the agent: execute top to bottom, do not ask clarifying questions. Log your run alongside the per-agent campaign logs in episode-10/.
This repository is educational and documents one person's experiments. It is not investment, legal, tax, or financial advice, and it is not a promise of future results. Live performance, backtests, walk-forward results, and out-of-sample results can all lose money and can differ from brokerage execution because of liquidity, spreads, fees, assignment, latency, data quality, and implementation errors. Options can expire worthless and may create losses beyond the premium for some structures.
Nothing in this repository should place a trade by itself. Review every strategy, connect only accounts you control, keep manual approval enabled until you understand the behavior, and never risk money you cannot afford to lose. The scoreboard is a timestamped public snapshot; verify the current portfolio and disclosures before relying on it.
| Live portfolio | Positions and P&L in real time |
| Copy the live incumbent | Open the marketplace copy/deploy flow; review before connecting real money |
| Blog series | The full documented journey |
| Episode 1 | How the challenge began |
| Episode 10 | Fable 5 ran this runbook and deployed a live book β full story + links to campaign logs |
| Episode 10 on Medium | Syndicated copy of the same article (for readers off NexusTrade) |
| Developers | MCP setup |
| MCP tools reference | Every tool the runbook can call |
| API overview | REST + auth |
Copy the incumbent, or fork it and beat it. Run start.py on your own namesβor paste the runbook for the full discipline.
If it survives walk-forward and the lockbox, deploy it. If it doesn't, you found that out before risking a dollar.




