Trading Journal: What to Record, How to Review It, Free Template
What to record in a trading journal, how to compute R and expectancy from 10 sample trades, a weekly review routine and how many trades you need. CSV included.
- Write the plan before you enter (entry, Stop loss, Take profit, lot and risk in money), then record the result after you close
- Express every trade in R, profit or loss divided by the risk you set, so trades of different sizes can be compared
- Expectancy is the average result per trade in R. It tells you what a system made or lost on average per unit of risk
- Separate trades that followed your rules from those that didn't, to see whether the problem is the system or the discipline
- Ten trades tell you almost nothing. The average can still swing either way, so you need dozens to hundreds of trades
A trading journal is a table that records the plan and the result of every order, winners and losers alike. The point isn’t to see how much you made this month. It’s to answer questions memory can’t: does the system really have an edge, how much did rule-breaking cost, and is this losing streak normal? This article covers what to record, what to calculate from it, and gives you a template you can download and use right away.
Why write it down: memory is unreliable
People remember their beautiful winners clearly and forget the trades they took for no reason. Looking back at a chart, the signals also look much clearer than they did live (more in Hindsight bias on charts). A journal written at the time is the only record your feelings can’t rewrite later.
What to record
Split it into three stages. The first is written before you enter, because a plan written after you know the result tends to get edited to fit the result.
| Field | When | Why |
|---|---|---|
| Date and time (Thai time, UTC+7) | Before entry | Later you can see which hours give you bad results |
| Symbol and direction (Buy/Sell) | Before entry | Split results by market |
| Setup name | Before entry | Split results by entry pattern. If there was no setup, write “none” |
| Entry, Stop loss, Take profit | Before entry | Needed for the risk distance and R |
| Lot | Before entry | Check the size matches the risk you meant to take |
| Risk in money and as % of balance | Before entry | The divisor for R |
| Exit price and profit/loss in money | After exit | The real result, including spread and slippage |
| Result in R | After exit | Puts every trade in the same unit |
| Screenshot link | After exit | Later you can check whether the chart really matched the setup |
| Emotion / notes | After exit | Find your own patterns, such as entering early when rushed |
| Rule followed (yes/no) | After exit | Separates system problems from discipline problems |
Slippage is the difference between the price you asked for and the price you got. It usually happens when price moves fast, and it can make a loss bigger than 1R (see the related orders in Order types explained).
Free template download
Download the trading journal (CSV, English headers). It has all the columns above plus 3 example rows (trades 6, 7 and 8 from this article). Open it in Excel or import it into Google Sheets, delete the example rows and start recording. In a spreadsheet you can also put the formula R = profit or loss ÷ risk into the R column.
Express results in R
R is one unit of risk: the money you lose if the Stop loss is hit as planned. Every trade’s result is written as a multiple of R.
R for a trade = actual profit or loss ÷ risk set at entry
Trade 8 from the figure: Buy EURUSD at 1.16450, Stop loss 1.16250.
- Stop loss distance = 1.16450 − 1.16250 = 0.00200, or 20 pips
- One lot of EURUSD is worth about 10 dollars per pip, so 0.10 lot = 1 dollar per pip. Risk = 20 × 1 = 20 dollars (1% of a 2,000-dollar balance)
- Closed at 1.16930 for 48 pips = 48 dollars
- R = 48 ÷ 20 = +2.4R. Or from price distances: (1.16930 − 1.16450) ÷ (1.16450 − 1.16250) = 0.00480 ÷ 0.00200 = 2.4
Trade 6: Sell gold (XAUUSD) at 4,012.50 with the Stop loss at 4,017.50, 5 dollars away, at 0.04 lot. If one lot is 100 ounces, risk = 5 × 100 × 0.04 = 20 dollars. But price jumped through the Stop loss and the trade closed at 4,018.00, a loss of 5.50 × 100 × 0.04 = 22 dollars, so 22 ÷ 20 = −1.1R. Gold contract sizes differ between accounts, so check the contract specification of your own account.
The benefit of R is that it doesn’t depend on balance or lot size. A gold trade and a EURUSD trade at different lots can be compared directly. To find the lot that gives the risk you want, read Position size from your Stop loss or use the lot calculator.
Example with 10 trades: win rate, average and expectancy
Assume a 2,000-dollar balance and a fixed risk of 20 dollars per trade (1%) to keep it simple. All figures are a made-up example.
| Trade | Date, time (Thai) | Symbol | Side | Setup | Result (R) | Rule followed |
|---|---|---|---|---|---|---|
| 1 | 01/09 15:10 | EURUSD | Buy | Pullback | +2.0 | Yes |
| 2 | 02/09 20:40 | XAUUSD | Sell | Breakout | −1.0 | Yes |
| 3 | 04/09 14:25 | EURUSD | Sell | Pullback | −1.0 | Yes |
| 4 | 08/09 19:55 | XAUUSD | Buy | Pullback | +1.5 | Yes |
| 5 | 09/09 15:30 | EURUSD | Buy | Breakout | −1.0 | Yes |
| 6 | 10/09 19:30 | XAUUSD | Sell | Breakout | −1.1 | Yes |
| 7 | 10/09 20:05 | EURUSD | Sell | None | −1.0 | No |
| 8 | 17/09 20:35 | EURUSD | Buy | Pullback | +2.4 | Yes |
| 9 | 22/09 21:15 | XAUUSD | Buy | Breakout | −0.5 | No |
| 10 | 24/09 15:45 | EURUSD | Sell | Pullback | +1.0 | Yes |
Trade 7 was entered less than an hour after losing trade 6, with no setup, to win the money back. Trade 9 was closed by hand before the Stop loss out of fear. Both count as rule breaks.
Step by step:
- Win rate: 4 winners (1, 4, 8, 10) out of 10 = 40%
- Total: winners 2.0 + 1.5 + 2.4 + 1.0 = 6.9R, losers −1.0 − 1.0 − 1.0 − 1.1 − 1.0 − 0.5 = −5.6R, net 6.9 − 5.6 = +1.3R, or 1.3 × 20 = 26 dollars
- Average per trade: 1.3 ÷ 10 = +0.13R
- Average win 6.9 ÷ 4 = 1.725R, average loss 5.6 ÷ 6 = 0.933R
- Expectancy = (win rate × average win) − (loss rate × average loss) = (0.4 × 1.725) − (0.6 × 0.933) = 0.69 − 0.56 = +0.13R per trade. Same as step 3, because it’s the same quantity computed two ways
- Longest losing streak: trades 5, 6, 7 = 3 trades
- Maximum drawdown: the running total peaked at +2.0R after trade 1 and fell to −1.6R after trade 7, a drop of 3.6R, or 72 dollars
An expectancy of +0.13R means that if these numbers reflected the real system, every dollar risked would return 0.13 dollars on average. You can compare it with break-even as in Win rate vs break-even. And it’s an average of the past. It says nothing about the next trade.
Separate the trades that followed the rules
The rule-followed column looks small, but it’s one of the most informative. From the example:
- 8 trades that followed the rules: +2.8R in total, +0.35R per trade
- 2 trades that broke the rules: −1.5R in total, −0.75R per trade
So the +1.3R total is a system that made +2.8R minus 1.5R lost to discipline. Without this column you might think the system is only so-so and start changing the rules, when the problem is you. Trade 7 is a very common type, the trade to win it back after a loss. Read how to guard against it in advance in Daily loss limit and revenge trading.
The same caution applies to every conclusion in this article: two trades are far too few to say rule breaks are always worse. But if you keep recording and the numbers keep pointing this way, that’s the first thing to fix.
How many trades before you can judge
Ten trades at +0.13R say almost nothing about whether the system has an edge, because individual results swing a lot. Here are the numbers:
- Standard deviation (SD) of the 10 results = 1.43R
- Standard error of the average = SD ÷ √(number of trades) = 1.43 ÷ √10 = 0.45R
- Rough range for the true average (± 2 standard errors) = 0.13 ± 0.90, about −0.77R to +1.03R
That range covers both a losing system and a very good one. If the average and the spread stayed like this, you would need about (2 × 1.43 ÷ 0.13)² ≈ 480 trades before the range stops including zero. Win rate is the same story. If the system really wins 40%:
| Number of trades | Win rate you might see (± 2 standard errors) |
|---|---|
| 10 | about 9% to 71% |
| 30 | about 22% to 58% |
| 100 | about 30% to 50% |
| 200 | about 33% to 47% |
These are rough estimates (normal approximation), not hard cut-offs, but the picture is clear:
A few dozen trades can’t separate skill from luck. Don’t change your rules because of one week.
A practical approach: collect at least around 30 trades of the same setup before taking a first look, and don’t conclude that a system is good or bad until you have a hundred or more. In the meantime keep risk per trade small as in Risk 1% per trade, and know in advance how long a losing streak to expect from Losing streaks are normal. If you’re about to move from a demo account, this journal is the evidence you should have first. See From demo to live account.
A 20-minute weekly review
Pick the same time every week, such as Saturday morning when the market is closed, and go in this order:
- Fill in the gaps: screenshots, exit prices and R for every trade of the week
- Count the rule-followed trades as a share, such as 8 of 10. This is the first number to look at, because it’s the one you control
- Look at the total and average in R for rule-followed trades, separately from rule breaks
- Update the running statistics: win rate, expectancy, longest losing streak and drawdown, counted from the very first trade, not just this week
- Open the screenshots of the losers and ask only whether the chart matched the setup at entry, not where price went afterwards
- Pick one thing to do better next week. Make it an action, such as no new trade within an hour of a loss, not a money target
To see how profit and loss in money hit your balance, read Drawdown: equity vs balance.
Common mistakes
- Writing the plan after the result. A Stop loss and setup written after the trade closes tend to be tidied up to look reasonable. Always write them before you enter
- Skipping losers or embarrassing trades. A journal of only good trades shows an inflated expectancy. Rule breaks are the trades you most need to record
- Computing R from a Stop loss you moved. The divisor is the risk at entry. If you widened the Stop loss and lost, the result might be −2R, and that’s what you record
- Looking at money, not R. A 50-dollar profit on a trade that risked 100 and one that risked 20 are very different results
- Changing the rules every week. Rules that change every 5–10 trades never collect enough trades to measure, and the journal ends up telling you nothing
Frequently asked questions
Should I use a spreadsheet or a journaling app?
Whatever you will actually fill in for every trade. A spreadsheet in Excel or Google Sheets is enough for most people, and you can change the columns yourself. The CSV file in this article opens in both. What matters more than the tool is writing the plan before you enter and never skipping the losing trades.
How do I compute R if I close a trade by hand before the Stop loss?
Same formula. Divide the actual profit or loss by the risk you set at entry. If you risked 20 dollars and closed at a 10-dollar loss, the result is −0.5R. The divisor is always the risk at entry, never a Stop loss distance you moved later.
How often should I review?
Record every trade right after it closes and review once a week. But judging whether a system works has to wait until you have enough trades, at least several dozen of the same setup, not one week of results.
This is general education, not investment advice. Trading is risky and you may lose all of your capital.