Day Trading Journal Template: What to Track for Consistent Improvement
The journal fields that separate improving traders from stuck ones — built around MFE capture rate, with CELZ, YHC and DCOY as worked examples.
A day trading journal is only as useful as the fields you choose to track. Most traders log entry, exit, and P&L — and then wonder why six months of journaling changed nothing. The problem is not discipline. The problem is that P&L tells you whether a trade worked, not how much of the available move you left on the table. This template is built around the one metric that actually drives improvement in fast small-cap trading: MFE capture rate.
TLDR
- A P&L-only journal tells you your win rate. An MFE-based journal tells you your execution quality — the gap between what the move offered and what you took.
- MFE capture rate = (your exit − your entry) ÷ (session high − your entry). It is the single most diagnostic field you can add to a day trading journal template.
- Worked examples use CELZ (+492.8% MFE, closed −46.0%), YHC (+2,088.5% MFE, closed −89.7%), and DCOY (+191.7% MFE, closed −20.0%) — all from last week's tape — to show why closing red does not mean the day offered no trade.
- Track catalyst type, session (PM/MKT/AH), RVOL at entry, float, MAE, and mindset alongside MFE — these are the columns that reveal which setups you actually execute well.
- We close with the exact SNACS scanner filters, AI Insights fields, and playbook rules to turn a static journal into a feedback loop.

What a Day Trading Journal Actually Tracks
A day trading journal tracks the distance between the trade the market offered and the trade you took. Everything else — entry, exit, size — exists to measure that distance. When you only log P&L, you compress a rich, multi-variable event into a single win/loss bit, and a single bit cannot teach you anything about why you underperformed a setup you correctly identified.
Consider what happens on a typical small-cap runner. You spot the name, you take the entry, and price rips. You panic-sell into the first pullback. The trade closes green — a win in a P&L journal — but you captured a third of the move. Two weeks later you do the exact same thing, and your journal, which only stores "+$420, win," gives you no signal that a pattern exists. The leak is invisible.
The fix is to record the full opportunity of every trade, not just your slice of it. That means logging the session high (HOD), the session low, and the max favorable excursion (MFE) — the best possible move from the day's low to its high across all sessions. Once those live in your journal next to your own entry and exit, every trade produces a capture-rate number, and capture rate is a trend you can actually work on.
Here are the fields that belong in a serious day trading journal template. Note how few of them are P&L:
| Field | Why it matters | Example (CELZ, Jun 30) |
|---|---|---|
| Entry price / time / session | Anchors every downstream calc | Entry logged in MKT session |
| Exit price / time / session | Defines your realized slice | — |
| Session low → HOD | The full opportunity window | $0.80 → $4.72 |
| Full MFE % | Best possible low-to-high move | +492.8% |
| MAE (max adverse excursion) | How far it went against you first | — |
| MFE capture rate | Execution quality, 0–100% | (your fill dependent) |
| Catalyst type | Groups trades by driver | Warrant exercise ($4.5M) |
| RVOL at entry | Was the volume real? | 2004.0x ADV |
| Float | Rotation / squeeze potential | small-cap float |
| Mindset / emotion tag | Correlates psychology to slippage | — |
The first five columns are the ones most traders skip, and they are exactly the ones that turn a diary into a diagnostic tool. If you have read MFE vs Close Price: How a −36% Red Day Offered +1,075% Profit Potential, this is the operational follow-up: that article proved red days can be green trades; this one shows you how to log them so the lesson compounds.
The Metric That Changes Everything: MFE Capture Rate
MFE capture rate is the percentage of a trade's available move that you actually converted into P&L, and it is the most honest number in trading. The formula is simple:
MFE capture rate = (exit − entry) ÷ (session high − entry)
If you enter a runner at $2.00, it prints a high of $4.00, and you exit at $2.50, your capture rate is (2.50 − 2.00) ÷ (4.00 − 2.00) = 25%. You were right about the direction and right about the entry — and you took a quarter of the move. No P&L journal surfaces that. An MFE journal makes it the headline.
Why does this matter more than win rate? Because win rate is trivially gameable. Sell every position for a two-cent gain and you will run a 90% win rate straight into an empty account. Capture rate cannot be gamed — it directly measures whether your exits respect the size of the move your entry earned. Over a hundred trades, a trader who lifts capture rate from 20% to 35% on the same setups has meaningfully changed their equity curve without taking a single additional trade.
The reason this metric is so powerful in the small-cap universe specifically is the size of the moves. Last week's tape produced runners where the available excursion dwarfed anything you would see in large caps. When a name offers +492.8% low-to-high, the difference between a 15% capture and a 30% capture is enormous in dollar terms. Small-cap leadership is the current backdrop — the Russell 2000 (IWM) closed at $300.45, just −0.3% from its 52-week high and up +4.0% over 20 days — and when small caps lead, these excursions come more often, which raises the stakes on your exit discipline.
Worked Example: CELZ's +492.8% MFE and What Your Journal Would Reveal
CELZ on June 30 last week is a textbook case of why capture rate beats P&L. The stock traded 188.7M shares at 2004.0x its average daily volume. It opened the regular session at $2.61, ran to a session high of $4.72, then bled to a $1.41 market close — down −46.0% on the session. On a P&L-only journal, a trader who held into the close books a loss and moves on. On an MFE journal, the same day reads very differently: full-day range $0.80 to $4.72, a true MFE of +492.8% low-to-high across all sessions.
The catalyst was concrete and traceable: CELZ announced agreements for the exercise of warrants for $4.5 million in gross proceeds (Globe Newswire, June 30), alongside a mid-year update issued July 1. That is a dilution-adjacent event — warrant exercise brings shares into the market — and the price action reflected it, with a violent morning ramp and an equally violent fade. A journal entry for CELZ should tag the catalyst as "warrant exercise," note the 2004.0x RVOL, and record where in the $0.80–$4.72 range your entry and exit landed.

