Depends: #118 , #111
GridOptimizer runs hundreds of backtests — price data must be loaded once and reused.
Scope:
- Verify CandleCache / DB path: first load populates cache; subsequent reads in same process hit cache
- Add integration note or test: simulate N strategy runs on same (instrument, timeframe) → no duplicate broker fetch (when data already in DB)
- If gap found: fix cache key or expose ensure_candles_loaded() for optimizer entrypoint
Definition of Done:
- Documented contract: "optimizer receives pre-loaded price series, does not call broker"
- Test or scripted check demonstrating cache reuse
- Samy confirms GridOptimizer receives in-memory series, not re-fetching per combo
Depends: #118 , #111
GridOptimizer runs hundreds of backtests — price data must be loaded once and reused.
Scope:
Definition of Done: