Finalize GTL and retire S/R research harness
This commit is contained in:
+20
-92
@@ -1,99 +1,27 @@
|
||||
# Backtest report index
|
||||
|
||||
Reports dated 2026-07-11 or earlier are the historical production research
|
||||
record and are intentionally left untouched.
|
||||
record and remain untouched.
|
||||
|
||||
The retained 2026-07-12/13 S/R reports mark a decision or provide the matching
|
||||
control for one:
|
||||
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:
|
||||
|
||||
- The initial full-period clean-detector regression,
|
||||
`backtest-20260712-sr-detector-rewrite.json`, remains a local-only report and
|
||||
is intentionally not added to version control.
|
||||
- `backtest-sr-v2-train-production_control.json`: pre-July-2024 production
|
||||
control shared by the detector matrices.
|
||||
- `backtest-sr-v2-train-rewrite.json` and
|
||||
`backtest-sr-v2-train-rewrite_legacy_primary.json`: isolate detector geometry
|
||||
from the primary-target selector.
|
||||
- `backtest-sr-v2-train-rr_aligned_control.json` and
|
||||
`backtest-sr-v2-validation-rr_aligned_control.json`: show why primary target
|
||||
selection must not simply inherit the 2.0 activation floor.
|
||||
- `backtest-sr-traffic-train-legacy_traffic_grid_only.json`: reproduces the
|
||||
accidental legacy grid edge.
|
||||
- `backtest-sr-traffic-train-legacy_range_grid_neutral.json`: proves that the
|
||||
grid effect does not require volume or touch strength.
|
||||
- `backtest-sr-v2-validation-production_control.json` and
|
||||
`backtest-sr-v2-validation-legacy_range_grid_neutral.json`: the post-2024
|
||||
control and failed range-grid replication. The compact paired result remains
|
||||
in `sr-v2-validation-comparison.json` and `sr-v2-validation-cohorts.csv`.
|
||||
- `backtest-sr-range-factor-train-production_range504.json` and
|
||||
`backtest-sr-range-factor-train-rewrite_range504_legacy_primary.json`: isolate
|
||||
the explicit 504-day multiplicative-range factor.
|
||||
- `backtest-sr-range-residual-train-rewrite_range504_structural_legacy_primary.json`
|
||||
and `backtest-sr-range-residual-train-rewrite_range504_structural_primary2.json`:
|
||||
the final target-source and primary-floor decision.
|
||||
- `sr-v2-validation-comparison.json` and `sr-v2-validation-cohorts.csv` record
|
||||
the held-out detector comparison.
|
||||
- `sr-full-production-vs-candidate-comparison.json` and its cohort CSV record
|
||||
the full-period clean-structure replacement decision.
|
||||
- `sr-explicit-target-ladder-comparison.json` and 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/.md` pairs record the tuning,
|
||||
confirmation, and strength-sensitivity decisions. No stable improvement was
|
||||
found, so the production GTL stayed frozen.
|
||||
|
||||
The full-period production comparison writes:
|
||||
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.
|
||||
|
||||
- `backtest-sr-full-production_control.json`
|
||||
- `backtest-sr-full-rewrite_range504_structural_legacy_primary.json`
|
||||
- `sr-full-production-vs-candidate-comparison.json`
|
||||
- `sr-full-production-vs-candidate-cohorts.csv`
|
||||
|
||||
Those outputs should be retained as the final decision point for this research
|
||||
branch.
|
||||
|
||||
The follow-up breadth-preserving ranking experiment writes
|
||||
`backtest-sr-overlay-full.json`. Retain it only as the decision point for the
|
||||
pre-registered 5% clean-structure overlay; exploratory weight sweeps should not
|
||||
be committed.
|
||||
|
||||
The Gate Target Ladder (the `explicit_target_ladder` research arm) parity run
|
||||
writes:
|
||||
|
||||
- `backtest-sr-full-explicit_target_ladder.json`
|
||||
- `sr-explicit-target-ladder-comparison.json`
|
||||
- `sr-explicit-target-ladder-cohorts.csv`
|
||||
|
||||
These establish the final architectural decision: the volume-free explicit
|
||||
ladder retains all 1,086 qualified setups and exactly reproduces the production
|
||||
book (Sharpe 2.03, CAGR 50.0%, max drawdown 21.4%, 321 trades). The final rerun
|
||||
after scanner integration passed: the regenerated report changed only its
|
||||
`generated_at` timestamp, confirming that the shared helper preserves exact
|
||||
parity. Nothing in this research branch deploys the change to production.
|
||||
|
||||
The archived single-parameter decision point is:
|
||||
|
||||
- `backtest-20260713-gtl-tuning-matrix.json`
|
||||
- `backtest-20260713-gtl-tuning-matrix.md`
|
||||
|
||||
These two compact consolidated files are retained; the 20 full per-arm reports
|
||||
were removed after consolidation.
|
||||
|
||||
The completed 2026-07-13 matrix found no single-parameter replacement that
|
||||
passed all robustness checks. Retain its JSON and Markdown as that decision
|
||||
point. The retained-versus-added decomposition is retained as:
|
||||
|
||||
- `backtest-20260713-gtl-confirmation-matrix.json`
|
||||
- `backtest-20260713-gtl-confirmation-matrix.md`
|
||||
|
||||
Detailed per-arm reports were not retained.
|
||||
|
||||
The completed confirmation matrix found one near-hit but no formal winner:
|
||||
strength-1000 intersection improved full/train/post-2024 Sharpe and CAGR, while
|
||||
max drawdown worsened from 21.4% to 21.7%. Retain that matrix as the cohort-
|
||||
decomposition decision point. The final stability check is retained as:
|
||||
|
||||
- `backtest-20260713-gtl-strength-sensitivity.json`
|
||||
- `backtest-20260713-gtl-strength-sensitivity.md`
|
||||
|
||||
Its pre-registered decision requires at least two adjacent scales to pass all
|
||||
six unchanged checks.
|
||||
|
||||
Final sensitivity result: exact control and strength-1000 replication passed.
|
||||
Scale 1500 was the sole 6/6 arm, but no adjacent scale passed, so the stable-
|
||||
plateau rule rejected it. Retain the consolidated JSON/Markdown as the closing
|
||||
GTL decision point. No confirmation or tuned strength value should be promoted
|
||||
from this snapshot.
|
||||
|
||||
The temporary matrix runners and their configurable backtest hooks were removed
|
||||
after consolidation. The normal local snapshot backtester remains.
|
||||
The initial untracked `backtest-20260712-sr-detector-rewrite.json` is local-only
|
||||
and is intentionally not part of the repository.
|
||||
|
||||
Reference in New Issue
Block a user