The daily Turtle yields about 2 trades per product-year, so no per-asset sample of 100 exists even in 5 years of history. Hourly bars fire far more often: #427's reconstruction measured about 49 signals per asset-year.
Plan
Run keel simulate --years 5 over the hourly paper rule set (config.paper-hourly.yaml and the hourly rule rows) on a copy of the database, and report N, win rate and R-expectancy per product and pooled.
Fee guardrail
Fees must be the ones actually paid, not a hopeful tier:
- The simulator charges 1.20% taker per leg plus per-product slippage (5 to 101 bp).
- The forward trades on this deployment recorded at least 1.136% per leg (pooled-review preview, 2026-09-26).
- A 0.40–0.60% per-leg run is reported only as a labelled sensitivity, never as the headline. Higher-frequency breakouts pay fees and whipsaw on every round trip, and understating fees is the flattering direction.
Depends on the R-multiple fix, so the pooled expectancy is meaningful.
The daily Turtle yields about 2 trades per product-year, so no per-asset sample of 100 exists even in 5 years of history. Hourly bars fire far more often: #427's reconstruction measured about 49 signals per asset-year.
Plan
Run
keel simulate --years 5over the hourly paper rule set (config.paper-hourly.yamland the hourly rule rows) on a copy of the database, and report N, win rate and R-expectancy per product and pooled.Fee guardrail
Fees must be the ones actually paid, not a hopeful tier:
Depends on the R-multiple fix, so the pooled expectancy is meaningful.