Simulation and research
Paper, Shadow and backtesting: compare the inputs before the result
Understand what each Citrine simulation tests, how fees and funding affect comparisons, and why hypothetical results differ from real execution.
In this article
Three simulations, three questions
A Paper session, a Shadow session and a historical backtest can all display a result in dollars. That shared unit does not make the experiments equivalent. The useful starting point is the question each one can help you investigate.
- Paper: how does a simulated session behave with a balance and allocation you choose while following current market data? It uses standard simulation fees and does not require an API key or subscription.
- Shadow: how does an account-aware simulated session behave? It starts from authenticated account inputs, including account-based funds and percentage-fee context, then runs its own simulation. It is not a live account mirror that places orders.
- Backtesting: what happened under specified historical inputs and assumptions? It replays eligible archived periods rather than waiting for the next real-time session. It replays history, rather than managing a live account.
None of these sends real orders. The published mode comparison explains their requirements; backtesting methodology describes what the historical simulation includes and omits. A simulation can reveal differences worth investigating without proving the fills a real account would have received.

Build a comparison worksheet
Before comparing two final balances, write down the experiment's inputs. Use the same worksheet for a saved backtest and for a forward simulated session:
- Product and period: contract, direction, start and end time, and timezone. A calendar date without a timezone can hide a different boundary.
- Funds and allocation: starting balance and the shared margin budget. More starting funds can change quantities; it is not merely a larger denominator for the same trades.
- Execution and costs: quantities, entry/exit times and prices, fee source, per-contract charges and slippage assumptions.
- Funding: included credits or debits, whether values are recorded or estimated, and coverage gaps.
- Accounting: closed trades versus open exposure, and whether the displayed result already includes particular costs.
Preserve the original exports and notes. If a discrepancy disappears only after changing several inputs, you have lost the ability to say which change explained it. Fix one comparison dimension at a time.
Count each cost once
Citrine's historical simulation models entry and exit fees, configured per-contract charges and slippage. It uses standard fees by default; an eligible cached account percentage-fee snapshot can be used when available. A cached snapshot does not reconstruct every charge that an account paid on every historical date.
Consider this invented arithmetic example, not a Citrine performance result or a universal screen formula:
- Gross closed-trade gain
- +$18
- Trading fees already included in the net result
- -$5
- Net closed-trade result
- +$13
- Separate included funding debit
- -$2
- Combined effect in this example
- +$11
Starting from the $13 net trade result and subtracting the $5 fee again would produce $6 after funding, which counts the fee twice. Conversely, ignoring the funding debit would report $13 for an effect that is $11 in this example. First establish the result's basis; only then reconcile separate components.
The handbook's cost-reconciliation discussion makes the same distinction: funding can be a separate accounting component, and a balance change need not equal one session's closed-trade total. An exchange statement, simulation export and account screen answer different accounting questions.
Read coverage before interpreting zero
A verified zero funding amount and unavailable funding data are not interchangeable. Historical runs use eligible recorded funding where available and may use qualified estimates captured from live observations, identified as estimates. Missing funding does not prevent a backtest, so a completed run is not evidence of complete funding coverage.
Similarly, eligible prior overnight margin observations may be carried forward for the same product; later-date information is not used to fill an earlier date. Check the run's coverage and assumptions before treating a difference as a strategy effect. Do not infer exact funding from the difference between rounded balances.
Recorded trades and one-second best bid/ask context offer more detail than candle closing prices alone. They still do not fully reproduce queue position, liquidation behavior or exchange interruptions. Better context does not turn a hypothetical execution into a historical receipt.
Check what drawdown samples
Suppose a hypothetical sampled balance rises from $500 to $530, then falls to $515. The decline from the prior peak is $15 even though the ending balance remains $15 above the start. Neither the net gain nor the worst individual trade alone describes that path.
Citrine's published backtesting explanation measures maximum drawdown at recorded trade exits and the end of the run. That sampling can miss an intratrade low. It is not a continuously marked loss limit, a guaranteed worst-case live loss, or evidence that a stop would have filled at a particular price.
Use disagreement as a research question
When two runs differ, compare quantities and timestamps before debating the headline return. A quantity difference can explain much of the result; a boundary difference can introduce another entry, exit or funding event. Then examine execution prices, costs, funding and any still-open exposure.
Include less favorable periods in the comparison and keep the input choices consistent. A single attractive period does not validate a trading approach, and neither a good Paper session nor a historical result establishes future performance. The useful outcome is a clearer account of assumptions, not a promise.
Sources and further reading
Product facts: Citrine backtesting methodology and mode comparison. Public handbook: Reading backtests, fees and funding, reviewed September 29, 2026. All numeric examples in this article are newly invented arithmetic, not customer data or measured returns.
For a confusing result, use protected support with the mode, dates, timezone and a concise description. Do not publish a full account export.