Explore more topics
NexusTrade guide

Inspect an options backtest result

Trace an options backtest from entry signal to contract selection, filled orders and closing events. Review synthetic pricing, timing exclusions and drawdown.

As of 2026-10-10

Jump to a section

TL;DR

Trace an options test from its signal through contract selection, sizing, filled orders and closing events. Signals and order statuses are not separate completed trades. The worked SPY call opened January 2 and closed January 19, 2024, earning $1.51 after recorded commissions; it closed before expiration. Inspect adverse periods too: the exported full year curve declined 13.24%, versus 13.27% reported by the engine. Preserve selected contracts, pricing assumptions and event excerpts rather than attributing the annual result to one favorable trade.

Follow a recorded SPY call from entry to exit

Animation of the SPY Feb 2 $472 call's value at each session close from Jan 2 to Jan 19, 2024 against the $865.44 paid: it fell to $494.50 on Jan 5, recovered, and sold for $868.25, a $1.51 gain after $1.30 of fees.
The call lost 43% of its value by Jan 5, then recovered and sold for $868.25.
Show the table · 2 rows, 6 columns

Scroll sideways to compare all columns. Select a heading to sort.

2024-01-02 14:31:00SPY240202C00472000Buy to open1$8.6544$0.65
2024-01-19 14:31:00SPY240202C00472000Sell to close1$8.6825$0.65

A separate detailed run completed on 2026-10-10 with the same saved candidate, fixed dates and fees. It reproduced the lightweight result retained in the linked source record. The captured opening condition had SPY at $472.16, SMA50 at $461.57 and matching-position count 0. Both entry checks were true.

The first position opened on January 2 and closed on January 19, 2024, at 14 DTE. The time-exit close evaluation emitted 1 order. These are simulated Filled orders, not broker executions. The first position's P&L was $1.51 after recorded commissions, calculated from all its opening and closing premiums and quantities.

Compare the selected-candidate bid, ask and mid with the Filled-order premium. Follow the contract symbols and timestamps to connect selection, sizing and execution.

Inspect the adverse period as well as the first trade

The largest peak-to-trough decline in the exported 519-point history was 13.24%: $13235.24 on 2024-07-16 to $11483.00 on 2024-09-06. At the trough the exported position value was $0.00.

The engine reported maximum drawdown of 13.27%. That differs from the decline calculated over the exported history points. Explore the snapshots and events around this period to understand the change in portfolio value.

Show the table · 2 rows, 5 columns

Scroll sideways to compare all columns. Select a heading to sort.

2024-07-16 20:00:00$13235.24$11769.74$1465.50$12001.33
2024-09-06 20:00:00$11483.00$11483.00$0.00$11517.45

Calculate what this recorded trade earned

The displayed premiums changed from $8.6544 to $8.6825. For 1 contract with multiplier 100, ($8.6825 − $8.6544) × 100 − $0.65 − $0.65 = $1.51 after the two recorded commissions. This calculation uses the displayed rounded premiums. The contract closed before expiration, so an expiration-payoff formula would answer a different question.

Its opening checks were SPY above SMA50 and zero matching option positions. The complete source preserves those indicator values, selected contract, quote, fill and close. Compare the first trade with the full-year curve before attributing the whole return to this one position.

Explore the full curve

All 15 strategy examples include a completed 2024 backtest. Explore returns, drawdown, flat periods and capital deployed, then choose a trade or period to inspect. The calendar and diagonal examples executed no trades; their pages include the contract-resolution events.

Trace a position through the run

A signal is a condition evaluation, not a fill. A close signal can emit zero orders when no matching positions qualify. Pending, Accepted and Filled are stages of the same order; do not count them as three trades. Check spread grouping and every leg when inspecting a vertical.

Show the table · 6 rows, 3 columns

Scroll sideways to compare all columns. Select a heading to sort.

Entry conditionOpenOptionSignal and condition auditWas SPY above SMA50 and was the matching-position count zero?
Contract selectionOptionResolutionAttempt and leg auditWhich strike and expiration were requested, available and selected?
Size decisionOrder decisionRecordDid allocation, buying power or a liquidity bound limit quantity?
Simulated fillOrder with status FilledWhich side, contract, quantity, premium and fee were recorded?
Exit decisionCloseOptionSignal and its close evaluationsDid a trend or DTE rule qualify, and did it emit orders?
Closing fillFilled close ordersWere all intended legs closed and at which modeled prices?

Query one opening without the noise

The examples publish a captured first opening and its subsequent close. To inspect your own run, query a narrow date range. The tool returns recent events first and paginates; widen dates or request another page deliberately. Request raw data when the summary leaves out the decision fields you need.

JSON
{
  "backtest_id": "<your completed backtest ID>",
  "start_date": "2024-01-02",
  "end_date": "2024-01-02",
  "event_types": [
    "OpenOptionSignal",
    "OptionResolutionAttempt",
    "Order"
  ],
  "include_condition_audit": true,
  "raw": true,
  "page": 1,
  "page_size": 20
}

Keep pricing observations separate

Use the resolver's candidate bid, ask and mid to follow contract selection and sizing. A Filled order records the execution premium, and the history records portfolio value at each snapshot. Compare these records by timestamp, symbol and side.

To explore pricing in more detail, query the raw resolution and Order events for the same position and review their recorded fields.

Inspect an adverse period too

Each strategy guide identifies the largest decline in its exported history, separately from the engine's reported maximum drawdown. Inspect positions and exits around that period, including days when an expected opening did not occur. Check selector resolution, budget, liquidity limits and quote eligibility before assuming the trading rule did nothing.

Preserve event excerpts before the 3-day retention window ends. The saved public examples contain curated captures rather than links into a private account.

Continue exploring

Discussion

Sign in or create a free account to join the discussion.

No comments yet.

Aurora · AI research assistant

Try this in Aurora

Edit the request, then open it in Aurora. You choose when to send it.