
I started logging why my BTC 15m paper strategy stayed flat
I’ve been paper-trading some BTC 15m prediction-market entry logic, and the rejected entries are turning out to be more useful than the fills.
The useful part is not just the reason code. It’s the exact condition that made the strategy stay flat.
A few examples from the log:
- ASK_ABOVE_ENTRY_CAP: ask was above the max entry price
- BEFORE_DECISION_WINDOW: too early to make the call
- AFTER_ENTRY_WINDOW: entry window had already passed
- spread/depth failed: fill quality was not good enough
- stale inputs: snapshot was not safe to act on
No PnL flex. No “bot nailed it” screenshot. Just the strategy saying: price is wrong, timing is wrong, liquidity is too thin, or the input is stale.
That feels like the part most backtests quietly hand-wave away. A strategy can look fine if you only inspect the trades it took. The harder test is whether it can reject almost-good entries without overfitting itself into doing nothing.
I’m cleaning up the strategy/filter logic enough that the same paper decisions can be replayed and debugged, mostly because I want harsher eyes on the reject layer before trusting any green chart.
For people who trade these markets seriously: what would you need to see in paper logs before letting a strategy touch live funds?