Backtesting & Replay5 min read

A Logging Workflow That Survives Three Hundred Trades

Replay Trader Editorial Team

Educational content for Indian traders on deliberate practice, chart replay, and setup discovery. Not investment advice.

A practice log that looks rigorous on day three is usually dead by day eighteen. The fields were designed for a Sunday analyst, not for decision 280 on a Thursday after a grind session. You skip “just this one.” Then you skip the week. Then you grade the stub from memory.

The classification journal already answers what to capture. The ninety-second debrief already answers how little you can write per trade. This page is the workflow that keeps those fields fillable when the block is long: 10 practice trades a day × 30 days ≈ 300 practice decisions, inside a finite ₹999 month if you use Replay Trader that way — volume that will punish any log that needs a paragraph.

The test is simple. If you would still complete the row after a messy skip at 14:40, the workflow survives. If you would not, cut the row until you would.

Checklist: the two-tier log

Tier 1 — during the session (one row per decision, including skips)

Fill immediately after the commit, before the next candle you care about. Allowed time: the length of one bar on your decision timeframe, not a coffee.

Field Allowed values Why it survives 280
session_id block-date-or-blind-id Join key; no prose
clock 09:15–10:00 / 10:00–11:30 / 11:30–14:00 / 14:00–15:30 NSE session structure without a diary
setup_tag your frozen stub name or NONE Prevents untagged “feels like a trade”
decision enter / skip / exit / flatten Skips stay first-class
process 0 / 1 / 2 Rule adherence, not P&L
urge none / chase / delay / revenge / boredom / peek One word; the leak you will actually filter
fill_assumed next-open / close / worst-of-bar / other Stops silent generosity
keep? Y / N N = contaminated (peek, rewrite, wrong universe)

That is eight fields. If you cannot fill eight, you cannot fill twenty later. Do not add screenshots to Tier 1.

Tier 2 — once per week (not per trade)

Three fields only. Calendar a 20-minute slot. If the slot slips, the week’s Tier 1 rows still exist; you have not lost the block.

Field Question it answers
leak_of_week Which urge × clock cell filled up?
one_rule_edit None, or one sentence dated; never a silent rewrite
mix_check Did I actually practise the session windows I claimed?

Weekly review of process, not a cinema of winners, belongs with process metrics instead of P&L. Outcome columns may exist in the sheet; they do not get a weekly sermon.

Failure modes (name them so you can tag them)

Field bloat. You add market_narrative, what_I_felt, what_I_should_have_done. Decision 40 is still enthusiastic. Decision 180 is empty. Cut until the row is faster than the excuse.

Sunday essay. You skip Tier 1 because “I’ll write it up at the weekend.” You will invent process scores to match remembered P&L. Ban end-of-week reconstruction except for keep?=N notes.

Outcome rewrite. Green trade gets process 2; red trade gets a paragraph. Invert the rule: process is scored before the exit is known, or it is scored 0.

Skip erasure. Fast-forward through midday and log only entries. You have trained overtrading and called it a sample. Skips are rows.

Peek laundering. You saw the next hour, rewound, “decided,” logged process 2. keep? must be N. Those rows inflate everything.

Tool hopping. Phone note, then Sheets, then a journal app. The workflow is one surface. Replay Trader practice trades plus a thin sheet is enough; AI analysis, if you use it, is a review aid after the row exists — not a substitute for the row.

Expertise cosplay. Treating 300 filled rows as proof you can trade live. The log measures adherence and classification. It does not mint a professional.

Workflow that stays mechanical

  1. Open the sheet before the chart. If the log is not open, you are browsing.
  2. Pre-fill session_id, stub name, speed mode, fill assumption. Those do not change per bar.
  3. On each commit, tab through the eight fields. No full sentences. If you need a sentence, you are late — mark process 1 and move.
  4. Hard stop when the daily decision cap hits, even if the tape is pretty. Caps protect the log as much as the stub.
  5. Close the chart, leave the log open for sixty seconds. Catch the skip you did not row.
  6. Friday: fill the three Tier 2 cells from filters, not from vibe. Then stop.

If a field was blank more than twice in a week, delete the field. A missing column you would have ignored is better than a fake column you fill with fiction.

What this log is for — and not for

For: spotting that boredom × 11:30–14:00 is where process 0 lives; noticing that peek clusters after two red rows; seeing that you never skip in the first hour.

Not for: publishing a win rate; proving the stub; replacing a reproducible test record. Those are different artefacts. The surviving log is a fatigue-resistant instrument. Keep it ugly and used.

Indian session tags matter because the open, the grind, and the last hour are different jobs. A log that only stores “intraday” will not show you which job you fail.

Practice fills still ignore brokerage, STT and slippage. A perfect log of generous fills is still optimistic. Record fill_assumed so you cannot pretend otherwise at decision 280.

Design the row for the tired you who still has eighty decisions left. Join the waitlist.

Educational note

Educational practice content only. Not investment advice. No guaranteed returns. Practice ≠ live profitability.