I exported my last 200 trades into a CSV and pasted it into a language model. Then I asked one question: what patterns do you see that I'd deny if you said them out loud?

The answer stung. It was also right.

What it caught that I couldn't

Three things stood out. First, a cluster of entries within 40 minutes of a stop-out, each one slightly bigger than the last. I'd never counted them. In my head they were separate decisions. In the data they were one bad afternoon repeated.

Second, size creep. After any three-trade winning streak, my position size drifted up by roughly a fifth. No rule said to do that. I just felt good.

Third, a time-of-day pattern. My worst entries clustered late at night, when I was tired and the better setups of the day had already passed. I knew I traded late. I didn't know it was where most of my damage lived.

None of this is exotic. A spreadsheet pivot table could find it. But you have to think to ask, and when you're inside the habit, you don't. A model has no ego about your trades. It just reads rows.

Why you can't see this from inside

Every trade felt reasonable when I placed it. That's the problem. Revenge trades don't announce themselves, and size creep feels like earned confidence.

Your memory is also a bad witness. You remember the big winner and the one spectacular blunder. You forget the twelve small, sloppy entries in between, which is where the money actually leaks.

Reading your own history cold, as if it belonged to a stranger, is hard. Handing it to something that has no stake in your self-image makes it a lot easier.

I should be honest about the cost. It took me ten minutes and one uncomfortable evening. The model didn't tell me anything I couldn't have found myself months earlier, if I'd been willing to look. That's the real value: it removes the excuse.

How I run it without fooling myself

Give it clean data: timestamp, side, size, entry, exit, P&L, and a short note field if you keep one. Messy exports produce confident nonsense.

Ask for patterns, not predictions. Questions like "what happens to my size after losses?" and "which hours have the worst average result?" work well. "What will I make next month?" doesn't, and anyone who tells you it can answer that is selling something.

Then check the arithmetic yourself. Language models can miscount, and they will happily describe a pattern that three trades happened to produce. If it says something surprising, filter the spreadsheet and verify. I've had it flag a "trend" that disappeared the moment I counted by hand.

Also mind your sample. Two hundred trades is enough to spot a loud habit and nowhere near enough to prove a subtle edge. Treat findings as leads, not verdicts.

The part that matters: turn it into a rule

A finding you only nod at changes nothing. Mine became two rules. After a stop-out, no new entry for an hour. After a winning streak, size goes back to baseline, not up.

Neither rule is clever. They're just the discipline I already believed in, written down where I can't negotiate with it at 11 p.m.

This is also the quiet case for systematic trading. A rule-based system doesn't need a model to catch its revenge trades, because it doesn't have any. If you still trade by hand, though, an honest outside reader of your log is the cheapest coach you'll find.

Try it this week. Export the log, ask the uncomfortable question, verify the answer, and write one rule. If you want to see how we handle the rules side, our methodology is published at v33systematic.com.