Complete Suite: all 12 tools. 6 Premium desks inside.All 12 tools $606.98 one by one

$606.98 one by one $97 once Save $509.98Get the SuiteGet it
ProEA Lab · MT5, TradingView and trading research · Evidence standards
Journal

Trading Psychology Journal Template: Your State of Mind Beside Every Trade, Counted in R

A free trading psychology journal for Excel and Google Sheets: our template's 18 columns plus Feeling before, Focus (1-5), Sleep (hours), Feeling after and Would take it again?. Why the feeling goes in before the trade, a worked week with a Frustrated revenge trade and a Tired moved stop, the Summary's average R by feeling and by focus, and why five trades are still an anecdote.

PL · 10 min read
Explainer cover titled A trading psychology journal, in R: the workbook's example week as five rows with Feeling before, Focus (1-5), Sleep (hours), Feeling after, Would take it again? and R. Monday: Calm, focus 4, +1.96R; Calm, focus 4, −1.12R, then Frustrated; Frustrated, focus 2, a revenge trade for −1.17R. Tuesday: Tired after 5 hours of sleep, focus 2, a moved stop for −1.63R. Wednesday: Confident, focus 5, +1.465R. Below, the average R by feeling before: Calm +0.42R over 2 trades, Confident +1.465R, Frustrated −1.17R and Tired −1.63R over 1 each.

Download the free trading psychology journal as an Excel workbook (.xlsx) or a CSV for Google Sheets. It's our free trading journal template with your state of mind beside every trade: the same 18 columns and Summary, plus Feeling before, Focus (1-5), Sleep (hours), Feeling after and Would take it again? (Y/N), for 23 in all. Feeling before and Feeling after are dropdowns with the same seven words: Calm, Confident, Anxious, FOMO, Frustrated, Bored and Tired. The Summary adds the average R for each feeling before, the average R with focus 4 or 5 against focus 1 to 3, and the number of trades you wouldn't take again. No email, no account.

The workbook's Read me says what it isn't: "Not financial advice and not therapy. This sheet is arithmetic on what you type." It puts a state of mind next to a result. It doesn't diagnose, treat or fix anything, and we don't claim it makes anyone trade better. Five example rows, marked EXAMPLE, show it working; they're made up, with illustrative prices.

A psychology journal is a log, not therapy: one word before the trade, one after, and the R in between.

What is a trading psychology journal?

A trade log with your state of mind written beside each trade, in a form that can be counted. A diary line ("felt off today, the market was choppy") can't be averaged. A word from a fixed list can: if Frustrated is always spelled the same way, the sheet can put an average R beside it.

If you searched for a trading psychology worksheet or an emotional trading journal, this is the same idea kept as rows instead of pages. It also carries a trading discipline tracker: the template's Followed plan? (Y/N) and Mistake tag columns, and its Plan discipline block on the Summary, count the rule breaks and what they cost in R. Why those two columns matter most is argued in how to journal forex trades.

What should a trading psychology journal include?

The template's 18 columns record the trade. The five new ones record you:

ColumnWhat you typeWhen
Feeling beforeOne word from the list: Calm, Confident, Anxious, FOMO, Frustrated, Bored or TiredBefore you click
Focus (1-5)A number from 1 to 5, on your own scale; keep the scale the same week to weekBefore you click
Sleep (hours)The hours you slept the night beforeBefore the session
Feeling afterOne word from the same listAfter the exit
Would take it again? (Y/N)Whether you'd take the same trade againAfter the exit

All five are typed; none is a formula. Would take it again? isn't the same question as Followed plan? (Y/N). The plan flag asks whether you kept your rules. Would take it again asks whether this is a trade you want more of, judged on the decision, not the result: a planned trade that lost can be a Y, and a lucky rule break can be an N.

The Summary has one line per word, built from the list. If you change the words, change those lines' formulas on the Summary too, or the averages will count nothing.

Why write the feeling before the trade?

Because the result rewrites the memory. The Read me puts it in one line: "Write the feeling before the trade, not after: after a loss, every entry looks like FOMO." By evening, a stopped-out trade can feel as if it was taken badly, and a winner as if it was taken calmly. Only the word you picked before you clicked is something you knew when you decided. That's why the Read me says to pick it from the list "before you click", and why Feeling after is a separate column: the two together show what a trade did to your state, which is where the next trade starts.

It's the same rule as writing your reason before entry, not after, which how to journal forex trades explains at length.

A worked week: Monday 5 to Wednesday 7 October

The workbook's five example rows, cut down to the columns this edition adds and the ones you'd read beside them. Each risks $100:

