flywheel: schedule eod_replay + nightly_tune in both compose scheduler blocks
The tuner was fiction in production: the 20:00 ET scheduler ran only premarket_eval (+ eod_reconcile), so learned_params.json sat 26 days stale and the whole-market dataset never grew. Both scheduler loops now run, in order, after the eval/reconcile pass: python eod_replay.py || echo "[scheduler] eod_replay FAILED" python nightly_tune.py || echo "[scheduler] nightly_tune FAILED" Order matters: replay grows the dataset first, the tuner fits after. 20:00 ET is after close, so replaying "today" is complete data — NOT look-ahead (replay is a labeling job, not a live gate). Deletes eod_replay.sh (dead cron-era wrapper pointing at a nonexistent venv; compose is the runner). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b737acfc2c
commit
3e2d690b21
3 files changed
+10
-11
No files matched your search
@@ -191,6 +191,11 @@ services:
|
||||
if [ "$$(date +%H:%M)" = "20:00" ] && [ "$$(date +%u)" -le 5 ]; then
|
||||
python -m research.premarket_eval || echo "[scheduler] eval FAILED"
|
||||
python -m research.eod_reconcile || echo "[scheduler] reconcile FAILED"
|
||||
# Flywheel: grow the whole-market dataset first, then fit the tuner on
|
||||
# it. 20:00 ET is after close, so replay of "today" is complete data —
|
||||
# NOT look-ahead (replay is a labeling job, not a live gate).
|
||||
python eod_replay.py || echo "[scheduler] eod_replay FAILED"
|
||||
python nightly_tune.py || echo "[scheduler] nightly_tune FAILED"
|
||||
sleep 120
|
||||
fi
|
||||
sleep 20
|
||||
|
||||
Reference in new issue
Block a user