How to Build an Advanced Notion Trading Journal
If you've been following my YouTube series on building an Advanced Notion Trading Journal, this article is your complete companion guide.
Instead of filling the videos with long formulas and technical explanations, I've collected everything here in one place.
In this guide you'll find:
- Every Notion formula used in the journal
- An explanation of how each formula works
- Examples of how to customize them
- Conditional colouring settings
- Common mistakes and fixes
- Tips if you're building your own version instead of copying mine
Watch the Course
This journal is built step-by-step in my YouTube video course. Follow along with the videos below:
Part 1: Building the Trading Journal
Part 2: Risk-to-Reward Tracker
| Part | Topic | Status |
|---|---|---|
| Part 1 | Building the Trading Journal | β Available |
| Part 2 | Risk-to-Reward Tracker | β Available |
| Part 3 | Dashboard Improvements | Coming Soon |
| Part 4 | Prop Firm Tracker | Coming Soon |
What You'll Build
By the end of the course you'll have a trading journal capable of automatically tracking:
- π Calendar trade logging
- π Performance graph
- π Monthly statistics
- π Quarterly statistics
- π Yearly statistics
- π° P&L Tracking
- π― Win Rate
- π Risk-to-Reward Performance
- π§ Strategy Breakdown
- πΉ Symbol Breakdown
- π· Trade Screenshots
- β Mistake Tracking
- β‘ Automatic Calculations
Everything is built using Notion Free, meaning you don't need any paid software.
Why I Built This Journal
Most trading journals only tell you what happened.
They'll tell you:
- You won.
- You lost.
- Your win rate.
But they don't answer the questions that actually improve your trading.
Questions like:
- What if I always targeted 1:2?
- What if I only took trades with my best strategy?
- Which symbol actually makes me money?
- Which month do I perform the best?
- Am I leaving money on the table?
That's exactly what this journal solves.
Want the Full System?
Get the complete Trader's Ultimate Brain with advanced analytics, AI integration, prop firm tracking, and lifetime updates.
The Journal Structure
The journal uses multiple linked databases.
Instead of storing everything inside one table, every trade connects to multiple databases.
- Trade Logs
- Months
- Quarters
- Years
- Symbols
- Strategies
- Risk-to-Reward
Using Relations, Rollups, and Formulas, Notion automatically calculates all your statistics.
Understanding the PNL Tracker
The most important property inside the journal is PNL Tracker.
This is NOT your actual profit.
Instead, it records the highest Risk-to-Reward the trade reached before reversing.
For example:
| Actual Result | Highest RR Reached | PNL Tracker |
|---|---|---|
| Closed at +1R | Trade reached 4R | 4% |
| Closed at Break Even | Trade reached 2R | 2% |
| Lost -1R | Never moved in profit | 0% |
This single property makes the entire Risk-to-Reward tracker possible.
Risk-to-Reward Win Formulas
These formulas answer one simple question:
Would this trade have won if I always targeted a fixed Risk-to-Reward?
Win 1:1 Formula
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.01
) What it does
Checks whether your trade reached at least 1R.
If it did, the formula returns True.
Otherwise it returns False.
Example
| Highest RR | Result |
|---|---|
| 0R | β |
| 0.5R | β |
| 1R | β |
| 2R | β |
| 5R | β |
Win 1:2 Formula
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.02
) This checks whether the trade reached 2R.
Example
| Highest RR | Result |
|---|---|
| 1R | β |
| 1.8R | β |
| 2R | β |
| 4R | β |
Win 1:3 Formula
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.03
) Exactly the same logic. Simply change the required Risk-to-Reward level.
Want More Risk-to-Reward Targets?
Simply continue the same pattern.
Win 1:4
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.04
) Win 1:5
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.05
) Win 1:10
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.10
) You can continue this forever.
Simulated P&L Formulas
Once Notion knows whether a trade reached a particular RR target, we can simulate what your account would have looked like.
This is where the real power comes from.
PNL 1:1
if(prop("Win 1:1"), 0.01, -0.01) If the trade reached 1R
Return:
+1% Otherwise
-1% PNL 1:2
if(prop("Win 1:2"), 0.02, -0.01) If the trade reached 2R
Return
+2% Otherwise
-1% PNL 1:3
if(prop("Win 1:3"), 0.03, -0.01) Exactly the same idea.
Continue the Pattern
PNL 1:4
if(prop("Win 1:4"), 0.04, -0.01) PNL 1:5
if(prop("Win 1:5"), 0.05, -0.01) PNL 1:10
if(prop("Win 1:10"), 0.10, -0.01) The formulas never change. Only the percentage changes.
Why This Works
Imagine these four trades.
| Trade | Highest RR |
|---|---|
| 1 | 4R |
| 2 | 1.5R |
| 3 | Loss (0R) |
| 4 | 3R |
Now compare every fixed target.
| Target | Result |
|---|---|
| 1R | β β β β |
| 2R | β β β β |
| 3R | β β β β |
| 4R | β β β β |
Without changing your trading, you instantly know which target performs best.
That's something most trading journals can't do.
Conditional Colouring
Notion recently introduced Conditional Colours, making it much easier to review your journal.
I recommend using the following settings.
Losses
Condition
PNL < 0 Background
π΄ Red
Winning Trades
Condition
PNL > 0 Background
π’ Green
Break Even
Condition
PNL is Empty Background
βͺ Gray
Now your calendar becomes much easier to review at a glance.
Customizing These Formulas
Your journal doesn't need to match mine exactly.
Maybe your property names are different.
Instead of
prop("PNL Tracker") you might have
prop("Highest RR") Simply replace the property name.
Everything else stays exactly the same.
If You Trade Futures, Crypto or Stocks
The journal isn't limited to Forex.
You can track:
- Forex
- Crypto
- Stocks
- Indices
- Futures
- Options
The only thing that changes is your Symbols database.
Everything else works exactly the same.
Common Problems
Formula returns False
Check that your PNL Tracker is actually recording the highest RR reached.
Rollup isn't updating
Your Relation is probably not linked correctly.
Every trade must be linked to the corresponding database.
Property Not Found
The property name inside the formula must exactly match the property inside your database.
Even a missing space will cause an error.
Win Rate isn't changing
Check that your Rollup is calculating Percent Checked instead of Count.
Final Thoughts
A trading journal shouldn't just record your trades.
It should help you answer questions.
Questions that improve your trading.
By combining Relations, Rollups and Formulas, Notion becomes much more than a note-taking appβit becomes a complete trading analytics platform.
I hope this guide helps you build your own trading journal and understand how every formula works.
If you're following the YouTube course, be sure to bookmark this page, as I'll continue adding new formulas and tutorials as the series grows.
Happy Journaling! π
FAQs
Yes. Simply create another trade inside the same calendar day. There is no limit.
Absolutely. Simply create another Strategy inside the Strategy database. The analytics update automatically.
Yes. Simply add XAUUSD as a Symbol.
Yes. Just add NAS100 or US100 depending on your broker.
Yes. You'll simply need to modify the formulas to return dollar amounts instead of percentages.
Yes. Just continue the same formula pattern. Example:
and(
prop("PNL Tracker") != 0,
prop("PNL Tracker") >= 0.20
) and
if(prop("Win 1:20"), 0.20, -0.01)