DaySymbolSetup / reasonFeeling beforeFocus (1-5)Sleep (hours)Feeling afterWould take it again? (Y/N)R multipleFollowed plan? (Y/N)Mistake tag
Mon 5 OctEURUSDPullback - London openCalm47.5CalmY+1.96RY
Mon 5 OctXAUUSDRange fade - Asia highCalm47.5FrustratedY−1.12RY
Mon 5 OctXAUUSDNo setupFrustrated27.5FrustratedN−1.17RNRevenge trade
Tue 6 OctGBPUSDBreakout retestTired25AnxiousN−1.63RNMoved stop
Wed 7 OctEURUSDRange fade - London highConfident58CalmY+1.465RY

Monday, trade 1: Calm, focus 4, after 7.5 hours of sleep. A EURUSD pullback that reached its target: +1.96R.

Monday, trade 2: still Calm, focus 4. A gold short from the Asia high, stopped out with $0.50 an ounce of slippage: −1.12R. Would take it again? Y: the note reads "A good trade that lost." Feeling after: Frustrated.

Monday, trade 3, the Frustrated revenge trade. Feeling before: Frustrated, the same word as the Feeling after of the trade before. Focus 2. No setup: long 0.25 lots of gold at 3356 "to win back the short", with the stop at 3352, $4 an ounce and $100 of risk. It was stopped at 3351.40: −$117 after $2 of fees, −1.17R. Followed plan? N, Mistake tag Revenge trade, Would take it again? N. A diary written that evening would say "bad day on gold". The rows say the rule break was entered Frustrated, and that the frustration came from a good trade that lost.

Tuesday, the Tired moved stop. Sleep: 5 hours. Feeling before: Tired; focus 2. A GBPUSD long from a Breakout retest at 1.3400 with the stop at 1.3375, $100 of risk on 0.40 lots. The stop was moved down 15 pips to 1.3360 and hit there: −$163 after $3 of fees, −1.63R. Moving the stop added 0.60R to the planned −1R (15 pips at $4 a pip is $60), and the fees took the other 0.03R. Feeling after: Anxious. Followed plan? N, Mistake tag Moved stop, Would take it again? N.

Wednesday: Confident, focus 5, 8 hours of sleep. A EURUSD short from the London high, closed at 1.1715 before the 1.1705 target, as its plan said to at the session close: +$146.50 after $3.50 of fees, +1.465R. Feeling after: Calm.

The GBPUSD row has the same prices and result as example 3 in our six trading journal examples, with the state of mind added.

What does the Summary show?

The template's own Summary, then a block for this edition. On the five example rows:

Summary lineValueRows behind it
Average R, feeling before: Calm+0.42R2: +1.96R and −1.12R
Average R, feeling before: Confident+1.465R1
Average R, feeling before: Anxiousn/a0
Average R, feeling before: FOMOn/a0
Average R, feeling before: Frustrated−1.17R1
Average R, feeling before: Boredn/a0
Average R, feeling before: Tired−1.63R1
Average R with focus 4 or 5+0.77R3
Average R with focus 1 to 3−1.40R2
Trades you wouldn't take again2the revenge trade and the moved stop

The template's block reads 5 trades, a 40% win rate, an expectancy of −0.10R per trade, a total of −0.495R and a profit factor of 0.87. The three trades marked Y averaged +0.77R, the two marked N −1.40R, and the Total R when plan broken is −2.80R.

Five trades are an anecdote. Every line above rests on one, two or three trades. And look at which rows sit behind which line: the two focus 1 to 3 trades are the two plan-broken trades, the two you wouldn't take again, and the only Frustrated and Tired trades. So "−1.40R with focus 1 to 3" is the same −1.40R as "plan broken", and the sheet has no way to say whether low focus, the feeling, short sleep or the broken rule did the damage, or none of them. Calm's +0.42R mixes a win and a loss; a feeling doesn't decide a single trade.

The Read me draws the line: "With a handful of trades these are anecdotes; with fifty or more they start to say something." Even then, an average by feeling is a pattern in your own rows, not a cause. Sleep (hours) has no Summary line at all: sort or filter by it. How many trades to test a strategy explains why the number of rows you need depends on how spread out the results are.

How do I fill it in each day?

  1. Before the session: Sleep (hours).
  2. Before each trade, before you click: Feeling before and Focus (1-5), with the trade's plan columns (setup, entry, stop, target, size and the risk at the stop).
  3. After the exit: Feeling after, Would take it again? (Y/N), Followed plan? (Y/N), and one Mistake tag if you broke the plan.
  4. Nothing else. One line in Notes for a trade you want to study, no essay.

