How to Prepare Multiple MT5 Accounts for a German Tax Adviser: A Practical Year-End Checklist
If you do not want to assemble several MetaTrader 5 accounts manually from separate reports, spreadsheets, and conversion rates, MT5 Tax Control can help. This non-trading utility combines accessible MT5 accounts and complete historical HTML reports in one guided annual workflow and creates traceable records for further review and transfer to a tax adviser.
Even without a dedicated utility, it is worth following a defined process. A useful annual record is more than the final balance or a total of closed trades. It should show which accounts and sources were included, how the trading result was built, which cash movements are unrelated to trading, and how foreign-currency values were converted.
With several accounts, this preparation can easily consume many hours. A structured workflow can save substantial personal time. When a tax adviser is engaged, organized and traceable records can be handed over instead of unsorted raw data. Depending on the number of accounts, data quality, and the adviser's billing model, this may materially reduce billable preparation and follow-up work. Actual cost savings depend on the individual case and fee arrangement.
This article is written for English-speaking MT5 users with a German tax connection. It describes a technical data-preparation workflow. It is not tax or legal advice and does not determine the binding tax treatment of any transaction.
1. Define the scope of the year first
Do not begin by adding individual profits and losses. First define the complete data population:
- the calendar year being prepared;
- every MT5 account active during that period;
- accounts that are still accessible;
- old or closed accounts available only as reports;
- the account currencies used;
- any broker, server, or account-number changes during the year.
Create a simple account inventory and mark every source as available, incomplete, or missing. An annual total becomes meaningful only after the full population is known.
A common mistake is to look only at the accounts currently connected in the terminal. An account closed during the year may disappear from the current workspace even though its trades and cash movements still belong to the period under review.
2. Preserve unchanged source evidence
Keep an original source for every account. For an accessible account, this can be the history read directly from MT5. For an old or closed account, use a complete MT5 HTML account-history report.
A screenshot is not an equivalent replacement for a complete report. It normally shows only a section of the history, omits fields, and cannot be validated reliably later. A manually edited spreadsheet should never be the sole source either.
A clean archive therefore contains:
- the unchanged original report;
- an unambiguous account-and-year assignment;
- the export creation date;
- the analyses created from that source;
- a separate record of manual additions or decisions.
This keeps source facts separate from information added later.
3. Prevent duplicate sources
If the same account is read directly from MT5 and also imported from an HTML report, it can be counted twice. The same account-year population must enter the consolidated result only once.
At minimum, compare:
- broker or server;
- account number;
- account currency;
- covered period;
- number of entries;
- matching timestamps and values.
When a report structure is unclear, caution is better than an invisible assumption. An unknown column or incomplete export should be resolved before its values enter an annual total.
4. Separate own-account transfers from results
Moving money between two of your own MT5 accounts often creates a withdrawal on one account and a deposit on the other. Without reconciliation, they appear to be two unrelated external cash movements.
Potential counter-entries should be compared by date, amount, currency, comment, and participating accounts. Confirmed own-account transfers can then be documented as one connected movement and kept separate from the trading result.
The same principle applies to movements involving your own bank accounts or wallets outside the captured MT5 set. They cannot always be paired automatically, but they should be identified as own-fund movements when the underlying facts confirm this.
The factual separation matters: a deposit, withdrawal, or own-account transfer is not automatically a trading profit or trading loss.
5. Build the trading result from its components
The closing balance alone does not explain how a result was created. A traceable technical overview should keep the components visible:
- gross result from buy and sell transactions;
- commissions;
- swaps or financing costs;
- other trading-related fees;
- deposits and withdrawals;
- confirmed own-account transfers;
- other entry types.
Reconcile the totals per account and then across all accounts. If a consolidated number cannot be traced back to the individual entries, a source may be missing, an entry type may be misclassified, or a sign or currency may have been handled incorrectly.
6. Convert foreign-currency values to EUR traceably
For an account in USD, GBP, or another currency, storing only a final EUR amount is not enough. A conversion that can be reviewed later should retain at least:
- original amount and original currency;
- transaction date or relevant time;
- reference rate used;
- source of that rate;
- conversion direction and calculation path;
- resulting EUR value;
- treatment of a date without an available reference value.
The method required in a specific tax case must be assessed professionally. From a technical perspective, the important point is that the method remains visible and that every EUR value can be traced back to the original amount and rate source.
A single annual conversion rate may look convenient but removes the connection to individual entries. The more accounts, currencies, and booking days involved, the more important the complete calculation path becomes.
7. Review special entries separately
Not every account-history entry is a normal trade. Dividends, withholding tax, interest, corrections, credits, charges, and broker-specific entry types deserve a separate review list.
Do not rely only on a technical type label. Also inspect the description, comment, amount, currency, and context. If the source does not establish the facts clearly, the case should remain visibly unresolved instead of being forced into a convenient category.
An open status is not a weakness. It tells the later reviewer exactly where a professional decision or additional document is still needed.
8. Check completeness and reconciliation
Before releasing the records, perform a final control:
- Are all known accounts included?
- Is every account captured only once?
- Does each source cover the required year completely?
- Are deposits, withdrawals, and own-account transfers separated?
- Can gross result, commission, swap, and fees be reconciled?
- Does every foreign-currency value retain its rate source and calculation path?
- Have special entries been reviewed or explicitly marked as open?
- Do account-level totals agree with consolidated totals?
- Are original reports and generated tables archived together?
A sound process blocks release when differences remain unresolved. A warning that prevents an incorrect total is more valuable than a report that merely looks complete.
9. Create a useful handover package
A tax adviser should not have to reconstruct several terminal exports before review can begin. A clear package may contain:
- a readable annual report with account overview and consolidated reconciliation;
- machine-readable CSV tables for transactions and review steps;
- an overview of own-account transfers;
- documentation of foreign-currency conversions;
- a list of reviewed and unresolved special entries;
- the unchanged original sources;
- notes on scope, method, version, and creation time.
Assign an unambiguous version to every released state. If a missing report is added later or an open entry is resolved, create a new version without silently overwriting the previous archive.
Compact year-end checklist
- Define the year and every relevant account.
- Preserve complete, unchanged original sources.
- Check direct MT5 data and HTML reports for duplicates.
- Reconcile own transfers across accounts.
- Separate trading results, costs, and cash movements.
- Document foreign-currency values with a complete calculation path.
- Review special entries individually.
- Reconcile account-level and consolidated totals.
- Bundle a readable report, CSV tables, and original evidence.
- Release only a complete, versioned state.
If you do not want to build this workflow manually
MT5 Tax Control can support this technical annual workflow for multiple MetaTrader 5 accounts: combine accessible live accounts with complete historical MT5 HTML reports, prevent duplicate sources, reconcile own-account transfers, verify result components, convert individual values to EUR with documented ECB reference data, and create a versioned tax-adviser package containing a readable report, seven CSV tables, validation evidence, and original sources.
This removes a substantial part of the manual sorting, checking, and documentation work. It saves the user time and can give the tax adviser a better-prepared starting point, potentially reducing billable preparation effort depending on the case and billing arrangement.
The utility never trades or changes positions. Version 1.0 is limited to technical preparation for Germany, private assets, and the confirmed CFD rule path. It does not calculate personal total tax, replace tax or legal advice, create a DATEV posting batch, or transmit data to ELSTER. Professional classification and tax filing remain the responsibility of the user and their tax adviser.


