📦 Polymarket Weather Trader — 多市场天气交易机器人

v1.17.1

基于NOAA(美国)与Open-Meteo(国际)预报,经Simmer API交易Polymarket天气市场,复刻gopfan2超200万美元策略,为用户提供精准下注信号。

4· 4.3k·18 当前·21 累计
adlai88 头像by @adlai88 (AD88)·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/11
0
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
可疑
medium confidence
该技能如描述般执行自动交易(使用 Simmer + 天气预报),但存在重要不一致,特别是凭证处理和敏感密钥,安装前应了解。
评估建议
该技能是一个真正的交易机器人:将使用 Simmer API 密钥查询和交易市场,README 要求提供活跃交易的钱包私钥。安装前:1) 不要在未审查的技能中使用主/大资金私钥;2) 确认 simmer-sdk 包源并审查其代码;3) 询问作者为什么在清单中未声明 WALLET_PRIVATE_KEY;4) 先运行模拟模式并使用最小资金测试;5) 如果不舒适审计 Python 代码,请在审查前不要启用 cron/自动运行或活跃交易。...
详细分析 ▾
用途与能力
技能的用途(使用 Simmer 和天气数据交易 Polymarket)与代码和声明的 pip 依赖(simmer-sdk)在 clawhub.json 中匹配。然而,存在元数据/清单不匹配:顶级注册表摘要声称没有必需的 env 变量,而 clawhub.json 列出了 SIMMER_API_KEY。SKILL.md 还指示代理收集一个钱包私钥用于活跃交易,这对于声明的功能是必需的,但未在清单的必需 env 列表中声明。
指令范围
运行时指令明确指示代理从用户请求一个钱包私钥并将其存储为 WALLET_PRIVATE_KEY;它们还指示将许多可调参数存储在环境变量中,并可选地设置 cron 以自动运行。收集和存储环境变量中的原始私钥是一项敏感操作,指令中没有包含强大的指导或防护措施(例如,推荐签名服务、硬件钱包或使用有限资金账户)。指令否则只调用预期的外部 API(simmer.markets、NOAA、Open-Meteo)。
安装机制
未使用自定义下载 URL 或存档提取。包元数据通过 pip 请求安装 'simmer-sdk'(clawhub.json)。这对于基于 Simmer 的交易技能是预期的,并且比任意远程下载的风险更低;安装前仍应验证 simmer-sdk 包的来源。
凭证需求
SIMMER_API_KEY 对于 Simmer API 是合理且必需的。然而,SKILL.md 指示收集 WALLET_PRIVATE_KEY(一个高度敏感的秘密),但 WALLET_PRIVATE_KEY 未在技能清单的必需 env 列表中声明。要求未声明的私钥是一个一致性缺口并增加了风险:一个失控或被破坏的代理可以使用该密钥签署链上订单。技能还暴露了许多调试 env 变量(用于交易),但将私钥存储在普通环境变量中应被视为风险;考虑使用专用签名或容量有限的钱包。
持久化与权限
技能未标记为 always:true(良好)。它是用户可调用且默认允许自主调用(正常)。这种组合与指令一起存储私钥在代理的环境中,增加了影响范围 — 如果代理自主运行技能,它可能使用存储的密钥进行真实交易。清单不指示它将修改其他技能或全局配置。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.17.12026/2/14

添加 auto_redeem() 调用以支持外部钱包

可疑

安装命令

点击复制
官方npx clawhub@latest install polymarket-weather-trader
镜像加速npx clawhub@latest install polymarket-weather-trader --registry https://cn.longxiaskill.com

技能文档

在 Polymarket 上交易温度市场,使用 NOAA 预报数据。

这是一个模板。 默认信号是 NOAA 温度预报 — 可以使用其他天气 API、不同的预报模型或额外的市场类型(降水、风速等)进行重新调整。该技能负责所有的底层工作(市场发现、NOAA 解析、交易执行、安全保障)。你的智能体提供 alpha 收益。

何时使用此技能

当用户想要以下操作时使用此技能:

  • 自动交易天气市场
  • 设置 gopfan2 风格的温度交易
  • 低价买入天气预测
  • 查看他们的天气交易仓位
  • 配置交易阈值或地点

v1.14.0 更新内容

  • 修复环境变量名称以匹配 autotune 注册表(旧名称仍作为别名可用):