The trade columns can come from an export: the free template post maps an MT5 report onto them, and importing MT5 trades into a journal covers the import routes. The five state columns can't come from anywhere but you, at the time.

What should I review each week?

  1. Total trades. How much to believe the rest.
  2. The trades you wouldn't take again. For each, the row before it: its Feeling after, and that day's Sleep (hours). On Monday, trade 3 started where trade 2's Frustrated left off.
  3. Average R by feeling before, only for words with many rows, and focus 4 or 5 against 1 to 3. Check whether they're the same rows as the plan split, as they are here.
  4. Plan discipline: Expectancy when plan broken (R) and Total R when plan broken. What the rule breaks cost, whatever you felt.
  5. One rule for next week, written so you can check it on Sunday. For example: after a trade whose Feeling after is Frustrated, no new trade until the next session. Whether a rule like that helps is something your own rows can show over months, not this page.

The trading journal examples post has 25 prompts for before, after and Sunday, among them "Am I taking this to win back a loss?". The printable trading journal has a weekly review page if you'd rather do this on paper.

What a psychology journal can't do

  • It isn't therapy. The workbook says so, and so do we. If trading is hurting your sleep, your money or your health beyond what you planned to risk, a spreadsheet isn't the help to reach for; talk to someone qualified.
  • It can't tell you whether journaling helped. No column measures that, and we make no claim either way.
  • Self-reports are noisy. The line between Calm and Confident, or a 3 and a 4 on focus, is yours, and it drifts. A fixed list keeps the noise down; it doesn't remove it.
  • It can't save a losing method. Our post on why a discipline problem is often a system problem argues the point: psychology can spoil a method that works, and calm can't rescue one that doesn't.

Can I use it in Excel or Google Sheets?

In Excel, open the .xlsx. In Google Sheets, upload the .xlsx with File → Import → Upload to keep the formulas, the Summary and the feeling dropdowns.

The CSV carries the 23 column headers and the five example rows with their worked-out values but no formulas, so rows you add won't calculate, and it has no dropdowns and no Summary. Starting from it, paste the template's R multiple and Win/Loss formulas into L2 and M2 and fill down:

=IF(OR(J2="",K2=""),"",IFERROR(K2/ABS(J2),""))
=IF(K2="","",IF(K2>0,"Win",IF(K2<0,"Loss","Breakeven")))

We recalculated the workbook in LibreOffice and checked its computed cells against our own arithmetic; we didn't test every Sheets locale. After uploading, check that the Summary reads 5 trades and +0.42R for Calm before you delete the examples. For day trades, the day trading journal adds the clock instead of the mood, and the swing trading journal the calendar.

The deep version, as a PDF

The Trading Journal Playbook

What to write on every trade and why, filled-in entries across markets, the pre-trade checklist, the weekly and monthly review with the arithmetic shown, and the same columns on paper, in a spreadsheet or an app.

  • What to write on every trade, and why each of the template's eighteen columns exists, in the order you fill them
  • 13 filled-in entries across forex, gold, an index CFD, a partial close, a prop-firm evaluation day, a skipped trade and a backtest, every Risk, Result and R worked from the prices
  • The pre-trade checklist, and how a month of mistake tags turns into checks of your own

Opens soon · USD 19, one payment. See what's inside →

Where TradeLens fits

We sell TradeLens, a journal that runs on your own computer: Python, a browser page and one SQLite file. It imports MT4 HTML statements, MT5 history and broker CSVs, the CSVs through a column-mapping wizard with starter templates for MT4, MT5, cTrader, TradingView and a generic file. Its page describes a default tilt and revenge flag: a trade that opens within 15 minutes of a losing close and is either at least 1.5 times the median size of your previous 20 trades or a flip of direction on the same symbol, with the thresholds editable in Settings; it adds up the net result of the flagged trades. The daily loop of its 30-day desk ritual asks you to tag the day with one honest behaviour word (patient, fomo, revenge, disciplined), and its Explorer has a Regimes view for checking whether you fall apart after losses or late in the day. The figures are computed in code, and the AI coach, on a free local model or your own Claude, OpenAI or Gemini key, explains them. It's $47 at launch ($79 regular), and TradeLens Cloud, the hosted edition, is $29 a month.

It can't know how you felt before a trade unless you tell it, the same as the sheet. The workbook is free and stays free, and nothing here is financial advice.

Frequently asked questions

What is a trading psychology journal?

A trade log with your state of mind written beside each trade: how you felt before you clicked, how focused you were, how long you slept, how you felt after, and whether you'd take the same trade again. Kept as words from a fixed list, it can be averaged against R. Kept as a diary, it can't.

