🇭🇰 香港天气仪表盘 (weather/hk)


页面: [https://polymkt.lt.sopher.cool:4433/weather/hk](https://polymkt.lt.sopher.cool:4433/weather/hk)
模板: templates/weather_hk.html
后端: app.py/weather/hk 路由组

页面功能


HK Weather Dashboard 是香港天气预测的核心可视化页面,提供:


1. 实时温度监控 — 40+ 气象站的 1-min 温度 CSV 数据

2. 多站预测模型 — 10 信号加权集成预测,每 10 分钟更新

3. 历史曲线 — 当日温度走势 + 过去 N 天对比

4. LLM 分析 — AI 辅助预测和决策建议

5. Polymarket 数据 — 实时订单簿 + 做市仓位


API 端点


端点方法功能
/api/weather/hk/liveGET轻量实时温度 (轮询 60s)
/api/weather/hk/allGET完整数据面板
/api/weather/hk/tomorrowGET明日预测
/api/weather/hk/history-curvesGET历史温度曲线
/api/weather/hk/positionsGET当前持仓
/api/weather/hk/bracketGET区间分析
/api/weather/hk/day-over-dayGET日环比分析
/api/weather/hk/recalcGET强制重算预测
/api/weather/hk/llm-analyzePOSTLLM 单温度分析
/api/weather/hk/llm-predictPOSTLLM 明日预测
/api/weather/hk/full-llm-analyzePOSTLLM 全温度分析
/api/weather/hk/tomorrow/analyzePOST明日 LLM 分析
/api/weather/hk/llm-bettingGETLLM 下注建议

数据流



HKO Open Data API
    ├── rhrread (当前天气, 每小时)
    ├── latest_1min_temperature.csv (每10分钟)
    ├── latest_since_midnight_maxmin.csv (每10分钟)
    ├── fnd (9天预报, 每日2次)
    └── dailyExtract XML (每月结算)
            │
            ▼
    hko_predict.py (10信号集成预测)
            │
            ▼
    /api/weather/hk/all → 前端 ECharts 渲染
            │
            ▼
    weather_hk.html (可视化面板)

前端技术


  • 图表: ECharts 5.4.3
  • 实时更新: 60s 轮询 /api/weather/hk/live
  • LLM 集成: 可选的 AI 辅助分析
  • Polymarket 联动: 订单簿和仓位数据

  • 关键指标


    指标说明
    当前最高温40+站中的最高温度
    HKO 预报最高天文台官方预报
    模型预测值10信号加权集成结果
    预测置信区间±1°C 范围
    降雨概率 PSR影响温度预测

    已知问题修复


    2026-05-20: 早晨27°C概率偏高


    症状: 早上8-10点,模型严重低估全天最高温(如5/20早上预测27.7°C,实际已达28.2°C且还在上升)。


    根因 #1 - 内陆站早晨低估:

  • 内陆站回归公式 0.88*avg_lead+3.0 基于下午内陆达峰后校准
  • 早晨内陆站仍在快速升温(>0.8°C/h),直接用当前max会低估2-3°C
  • 修复: current_hour < 11 时添加"早晨升温修正" = (12h - 当前时间) * 0.7°C/h
  • 仅在内陆站已超HKO时生效(避免冷锋日误修正)

  • 根因 #2 - 日变曲线EMA被冷锋日污染:

  • 过去7天的日变曲线EMA包含冷锋日(如5/16=25.6°C vs 7日均=28.3°C)
  • 导致EMA峰值仅26°C,严重拖低估测
  • 修复: 构建EMA前排除日最高温<7日均-2.5°C的异常冷日
  • 至少保留3天数据,不足则不排除

  • 2026-05-20: 太阳辐射先行指标


    发现: 太阳辐射是最有效的温度先行指标(领先5-20分钟)

  • 11:00 辐射 400→967 W/m²(云层消散)→ 11:10 HKO温度+0.5°C
  • 持续强辐射(>600 W/m²) → 持续升温0.5-1.0°C/h
  • 辐射急降(<-200 W/m²) → 云层回归 → 升温停滞

  • 修复清单:

    1. 数据管道: 天文台站无太阳辐射传感器 → 使用京士柏站(King's Park, ~2km)代理

    - hko_data_fetcher.py 添加 HKO solar fallback

    2. 太阳动量信号 (Signal 7): 替换静态日均太阳辐射

    - 读取最近30分钟太阳辐射时序数据

    - 计算辐射动量(surge) + 持续水平(level)

    - 投影温度变化: lower_bound + 升温速率 × 剩余时间 + surge_bonus

    - 动态权重: surge>200 → 12%, 强辐射>600 → 9%, 常规 → 4%


    2026-05-20: 三大数据缺失修复


    缺失 #1: UV指数 — HKO已发布但未使用

  • 修复: hko_obs 新增 uv_index 列, 从 rhrread API 获取京士柏站UV
  • 信号: UV 0-2→冷, 3-5→中等, 6-7→高, 8-10→极高, 11+→极端
  • 权重: 2-8% (UV越高权重越大)

  • 缺失 #2: 风速风向 — 天文台站不在10min风CSV中

  • 修复: 使用京士柏站/天星码头站作为风向代理
  • 信号: 偏南风(海风)→降温, 偏北风(内陆)→升温, 风速越大置信越高
  • 权重: 0-6% (风速越大权重越大)

  • 缺失 #3: NWP bias动态更新 — bias=1.0是静态值, NWP今天偏差+3.1°C

  • 修复: hko_daily 新增 nwp_raw_mean 列, 预测时自动存储
  • 每日结算后自动对比 actual_max vs nwp_mean → 更新bias EMA (alpha=0.3)
  • 首次更新将在明天 (5/21) 结算后生效

  • 代码: scripts/hko_predict.py (Signal 7 solar + Signal 8 wind + Signal 8b UV + NWP bias), scripts/hko_data_fetcher.py (solar/wind fallback + UV storage + auto bias update)


    2026-05-20: σ振荡修复


    症状: 不确定度σ在14:02-14:08期间±0.27大幅跳动,导致前端概率分布/预测数字来回跳。

    根因: 多个sigma收紧/放宽规则(9个不同阈值: 0.09/0.15/0.22/0.30/0.35/0.5/0.6...)随hko_temp每0.1°C波动切换不同路径。

    修复: 在所有sigma计算完成后加EMA平滑 σ = 0.35raw + 0.65prev,限制单次变化速率,确保σ平滑过渡。


    代码: scripts/hko_predict.py (sigma_effective EMA smoothing after all caps)


    相关组件


  • scripts/hko_predict.py — 预测模型主程序
  • scripts/hko_data_fetcher.py — 数据采集
  • scripts/hko_live_predict.py — 实时预测
  • scripts/hko_llm_betting.py — LLM 下注
  • scripts/hko_llm_reasoning.py — LLM 推理
  • strategy/hk_day_over_day.py — 日环比策略
  • strategy/hk_analog_day.py — 历史相似日策略