Pre-registered test of raising the stop to entry once a trade is +1R or +2R, on top of the 3x ATR trail. be_1r fails the frozen rule (train worse on all three graded metrics, test drawdown worse); be_2r changes 2 of 480 trades because the trail already reaches entry near +2R. The production exit stays. Breakeven exits get their own breakeven_stop label. They follow live re-entry semantics (only initial-stop exits lock re-entry), and an ungraded be_1r_gated diagnostic arm sends them through the post-stop gate reset instead. The trail and breakeven ratchet share one helper, so breakeven also applies on a next_open fill bar. breakeven_r is validated, verdicts flag passes that are only ties, and the graded capacity comes from the shadow book config. Every graded number and the parity row are unchanged from the first run. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Backtest report index
The 2026-10-09 breakeven-stop exit test is preserved in
backtest-20261009-breakeven-stop.json (regenerated 2026-10-10 after a code
review, with no graded number changed). Its breakeven_stop_study section holds
the parity guard, the graded rows and verdicts for control, be_1r and
be_2r, and the ungraded be_1r_gated diagnostic rows. No arm passed with a
real difference from control, so the production exit is unchanged.
Interpretation: breakeven-stop.md.
Reports dated 2026-07-11 or earlier are the historical production research record and remain untouched.
The completed 2026-07-12/13 S/R and Gate Target Ladder research is preserved as compact decision evidence instead of full per-arm replay output:
sr-v2-validation-comparison.jsonandsr-v2-validation-cohorts.csvrecord the held-out detector comparison.sr-full-production-vs-candidate-comparison.jsonand its cohort CSV record the full-period clean-structure replacement decision.sr-explicit-target-ladder-comparison.jsonand its cohort CSV record exact GTL parity: 202,765 candidates, 1,086 qualified setups, 321 book trades, Sharpe 2.03, CAGR 50.0%, and max drawdown 21.4% in both arms.- The three
backtest-20260713-gtl-*.json/.mdpairs record the tuning, confirmation, and strength-sensitivity decisions. No stable improvement was found, so the production GTL stayed frozen.
The large backtest-sr-*.json replay files were removed after consolidation.
They duplicated hundreds of thousands of candidate rows while adding no
decision information beyond the compact comparisons and the narrative in
docs/research/sr-levels-and-exits.md. The original raw files remain available
in Git history if a forensic reconstruction is ever necessary.
The initial untracked backtest-20260712-sr-detector-rewrite.json is local-only
and is intentionally not part of the repository.
The 2026-07-17 post-stop re-entry decision is preserved in
daily_reentry_matrix.json. It is the canonical source for the nine-policy
daily replay, production-like full-universe ranking, the disjoint 2025+ book,
and the cost/capacity sensitivity matrix. The interpretation and production
decision live in
docs/research/post-stop-reentry.md.
The earlier post-stop-reentry-20260717.json,
post-stop-cooldown-sweep-20260717.json, and
gate-protected-stop-20260717.json reports were removed as superseded
intermediate experiments. They used weekly/hybrid entry cadence or tested the
rejected stop-adjustment path, and add no decision evidence beyond the final
daily matrix and narrative. Their matching one-off runners were removed too.
All remain recoverable from Git history. Rebuildable candidate pickle caches
are intentionally ignored and must not be committed.
Phase B fip breadth IC (2026-07-18/19) — compact evidence
Canonical artifacts:
fip-reconcile-20260719-000520.json— single-sourced authoritative ICs (unconditional liquid fip, tiers, prod-subset, mom-conditional, context signals). Membership symbol dumps stripped after the decision; narrative indocs/research/fip-breadth-ic.md.fip-breadth-20260718-211440-fingerprint.json— prod-snapshot fingerprint pass (fip IC −0.045 / t −2.91).
Removed as superseded / dangerous intermediate noise (recoverable from Git):
fip-breadth-20260718-211440-breadth.json(+ wrapper) — orphaned +0.0575 / t +5.12 from racing a partialresearch.sqlite. Kept out of the tree so it cannot be re-mythologized.fip-breadth-20260718-194828*.json— fingerprint-only partial run.fip-breadth-diagnostics-20260718-213705.jsonand…-213908.json— dual-path diagnostics superseded by the single-sourced reconcile.