Private Beta

Forge your edge.

Institutional-grade futures backtesting, built for retail traders.

StratSmith is the complete platform for building, testing, and validating futures trading strategies. Powerful optimization and statistical analysis, guided, automated, and built for results.

See How It Works
StratSmith backtest results with equity curves, drawdowns, and trade analysis StratSmith parameter optimization heatmap for trading strategies StratSmith strategy validation with Monte Carlo and walk-forward analysis
Scroll to explore

From idea to validated strategy
in one workflow.

Stop duct-taping spreadsheets, scripts, and notebooks together. StratSmith handles every step, so you can focus on the strategy, not the infrastructure.

01 · DEFINE

Describe what you want. The agent builds it.

Tell the AI agent what you want your strategy to do and it writes the code, wires up indicators, and configures parameters. Or write it yourself. Either way, debug and iterate, with full version control across every variation you try.

AI-assisted trading strategy development with chart and indicators
02 · BACKTEST

The full picture, every trade analyzed.

Powerful tick-level backtests on years of data, with deep analysis and insights into how your strategies actually perform. Drill into individual trades, equity curves, drawdowns, and dozens of strategy stats. See the whole picture, not a summary that hides what really happened.

Backtest results with equity curves, drawdowns, and trade analysis
03 · OPTIMIZE

Map the whole parameter landscape, not just an overfit peak.

Grid, random, orthogonal arrays, Sobol sequences. Sample the parameter space smarter. Pairwise heatmaps and 3D surfaces reveal the broad robust basins, so you don't overfit to one lucky combination.

Parameter optimization heatmap for trading strategy backtesting
04 · VALIDATE

Stress-test before you risk a dollar.

Monte Carlo resampling, walk-forward analysis, risk of ruin, temporal stability. You're not picking the best backtest, you're proving the strategy survives data it's never seen, fully characterizing the risk profile and the capital required to run it.

Strategy validation with Monte Carlo resampling and walk-forward analysis
05 · ORGANIZE

Where your strategy ideas actually live.

Organize hypotheses, notes, and concepts. Tag, version, evolve, and share ideas before writing a single line of code.

Trading strategy ideation workspace in StratSmith

Serious tools for
serious traders.

Every feature was built to answer a real question: does this strategy work, and will it keep working?

Search

Smart Parameter Search

Sweep methodically (grid, Sobol, orthogonal arrays) or evolve toward optima with genetic algorithms, differential evolution, and particle swarm. Find robust regions of interest, not just one lucky combination.

Validate

Monte Carlo Stress Testing

Thousands of resampled equity curves with real confidence intervals. See the full distribution of outcomes - not just the one backtest that looked good.

Temporal

Walk-Forward Analysis

Does your strategy survive on data it's never seen, or does it fall apart the moment you go live?

Visualize

Pairwise Parameter Landscapes

Interactive 3D surfaces and heatmaps for every parameter pair. Pareto frontiers across competing objectives. See which regions are mountains and which are mirages.

Risk

Risk of Ruin

Exact probability calculations at every position size. Know the odds of hitting your drawdown threshold before you commit capital.

Measure

Comprehensive Metrics

Every risk-adjusted return metric you'd want: Sharpe, Sortino, K-Ratio, Kelly, Ulcer Index. Trade-level streaks, day-level streaks, long/short splits. Sort and filter your backtest library by any of them.

Inspect

Full Chart Visualizations

Step through any backtest one trading day at a time. See all the candles at any resolution to inspect individual trades.

Author

Visual + Code Editors

Use your preference of TypeScript, Python, or Blockly (visual code). The AI assistant works with all three, so the flexibility is yours.

Organize

Strategy Library & Versioning

Every strategy, every parameter set, every backtest result - versioned and searchable. Compare iterations side by side. Never lose track of what you've already tried.

Export

Easy Export

Export backtest results and full trade logs in simple CSV format for additional analysis.

Share

Share Your Backtests

One-click public links for any backtest. Drop them in Discord or Slack and friends see the full results - drawdown, equity curve, trade table - no account needed.

Collaborate

Team Workspaces & Audit Log

Collaborate on strategies in a team. Every edit, every backtest, tracked in an audit log. Easily add and remove team members as your work evolves over time.

Describe your strategy.
The AI agent builds it.

Tell the assistant what you want. It writes the code, configures parameters, wires up indicators - and validates everything before you touch it.

Build a Bollinger Band mean reversion strategy on 15-min bars. Use a 30-period lookback with 2 standard deviation bands. Add a parameter for the band multiplier so I can optimize it later.
Strategy Agent ◎ < 0.1
Updated the strategy code with Bollinger Band indicator references: bb_middle, bb_band_2_upper, and bb_band_2_lower. Added a bandMultiplier parameter (0.5–5.0, default 2.0) and implemented it in the strategy code. No validation errors occurred.
▸ View generated code
▸ View parameters (1)
▸ View indicators (1)
▸ View candles (1)
✓ Validation passed
Unsaved Changes
Code Parameters Indicators Candles
const sma = api.getIndicatorValue(names.indicator.bench_sma_value, 0); const ema = api.getIndicatorValue(names.indicator.bench_ema_value, 0); const m5 = api.getCandle(names.candle._5_minute, 0); const s2 = api.getCandle(names.candle._2_second, 0); if (isNaN(sma) || isNaN(ema)) return; for (let j = 0; j < account.ordersCount; j++) { api.queueAction({ type: 'cancel', id: account.orders[j].id }); } if (account.positionQty === 0) { if (ema > sma) { api.queueAction({ type: 'limit', qty: 1, price: candle.close - 0.25, stopLoss: candle.close - 5, takeProfit: candle.close + 10 }); } else if (ema < sma) { api.queueAction({ type: 'limit', qty: -1, price: candle.close + 0.25, stopLoss: candle.close + 5, takeProfit: candle.close - 10 }); } } else { api.queueAction({ type: 'bracket', stopLossPoints: 4, takeProfitPoints: 8 }); }
1–[]
1+[
2+ {
3+ "max": 50,
4+ "min": 5,
5+ "name": "smaPeriod",
6+ "type": "number",
7+ "defaultValue": 10
8+ },
9+ {
10+ "max": 30,
11+ "min": 3,
12+ "name": "emaPeriod",
13+ "type": "number",
14+ "defaultValue": 5
15+ }
16+]
1[{
2 "name": "bench_sma",
3 "type": "sma",
4 "period": 10,
5 "property": "close",
6 "candleInterval": "5_minute"
7}, {
8 "name": "bench_ema",
9 "type": "ema",
10 "period": 5,
11 "property": "close",
12 "candleInterval": "5_minute"
13}]
bench_smaSMA
5_minute   period: 10   property: close
bench_emaEMA
5_minute   period: 5   property: close
1[
2 { "type": "minute", "quantity": 5 },
3 { "type": "second", "quantity": 2 }
4]
5_minuteMIN
type: minute   quantity: 5
2_secondSEC
type: second   quantity: 2
Strategy Diff
AI agent strategy code diff showing added indicators and parameters

Full control when you want it. The generated code is always visible, editable, and yours.

Stop guessing.
Start proving.

StratSmith is in private beta. Join the waitlist and be first to build strategies with real statistical backing.