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.
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
-250680
File diff suppressed because it is too large
Load Diff
-250733
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user