Most traders describe a trading journal as a diary of their trades. That description is what makes journals fail. A diary records events; a journal exists to answer questions you cannot answer from memory, and the questions determine what you have to write down. If you never decide what you are trying to find out, you end up with a very long file of things that already happened and no way to act on any of it.
This guide covers what a trading journal is, what goes in one, what it produces once you have enough entries, how to review it without the review becoming a chore you quietly stop doing, and the specific ways journals die. It is descriptive — none of it is a recommendation to trade in any particular way.
What a trading journal actually is
A trading journal is a structured record of three things: what you intended to do before the trade, what actually happened during it, and the difference between those two. The third item is the entire point. Your broker statement already records what happened — fills, sizes, times, realized P&L — and it records them perfectly. What no broker statement contains is what you meant to do, which means it cannot tell you whether a profitable trade was a good decision or a bad decision that got paid.
That distinction is the reason a journal is worth the effort. Over a long enough sample, outcomes and decisions converge. Over any sample you actually have, they do not. A trader who takes an unplanned position at four times normal size and makes money has recorded a win in the broker statement and a serious process failure in the journal, and only one of those two records will help them next month.
The structural consequence is that a journal is a paired record. Every entry has a before half and an after half, written at different times, and the value is in comparing them. A record with only the after half is a P&L statement with commentary. A record with only the before half is a watchlist.
The pre-trade half: the plan
The pre-trade entry is written before the position exists, when you still have nothing invested in being right. It does not need to be long. It needs to be specific enough that a version of you in a losing position two hours later cannot reinterpret it.
At minimum: the instrument, the setup or reason you are taking it, the intended entry, the price at which the idea is wrong, the intended target or exit condition, and the position size that follows from those. Those six fields are not arbitrary — the entry and the invalidation level together define your risk, and risk is the denominator of nearly every useful number a journal produces later. If you do not write down where the idea was wrong, you cannot express the outcome in R-multiples, and without R-multiples you are comparing a $40 win on a tiny position against a $40 win on a huge one as though they were the same event.
Two optional fields earn their place more often than people expect. The first is a confidence or grade for the setup — whether this is a textbook instance of your pattern or a marginal one you are taking because it is Tuesday and you are bored. The second is a one-line note on your own state: rushed, tired, already down on the day, distracted. Neither of these is mysticism. Both are inputs you can later group by, and grouping by them is where journals produce results that surprise their owners.
The post-trade half: what actually happened
The post-trade entry is written after the position is closed, and its job is to record the execution, not to relitigate the idea. Actual entry price, actual exit, actual size, actual time in the trade, fees, and realized P&L. Most of that can be imported rather than typed, and should be — hand-typing fills is the single most reliable way to make a journal stop being kept.
The part that cannot be imported is the comparison. Did you enter where you said you would, or did you chase it? Did you exit at the invalidation level, or did you move it? Did you take the planned size? Did you hold past the target hoping for more? Each of those is a yes-or-no question with an answer, and the answers aggregate. A trader who discovers that they moved their stop on eleven of their last fourteen losing trades has found something they could not have found any other way, and it is not a subtle finding.
This is also where a short, honest note about the trade belongs — one or two sentences, written while it is fresh. Not a narrative. The useful version is closer to a defect report than to a diary: what deviated, and what you did about it.
Tagging: fewer fields, used more often
Every grouping the next section describes depends on a tag, and tags are where journals bloat. The failure is predictable: you add a field because it might be interesting, you fill it in for two hundred trades, and you never once filter by it. That is two hundred small taxes paid for nothing, and it is a large part of why journals get abandoned.
A tag earns its place if you can name the question it answers before you add it. Setup name answers which of my patterns actually pays — it is the tag nearly every journal needs, and the discipline is keeping the vocabulary small and fixed. Six setup names you use consistently produce readable groupings; thirty free-text descriptions that drift over time produce thirty samples of one trade each, which is the same as having no tag at all.
Market context — trending, ranging, event day — answers whether a setup is conditional. Time of day answers whether your edge is concentrated in a window. Planned versus unplanned answers the single most important question in the whole journal, and it is one checkbox. Each of those is a closed vocabulary with a handful of values, which is what makes it groupable. A free-text notes field is worth keeping alongside them, but it is not a tag and it will not aggregate; treat it as the place where the next tag gets discovered, not as a substitute for having any.
The maintenance rule that follows: at each quarterly review, look at which tags you actually filtered by. A tag nobody has grouped by in three months is not neutral, it is friction, and removing it makes the remaining fields more likely to be filled in honestly.
A worked entry, start to finish
The following is illustrative — invented numbers chosen to show the arithmetic, not a recommendation, a real trade, or a claim about any strategy's performance.
Before. The pre-trade entry reads: instrument ABC, setup pullback-to-20ema, market context trending, planned entry 100.00, invalidation 97.00, target 106.00, account risk for this trade $300, state note "first trade of the day, no prior positions". From those numbers everything else follows without further decisions: risk per share is 100.00 − 97.00 = $3.00, so the size that risks $300 is 100 shares, and the planned reward-to-risk is (106.00 − 100.00) ÷ 3.00 = 2.0R.
After. The fills import: bought 100 at 100.20, sold 100 at 103.10, realized P&L +$290 before fees. Expressed against the risk actually taken — 100.20 − 97.00 = $3.20 per share, $320 total — the outcome is 290 ÷ 320 = +0.91R. That is the number that goes in the journal, because it is the one that can be averaged against every other trade regardless of size.
The comparison, which is the point. Entry was 20 cents worse than planned, a small and recordable slip. The invalidation level was not moved, which is the checkbox that matters most. The exit was taken at 103.10 rather than the planned 106.00 — an early exit, and if the after-note says "took it off because it stalled", then that is a specific, repeatable behaviour with a testable consequence: across a large enough sample you can compute what your realized R would have been had every planned target been held, and compare. That comparison is only possible because the plan was written down before the outcome was known.
Notice how little of this is prose. Two structured records, one derived number, and three yes-or-no comparisons. A journal entry that takes this shape can be written in under a minute once the fills import themselves, and it produces everything the next section needs.
The numbers a journal exists to produce
Once a journal has enough paired entries, it produces a small set of numbers that no single trade can give you. The first is expectancy — (winRate × avgWin) − (lossRate × avgLoss) — the average amount you make per trade across the whole sample. Expectancy is the number that tells you whether a strategy has an edge at all. A strategy with negative expectancy does not become profitable through better discipline; it becomes less expensive.
The second is the distribution behind that average. Win rate alone is famously misleading: a 90% win rate loses money if the 10% are large enough, and a 30% win rate compounds if the 70% are small enough. Win rate is only interpretable next to the average win-to-loss ratio, which is why journals that track one and not the other tend to produce confident wrong conclusions.
The third is drawdown — the peak-to-trough decline in the account — because it is the number that decides whether you are still trading the strategy when it recovers. And the fourth is whatever grouping your particular journal supports: performance by setup, by day of week, by time of day, by instrument, by the confidence grade you assigned before entry, by your own recorded state. These groupings are where a journal stops being an accounting exercise. The question do my A-grade setups actually outperform my B-grade setups has a real answer, and it is common for the answer to be no.
One caution that belongs next to all four: every one of those numbers is computed from your own history, which means it inherits your own history's biases. If you only take a setup when you feel good about it, its win rate measures the setup and your mood together, and you cannot separate them after the fact.
Sample size, and why your first twenty trades tell you nothing
The most common analytical error in journaling is treating a small sample as a measurement. The confidence interval on a 60% win rate computed from 20 trades runs roughly 40% to 78% — which is to say the same 20 trades are consistent with a losing strategy and with an excellent one. You need on the order of 100 trades before a win rate stabilizes enough to be informative, and more than that before subgroup comparisons (Mondays versus Fridays, setup A versus setup B) mean anything at all.
This has a practical consequence for how you read your own journal. In the first weeks, the journal's job is not to tell you whether your strategy works. Its job is to tell you whether you are following your strategy, which is measurable immediately: plan-versus-execution deviations show up on trade three, not trade three hundred. Process questions have small sample requirements. Edge questions have large ones. Asking the second kind too early is how traders talk themselves out of strategies that were working and into ones that were not.
The review loop
A journal that is written and never read is a filing cabinet. The review is where the record turns into a change in behavior, and it works best in three separate rhythms with three different questions.
Daily, at the close, the question is only: did today's trades match today's plans? This should take a few minutes. It is a compliance check, not an analysis, and treating it as an analysis is the fastest route to abandoning it.
Weekly, the question is what patterns appear across the week — which setups you actually took versus which you said you would take, where the deviations cluster, whether the losses share anything. This is the review that changes behavior, and it is worth protecting the time for. A worked structure for it is in the weekly trading review template.
Monthly or quarterly, and only once the sample supports it, the question becomes the edge question: is the expectancy real, is it stable, and has anything changed. This is also the right cadence for pruning — retiring a setup that has not worked, or narrowing one that works only under conditions you can now name.
Psychology, without the mysticism
The psychological half of a trading journal has a bad reputation, largely because it is often written as introspection with nothing to check it against. Recorded as data, it behaves like any other field. If you note your state before the trade — on a fixed scale, using the same words every time — then after a few hundred entries you can group outcomes by that field and see whether it predicts anything.
The documented effects worth knowing the names of are ordinary cognitive ones. Tilt is the escalation of risk after a loss, and it is visible in a journal as position sizes that rise immediately after losing trades. Overconfidence shows up as the same rise after a winning streak. Loss aversion shows up as held losers and cut winners — a distribution where your average loss is larger than your average win despite stops that were supposed to guarantee the opposite.
The reason to record state rather than reason about it is that all three of those are invisible from inside the trade and obvious in aggregate. Nobody notices themselves tilting. Everybody can see a chart of size against prior-trade outcome.
The four ways trading journals die
Friction. The journal requires more typing than the trading does. This is the most common death by a wide margin, and it is why import matters more than any analytical feature: a journal that takes fifteen minutes per trade to maintain will be abandoned inside a month regardless of how good its analytics are.
Writing only after losses. A journal kept only on bad days is a record of bad days, and every conclusion drawn from it is biased toward the conclusion that everything is going badly. The sample has to be all the trades, including the boring ones.
Fields nobody ever groups by. If a field is never used in a review, it is pure cost. Journals accumulate these — a dozen tags nobody filters on, a screenshot field nobody opens. Deleting unused fields is maintenance, not laziness.
Reading it as a scoreboard. A journal whose main use is looking at the P&L line is a slower version of the broker app. The record has to be read for deviations and groupings, or the writing was wasted effort.
Spreadsheet, notebook, or dedicated software
A paper notebook is unbeatable for the pre-trade half — it is instant, and there is no window to switch to — and useless for the post-trade half, because nothing aggregates. Many traders end up keeping the plan on paper and the record elsewhere, which is a reasonable arrangement rather than a failure.
A spreadsheet is the honest default and it works. It costs nothing, it aggregates, and building one teaches you what you actually want to measure. Its limits are specific rather than general: import is manual, the formulas break quietly as the sheet grows, and grouping by anything you did not plan for at the start means restructuring columns. A longer comparison is in trading journal vs. Excel, including when the spreadsheet is genuinely the right answer.
Dedicated software earns its cost in exactly one place: removing the friction that kills journals, by importing fills automatically and computing the groupings without you maintaining formulas. It does not make you a better trader, and any product claiming otherwise is selling something. What it does is make the record cheap enough to keep, which is the precondition for everything above.
How TradeFlow Quantum handles it
For completeness about the tool this page is published by, and stated plainly rather than as a pitch: TradeFlow Quantum is a trading journal built around the paired-entry structure described above. You write the pre-trade plan, the fills import automatically, and the post-trade view grades your execution against what you wrote.
Trades auto-import from 25+ brokers — 10 through direct OAuth connections including Schwab, Alpaca, Tastytrade and Tradier, and the rest through SnapTrade aggregation covering Robinhood, Fidelity, Webull and others — with CSV import as the fallback for anything not connected. The analytics side computes the groupings this guide describes: day-of-week, per-setup, psychology-score correlations, and prop-firm rule standing for traders in evaluations with Topstep, Apex, FTMO or FundedNext. There is a bar-by-bar replay for reviewing entries against what the chart was actually doing, and CSV export for tax and accounting workflows.
It is $15/month or $150/year, with a 7-day free trial that requires a card and charges nothing until day 7; cancellation is one click. The full broker list and pricing are public, and the honest framing is the one in the previous section — the software's contribution is removing friction, not supplying discipline.
What a trading journal will not do for you
It will not tell you what to trade. A journal is a measurement instrument pointed at your own past decisions; it has nothing to say about instruments you have never traded, and a strategy that shows a positive expectancy across 200 entries has demonstrated something about those 200 entries and nothing about next month.
It will not survive being kept dishonestly. Every number above is computed from what you wrote down, so an entry that quietly records the stop where you wish you had put it produces analytics that are worse than having none — confidently wrong instead of absent.
And it will not supply the discipline it measures. The journal's actual mechanism is unglamorous: it makes the gap between what you said you would do and what you did into a number you have to look at every week. Whether looking at that number changes anything is up to the person reading it.