Is there a free trading psychology journal template?

Yes. Ours is a free Excel workbook with 23 columns: the 18 of our general template plus Feeling before, Focus (1-5), Sleep (hours), Feeling after and Would take it again? (Y/N). Its Summary averages R by the feeling before and by focus, and counts the trades you wouldn't take again. No email, no account, and a CSV version for Google Sheets.

Why write the feeling before the trade?

Because the result rewrites the memory. The workbook's Read me puts it this way: after a loss, every entry looks like FOMO. Pick the word from the list before you click, and the Summary compares what you felt with what the trade did, not with what you remembered after it.

What should I write in an emotional trading journal?

One word from a fixed list before the trade (Calm, Confident, Anxious, FOMO, Frustrated, Bored or Tired), a focus score from 1 to 5, the hours you slept, one word after the trade, and a yes or no to whether you'd take the same trade again. Free text belongs in Notes, one line, for the trades you want to study.

Will a trading psychology journal make me a better trader?

We don't claim it will. The sheet is arithmetic on what you type: it can show that your Frustrated trades averaged −1.17R, but over a handful of trades that's an anecdote, and even over many it's a correlation in your own rows, not a cause. No column measures whether journaling helped.

Is a trading psychology journal the same as a trading discipline tracker?

It includes one. Followed plan? (Y/N) and the Summary's plan discipline block count the rule breaks and what they cost in R, and Would take it again? (Y/N) adds a second judgment, on the decision rather than the result. In our example week the two broken-plan trades cost −2.80R between them.

Can I use the trading psychology journal in Google Sheets?

Yes. Upload the .xlsx with File → Import → Upload to keep the formulas, the Summary and the feeling dropdowns. The CSV holds the five example rows with their worked-out values but no formulas, so rows you add won't calculate, and it has no dropdowns and no Summary.

Continue reading

Futures Trading Journal Template: Point Values, Ticks at Risk and R, Worked Out for You.

A free futures trading journal for Excel and Google Sheets: the point value looked up by symbol for 35 contracts, risk, ticks at risk, the net result and R as formulas, three example rows you can check by hand, and how to fill it from NinjaTrader 8 and TopstepX.

Oct 29 · ProEA Lab

Explainer cover titled The futures trading journal: the edition's three example rows as a table. ES long, 2 contracts, point value $50, 20 ticks at risk, risk $500, result +$991.60, +1.98R. MNQ short, 3 contracts, point value $2, 80 ticks at risk, risk $120, result −$149.22, −1.24R, stopped with 4.5 points of slippage. MGC long, 2 contracts, point value $10, 100 ticks at risk, risk $200, result +$118.52, +0.59R, plan broken by an early exit.

Notion Trading Journal: a Free Template to Import, the R Formula, and Where Notion Stops

A free Notion trading journal you import as a CSV: the free template's columns and example rows, the property types to set, the R multiple and Win/Loss formulas in Notion's own syntax, a calendar and a board by mistake tag, and an honest answer to whether Notion is good for a trading journal.

Oct 29 · ProEA Lab

Explainer cover titled The Notion trading journal: the imported database as a table, with each property's type above its name: Symbol as Title, Date as Date, Direction as Select, Risk and Result as Number, and R multiple and Win/Loss as Formula. EURUSD, 2026-10-01, Long, risk 100, result 196, R multiple 1.96, Win. XAUUSD, 2026-10-02, Short, 100, −112, −1.12, Loss. GBPUSD, 2026-10-05, Long, 100, −163, −1.63, Loss. Under the table, the R multiple formula round(prop("Result") / prop("Risk"), 2).

Trading Journals on GitHub in 2026: 8 Code-Read, 5 Open Source.

We read the code of the eight most-starred trading journals on GitHub on 29 October 2026: which licence each one really carries, whether it reads an MT5 report, how you run it yourself, which AI it calls, and whether anyone still maintains it.

Oct 29 · ProEA Lab

Explainer cover titled Trading journals on GitHub, code-read: a table of the eight most-starred journal repos with their stars on 29 October 2026, from TradeNote's 979 to 78. Each row shows the licence: GPL-3.0, MIT and Apache-2.0 marked open source, and Proprietary, CC BY-NC 4.0 and FSL-1.1-MIT marked source-available. Then whether the repo's code reads an MT5 file (yes for TradeNote's .xlsx report and LuxAlgo's HTML report, in part for TradeTally and Journalit, none for the other four), and the last commit, crossed for TradeNote's 2025-04-14 and an arrow for ai-trading-journal, whose README points to a successor.