# weather-poly **Repository Path**: andershsueh/weather-poly ## Basic Information - **Project Name**: weather-poly - **Description**: weather-poly - **Primary Language**: Python - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-11 - **Last Updated**: 2026-04-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Weather Poly Polymarket 天气交易自动化系统 - 用权威气象预报收割信息差 ## 简介 本项目基于 Polymarket 预测市场,结合权威气象 API(Open-Meteo)和大语言模型分析,自动化执行天气相关预测市场的交易策略。 ## 核心功能 - **多源气象数据整合**:集成 Open-Meteo 等权威气象 API,获取多模型集合预报 - **LLM 智能分析**:利用大语言模型(Anthropic 兼容接口)解析气象预报,提取关键交易信号 - **自动化交易**:基于预测偏差自动执行买入/卖出操作 - **实时监控**:持续跟踪 Polymarket 市场价格和仓位变化 - **通知提醒**:支持 Telegram 等渠道的交易通知 ## 技术栈 - **Python 3.11+** - **HTTP 客户端**:httpx - **数据验证**:pydantic - **CLI 框架**:click + rich - **任务调度**:APScheduler - **Polymarket SDK**:py-clob-client - **气象数据**:openmeteo-requests - **LLM 集成**:直接调用 Anthropic HTTP API(无需 openai 包) - **通知服务**:python-telegram-bot ## 快速开始 ### 安装依赖 推荐使用 uv: ```bash uv venv uv pip install -e . ``` 或使用 pip: ```bash pip install -e . ``` ### 初始化配置 ```bash weather-poly init ``` 配置文件生成在 `~/.weather-poly/settings.json`,参考 `settings.json.sample` 填写实际值: **实盘交易(必填)**: - `polymarket.private_key` — 钱包私钥 - `polymarket.funder_address` — 钱包地址 - `polymarket.api_key / api_secret / api_passphrase` — CLOB API 凭证 **可选**: - `llm.base_url` + `llm.api_key` — LLM 二次确认(支持任意 Anthropic/OpenAI 兼容接口) - `notification.telegram_bot_token` + `telegram_chat_id` — Telegram 通知 - `notification.feishu_webhook_url` — 飞书 Webhook 通知 ### 运行 ```bash # 模拟模式(默认,无需密钥) weather-poly run # 查看扫描到的市场 weather-poly scan # 分析某城市交易机会 weather-poly analyze --city "New York" --date 2026-04-15 # 查看交易记录 weather-poly portfolio # 实时查看日志 tail -f ~/.weather-poly/logs/weather-poly.log ``` ## 项目结构 ``` weather-poly/ ├── src/ │ ├── __init__.py │ ├── main.py # CLI 入口 │ ├── config.py # 配置管理 │ ├── llm/ # LLM 分析模块 │ ├── market/ # Polymarket 市场扫描 │ ├── trading/ # 交易信号分析 │ ├── weather/ # 气象数据模块 │ └── notification/ # 通知模块 ├── tests/ # 测试文件 ├── pyproject.toml # 项目配置 └── requirements.txt # 依赖列表 ``` ## 开发 ### 运行测试 ```bash uv run pytest tests/ # 或 pytest tests/ ``` ### 测试单个文件 ```bash uv run pytest tests/test_market/test_scanner.py -v ``` ## 注意事项 - 模拟模式(`dummy_system: true`)不会调用任何 Polymarket 写 API,不会动用真实资金 - 实盘模式需正确配置所有密钥,详见 CLAUDE.md - 日志文件位于 `~/.weather-poly/logs/`,每小时轮转,保留 7 天 ## 许可证 MIT ## 作者 [@andershsueh](https://gitee.com/andershsueh)