martianmobile

Backtest2live — Development skill for Claude Code

Development community

Backtest2Live: free, local, engine-agnostic checks for whether a trading strategy will survive live, plus a tear sheet that states where its numbers came from.

How to install Backtest2live

This entry records only its repository, not the path inside it, so there is no exact command to give. Open martianmobile/backtest2live and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Backtest2live does

Backtest2Live: free, local, engine-agnostic checks for whether a trading strategy will survive live, plus a tear sheet that states where its numbers came from. Python CLI (bt2live), Claude Code plugin, MCP.

Alternatives in Development

  • Hybrid Status — Show execution status of all stories in the PRD 123 ★
  • Pi — PI Wisdom-in-Action Engine v23 — top mandates, scene router, delivery quality gates, anti-patterns, battle mom 107 ★
  • Who Built This Before Me — A Claude skill that checks whether your idea already exists before you build it 74 ★

README

backtest2live

[![CI](https://github.com/martianmobile/backtest2live/actions/workflows/ci.yml/badge.svg)](https://github.com/martianmobile/backtest2live/actions/workflows/ci.yml)

**Check a backtest against what live execution would do.** Evaluators run locally on your own files and public data, and each one returns a verdict with the numbers behind it.

Use it three ways: as a Python CLI (`bt2live`), as a library, or as a Claude Code plugin where the agent runs the CLI and interprets the verdict.

This is the public, MIT-licensed version of checks used in live crypto trading research at [Martian Mobile](https://martianmobile.com).


Evaluators

Command Status What it does
bt2live convergence shipped Read a variant parameter sweep → measure dispersion, IS/OOS rank stability, and parameter-plateau structure → verdict: CONVERGED / ITERATE / KILL.
bt2live fill-gap shipped Re-run your backtest's resting orders under a queue proxy on top-of-book and trades → your fill rate vs the proxy's: CONSISTENT / OVERSTATED.

Roadmap: [ROADMAP.md](ROADMAP.md) and the [milestones](https://github.com/martianmobile/backtest2live/milestones).


Install

pip install backtest2live

The core has no runtime dependencies (Python 3.9+). `fill-gap` needs numpy and pandas:

pip install 'backtest2live[data]'

**Claude Code plugin.** This repo is also a plugin marketplace. From inside Claude Code:

/plugin marketplace add martianmobile/backtest2live
/plugin install backtest2live@martianmobile

Then ask *"are these variants converged?"* or run `/convergence results.csv --metric sharpe_oos`. The skill installs the CLI if it is missing.


`fill-gap`: do your backtest's passive fills survive a queue?

A backtest that fills a resting order whenever price touches it counts fills a live order would never get: the order sits behind the queue already displayed at that pric