Request:
Explain and fix why the recent 30-day listed IPO review showed data_gap in the 股票名 column.
Cause:
The recent review sample was seeded from HKEX annual new-listing reports, which only carried English issuer names in ipo_master. The archived ipohk external history already had display stock names, but build_analysis_dataset.py did not expose external_ipo_history.stock_name as a stock_short_name fallback.
Changes:
- Use external_ipo_history.stock_name as a stock_short_name fallback in the analysis dataset after the official/master and market-heat display-name sources.
- Backfill blank ipo_master.stock_short_name values when future ipohk history archives carry a stock name.
- Document the external-history display-name fallback in the analyst skill.
- Refresh the latest report and README so the recent 30-day review shows stock names for 00901, 02723, 03310, 03388, 02553, 01081, 01779, and 02290.
Verification:
- python3 /root/.codex/skills/.system/skill-creator/scripts/quick_validate.py .agents/skills/hk-ipo-analyst
- .venv/bin/python -m py_compile scripts/archive_ipohk_history.py scripts/build_analysis_dataset.py
- git diff --check
- Rebuilt analysis_model_v0_dataset.csv for 2026-06-23T10:59:36Z
- Python check that README matches the dated latest report and recent-review stock-name cells are no longer data_gap
Request:
- Add historical data around T0.5 margin heat and rebuild the model.
Changes:
- Add external_ipo_history to store third-party historical IPO records separately from true T0.5 market-heat snapshots.
- Add scripts/archive_ipohk_history.py to archive ipohk structured listed IPO history.
- Archive 807 ipohk rows, including final oversubscription, one-lot win rate, grey-market return, and first-day return where available.
- Extend the v0 analysis dataset with true T0.5 market-heat columns and separate external final-heat columns.
- Rebuild reports/2026-06-15_analysis_model_v0.md with T0.5 coverage and external final-heat calibration.
- Add a Chinese report explaining why historical final oversubscription cannot be treated as T0.5 margin snapshots.
- Update analyst and archivist skills to keep T0.5 and external final history separate.
Verification:
- .venv/bin/python -m py_compile scripts/build_analysis_dataset.py scripts/archive_ipohk_history.py scripts/archive_t0_5_market_heat.py
- .venv/bin/python scripts/build_analysis_dataset.py --as-of 2026-06-15T19:20:00Z
- Python sqlite3 PRAGMA integrity_check returned ok and foreign_key_check returned zero rows.
- Confirmed 807 external_ipo_history rows, 792 rows with external final oversubscription, 5 true T0.5 market-heat rows, and 297 analysis dataset rows.
- git diff --cached --check
Next useful context:
- True T0.5 historical backtesting still requires ongoing frozen margin-heat snapshots during each IPO subscription window.