A trading journal connects the execution record with the original plan and the evidence used to make a decision. It can expose missing records, procedural breaches and outcomes of compliant trades. It does not replace the broker statement or automatically explain why a strategy makes or loses money.

Define what one journal record means

Decide whether a row represents one fill, a closed position or a trading idea with several entries. Partial fills and exits can produce several records for one idea. Retain account and execution identifiers so that regrouping neither duplicates a trade nor loses a commission. Keep the original history alongside your notes.

Possible review questions include how compliant and noncompliant entries differ, what happened after a loss, and whether results vary across documented setups. An entry following a loss is not automatically trading to get even. Specify the observable breach, and include ordinary outcomes rather than selecting only memorable wins or losses.

A subgroup difference suggests a hypothesis. It does not prove that the recorded feeling caused the outcome: position sizes, market conditions and strategy rules may differ too. A journal may show that there is too little comparable information to decide.

Ten groups of information to preserve

Journal template · information groups
1. IdentifiersAccount alias, idea or position ID and actual execution IDs
2. Time and instrumentDate, time zone, exact symbol and relevant chart interval
3. Direction and sizeBuy/sell, units or lots, and the applicable contract specification
4. Entry planCondition, intended price and order type, recorded before the decision
5. Initial risk and exit planOriginal stop, risk in account currency and the exit rule
6. Actual executionsEntry and exit fill prices, quantities and times
7. Costs and currencyCommissions, fees, swap and whether a result already includes them
8. Changes while openChanged stop, quantity or exit rule, with time and reason
9. Context and self-reportDocumented conditions and feelings, or explicitly missing data
10. Process assessmentMet conditions, breaches and unresolved cases under stated criteria

These are information groups, not a compulsory column count. An exit based on time or a moving rule need not have a fixed take profit. Preserve the original stop alongside later changes. Do not infer an emotion such as fear of missing the move from the final result alone.

Hypothetical EUR/USD buy: entry fill 1.0852, initial stop 1.0822 and target 1.0902. Assuming a pip of 0.0001, the distances are 30 and 50 pips. The planned reward:risk ratio is 50/30 ≈ 1.67:1; in risk:reward order it is 1:1.67. That is a plan before additional costs, not a realised result.

Assume 100,000 EUR per lot and a USD account. A position of 0.10 lot is 10,000 EUR, with a pip value of USD 1. Its stop-level price loss is USD 30 and target price gain USD 50. Calling it “0.1 of a mini lot” would mean a different quantity under that convention. Actual contract specifications and fills matter; an ordinary stop does not guarantee its requested price.

Unit first, sum second

Two journal sources show +40 USD and −30 EUR. Raw “40 − 30” omits information that changes the calculation.

Scroll sideways to see the full diagram

Unit first, sum secondSource net results are +40 dollars and −30 euros. At a fictitious reporting rate of 1 EUR = 1.20 USD, the second equals −36 USD. The USD sum is +4.Two currencies → one USD reportSource recordAfter conversion+40 USD+40 USD−30 EUR−36 USDModel rate: 1 EUR = 1.20 USD40 − 36 = +4 USDSum currency: USD
Assumptions: fictitious net results from two sources, +40 USD and −30 EUR; costs already included. Our fixed reporting rate of 1 EUR = 1.20 USD applies to this snapshot. No actual conversion, exchange fees, taxes or open valuation. This is neither a current rate nor the broker's exchange price. MT5 report describes results in deposit currency: do not convert a result again if its source already did.
Sum results only after agreeing the reporting currency.

Trace the example: retain each currency, rate and valuation time. −30 EUR × 1.20 USD/EUR = −36 USD; only then 40 − 36 = +4 USD. “+10” from raw 40 − 30 lacks a consistent unit. A reporting sum also does not promise an actual exchange outcome.

Reconcile the spreadsheet with the source

Keep source results and charges with their currency and sign convention. If charges are separate signed entries, add them with those signs. If a cost is recorded as a positive debit, subtract it. Do not apply one formula blindly to every export or subtract spread again when it is already reflected in entry and exit fills.

In our USD example, price result +25, commission −2 and swap +1 give net +24. If the source already supplies net +24, subtracting commission again would produce the wrong result. Include charges on both sides and separately booked fees without attributing one charge to several positions.

