feat: Enhance real-time data fetching with cache control and primary MGM sourcing for Ankara, and add technical debt documentation.
This commit is contained in:
+10
-9
@@ -4,7 +4,7 @@
|
||||
[](https://opensource.org/licenses/MIT)
|
||||
[](https://deepwiki.com/yangyuan-zhen/PolyWeather)
|
||||
|
||||
PolyWeather 是一款专为 **Polymarket** 等预测市场打造的天气分析工具。它通过聚合多源气象预报、实时机场 METAR 观测,并引入数学概率模型与 AI 决策支持,帮助用户更科学地评估天气博弈风险。
|
||||
PolyWeather 是一款多模型气象分析与量化工具。它通过聚合高精度气象预报、实时机场 METAR 观测,并引入数学概率模型与 AI 决策支持,为气象风险评估和数据驱动的交易决策提供深度洞察。
|
||||
|
||||
<p align="center">
|
||||
<img src="docs/images/demo_ankara.png" alt="PolyWeather 效果展示 - 安卡拉实时分析" width="420">
|
||||
@@ -26,9 +26,10 @@ PolyWeather 是一款专为 **Polymarket** 等预测市场打造的天气分析
|
||||
|
||||
- **全球纵览**:基于 Leaflet 的暗黑全屏实时地图,直接采用官方结算机场经纬度进行追踪与显示。
|
||||
- **渐进式数据流加载**:进图后智能在后台无感知拉取,不触发 API 频率限制。
|
||||
- **丰富的数据可视化**:Chart.js 温度走势图叠加 METAR 实测散点,多模型对比条形图,高斯概率分布条,实时风险等级色彩系统。
|
||||
- **镜头与日期联动**:点击城市平滑飞入。**多模型预报区域**会根据“逐日预报”选中的日期自动刷新(支持未来 3-5 天的各模型对比与 DEB 融合值切换)。
|
||||
- **双引擎共生**:FastAPI 后端与 Telegram Bot 共享同一份分析逻辑(`analyze_weather_trend`)和 AI Prompt 管线,确保两端输出完全一致。
|
||||
- **数据可视化**:Chart.js 温度走势图叠加 METAR 实测散点,多模型对比条形图,高斯概率分布条,实时风险等级色彩系统。
|
||||
- **镜头与日期联动**:点击城市平滑飞入面板。**多模型预报区域**会根据“逐日预报”选中的日期自动刷新,支持查看未来 5 天各模型的历史表现与融合预测值。
|
||||
- **强制同步与缓存控制**:针对安卡拉等重点区域,Web 端支持 60 秒极速缓存 TTL,并提供手动“强制刷新”按钮,可穿透全局缓存获取最及时的 MGM/METAR 实测数据。
|
||||
- **双引擎共生**:FastAPI 后端与 Telegram Bot 共享同一份分析逻辑(`analyze_weather_trend`)和 AI Prompt 管线。
|
||||
|
||||
### 2. 🧬 动态权重集合预报 (DEB 算法)
|
||||
|
||||
@@ -36,8 +37,8 @@ PolyWeather 是一款专为 **Polymarket** 等预测市场打造的天气分析
|
||||
|
||||
- **误差加权**:根据过去 7 天的平均绝对误差(MAE),动态调整各模型的权重。误差越小的模型,话语权越大。
|
||||
- **融合预报**:给出经过历史偏差修正后的"DEB 融合最高温"建议值。
|
||||
- **自学习机制**:系统需要至少 2 天的实测记录才会启动权重分化。冷启动期间以等权平均过渡。
|
||||
- **准确率追踪**:通过 `/deb` 命令查看 DEB 融合预测的历史 WU 结算命中率和 MAE,并与各个单一模型对比。
|
||||
- **多源训练集成**:将区域性官方数据源(如土耳其 MGM)同步纳入 DEB 训练管线,与 ECMWF、GFS 等国际模型共同参与权重博弈。
|
||||
- **准确率追踪**:通过 `/deb` 命令查看 DEB 融合预测的历史结算命中率和 MAE,并与各个单一模型对比。
|
||||
- **自动清理**:只保留最近 14 天的记录,防止数据无限增长。
|
||||
|
||||
### 3. 🎲 数学概率引擎 (Settlement Probability)
|
||||
@@ -78,9 +79,9 @@ PolyWeather 是一款专为 **Polymarket** 等预测市场打造的天气分析
|
||||
### 5. ⏱️ 实时机场观测 (Zero-Cache METAR)
|
||||
|
||||
- **精确时间**:从 METAR 原始报文 (`rawOb`) 中提取真实观测时间,精确到分钟。
|
||||
- **实时穿透**:通过动态请求头绕过 CDN 缓存,获取机场第一手 METAR 报文。
|
||||
- **实时穿透**:通过动态请求头和随机时间戳绕过 CDN 缓存,获取机场第一手 METAR/MGM 报文。
|
||||
- **结算预警**:自动计算结算边界(X.5 进位线),提醒潜在波动。
|
||||
- **MGM 回退**:土耳其城市(安卡拉)METAR 不可用时回退至 MGM 数据。
|
||||
- **MGM 官方直连 (安卡拉)**:针对安卡拉,PolyWeather 已将 MGM 提升为一级数据源,同步采集实时观测数据与 5 天逐小时预报,确保本地精度最大化。
|
||||
- **异常过滤**:自动过滤 -9999 等哨兵值,避免垃圾数据污染输出。
|
||||
|
||||
### 6. 📈 历史数据采集
|
||||
@@ -160,7 +161,7 @@ graph TD
|
||||
Collector --> OM[Open-Meteo 预报/集合]
|
||||
Collector --> MM[多模型 ECMWF/GFS/ICON/GEM/JMA]
|
||||
Collector --> METAR["机场实时 METAR (rawOb)"]
|
||||
Collector --> MGM["MGM 回退 (土耳其)"]
|
||||
Collector --> MGM["MGM 官方直连 (安卡拉)"]
|
||||
end
|
||||
|
||||
subgraph 算法层
|
||||
|
||||
Reference in New Issue
Block a user