Backtesting

Study historical outcomes under explicit assumptions

What Backtesting is

Backtesting evaluates a selected condition or strategy against available historical data and presents modeled outcomes. It helps you compare ideas, inspect individual historical cases, and identify where a rule was fragile.

Backtesting is not live trading. Results depend on the selected period, available observations, contract liquidity, pricing assumptions, and exit rules. They do not represent the fills, commissions, margin, taxes, or portfolio effects you would have experienced.

Availability: Vega plan.

Backtesting areas

The Backtests group in the sidebar (visible on Vega) contains four areas:

Area Purpose Path
Trade Ideas Replay an available Trade Idea model over a period and universe /backtest/trade_ideas
Strategies Model option strategies—presets or a custom package from the Builder /backtest/strategies
Chain Metrics Test entry/exit conditions built from historical chain measures /backtest/chains
Unusual Flow Test conditions based on historical unusual-activity events /backtest/flows

Every form shows the engine’s fixed assumptions in a Defaults card—starting capital, per-contract commission, slippage, position limit, and contract cap—so you know what the modeled results assume before you run. The available fields are the supported public controls and can evolve with the datasets, so trust the form over an old description of a parameter.

Create a run

  1. Open the relevant area from Backtests in the sidebar.
  2. Choose the stock (or, for trade ideas, the model and universe) offered by the form.
  3. Select a historical start and end date.
  4. Configure the visible condition, strategy, and risk controls—stop loss and take profit are optional on most forms.
  5. Review the assumptions shown on the page.
  6. Choose Start Backtest.

Runs execute in the background: you land on the result page immediately, and it updates itself every few seconds until the run completes or fails. The list pages show each run’s status (pending, running, completed, failed), and you can cancel a run in flight, delete a finished one, or—for trade ideas—Rerun with the same setup.

Options Trading Strategies

Strategy backtests model an option strategy over the chosen history: pick a stock and a strategy, then set the position size, a DTE window, and—for spreads and condors—widths and a minimum IV rank.

You can also build an exact package in the Options Strategy Builder and choose Backtest This Package to replay those specific legs from a real chain snapshot with a risk budget you set.

Exact historical contracts and prices depend on data availability. Read the run’s assumptions and any pricing warnings before comparing its output with another strategy.

Unusual Flow

Flow backtests start from historical activity that matched the selected flow type and filters—minimum score, premium, size or volume/OI thresholds, option type, sentiment, and execution side—held for a chosen number of days. Use them to study what happened after comparable events, not to assume that every large or unusual trade had the same intent.

Review how many events were eligible, how many could be evaluated, and whether results were concentrated in one symbol or market period.

Chain Metrics

Chain backtests let you define an entry condition and an exit condition from historical chain measures—volatility measures (IV rank, IV percentile, IV premium, skew, vol-of-vol), put/call ratios (volume, premium, open interest), aggregate Greeks (net gamma, net delta, total GEX), volumes, and advanced measures—each as metric, comparison, value. Then choose the traded option (call/put, ATM/OTM/ITM) and the risk controls.

Keep the first run simple. Test one primary condition over a broad enough period, inspect the individual outcomes, and only then add another filter. A highly specific rule can look strong because it produced very few observations.

AI Trade Ideas

Trade Idea backtests replay an available idea model over your selected window: choose the model, the universe (all eligible symbols, or specific symbols you pick), the date range, and any model-specific controls the form offers.

Use this area with the public Track Record:

  • The public Track Record provides a standardized, nightly transparency view by model cohort.
  • Your backtest explores the historical period and controls you selected.

The two can answer different questions and should not be expected to produce identical figures.

Read the results

Strategy, flow, and chain runs report Total Return, Win Rate, Max Drawdown, Sharpe Ratio, Profit Factor, and Expectancy, a performance card (wins/losses, total P&L, average win and loss, holding days, and further risk ratios), four charts—equity curve, drawdown, monthly returns, and P&L distribution—a full trade history table, and the run’s configuration. A warning banner appears when the run recorded pricing warnings or unpriced trades—review those before relying on the numbers.

Trade-idea runs report win rate, total signals, evaluated, wins, losses, and skipped, outcome charts by month, score band, and symbol, a per-symbol outcome table, and a signal outcomes table where each row is one replayed signal—its date, score, direction, best favorable move, and outcome, including the reason when a signal was skipped. Clicking a signal opens its price chart with the entry, target, and stop marked, plus the forward prices it was evaluated against.

Start with data coverage. A strong percentage based on a small or concentrated sample is less informative than a stable result across multiple periods and symbols, and skipped observations deserve their own look.

Compare tests responsibly

  1. Change one important input at a time.
  2. Compare multiple market regimes, not only the best recent period.
  3. Reserve a later period or different symbol set for validation.
  4. Inspect individual outcomes for data gaps and unrealistic assumptions.
  5. Treat skipped observations separately from wins and losses.
  6. Prefer a rule you can explain over one tuned to a historical chart.

Limitations

  • Historical coverage varies by symbol, contract, metric, and date.
  • Modeled execution can differ materially from a tradable fill.
  • Bid/ask spread, slippage, commissions, early assignment, exercise, dividends, borrow, and margin may not be represented exactly as they would be at your broker.
  • Corporate actions, halts, and changing market structure can affect comparability.
  • Repeatedly tuning a rule to the same data can overfit the past.

All backtest output is hypothetical and educational. Past performance does not guarantee future results.

Related: Historical Lab · Unusual Options Activity · Trade Ideas · Strategy Builder


Optionomics Documentation

Getting Started
Workspaces
Live Data
AI, Alerts, and Research
Daily Analytics
Historical Research
Mobile and Integrations

Optionomics Documentation