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
| Parameter | Type | Required | Description |
|---|---|---|---|
run_id | string | yes | The run id, a UUID. From run_backtest, list_strategies or get_strategy.Example: 0193c2b4-9e21-7a6c-8f3d-5b7a9c1e2d48 |
detail | boolean | no | Return the full run record instead of the compact verdict. Default false.Example: false |
What comes back
The compact verdict:
id,strategyIdandstatus:queued,running,completed,failedorcancelled.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,benchmarkandexecutionFeed.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_pnlandavgBarsHeld. A metric the run does not carry is left out. Null until the run has a summary.deflation:available,observedSharpeandconfigurationCount, withexpectedMaxSharpe,deflatedSharpe,deflatedSharpeProbability,missingandtrialSharpeswhen available, or areasonwhen 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,messageand sometimes ahint, for a failed run. Null otherwise.honestyLabels,universeThinningandresultsReleased: present only when the record says so.progress: present while the run is queued or running: the engine'sprogress(days,total,dateand a shortequityseries) andengineStatus. Either may be null:progressis 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.