What it does

Reads one run. While the run is queued or running it returns the status and the engine's progress, and Claude polls every 10 to 15 seconds. When the run is completed, failed or cancelled it returns the compact verdict: the period, capital and benchmark, the headline metrics, the Sharpe with its deflation, the cost model in one sentence, the credits in one sentence, and any error. For the trade log Claude uses get_backtest_trades.

The verdict is sized to be read in one step. detail: true returns the full run record instead: the spec that ran, the engine's properties, the trade breakdown, the Monte Carlo figures, usage and billing. It is large, so Claude asks for it only when the verdict lacks what it needs.

The verdict's note tells Claude to quote the Sharpe only together with the number of configurations tried and the deflated Sharpe, and to state only numbers that appear in the payload. Alpha is measured against the benchmark the verdict names, dividends included.

It needs the read permission, which every connection has. Every project role may call it, a viewer included.

One caveat: a run's equity curve and trades are released when a later run of the same version completes. The summary stands, the verdict says so under resultsReleased, and running the period again brings the curve back.

Parameters

ParameterTypeRequiredDescription
run_idstringyesThe run id, a UUID. From run_backtest, list_strategies or get_strategy.Example: 0193c2b4-9e21-7a6c-8f3d-5b7a9c1e2d48
detailbooleannoReturn the full run record instead of the compact verdict. Default false.Example: false

What comes back

The compact verdict:

  • id, strategyId and status: queued, running, completed, failed or cancelled.
  • version: which version and configuration the run tested: its number, change note, configuration hash, parent and trial counts. Null for a run from before versions existed.
  • periodStart, periodEnd, dataThroughDate, initialCapital, benchmark and executionFeed.
  • metrics: return_pct, net_pnl, cagr_pct, max_drawdown_pct, sharpe, sortino, alpha_pct, beta, trades, win_rate_pct, profit_factor, expectancy, commission_paid, slippage_cost, borrow_paid, open_trades, open_pnl and avgBarsHeld. A metric the run does not carry is left out. Null until the run has a summary.
  • deflation: available, observedSharpe and configurationCount, with expectedMaxSharpe, deflatedSharpe, deflatedSharpeProbability, missing and trialSharpes when available, or a reason when not.
  • costModel: the costs the run assumed, in one sentence.
  • credits: one line: the credits charged, "No credits were charged for this run." or "Credits are settled when the run finishes."
  • error: code, message and sometimes a hint, for a failed run. Null otherwise.
  • honestyLabels, universeThinning and resultsReleased: present only when the record says so.
  • progress: present while the run is queued or running: the engine's progress (days, total, date and a short equity series) and engineStatus. Either may be null: progress is set only while the engine itself reports the run as running, and both are null when the engine could not be asked.
  • note: how to quote the numbers.
  • disclaimer: the backtest disclaimer, word for word.

With detail: true, the full run record with the same disclaimer.

Try saying

If it fails

No such backtest run in this project.
The id is wrong or the run belongs to another project.Claude takes the run id from run_backtest or from get_strategy.
Backtesting is not active in this project — turn it on under Settings → Apps in Orbital, then try again
The Backtesting app is off in the project you connected.In Orbital open Settings, then Apps, and turn Backtesting on for the project you connected.