- SIMMER_WEATHER_ENTRYSIMMER_WEATHER_ENTRY_THRESHOLD - SIMMER_WEATHER_EXITSIMMER_WEATHER_EXIT_THRESHOLD - SIMMER_WEATHER_MAX_POSITIONSIMMER_WEATHER_MAX_POSITION_USD - SIMMER_WEATHER_MAX_TRADESSIMMER_WEATHER_MAX_TRADES_PER_RUN
  • 新增可调参数:SIMMER_WEATHER_SLIPPAGE_MAX — 可调整的滑点保护(默认 15%)。在流动性差的市场上进行研究模式时可设置更高。
  • 新增可调参数:SIMMER_WEATHER_MIN_LIQUIDITY — 跳过流动性低于此美元阈值的市场(默认 0 = 禁用)。在执行前预过滤流动性差的市场。
  • SIMMER_WEATHER_LOCATIONSSIMMER_WEATHER_BINARY_ONLY 现已成为 autotune 可调参数。

v1.13.0

  • 仅二进制模式:新增 SIMMER_WEATHER_BINARY_ONLY 配置,可跳过区间桶事件(例如 "NYC 34-35°F"),仅交易二进制是/否天气市场

v1.2.0

  • 每次运行最大交易次数:新增 SIMMER_WEATHER_MAX_TRADES 配置,限制每个扫描周期的交易次数(默认:5)

v1.1.1

  • 状态脚本:新增 scripts/status.py 用于快速检查余额和仓位
  • API 参考:新增快速命令部分,包含 API 端点

