EdgeVeris
Menu

FREE TOOL · FIXED-LEDGER ACCOUNTING

What did your backtest
really keep after costs?

Reconcile futures fees and slippage across different trade sizes. Start with the example, or audit your own closed-trade ledger locally. Already-net results are never charged twice without an explicit cost reconstruction.

Published · Model 1.0.0 · USD accounting

6 closed trades10 round-turn contracts$900 gross P/L$150 modeled costs$750 net P/L

The preloaded six-trade example is synthetic. These fees and slippage are hypothetical assumptions, not broker quotes or observed fills.

Your closed-trade ledger

One row = one completed trade. Quantity can differ on every row.

P/L is the USD total for the entire trade, not a value per contract. Do not multiply it by quantity again.

quantity,pnl is required. Use whole contract quantities and plain decimal numbers. Maximum 10,000 rows, 1 MB file, 8 decimal places. No thousands separators. Only fully closed, matched entry/exit quantities are supported.

Cost scenario inputs

Contract units

Use one contract specification and one USD accounting currency per audit.

Tick value must equal point value × tick size. Leave the tick-value check empty to derive it. The example uses 20 × 0.25 = 5 USD per tick. This is an editable contract-unit example, not an instrument recommendation.

Fees and slippage

Enter combined commission, exchange and other per-contract fees once. No extra fee category is silently added.

Comma-separated non-negative values. Up to 12 scenarios, including baseline 0. For example, “1” adds one extra tick on entry and one on exit per contract. Fractional ticks represent average scenario assumptions, not valid individual exchange fills.

No signup. No trade upload. No input saved.

The synthetic example below is available without JavaScript. Enable JavaScript to audit your own input.

THE RECONCILIATION

Where gross becomes net

6 trades · 10 round-turn contracts · USD

Gross P/L$900.00
Commission & fees$50.00
Slippage drag$100.00
Net P/L$750.00

$900.00 gross − $50.00 fees − $100.00 slippage = $750.00 net.

P/L in each input row is the USD total for that closed trade, not a per-contract value.

Total modeled cost
$150.00
Cost per closed trade, rounded mean
$25.00
Cost per round-turn contract, rounded mean
$15.00
Cost ÷ positive gross P/L
16.67%
Continuous extra-slippage break-even, per side
7.5 ticks

The percentage uses total pre-cost P/L only when it is positive. Break-even is a continuous, unrounded cost threshold for extra equal slippage on each side. It can differ slightly from the cent-rounded ledger crossing. It is not an execution forecast.

How much extra slippage can this ledger absorb?

6 fixed closed trades, 10 round-turn contracts. 6 hypothetical extra-slippage scenarios. Net P/L falls from $750.00 to $450.00. Exact values follow in the table.

Net P/L (USD)

Net P/L by additional slippage, fixed trade ledger$0$75001.53Extra slippage (ticks per side per contract)Net P/L (USD)

Extra slippage (ticks per side per contract)

Same trades and quantities, different additional slippage. All money values in USD.
Extra ticks / sideFeesTotal slippageTotal costNet P/L
0$50.00$100.00$150.00$750.00
0.25$50.00$125.00$175.00$725.00
0.5$50.00$150.00$200.00$700.00
1$50.00$200.00$250.00$650.00
2$50.00$300.00$350.00$550.00
3$50.00$400.00$450.00$450.00
Inspect the per-trade accounting

Only 50 rows render at a time. Input P/L is not multiplied by quantity. All money columns are USD.

Row-level ledger reconciliation
TradeContractsInput P/LGross P/LFeesSlippageNet P/L
11$250.00$250.00$5.00$10.00$235.00
22−$120.00−$120.00$10.00$20.00−$150.00
33$480.00$480.00$15.00$30.00$435.00
41−$85.00−$85.00$5.00$10.00−$100.00
52$310.00$310.00$10.00$20.00$280.00
61$65.00$65.00$5.00$10.00$50.00
Trades 1–6 of 6
Audit assumptions and rounding

Point value 20 USD/point/contract × tick size 0.25 points = 5 USD/tick/contract. Fees are 2.50 USD per contract on entry and 2.50 on exit. Slippage is one tick per contract on each side. Trade P/L and combined per-trade fee and slippage components are rounded to USD cents, half away from zero. Totals sum those rounded cents.

The summary download contains aggregate results, scenario inputs and conventions, but no trade rows. Review it before sharing. Aggregates can still be private. The tool does not save it automatically.

The accounting, in inspectable steps

1. Resolve units before deducting anything

Tick value = tick size in points × USD point value per contract. A quantity of 3 means three matched entry/exit contract pairs. It does not mean six round turns. At 5 USD per tick, one adverse tick on each side costs 10 USD per round-turn contract, or 30 USD for that trade.

2. Count fees once

Per-side mode adds entry and exit fees, then multiplies by that trade’s quantity. Round-turn mode multiplies its already-combined fee by quantity only once. Include broker, exchange and other per-contract charges in that fee rather than entering the same charge twice.

3. Separate an estimate from a recorded net result

For gross inputs, net = gross − fees − slippage. For known-net inputs, reconstructed gross = input net + declared included fees + declared included slippage. The new scenario then replaces those costs. Unknown-net mode preserves the net ledger without inventing its gross return or included costs.

4. Hold the ledger fixed

For extra slippage δ ticks per side and total round-turn quantity Q, the continuous additional cost is 2 × Q × tick value × δ. The chart recalculates per-trade rounded slippage at each selected δ. Trade count, timing, size and gross P/L do not change across scenarios.

A known-answer example you can reproduce

The six preloaded rows have 900 USD gross P/L and 10 round-turn contracts. Fees of 2.50 USD per side produce 50 USD total fees. One tick of slippage per side at 5 USD per tick adds 100 USD. Net P/L is 750 USD. One additional tick per side consumes another 100 USD. Before cent rounding, the remaining break-even allowance is 750 ÷ (2 × 10 × 5) = 7.5 additional ticks per side.

Download the exact synthetic input CSV. No market history or customer trade data is included.

Where this calculation stops

This is a cost audit of a fixed closed-trade ledger, not a backtest execution engine. It does not predict actual fills, spreads, queue position, market impact, latency, partial fills, new entry opportunities or account-margin effects. If different costs change position sizing or strategy decisions, rerun the strategy. Do not use the fixed-ledger result as that replay.

One row must have the same closed quantity on entry and exit. Partial exits must first be normalized into matched closed lots without repeating P/L or fees. Multi-currency conversion, open positions, rebates and monthly fixed charges are not modeled. If your net ledger uses another P/L reference or an undocumented slippage benchmark, do not label its included slippage as known.

Precision and privacy

Decimal inputs are calculated as exact rational numbers. Each trade’s P/L and combined fee/slippage component rounds to USD cents, half away from zero. Totals sum those cents. Average costs display two decimal places, while the continuous break-even threshold displays up to eight. Your broker may round at a different level, so reconcile against its own statement convention.

Calculation runs in a dedicated browser worker. No trade upload, account, analytics event, URL parameter or browser storage is used by this tool. The editable ledger is cleared when you leave. The app has a 10,000-row and 12-scenario limit, cancellation, and a 15-second timeout.

Cost accounting is necessary, but not sufficient. Continue with the strategy validation framework to connect execution assumptions, selection risk, OOS and path-risk evidence.

This calculator starts with a closed-trade ledger. For the assumptions that created it, inspect the futures backtesting guide to contracts, sessions, rolls and bar fills. Its worked example reconciles this same synthetic ledger row by row.