Five kinds of result

StateUsesCan establishCannot establish
SimulationConstructed scenariosRule behavior under specified assumptionsHistorical or live market performance
Historical backtestRecorded past dataPast-data result under the model and cost assumptionsFuture performance or actual fills
Paper/testnetCurrent or test data, no equivalent production capitalWorkflow, integration and decision behaviorProduction liquidity, impact and capital risk
Shadow modeLive market data without ordersReal-time signal and control behaviorActual execution or realized P&L
LiveProduction orders and capitalObserved result for that account, period and sizeFuture returns or results at larger scale

A dashboard needs a denominator

“40% return” is incomplete without capital, dates, cash flows, costs, benchmark, drawdown and whether the number is annualized. APY can magnify a short observation window into an unstable annual figure. The calculation method must remain close to the number.

Backtest quality checklist

  • Data existed and was available at the decision timestamp
  • Asset universe includes delisted and failed assets where relevant
  • Parameters were not selected using the reported test interval
  • Fees, spreads, slippage, funding and borrow are included
  • Order size respects historical market depth
  • Drawdown and adverse regimes are visible
  • Results are compared with a simple baseline

Live-result quality checklist

  • Account and observation period are defined
  • Deposits, withdrawals and strategy changes are visible
  • Returns are net or gross with costs stated
  • Open positions and unrealized P&L are handled consistently
  • Maximum drawdown and exposure accompany return
  • Verification scope and independent access are explained

The same instructions, three execution models

All three examples below are simulations with invented prices and events. None is a historical backtest or a live account. Each starts with $1000.00, requests a purchase of five units, and later requests the sale of the acquired position. Fees are 0.1% of each filled notional. At 2026-09-08T12:02:00Z, any remaining unit is valued at $104.00. There are no deposits, withdrawals, borrow costs or leverage.

Reference-price fills

TimeActionRequested unitsFilled unitsFill price
12:00:00 UTCbuy55$100.00
12:01:00 UTCsell55$104.00

Delayed-price fills

TimeActionRequested unitsFilled unitsFill price
12:00:01 UTCbuy55$101.00
12:01:01 UTCsell55$103.00

Constrained partial fills

TimeActionRequested unitsFilled unitsFill price
12:00:01 UTCbuy53$101.00
12:00:02 UTCcancel20—
12:01:01 UTCsell32$103.00
12:01:02 UTCcancel10—
ModelCashInventory at final markFees paidEquityNet change
Reference-price fills$1018.980 units / $0.00$1.02$1018.98$18.98
Delayed-price fills$1008.980 units / $0.00$1.02$1008.98$8.98
Constrained partial fills$902.491 units / $104.00$0.51$1006.49$6.49

Equity is cash plus marked inventory. Net change is equity minus the original $1,000, with fees already deducted from cash. Do not subtract execution shortfall again: the changed fill prices already capture it here. Calculations retain thousandths of a dollar; displayed totals round to cents. The partial-fill model therefore ends with $902.491 cash plus $104 inventory, not a fully realized $6.491 return. The remaining unit still carries price risk and would incur another fee if sold.

Cancelling an unfilled remainder is not a sale. The example makes cancellation explicit so an outstanding order cannot silently fill after the valuation time. Real order-state behavior must be checked against the venue: Coinbase documents its order events and remaining quantities. The system recovery guide explains why local state alone is insufficient. Short-horizon models such as AI scalping can be particularly sensitive to the difference between assumed and executable fills.

What would make this live evidence?

A real comparison needs the account and observation period, timestamped order and fill records, fee records, cash flows, open positions and a consistent final mark. It also needs the strategy version and inputs available when each decision was made. A deposit increases account value without being trading profit. A screenshot of ending equity cannot establish that record by itself. These tables illustrate the calculation only; they do not supply those missing records.

How to read a performance page

Preserve the evidence label attached to every number. A backtest remains a backtest when it appears on a polished product page, and a live result remains limited to its named account, dates and capital. If the status changes, the explanation should change with it instead of carrying an old interpretation forward.

Related reading

See how these evidence problems appear in crypto algorithmic trading, where historical assumptions meet live order handling. The trading-bot guide maps the full path from a signal to a fill, while the AI scalping guide explains why small simulated edges are especially sensitive to fees, latency and queue position.

Sources