Education in research methods · Quantic Eagle operates only with its own capital. No client funds, investment advice or trading signals.
Maximum drawdown calculator from CSV
Open a CSV in your browser. It is a table saved as a text file; this tool needs dates and account values. The calculator finds the largest decline from a previous peak: the drawdown. It uses only the observations in the file; the account may have fallen further between them.
Equity is the total value of the account at a given time, including unrealised profits and losses on open positions. Balance excludes those unrealised results. Treatment of credit, fees and other components depends on the source. The tool uses the values you supply; it cannot reconstruct missing observations or verify how they were calculated.
Deposits and withdrawals: this tool accepts only series with no external cash flows. If you supply cash_flow, every value must be zero; a non-zero value stops the check or conversion. If the column is absent, you must confirm that there were no flows. Do not replace deposits or withdrawals with zeros to bypass this check: they require an adjustment method that this tool does not provide.
Why this restriction? Withdrawing €200 from a €1,000 account reduces its value to €800 even if no trade has lost money. Treating that fall as a 20% trading loss would confuse a withdrawal with trading results. This tool does not separate the two effects.
Your file stays in your browser. No account, server upload or email required.
Map your CSV columns · The False Green Museum
UTF-8 CSV, up to 5 MB / 50,000 observations / 64 columns. Columns: timestamp,equity; optional: balance,cash_flow. UTC timestamps with seconds; decimal points. Native MT5 HTML reports and proprietary exports are not supported directly.
Download the sample CSVThe horizontal axis follows observation order: equal spacing on the chart can represent unequal lengths of time.
Green: equity · Blue: balance · Horizontal axis: observation order
Not assessed by this tool
The file cannot show how far the account fell between observations, whether fees are missing or whether the values match broker records. A strong historical result may also reflect rules selected to fit those particular data (overfitting), or inputs that would only have arrived after the decision. These problems need checks beyond a drawdown calculation; the calculator does not give the strategy an overall grade.
The report contains dates and drawdown series. Review it before sharing.
Follow the calculation in the supplied sample
The invented sample starts at 100 units of account value. Its largest percentage decline runs from 101 on 3 January to 87 on 6 January 2026. On 7 January it reaches 102, exceeding the earlier peak. These are sample observations, not company returns.
| Observation (UTC) | Equity | Running peak | Drawdown |
|---|---|---|---|
| 2026-01-03 00:00 | 101 | 101 | 0% |
| 2026-01-06 00:00 | 87 | 101 | 13.86% |
| 2026-01-07 00:00 | 102 | 102 | 0% |
At each observation: drawdown (%) = (highest equity so far − current equity) ÷ highest equity so far × 100. Maximum drawdown is the largest of these percentages: (101 − 87) ÷ 101 × 100 = 13.86% in this sample. Balance never falls in the supplied file, so its drawdown is 0%.
The values between observations remain unknown. Download the complete sample and open it in the calculator to compare the reported 13.86% with this calculation.
Download the complete sample CSVTry files with a fault, too
The three invented CSV files below contain one fault each. Download a file and select it in the calculator; the check starts automatically. Each file includes cash_flow, so you do not need to confirm the absence of deposits or withdrawals separately. The calculator must stop and report the problem described below, without producing a numeric result.
- Timestamps out of order
The second observation precedes the first. The message must report equal or out-of-order timestamps. Check the source order and time zone before sorting or deleting rows.
- A deposit of 200
The second row contains cash_flow = 200. The message must report a deposit or withdrawal: the calculator cannot separate its effect from trading results. Do not replace 200 with zero to obtain a result.
- A non-numeric value
The second row contains equity = abc. The message must ask for a valid number. In a real file, retrieve the value from its source; do not invent one to pass the check.
For a check without faults, use the CSV from the preceding example: maximum equity drawdown is 13.86%. Rejecting a faulty file for the expected reason shows that this particular check is working.
Check for other errors your backtest may hide.
In the free lab, you can already compare programs that receive identical scores but buy different stocks, or examine a calculation using a price from the wrong session. The planned fieldbook explains how to design these comparisons and record their inputs, results and unresolved questions.
The fieldbook is in preparation. The resources on this website are free to use. You can request one email when the fieldbook is ready; no purchase or reservation is available.
Notify me when it is readyWritten by Quantic Eagle LTD · General education in research methods. About.