Decentralised News Research · AI trading evidence
A bot dashboard says “+$600.” The account balance has risen. Neither observation answers the question that matters: how much did the strategy actually make after its costs, open losses and changes in capital?
Our guide to red flags behind 95% win-rate advertisements explains how attractive statistics can conceal poor economics. This guide takes the next step: rebuild the result and identify anything the records cannot explain. The DN reconciliation worksheet below works with figures you already have; it requires no wallet connection or API key.
1. Define the account before calculating the result
Write down the account or wallet boundary, reporting currency, start timestamp and end timestamp. Include the timezone. A trading subaccount, an entire exchange account and a portfolio spread across venues can produce different answers without any arithmetic error.
A transfer into one measured subaccount is an external contribution to that subaccount. If the measurement includes both the sending and receiving accounts, the same transfer is internal and cancels. A transfer fee still needs accounting. Moving collateral between wallets must not become “trading revenue.”
Use equity: the account’s assets and marked positions less relevant liabilities, under a consistent valuation policy. A cash or wallet balance may exclude open-position losses. Record opening positions and their valuations even if the bot opened them before your reporting period. Otherwise, closing an old position can make the current period inherit gains or losses earned earlier.
Also define which costs belong to the period. A monthly subscription can be allocated consistently; a shared research service should not be silently charged in full to several bots.
2. Ask for records that answer different questions
The most useful evidence package contains several complementary records. Each should cover the same boundary and dates.
| Record | Useful evidence | Remaining limitation |
|---|---|---|
| Account statements and snapshots | Opening and closing equity, positions, assets and liabilities. | Two snapshots cannot show the path between them. |
| Execution or fill history | Executed prices, quantities, identifiers and itemised charges where supplied. | An order can have several fills; a copied file can be incomplete or altered. |
| Cash and transaction ledger | Deposits, withdrawals, funding, fees, interest and other balance changes. | Field names and signs require interpretation. |
| Position and valuation history | Open exposure and the prices used to mark it. | A valuation is not necessarily an executable exit price. |
| Bot decision logs | Strategy versions, instructions, interventions and links to orders. | Logs alone do not authenticate trades or establish causation. |
| Dashboard screenshot | What a particular screen displayed. | Does not establish completeness, costs or independent provenance. |
For a concrete documentation example, Coinbase’s List Fills endpoint describes identifiers, timestamps, price, size, commission and pagination. Those are useful reconciliation ingredients, not a certification of any third party’s performance.
Request every relevant page and date interval. A first-page export may omit older losses; a product filter may omit a second market. Preserve the original export, retrieval date and transformation notes. Keep account identifiers private when sharing the analysis.
3. Calculate the account result independently
The first calculation starts with the account, not the bot’s profit counter:
Deposits and withdrawals mean capital crossing the defined boundary. Value in-kind contributions consistently when they enter. Do not classify trading income, earned funding or rewards as investor deposits simply because they increase a balance.
This calculation produces a monetary result for the period. It already reflects costs charged inside the account, provided equity and capital flows are correct. Deducting those same fees again would understate performance.
Account profit is also broader than bot profit. Interest, promotional credits, unrelated manual trades or collateral appreciation can improve the account result. Identify them separately before attributing the result to the bot.
CFA Institute’s GIPS handbook explains why performance calculations distinguish external capital flows from investment outcomes and account for transaction costs. This worksheet applies that accounting distinction; it is not a claim of GIPS compliance.
4. Rebuild the result from the ledger
Now calculate the same result through a second route. Start with realised trading P&L before charges that you will itemise separately. Add the change in unrealised P&L, signed funding and other explained account effects; subtract expenses that are not already included.
There is no universal meaning of a platform’s “realised P&L” field. Map its definition first. If it already includes funding or commissions, either use that inclusive figure or separate its components. Never do both.
Bybit’s transaction-log documentation illustrates why signs matter: positive funding means received funding, while a positive trading fee means an expense. Its cashFlow field can include settlements or transfers and excludes trading fees and funding. The documented relationship is change = cashFlow + funding − fee.
A funding payment of $40 therefore enters a signed-funding column as −$40. A separately recorded $180 trading expense enters the expense column as +$180 and is subtracted. Label these conventions beside the worksheet, not in a distant footnote.
Collateral needs similar care. Holding BTC as collateral can change USD equity even without a new trade. Record that valuation effect only if it is absent from the other components. Explain its price source and timing. Never invent an “FX adjustment” to make the totals agree.
5. Worked example: +$600 becomes −$550
Synthetic DN exercise: all figures below are fictional, in US dollars, for one reporting period. The account has no opening unrealised P&L, no borrowing cost, no unrelated income and no collateral-currency adjustment.
| Account item | Amount | Interpretation |
|---|---|---|
| Starting equity | $10,000 | All measured capital at the start. |
| Additional external deposit | $1,000 | New capital, not earnings. |
| Closing wallet balance | $11,380 | Before the remaining open-position loss. |
| Closing unrealised P&L | −$900 | Included once in closing equity. |
| Ending equity | $10,480 | $11,380 − $900. |
| Account result | −$520 | $10,480 − $10,000 − $1,000; no withdrawals. |
| Performance component | Contribution |
|---|---|
| Realised trading profit before separate charges | +$600 |
| Change in unrealised P&L: −$900 minus $0 | −$900 |
| Trading fees | −$180 |
| Funding paid | −$40 |
| Ledger result, matching the account result | −$520 |
| Period’s bot subscription, paid outside the account | −$30 |
| Result including that external operating expense | −$550 |
The dashboard’s $600 can be an accurate description of realised gross gains while being an incomplete description of performance. The $900 open loss belongs in marked equity even though it has not been realised. The $1,000 deposit explains why equity increased despite a trading-period loss.
The external subscription changes the economic result to −$550. It does not change the exchange account’s reconciled −$520 result. Keep those two outputs labelled separately.
DN P&L Reconciliation Worksheet
Copy these rows into your own working notes. Enter a value and a source reference for each applicable item. Mark unavailable evidence as “missing,” not zero.
| Step | Record or calculate | Required check |
|---|---|---|
| Scope | Accounts, currency, timestamps, timezone, strategy version. | Every record uses the same boundary. |
| Equity | Opening and closing equity, including positions and liabilities. | Document valuation sources and opening exposure. |
| Capital | External deposits and withdrawals. | Separate transfers from income and expenses. |
| A: account result | Closing equity − opening equity − deposits + withdrawals. | Do not subtract account-paid charges again. |
| B: ledger result | Realised P&L + change in unrealised P&L + signed funding − separate fees − borrowing costs + explained other effects. | Check field definitions, signs, coverage and duplicates. |
| Residual | A − B. | Explain any difference against source records. |
| Outside costs | Period’s attributable expenses paid outside the account. | Deduct once from the reconciled account result. |
| Conclusion | Account outcome, external costs, attribution limits and unresolved items. | State exactly what the evidence establishes. |
Check 1: Have fees or slippage been counted twice?
Actual-fill P&L already uses executed prices. A benchmark estimate of slippage can explain execution quality, but subtracting it again from those prices generally duplicates the effect. Check whether reported P&L already includes commissions, funding or other charges before adding separate deductions.
Check 2: Does unrealised P&L cover both endpoints?
If opening unrealised P&L was −$200 and closing unrealised P&L is −$900, the change is −$700. Using −$900 would wrongly charge the earlier $200 loss to this period. Realised settlements and position valuations must also use compatible accounting definitions.
Check 3: Are the records complete?
Confirm date windows, pagination, account migrations, product filters and settled versus pending events. Deduplicate by stable identifiers appropriate to the source. Do not count the same execution once from a fill export and again from a transaction ledger.
Check 4: Is a credit really bot-generated profit?
Label rewards, rebates, interest, manual activity and collateral appreciation separately. Decide how each belongs in the reported account result and in any narrower strategy result. A reconciled account can still contain income the bot did not generate.
6. Investigate the residual before accepting the story
Define the residual as account result minus ledger result. In the synthetic example, −$520 minus −$520 equals zero.
Now imagine the ledger says −$480 while the account still says −$520. The residual is −$40: the account is $40 worse than the reconstructed ledger. An omitted $40 funding payment could explain it, but so could a timing mismatch or another charge. A plausible explanation is not a resolved discrepancy until a record supports it.
Investigate boundary and timestamp mismatches first, then missing pages, duplicated events, signs, opening positions and valuations. Set any rounding tolerance in advance using the reporting precision and conversion method. “Close enough” cannot be a percentage chosen after seeing the gap.
Report one of three outcomes: reconciled within the stated tolerance, unreconciled with an identified difference, or insufficient records. Zero residual proves internal agreement only; two fabricated records can agree.
7. Keep profit, return, risk and AI attribution separate
A dollar profit is not a percentage return. Dividing profit by starting equity can mislead when capital enters or leaves during the period. Time-weighted and money-weighted approaches answer different questions; implementing them requires additional cash-flow timing and valuation decisions. This worksheet intentionally stops at monetary reconciliation.
Nor can two endpoint snapshots establish maximum drawdown. You need a sequence of comparable, cash-flow-adjusted valuations and a stated observation frequency. CME’s discussion of evaluating trading managers explains how monthly reporting can conceal larger losses within the month. Daily observations can likewise miss intraday extremes.
AI attribution requires a further evidence chain: which model or deterministic rule produced each decision, which strategy version was active, whether a human intervened, and how the decision maps to an executed order. Verified trading profits do not establish that AI caused them.
Finally, “live” can describe a running simulation. NFA’s hypothetical-performance guidance warns about simulated results being presented with ambiguous “live” or “real-time” labels. Ask whether actual money was exposed, and preserve that distinction when comparing with paper-trading experiments.
DN Alpha Thesis
A credible performance claim should survive reconstruction. The useful next question after “What is the win rate?” is “Can the account, positions and ledger explain the same net result?”
Use the DN pre-deposit claim-verification guide for the broader due diligence, and Pathfinder to explore your requirements. Neither a reconciled worksheet nor a platform selection removes trading risk. The CFTC’s AI-bot advisory specifically urges readers to consider fees, spreads and subscription costs when assessing return claims.
Frequently asked questions
Can a bot show positive profit while the account loses money?
Yes. Realised gains may exclude open losses, funding, fees or other costs. Deposits can also raise a balance without creating profit. Reconcile total equity and external capital flows before interpreting the dashboard.
What is the basic account P&L formula?
Ending equity minus starting equity minus external deposits plus external withdrawals. Use the same account boundary, currency and valuation method throughout. Charges already reflected in equity must not be deducted a second time.
Should I subtract slippage from actual trade P&L?
Actual-fill P&L already reflects the execution prices. A separately estimated slippage figure usually describes the difference from a benchmark. Subtracting it again can double count that difference.
Does a zero reconciliation difference verify the bot?
No. It shows that the supplied accounting paths agree. It does not authenticate the records, prove completeness, establish AI involvement or predict future returns.
Can I calculate maximum drawdown from starting and ending equity?
No. Maximum drawdown requires a valuation history, a consistent treatment of capital flows and a stated sampling frequency. Two endpoint values cannot reveal losses and recoveries between them.
Does this worksheet require account access or an API key?
No. This is a static worksheet using figures you record in your own notes. Do not send passwords, private keys, seed phrases or API secrets to DN to complete it.
Methodology, limitations and disclosure
DN reviewed the six sources below and constructed the fictional example independently. The worksheet is an accounting aid, not an independent audit opinion or a tax calculation. Missing records, inaccurate marks, mixed currencies and misleading source files can invalidate its interpretation even when arithmetic is correct.
Documentation links are neutral references, not platform endorsements. DN may have commercial relationships elsewhere on the site; this article contains no affiliate signup links and makes no platform ranking. Editorial conclusions are not conditioned on referral revenue.
Change log: 19 October 2026 — initial research, worksheet and synthetic example prepared. Corrections: contact press@decentralised.news with the affected section and supporting evidence, excluding private account credentials.
Primary sources
- CFTC: customer advisory on AI trading bots — return claims and the impact of costs.
- NFA: Interpretive Notice 9025 — limitations and presentation of hypothetical performance.
- Coinbase: List Fills documentation — execution records and pagination.
- Bybit: Get Transaction Log documentation — cash flows, funding and fee conventions.
- CFA Institute: GIPS Standards Handbook for Asset Owners — capital flows, valuation and performance calculations.
- CME Group: evaluating trading managers — drawdown depth, duration and observation frequency.






