research: prepare prod book universe x horizon 4-arm matrix

Pre-register A-D (4y/2016 x 505/505+liquid) with unchanged production knobs.
Runner caches full GTL candidates then re-ranks per arm; MacBook entry via
run_tier1_macbook.sh --prod-book-matrix.
This commit is contained in:
2026-07-19 11:58:52 +02:00
parent 9717d8176b
commit 9171e366ee
3 changed files with 809 additions and 1 deletions
+16 -1
View File
@@ -16,6 +16,7 @@
# ./scripts/run_tier1_macbook.sh --harness-only # skip rebuild; race-guard + IC only
# ./scripts/run_tier1_macbook.sh --coverage-only # bars-per-year probe only
# ./scripts/run_tier1_macbook.sh --sector-resid-deep # deepen shallow + ONE masked grade
# ./scripts/run_tier1_macbook.sh --prod-book-matrix # 4-arm universe×horizon book matrix
#
# Does NOT touch production Postgres, scheduler, gates, or prod config.
@@ -36,7 +37,7 @@ FMP_SLEEP="${FMP_SLEEP:-0.35}"
PYTHON="${PYTHON:-python3}"
USE_CORP_PROXY="${USE_CORP_PROXY:-0}"
PHASE="depth" # depth | all | earnings | harness | coverage | ssl | sector-resid-deep
PHASE="depth" # depth | all | earnings | harness | coverage | ssl | sector-resid-deep | prod-book
usage() {
sed -n '2,25p' "$0" | sed 's/^# \?//'
@@ -61,6 +62,7 @@ while [[ $# -gt 0 ]]; do
--depth) PHASE=depth; shift ;;
--ssl-check) PHASE=ssl; shift ;;
--sector-resid-deep) PHASE=sector_resid_deep; shift ;;
--prod-book-matrix) PHASE=prod_book; shift ;;
--corp-proxy) USE_CORP_PROXY=1; shift ;;
--prod-snap) PROD_SNAP="$2"; shift 2 ;;
--research-snap) RESEARCH_SNAP="$2"; shift 2 ;;
@@ -237,6 +239,16 @@ run_sector_resid_deep() {
--allow-spawn
}
run_prod_book_matrix() {
need_file "$RESEARCH_SNAP"
log "Production book × universe × horizon (4 arms, strategy unchanged)"
"$PYTHON" scripts/run_prod_book_universe_matrix.py \
--snapshot "$RESEARCH_SNAP" \
--workers "$WORKERS" \
--allow-spawn \
--candidate-cache reports/.cache/prod-book-universe-cands.pkl
}
log "cwd=$ROOT python=$PYTHON phase=$PHASE workers=$WORKERS"
setup_ssl
@@ -247,6 +259,9 @@ case "$PHASE" in
sector_resid_deep)
run_sector_resid_deep
;;
prod_book)
run_prod_book_matrix
;;
coverage)
run_coverage
;;