Trading performance analysis: find patterns and improve with data
A five-step method to analyse your MT5 or forex results, spot repeating patterns in your own trading and change one thing at a time.
A five-step method
Analysing your trading performance is not about finding one magic number. It is about asking the same few questions of your own data, in the same order, every time.
| Step | Question | How |
|---|---|---|
| 1. Clean the data | Is every trade in, with net results? | One row per closed position; add profit, commission and swap |
| 2. Measure the whole | How am I doing overall? | Win rate, average win and loss, profit factor, expectancy, max drawdown |
| 3. Slice it | Where do results differ? | Group by symbol, session, weekday, direction, size, plan followed |
| 4. Find patterns | What repeats? | Look for clusters: after losses, at certain hours, with larger sizes |
| 5. Change one thing | Did the change help? | Change one rule, trade it for a set number of trades, compare |
Step 1: clean the data
Make sure your history is complete and that each row is one closed trade, not one execution. In MT5 use the Positions view, and see how hedging and netting change the history. Use net results: profit plus commission plus swap.
Step 2: measure the whole
Calculate the headline numbers first: win rate, average win and average loss, profit factor, expectancy and maximum drawdown. The expectancy calculator and win rate, profit factor and expectancy explained help you read them together, and how to track drawdown in MT5 covers the last one.
Step 3: slice the data
| Slice | What you might find |
|---|---|
| By symbol | One market carries the profit; another costs you |
| By session or hour | You lose mostly in one part of the day |
| By weekday | A particular day is consistently weak |
| By direction | Buys and sells perform differently |
| By size | Your biggest losses are your biggest sizes |
| By plan followed | Rule-breaking trades lose more than the rest |
In Excel a pivot table does this in a minute: put Net result in Values and the slice in Rows. In Notion, group the trades view by the property and show the sum.
Step 4: find patterns in your own data
Patterns in your own trading are different from chart patterns. Look for behaviour that repeats:
- Trades opened minutes after a loss, often larger than normal; see how a journal helps with revenge trading.
- A drop in results late in the session or on Fridays.
- Winners cut short and losers allowed to run, shown by average win smaller than average loss.
- A setup you like that has a negative average result.
A hypothetical example: a trader groups a month of trades by hour and finds that half of the losses came from the last hour of the session, taken with a larger size. That is a specific rule to test, such as stopping an hour earlier or capping size late in the day. The numbers here are made up to show the idea.
Step 5: improve with one change at a time
- Pick the single biggest leak.
- Write one rule that addresses it.
- Trade it for a set number of trades, for example 30, and keep recording.
- Compare results before and after, using the same measures.
- Keep it if it helped; otherwise drop it and choose the next leak.
Pitfalls
- Small samples. A slice with eight trades tells you almost nothing. Wait for more data.
- Over-slicing. Cut the data enough ways and something will look significant by chance. Prefer patterns that make sense.
- Changing everything at once. You will not know what worked.
- Analysing only profit. A winning trade that broke your rules still reinforces a bad habit.
Make the analysis effortless
Steps 1 and 3 are mostly data handling, which is what a journal automates. AI Trading Journal keeps every closed MT5 position, with open and close time, size, prices and result, in your own journal on your PC (with an optional copy in your own Notion workspace), so slicing by session, symbol or size is a view away. You add the plan-followed and emotion fields; it keeps the rest complete. See the trading P&L tracker guide for the totals.
An honest note on privacy. Notion is itself a cloud service, so your trades do sit on Notion's servers, in your own workspace, under your own account and token. What AI Trading Journal removes is the extra middleman: there is no separate journal vendor holding your trades and no broker login sent to a website. No tool is risk-free, so protect your accounts, including Notion if you connect it, with a strong password and two-step verification.
This page is general education. It is not trading or investment advice and promises no results.
A worked slicing example (hypothetical)
Take 60 trades from one month, grouped by the hour in which they opened. The figures are made up to show the method:
| Opening hour (server time) | Trades | Win rate | Net result | Average result per trade |
|---|---|---|---|---|
| 08:00 to 10:59 | 22 | 50% | +$310 | +$14.1 |
| 11:00 to 13:59 | 21 | 43% | +$45 | +$2.1 |
| 14:00 to 16:59 | 17 | 29% | -$420 | -$24.7 |
The overall result is -$65, which looks like a neutral month. Sliced by hour, the picture is clear: the morning made money and the afternoon lost more than the month's whole result. That is a testable idea, such as 'stop trading after 14:00 for a month'. Notice also what the table does not say: with 17 trades in the last row, the sample is small, so the rule is an experiment, not a conclusion.
Is the pattern real? Three sanity checks
- Split the sample. Divide the month into two halves. If the afternoon lost in both, the pattern is more believable than if it lost in only one.
- Check the size. Look at the average lot size in the slice. A slice that loses because you traded larger is a sizing problem, not a time problem.
- Look for a reason. A pattern with a plausible cause, such as fatigue or a quieter market, is more likely to persist than one with no explanation.
Doing the slicing in a spreadsheet
- Put one closed trade per row, with net result in one column.
- Add helper columns for the hour of the open time, the weekday and whether the plan was followed.
- Insert a pivot table with the slice in Rows and the count and sum of net result in Values.
- Add the average by dividing the sum by the count, or by adding the average as a second value.
- Do one slice at a time. Combining three slices at once leaves too few trades in each cell.
The free template has the columns for this, and the export guide shows how to get the trades out of MT5 first.
Write down the question before you slice
Searching a dataset for any pattern at all will always turn something up. Start with a question from your own trading, such as 'do I lose more after a loss?' or 'does the afternoon hurt me?', and look at that slice. If you then find an unexpected pattern in a different slice, treat it as an idea to test on the next sample, not as a fact. Keep a short log of the questions you asked and what you found, so that your own analysis can be reviewed later.
Frequently asked questions
How do I analyse my trading performance?
How do I find patterns in my trading?
How many trades do I need for a reliable analysis?
Can I analyse MT5 performance automatically?
Related guides
- A local trading journal for MT5
- P&L calendar for MT5
- Trade notes, ratings and screenshots
- Trading progress and goals
- Back up your journal and move it to a new PC
- An offline trading journal for Windows
- How to set monthly trading goals
- Import your whole MT5 history
- How to tag trades
- Trade screenshots for your journal
- All trading journal comparisons
Start your analysis from complete, automatic data
Free for 7 days, no card required. After that, a one-time $19.99 purchase. No subscription. Also on the Microsoft Store.
One-time $19.99, no monthly fee · your MT5 login never leaves your PC · trades go into your own journal on your PC, not through our servers.
Start free 7-day trial