Add T0.95 late-order heat stage

Request:
- Reflect that near-final market heat can be used when the user can still place an IPO order at T0.95.

Changes:
- Added T0_95_final_heat as a separate analyst decision stage with executability and no-leakage rules.
- Added an experimental T0.95 rule overlay for late-order heat scoring and calibration discipline.
- Updated archivist guidance and the market-heat archiver so snapshots can be explicitly stored as T0_95_final_heat.
- Added market_heat_stage to the analysis dataset and refreshed the model report to show T0.95 coverage separately.

Verification:
- Ran py_compile for the modified scripts.
- Checked archive_t0_5_market_heat.py --help for the new --stage option.
- Rebuilt data/snapshots/analysis_model_v0_dataset.csv and reports/2026-06-15_analysis_model_v0.md.
- Ran git diff --check.

Next useful context:
- Current archived heat rows remain T0_5_market_heat only; there are no true T0.95 rows yet.
- external_ipo_history.public_oversubscription_times is still calibration-only unless a comparable value is archived before the executable order cutoff.
This commit is contained in:
2026-06-15 16:28:26 +00:00
parent 5e35242a76
commit 19832ac5af
8 changed files with 479 additions and 312 deletions
+8 -2
View File
@@ -1,7 +1,7 @@
# HK IPO Analysis Model v0
- Model version: `ipo_score_v0`
- Analysis as of: `2026-06-15T19:20:00Z`
- Analysis as of: `2026-06-15T19:30:00Z`
- Rule file: `rules/ipo_score_v0.yaml`
- Dataset: `data/snapshots/analysis_model_v0_dataset.csv`
@@ -21,8 +21,11 @@ The model is built for a short IPO allocation trade: sell in T2 grey market when
- Rows with offer size: 297
- Rows with public oversubscription: 281
- Rows with international oversubscription: 277
- Rows with market heat snapshots: 5
- Rows with T0.5 margin heat snapshots: 5
- Rows with T0.95 late-order heat snapshots: 0
- Rows with T0.5 margin heat and D1 labels: 0
- Rows with T0.95 late-order heat and D1 labels: 0
- Rows matched to external ipohk history: 102
- Rows with external final oversubscription: 95
- Rows with external final oversubscription and D1 labels: 85
@@ -54,10 +57,13 @@ T1 adds allotment-stage demand: public subscription, international placing deman
## T0.5 Market Heat
T0.5 uses archived subscription-period margin heat snapshots. These are non-official live signals and are kept separate from T1 allotment demand. The current archive is not yet a historical training set: it has too few rows and no D1 labels for calibration.
T0.5 uses archived subscription-period margin heat snapshots. T0.95 is the near-deadline subset that is still actionable before the user's order cutoff. These are non-official live signals and are kept separate from T1 allotment demand. The current archive is not yet a historical training set: it has too few rows and no D1 labels for calibration.
- Total market heat rows: 5
- T0.5 margin rows: 5
- T0.5 rows with D1 labels: 0
- T0.95 late-order heat rows: 0
- T0.95 rows with D1 labels: 0
## External Final Heat Proxy