Define initial R before evaluation. With R = USD 30, a closed net +24 is +0.8R; net −33 is −1.1R. Document whether planned costs enter that denominator, and retain it after closure. Average winning pips divided by a planned stop cannot substitute for actual net results in R.

Deposits and withdrawals are not trading gains or losses. Closed results do not automatically include the changing value of open positions. Convert genuinely different source currencies to one declared reporting currency and valuation time; do not repeat a conversion the source already made. An educational journal is not automatically a tax calculation.

Use a supported table import or a provider export. Check decimal separators, time zones, the covered period, counts and totals against the original. Preserve the downloaded file and its retrieval time. Choose an application by import accuracy, export options, privacy and cost, without an obligatory three-month wait.

Test repeated imports too. Our fictitious import A contains execution IDs 101, 102, 103 with net +12, −8, +4 USD; import B contains 103, 104, 105 with +4, −5, +3 USD. Concatenating produces six rows and +10 USD. Five distinct executions produce +6 USD. The +4 difference is the duplicated execution, not extra trading profit. Key by account and execution ID, and flag conflicting values rather than silently choosing one.

Four questions for a review

Is the dataset complete and reconciled?

Check all qualifying trades, duplicate IDs, fees and unresolved records first. The largest wins and losses can guide investigation, but a selected extreme cannot represent the whole group.

Were the stated rules followed?

Assess observable conditions separately from profit. A profitable breach remains a breach; a compliant loss alone does not demonstrate an execution mistake. Keep unknown cases visible rather than silently treating them as compliant.

What does a grouping actually show?

Fictitious net USD results · 30 trades, one assigned label each
Calm — 14 trades+250 USD
Haste — 8 trades−180 USD
Urge to recover a loss — 5 trades−320 USD
Anxiety — 3 trades−40 USD
All 30 trades−290 USD

The total is 250 − 180 − 320 − 40 = −290 USD. Haste and recovery labels cover 13 trades with −500 USD together. These assigned numbers are an arithmetic exercise, not observed trader statistics or evidence that emotions caused losses. Check position size, method, market conditions and actual breaches before interpreting the association.

What hypothesis or correction needs testing?

A confirmed duplicate requires an import correction. A subgroup difference may instead require further observations. Predeclare the hypothesis and evaluation rule; a review does not require a fresh trading restriction every week.

Avoid reconstructing an invented plan

Record the plan before the decision; add execution commentary when it does not interfere with managing risk. Automate facts where possible. A chart screenshot should identify its time, symbol and interval. Mark a later screenshot with future prices as review material.

Recover historical parameters from the execution record. Mark an uncertain feeling as missing and a later recollection as retrospective. Do not present a plan reconstructed from the outcome as a contemporaneous entry rationale.

Build and test a manageable journal

  1. Choose the record unit and preserve the source. Import the supported history format, identify duplicates and reconcile costs and currency before interpreting groups.
  2. Use a short context template. Record relevant cues without obstructing account supervision. Unknown information remains unknown.
  3. Budget the review explicitly. A hypothetical 30 entries at two minutes each plus four reviews at 30 minutes is 180 minutes, or three hours. That is a budget calculation, not a time promise.
  4. Evaluate a specific correction or hypothesis. Connect it to an observable test, as in building a system of trading discipline. Continued logging does not guarantee automatic error recognition after three months or profitable trading.

Unchanged win rate, a sample total below zero

About 2 min calculator practice

Fictional sample: 30 wins averaging USD 200 net, 50 losses averaging USD 100 and 20 exact net zeros. Total P/L is USD 1,000, mean USD 10 and non-zero win rate 37.5%. Change only average net loss from USD 100 to USD 125. Does unchanged win rate preserve a positive total?

Check loss size alongside the number of wins

Check the result and explanation

Total P/L is 30 × 200 − 50 × 125 = −USD 250. Mean across 100 trades is −USD 2.50, win rate remains 37.5% and profit factor is 6,000 ÷ 6,250 = 0.96. The modeled break-even win rate rises to 125 ÷ 325 ≈ 38.46%.

The sample and averages are fictional net amounts; do not deduct costs twice. Win rate excludes exact zeros, while the mean includes them. Results do not forecast future performance.