# Backtesting

> What a strategy, a version, a run and a forward test are, how the Strategies list, the strategy page and Compare are laid out, and where results live.

Source: https://orbitalaip.com/docs/backtesting/overview

> [!IMPORTANT] Disclaimer
> Backtest results are hypothetical and do not predict future performance. Nothing here is investment advice: Orbital computes the rules you supplied and recommends nothing. Orbital is not a registered investment adviser or broker-dealer. Costs are as modelled by the chosen cost profile and may differ from live trading.

## What Backtesting does

Backtesting replays a [strategy](https://orbitalaip.com/docs/glossary#strategy) over past sessions and reports what it would have done: an equity curve, a set of figures and a trade log. Open it from **Backtesting** in the sidebar, at [https://app.orbitalaip.com/backtesting](https://app.orbitalaip.com/backtesting).

Four things live here:

- A strategy is a saved workflow that Backtesting tracks. Its [rule cards](https://orbitalaip.com/docs/glossary#rule-cards), its [program](https://orbitalaip.com/docs/glossary#program) in Rust, or a list of signals supplied to a run decides what it trades.

- A [version](https://orbitalaip.com/docs/glossary#version) is a numbered snapshot of a strategy's nodes and code: v1, v2 and so on. One version carries the [Main](https://orbitalaip.com/docs/glossary#main) mark. A run's settings, such as capital, costs and benchmark, are recorded with the run, so one version can be tested under several settings.

- A run is one [backtest](https://orbitalaip.com/docs/glossary#backtest) of a version over a period. Every run is kept.

- A [forward test](https://orbitalaip.com/docs/glossary#forward-test) freezes a completed run and re-runs it through each newly settled session, on the same chart and trade list.

Build your first strategy in [Your first strategy](https://orbitalaip.com/docs/getting-started/your-first-strategy) and run it in [Your first backtest](https://orbitalaip.com/docs/getting-started/your-first-backtest).

The Backtesting app must be on in the project. If the page reads **Backtesting is turned off in this project**, click **Manage apps in Settings**. See [Apps](https://orbitalaip.com/docs/workspace-and-account/apps).

## Saving a strategy enrols it

There is no separate step that creates a strategy. Save a workflow whose graph qualifies and Backtesting lists it at once. A graph qualifies when an **Entry Rule** or **Program** node decides and an **Output** node declares the columns symbol, action and asOf. Backtesting also lists a graph decided by a trading **Agent** node. The strategy takes the workflow's name and follows it when the workflow is renamed.

A new strategy is a **Draft**. It becomes **Tested** when its first backtest completes. Once listed, a strategy stays listed whatever later edits do to its graph; each run judges the graph it is given.

**New strategy** at the top right opens a menu with **Write code**. It creates a workflow named **Untitled code strategy** and opens the code editor on its **Program** node. A project with no strategies shows two cards in place of the list. **Describe it** sends your description to Chat with **Draft and test it**. **Write code** does the same as the menu item, from **Open the code editor**.

## The Strategies list

**Strategies** is the home view. A line at the top right says how far the daily and minute data reach.

Filters sit above the list: **All**, **Paper**, **Tested** and **Draft**, each with its count. **Search strategies**, a sort menu, **Columns** (**Simple** or **Full**) and **List** or **Gallery** follow.

Each row shows the name, the version and a line such as **Rules · Daily · SPY · 2020-01 → 2024-12**. The columns are **State**, **Trend**, **Return**, **Max DD**, **Profitable trades** and **Last run**; **Full** adds **Alpha/yr** and **Evidence**. **Evidence** shows the [deflated Sharpe ratio](https://orbitalaip.com/docs/glossary#deflated-sharpe-ratio); see [Avoiding overfitting](https://orbitalaip.com/docs/backtesting/avoiding-overfitting#the-deflated-sharpe). A page holds 50 rows.

Hover a row for a run button and a menu with **Run…**, **Code** or **Workflow**, and **Delete…**. Tick rows to open a tray with **Compare**, **Run again…** when one row is ticked, and **Delete…**.

Strategies that have never run are folded into a group at the foot, such as **15 drafts, not run yet**. Open it to see each one with **Run first test…**.

### Gallery and Map

**Gallery** shows a card per strategy with its curve against the benchmark; **Scale** sets **Each** or **Shared**. In the list view, **Map** plots return per year against deepest drawdown, and a dot opens its strategy. See [Gallery and map](https://orbitalaip.com/docs/backtesting/manage-and-delete-strategies#gallery-and-map).

## Strategy tabs

The strip across the top holds **Backtesting**, a tab for each strategy you have opened, up to eight, and a **+** that opens **Find a strategy**. Each tab shows a state dot and the version tag. Tabs are remembered in your browser. In the **+** menu, **Close other tabs** keeps the tab on screen and closes the rest; on the Strategies list it reads **Close all tabs**.

## The strategy page

A strategy's page has four views, **Overview**, **Report**, **Trades** and **Runs**, and **Workflow** or **Code** opens the editor. Its actions are **Run…**, **Cancel run…** while a run is in flight, and **Make main** under **More actions**. A completed run of a Rules or Program strategy also offers **Forward test…**, unless a forward test is already running. See [The strategy page](https://orbitalaip.com/docs/backtesting/reading-results#the-strategy-page).

## Compare

**Compare** puts up to 20 strategies on one chart, rebased to 100 on the first day they all have data, with a **Drawdown** pane under it. A table of each run's figures and **Correlation of daily returns** follow. Compare opens once a strategy has a completed run. See [Compare strategies](https://orbitalaip.com/docs/backtesting/manage-and-delete-strategies#compare-strategies).

## Deleting a strategy

**Delete…** moves the strategy's workflow and its runs to Trash. Restore it within 30 days from **Settings** → **Trash**, or click **Undo** on the toast. See [Manage and delete strategies](https://orbitalaip.com/docs/backtesting/manage-and-delete-strategies).

From Claude or ChatGPT

- "List my strategies and their latest backtest results."
- "Run my golden-cross strategy over the last three years."