Run the capture math. Base every calculation on a $10,000 position. A trader who bought the open at $2.61 and sold into the $4.72 high converted the move into a $10,000 position worth roughly +80% — the exact figure depends on your fills, but the available full-range move was +492.8%. A trader who held to the −46.0% close instead turned green into red. The journal's job is not to make you feel good about the second trader; it is to record that the setup offered a large excursion and that the exit destroyed it. Do that fifty times and the pattern — "I hold parabolic warrant-driven ramps too long" — becomes impossible to ignore.
This is the same lesson as RVOL Explained: The #1 Scanner Filter Behind JZ's +355.6% MFE, applied to the exit instead of the entry. RVOL gets you into the right name; capture rate keeps you honest about what you did once you were in.
Worked Example: YHC's +2,088.5% MFE on a −89.7% Close Day
YHC on June 30 is the most extreme illustration of the MFE-versus-close gap on last week's tape. The stock traded a staggering 413.1M shares at 1305.2x ADV. Pre-market ran from $0.70 to a $1.45 high. The regular session opened at $0.76, high of $0.76, then collapsed to a $0.07 low and a $0.08 close — down −89.7% — with an after-hours close of $0.09. Full-day range $0.07 to $1.45. True MFE across all sessions: +2,088.5%.
The driver was a signed agreement: YHC announced a two-year ByteDance agreement deploying AI compute (Business Wire, June 30), accompanied by an 8-K filing the same day. The pre-market spike to $1.45 was where the entire opportunity lived. By the regular open at $0.76, the move had already peaked, and the session was a one-way liquidation.
Here is the journaling lesson YHC teaches that CELZ does not: session tagging is not optional. The +2,088.5% MFE is a pre-market number. A trader whose journal does not separate PM, MKT, and AH sessions would look at the regular-session data — open $0.76, close $0.08 — and conclude the day was pure carnage with no trade. That conclusion is wrong, and the journal caused the error by discarding session context. A template that logs pm_high ($1.45) separately from market_open ($0.76) preserves the truth: the opportunity was real, it was early, and it required a pre-market entry with a hard rule to be out before the regular open.
The takeaway is not "you should have caught +2,088.5%." No one catches the full range. The takeaway is that without session-level fields, your journal will systematically misclassify PM-driven runners as untradeable — and you will stop looking at exactly the names that offer the most.
The Contrast Trade: When Capture Is Easy
Not every runner fades. VNTG on June 25 last week closed the regular session green, up +16.2%, with a full-day MFE of +138.6%. It traded 40.0M shares at 1211.5x ADV, opened the regular session at $0.66, ran to $1.54, and closed at $0.77. The catalyst was a company statement: Vantage Corp issued a statement regarding recent trading activity (Business Wire, June 29).
VNTG belongs in your journal next to CELZ and YHC precisely because it closed green. When you tag catalysts and outcomes consistently, you start to see which setups let you hold — VNTG's more orderly structure held its close at $0.77 against a $1.54 high — versus which ones demand you take profit into strength before the fade, like CELZ's −46.0% reversal from $4.72. That distinction is invisible in a P&L journal and obvious in a capture-rate journal. Here is the full comparison across last week's names:
| Ticker | Date | Session Low → HOD | Full MFE | MKT Close | Close vs Session |
|---|---|---|---|---|---|
| YHC | Jun 30 | $0.07 → $1.45 | +2,088.5% | $0.08 | −89.7% |
| CELZ | Jun 30 | $0.80 → $4.72 | +492.8% | $1.41 | −46.0% |
| PLSM | Jun 24 | $3.35 → $19.52 | +482.7% | $6.57 | −37.1% |
| DCOY | Jun 29 | $6.50 → $18.96 | +191.7% | $9.60 | −20.0% |
| VNTG | Jun 25 | $0.65 → $1.54 | +138.6% | $0.77 | +16.2% |
DCOY fits the same mold as CELZ — a $21 million private placement (PRNewswire, June 27) drove a run to $18.96 before a −20.0% close at $9.60 on 12.8M shares. PLSM ran to $19.52 on a $7.5 million private placement (PRNewswire, June 25) and closed at $6.57, down −37.1%. Four of these five names closed red. All five offered triple-digit or better MFE. That is the entire argument for MFE-based journaling in one table.
Common Pitfalls Traders Make With Journals
The most common journaling mistake is logging only closed-trade P&L and treating the journal as an accounting ledger. Accounting tells you what happened to your money. A trading journal should tell you what happened to your decisions. If your journal cannot answer "which setup do I execute worst?" it is a ledger, not a journal.
The second pitfall is inconsistent tagging. A catalyst field that reads "news" on one row and "warrant thing" on another and is blank on a third cannot be grouped or filtered. Standardize your catalyst tags to a fixed vocabulary — offering/private placement, warrant exercise, contract or agreement, filing-driven, and unusual-volume-no-news — and use the same tag every time. CELZ and DCOY both tag as "private placement / financing," YHC tags as "agreement," and now you can compare your capture rate across financing-driven runners as a class.
The third pitfall is ignoring MAE — max adverse excursion, how far the trade moved against you before it worked. A trade that eventually hit +200% MFE but first drew down −15% against your entry is a very different trade psychologically than one that never went red. Logging MAE next to MFE reveals whether your stops are too tight (you keep getting shaken out of trades that later run) or too loose (you keep riding losers hoping for the CELZ-style ramp that does not come).
The fourth pitfall is skipping the mindset field because it feels soft. It is not soft. When you correlate an emotion tag — "FOMO entry," "revenge trade," "planned setup" — against capture rate, the pattern is usually brutal and specific: FOMO entries capture far less of the move than planned entries. That correlation only exists if you log the emotion at the time, not reconstruct it a week later.
A final pitfall specific to small caps: do not log earnings as your catalyst on sub-$20 names. Small-cap and penny stock earnings rarely move the stock. The drivers on last week's runners were financings, warrant exercises, and signed agreements — not quarterly numbers. If your journal's catalyst column is full of "earnings" on penny names, you are recording the wrong variable and your groupings will be meaningless.
How to Apply This With SNACS
You build the feedback loop with three tools: the scanner to find the setups, the trading journal to record capture rate, and the playbook to encode the exit rules your journal exposes. Here is the concrete workflow.
Find the setups on the SNACS scanner. Set RVOL to a high minimum, price range $0.50–$20, and sort by RVOL descending. That surfaces names like CELZ (2004.0x ADV) and YHC (1305.2x ADV) while the move is live. Click any ticker to open the ticker details page — you get the chart, the dilution risk panel (active shelf/ATM/warrant facilities), recent news, and SEC filings without leaving the scanner. That is where you confirm the catalyst tag before you ever take the trade: CELZ's warrant facility and DCOY's private placement both show up there. Save the filter as a named preset, and link it to a Dynamic Watchlist so matching tickers auto-populate in real time.
Record capture rate in the trading journal. The journal auto-syncs from 8 major brokers, so your fills land automatically. Add setup tags and the mindset/emotion log per trade, and let AI Insights do the correlation work — it analyzes your patterns across the exact fields this article describes: best setups, worst time-of-day, and MFE capture rate. That is the machine version of the fifty-trade pattern-spotting we described; it surfaces "you capture 18% on financing-driven fades and 41% on green-close continuations" without you running the math by hand.
Encode the exit rules in the AI Playbook Builder. Once your journal reveals that you hold parabolic warrant ramps like CELZ too long, build a playbook step that defines the exit: historical context → setup → trigger → entry → exit, each with its own timeframe. Active playbooks monitor every scanner ticker and drop a star indicator when a pattern matches, so the next CELZ-style ramp gets flagged against your own documented rule. For dilution-driven names, cross-reference the SEC research dilution snapshot — active facility counts and lowest exercise price — to know whether a financing overhang is about to cap the run.
For deeper reading on the entry side of this loop, Float Rotation Explained: When Volume Exceeds the Float covers why names like YHC — 413.1M shares traded — offer the largest excursions when volume laps a small float. Pair that entry logic with the capture-rate discipline here and your journal starts closing the loop instead of just recording it.
FAQ
What is MFE capture rate and why should I track it in my day trading journal?
MFE capture rate is the percentage of a trade's available move that you actually converted into profit, calculated as (exit − entry) ÷ (session high − entry). It matters because win rate and P&L can both be gamed by taking tiny gains, but capture rate directly measures whether your exits respect the size of the move your entry earned. Tracking it across many trades reveals which setups you execute well and which you consistently under-capture.
What fields should a day trading journal template include?
At minimum: entry and exit price/time/session, session low and high (HOD), full MFE %, MAE (max adverse excursion), MFE capture rate, catalyst type, RVOL at entry, float, and a mindset/emotion tag. The session low, HOD, MFE, and capture-rate fields are the ones most traders skip and the ones that turn a P&L diary into an actual diagnostic tool.
Why track MFE when a stock closes red anyway?
Because a red close does not mean the day offered no trade. CELZ closed down −46.0% on June 30 but ran from a $0.80 low to a $4.72 high — a +492.8% MFE. YHC closed −89.7% the same day yet offered a +2,088.5% MFE from $0.07 to $1.45. A journal that only logs the close discards the entire tradable opportunity and teaches you to ignore the most active names.
How do I log pre-market moves correctly?
Separate your journal fields by session — pre-market (4:00 AM–9:30 AM ET), regular market (9:30 AM–4:00 PM ET), and after-hours (4:00 PM–8:00 PM ET). YHC's +2,088.5% MFE was a pre-market event: it ran to $1.45 pre-market and opened the regular session at only $0.76. Without a pre-market high field, your journal would misclassify that runner as untradeable when the entire opportunity was early.
Should I track earnings as a catalyst for small-cap stocks?
No. Small-cap and penny stock earnings rarely move the stock, unlike large caps. The real catalysts on last week's runners were financings and agreements — CELZ's $4.5M warrant exercise, DCOY's $21M private placement, PLSM's $7.5M private placement, and YHC's ByteDance agreement. Tag those catalyst types instead so your journal groups trades by the driver that actually moved price.
How does MAE differ from MFE and why log both?
MFE is the best excursion in your favor; MAE is the worst excursion against you before the trade worked. Logging both tells you whether your stops are too tight — you keep getting shaken out of trades that later run — or too loose. A trade that hit a large MFE only after a deep MAE draw is a very different risk profile than one that never went against you, and only the pairing exposes it.
How do I use SNACS to build this journaling feedback loop?
Use the scanner with a high RVOL filter and the $0.50–$20 price range to find live setups, confirm the catalyst on the ticker details page, then record fills in the trading journal where AI Insights correlates your MFE capture rate against setups and time-of-day. Finally, encode the exit rules your journal exposes into the Playbook Builder so the next matching setup gets flagged with a star indicator against your own documented plan.
How many trades before a journal shows useful patterns?
Meaningful capture-rate patterns typically emerge once you have enough same-setup samples to group — the financing-driven fades (CELZ, DCOY, PLSM) versus green-close continuations (VNTG) become comparable classes only when each class has multiple entries. Consistent catalyst tagging is what makes the grouping possible, so standardize your tags from trade one rather than reconstructing them later.