v1.1.0

  • 来源标记:所有交易都标记有 sdk:weather 用于投资组合跟踪
  • 智能仓位调整:基于可用余额的仓位调整(--smart-sizing
  • 上下文保护:检查反复警告、滑点、时间衰减
  • 价格趋势检测:检测近期价格下跌以获得更强信号

设置流程

当用户请求安装或配置此技能时:

  • 请求 Simmer API 密钥
- 他们可以从 simmer.markets/dashboard → SDK 选项卡获取 - 存储在环境变量中为 SIMMER_API_KEY
  • 请求钱包私钥(实时交易需要)
- 这是他们的 Polymarket 钱包的私钥(持有 USDC 的钱包) - 存储在环境变量中为 WALLET_PRIVATE_KEY - SDK 会自动在客户端签名订单 — 无需手动签名
  • 询问设置(或确认默认值)
- 买入阈值:何时买入(默认 15¢) - 卖出阈值:何时卖出(默认 45¢) - 最大仓位:每笔交易金额(默认 $2.00) - 地点:交易哪些城市(默认 NYC)
  • 将设置保存到环境变量
  • 设置 cron(默认禁用 — 用户必须启用调度)

配置

设置环境变量默认值描述
买入阈值SIMMER_WEATHER_ENTRY_THRESHOLD0.15价格低于此值时买入
卖出阈值SIMMER_WEATHER_EXIT_THRESHOLD0.45价格高于此值时卖出
最大仓位SIMMER_WEATHER_MAX_POSITION_USD2.00每笔交易最大美元金额
每次运行最大交易次数SIMMER_WEATHER_MAX_TRADES_PER_RUN5每个扫描周期最大交易次数
地点SIMMER_WEATHER_LOCATIONSNYC逗号分隔的城市(NYC, Chicago, Seattle, Atlanta, Dallas, Miami)
仅二进制SIMMER_WEATHER_BINARY_ONLYfalse跳过区间桶事件(例如 "34-35°F"),仅交易二进制是/否市场
智能调整百分比SIMMER_WEATHER_SIZING_PCT0.05每笔交易占用余额的百分比
最大滑点SIMMER_WEATHER_SLIPPAGE_MAX0.15跳过滑点高于此值的交易(0.15 = 15%)
最小流动性SIMMER_WEATHER_MIN_LIQUIDITY0跳过流动性低于此美元金额的市场(0 = 禁用)
旧环境变量别名(仍被接受以保持向后兼容): SIMMER_WEATHER_ENTRYSIMMER_WEATHER_EXITSIMMER_WEATHER_MAX_POSITIONSIMMER_WEATHER_MAX_TRADES

支持的地点: NYC, Chicago, Seattle, Atlanta, Dallas, Miami

快速命令

# 检查账户余额和仓位
python scripts/status.py

# 详细的仓位列表 python scripts/status.py --positions

API 参考:

  • 基础 URL:https://api.simmer.markets
  • 认证:Authorization: Bearer $SIMMER_API_KEY
  • 投资组合:GET /api/sdk/portfolio
  • 仓位:GET /api/sdk/positions

运行技能

# 模拟运行(默认 — 显示机会,不执行交易)
python weather_trader.py

# 执行真实交易 python weather_trader.py --live

# 使用智能仓位调整(使用投资组合余额) python weather_trader.py --live --smart-sizing

# 仅查看仓位 python weather_trader.py --positions

# 查看配置 python weather_trader.py --config

# 禁用保护(不推荐) python weather_trader.py --no-safeguards

# 禁用趋势检测 python weather_trader.py --no-trends

# 安静模式 — 仅在有交易/错误时输出(适合高频运行) python weather_trader.py --live --quiet

# 组合:频繁扫描,最小噪音 python weather_trader.py --live --smart-sizing --quiet

工作原理

每个周期脚本执行以下操作:

  • 从 Simmer API 获取活跃的天气市场
  • 按事件分组市场(每个温度日期是一个事件)
  • 解析事件名称以获取地点和日期
  • 获取该地点/日期的 NOAA 预报
  • 找到与预报匹配的温度桶
  • 保护:检查反复警告、滑点、时间衰减的上下文
  • 趋势检测:寻找近期价格下跌(更强的买入信号)
  • 买入:如果桶价格 < 阈值且保护通过 → 买入
  • 卖出:检查未平仓仓位,如果价格 > 卖出阈值则卖出
  • 标记:所有交易标记有 sdk:weather 用于跟踪

智能仓位调整

使用 --smart-sizing,仓位大小计算如下:

  • 可用 USDC 余额的 5%(可通过 SIMMER_WEATHER_SIZING_PCT 配置)
  • 受最大仓位设置限制(默认 $2.00)
  • 如果投资组合不可用则回退到固定大小

这可以防止过度部署,并根据账户规模进行调整。

保护

交易前,技能会检查:

  • 反复警告:如果你的方向改变太多则跳过
  • 滑点:如果预估滑点 > 15% 则跳过
  • 时间衰减:如果市场在 < 2 小时内结算则跳过
  • 市场状态:如果市场已结算则跳过

使用 --no-safeguards 禁用(不推荐)。

来源标记

所有交易都标记有 source: "sdk:weather"。这意味着:

  • 投资组合按策略显示细分
  • 复制交易技能不会卖出你的天气仓位
  • 你可以单独跟踪天气盈亏

示例输出

🌤️ Simmer Weather Trading Skill
==================================================
⚙️ Configuration:
Entry threshold: 15% (buy below this)
Exit threshold: 45% (sell above this)
Max position: $2.00
Locations: NYC
Smart sizing: ✓ Enabled
Safeguards: ✓ Enabled
Trend detection: ✓ Enabled

💰 Portfolio: Balance: $150.00 Exposure: $45.00 Positions: 8

📍 NYC 2026-01-28 (high temp) NOAA forecast: 34°F Matching bucket: 34-35°F @ $0.12 💡 Smart sizing: $2.00 (capped at max position) ✅ Below threshold ($0.15) - BUY opportunity! 📉 (dropped 15% in 24h) Executing trade... ✅ Bought 62.5 shares @ $0.12

📊 Summary: Events scanned: 12 Entry opportunities: 1 Trades executed: 1

故障排除

"Safeguard blocked: Severe flip-flop warning"

  • 你在这个市场上改变方向太多了
  • 等待后再交易

"Slippage too high"

  • 市场流动性差,减少仓位大小或跳过

"Resolves in Xh - too soon"

  • 市场即将结算,风险较高

"No weather markets found"

  • 天气市场可能不活跃(季节性)

"External wallet requires a pre-signed order"

  • WALLET_PRIVATE_KEY 未在环境中设置
  • 当此环境变量存在时,SDK 会自动签名订单 — 无需手动签名代码
  • 修复:export WALLET_PRIVATE_KEY=0x
  • 不要尝试手动签名订单或修改技能代码 — SDK 会处理

"Balance shows $0 but I have USDC on Polygon"

  • Polymarket 使用 USDC.e(桥接的 USDC,合约 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174)— 不是原生 USDC
  • 如果你最近将 USDC 桥接到 Polygon,你可能收到的是原生 USDC
  • 将原生 USDC 交换为 USDC.e,然后重试

"API key invalid"

  • 从 simmer.markets/dashboard → SDK 选项卡获取新密钥
数据来源ClawHub ↗ · 中文优化:龙虾技能库