PolySports Trading Agent
Overview
Use this skill for PolySports-only workflows. Keep PolySports and Polymarket logic separate. Translate final actions into documented /skills/v1 calls only. Read references/skills-api.md before writes. Read references/trading-playbook.md for scan, automation, and review rules. Read references/monitoring-rules.md before creating or continuing in-game monitoring.
Prerequisites
- - Use the host explicitly provided by the user or runtime for the current session.
- If the user says to use a test or local host, use it for every
/skills/v1/* call in this session and do not fall back to production. - If no host is provided, use
https://api.polysports.vip. - Use
https://polysports.vip only when directing the user to sign in or create an API key. - Require a valid
X-PolySports-Api-Key before any real lookup or trade. - If the API key is missing, ask the user to send it directly in the conversation. If they do not have one, send them to
https://polysports.vip to create it. - Never infer the per-order amount. If the order size or automation position size is missing, ask the user to confirm it before placing a trade or enabling the task.
Workflow
- 1. Check whether the PolySports API key is configured.
If
X-PolySports-Api-Key is unavailable, stop and ask the user for it.
- 2. Resolve the correct host for this session.
Use the user-provided host when present; otherwise use
https://api.polysports.vip.
- 3. Classify the request.
Distinguish between market discovery, single-market trading, balance or authorization lookup, position or history lookup, and OpenClaw automation.
- 4. For broad discovery, fetch list first and then detail.
Use
GET /skills/v1/markets, filter to actionable markets, and then call
GET /skills/v1/markets/{market_id} for the retained candidates before recommending anything.
- 5. For a named market, resolve ambiguity before execution.
Match the exact game, side, and market or outcome. If anything is unclear, ask a clarifying question first. Then fetch
GET /skills/v1/markets/{market_id} once before recommending or trading.
- 6. Treat model output as a bounded input, not a guarantee.
ML-only predictions are most reliable for
America/New_York today and tomorrow. If the user asks for farther-out markets, say prediction data may be missing.
- 7. Use the right account state endpoints.
Use
GET /skills/v1/trading/balance for wallet balance and buying power. Use the capability and authorization status endpoints before any real trade.
- 8. Summarize the intended trade in plain language.
State the exact game, side, amount or shares, and estimated execution price. If the amount is missing, stop and ask. Do not assume a default size from memory or prior tasks.
- 9. Honor delegated authority precisely.
If the user explicitly granted full discretionary authority, a plain-language summary is enough and execution can proceed without a separate confirmation turn. Otherwise ask for confirmation before the first real write or any material change in side, size, strategy, or risk.
- 10. Preview before writes when possible.
Ensure the preview matches the user-facing summary. Send
X-Idempotency-Key on every write.
- 11. Check post-submission status instead of stopping at
submitted.
Wait about 5 seconds, call
GET /skills/v1/trading/orders/{order_id}, and do one short follow-up check if the order is still pending.
- 12. After an open position exists, move it into monitoring.
Treat every PolySports live position as an active monitoring workflow. Use the monitoring rules reference. Prefer OpenClaw cron jobs for recurring checks.
- 13. Use manual exits, not skills auto-exit.
When monitoring indicates the thesis is broken or profit should be taken, exit through the normal order flow with
POST /skills/v1/trading/order and
side=SELL.
- 14. Close the loop after exit.
After a sell or redeem, perform a postgame review. If automation created short-lived monitoring jobs, remove them when they are no longer meaningful.
- 15. Offer scheduled automation when it helps.
Tell the user this skill can support scheduled pregame scans, in-game monitoring, and postgame reviews through OpenClaw. The saved rule-setting window is
23:00 in
Asia/Shanghai, and the reusable template lives at
assets/cron/jobs.template.json.
Guardrails
- - Keep PolySports logic separate from Polymarket logic.
- Use only documented
/skills/v1/* endpoints. - Never send
/skills/v1/* requests to https://polysports.vip. - Never place or sell a real order against an ambiguous game or side.
- Never infer order size. Require explicit user confirmation or an explicit task parameter such as
__POSITION_SIZE_USDC__. - Do not use
POST /skills/v1/trading/auto-exit in this skill's standard workflow. - For recommendation or scan flows, do not stop at the list response. Pull market detail for the candidates you analyze.
- Once a real PolySports position is open, do not treat it as fire-and-forget. Move it into monitoring.
- For recurring automation, use OpenClaw cron jobs rather than a daemon or system crontab.
- For critical cron jobs, explicitly deliver to
telegram:__TELEGRAM_CHAT_ID__. - Do not use ESPN win probability as a sell signal.
- If the API returns an auth, risk, or scope error, explain it plainly and stop.
Resources
PolySports 交易代理
概述
仅将此技能用于 PolySports 工作流。保持 PolySports 和 Polymarket 逻辑分离。仅将最终操作转换为文档化的 /skills/v1 调用。在写入前阅读 references/skills-api.md。在扫描、自动化和审查规则方面阅读 references/trading-playbook.md。在创建或继续游戏内监控前阅读 references/monitoring-rules.md。
前提条件
- - 使用用户或运行时为当前会话明确提供的主机。
- 如果用户要求使用测试或本地主机,则在本会话的每次 /skills/v1/* 调用中都使用该主机,不要回退到生产环境。
- 如果未提供主机,则使用 https://api.polysports.vip。
- 仅在引导用户登录或创建 API 密钥时使用 https://polysports.vip。
- 在任何实际查询或交易前,需要有效的 X-PolySports-Api-Key。
- 如果缺少 API 密钥,要求用户直接在对话中发送。如果他们没有密钥,引导他们前往 https://polysports.vip 创建。
- 切勿推断每笔订单金额。如果缺少订单规模或自动化仓位规模,在下单或启用任务前要求用户确认。
工作流程
- 1. 检查 PolySports API 密钥是否已配置。
如果 X-PolySports-Api-Key 不可用,停止并询问用户。
- 2. 解析本会话的正确主机。
当用户提供主机时使用该主机;否则使用 https://api.polysports.vip。
- 3. 对请求进行分类。
区分市场发现、单一市场交易、余额或授权查询、仓位或历史记录查询以及 OpenClaw 自动化。
- 4. 对于广泛发现,先获取列表再获取详情。
使用 GET /skills/v1/markets,筛选出可操作的市场,然后在推荐任何内容前对保留的候选市场调用 GET /skills/v1/markets/{market_id}。
- 5. 对于指定市场,在执行前消除歧义。
匹配确切的比赛、方向以及市场或结果。如果任何内容不明确,先提出澄清性问题。然后在推荐或交易前获取一次 GET /skills/v1/markets/{market_id}。
- 6. 将模型输出视为有限输入,而非保证。
仅基于机器学习的预测对于 America/New_York 时区的今天和明天最为可靠。如果用户询问更远期的市场,说明预测数据可能缺失。
- 7. 使用正确的账户状态端点。
使用 GET /skills/v1/trading/balance 获取钱包余额和购买力。在任何实际交易前使用能力和授权状态端点。
- 8. 用通俗语言总结预期交易。
说明确切的比赛、方向、金额或份额以及预估执行价格。如果缺少金额,停止并询问。不要根据记忆或先前任务假设默认规模。
- 9. 精确遵守授权权限。
如果用户明确授予了完全自由裁量权,通俗语言总结就足够,无需单独确认轮次即可执行。否则在首次实际写入或方向、规模、策略或风险发生任何重大变化前要求确认。
- 10. 尽可能在写入前预览。
确保预览与面向用户的总结一致。每次写入都发送 X-Idempotency-Key。
- 11. 检查提交后状态,而非停留在 submitted。
等待约 5 秒,调用 GET /skills/v1/trading/orders/{order_id},如果订单仍处于待处理状态,进行一次简短跟进检查。
- 12. 在开仓后,将其纳入监控。
将每个 PolySports 活跃仓位视为活跃监控工作流。使用监控规则参考。对于定期检查,优先使用 OpenClaw 定时任务。
- 13. 使用手动退出,而非技能自动退出。
当监控表明逻辑已被打破或应获利了结时,通过正常订单流程使用 POST /skills/v1/trading/order 和 side=SELL 退出。
- 14. 退出后闭环。
在卖出或赎回后,进行赛后审查。如果自动化创建了短期监控任务,在它们不再有意义时将其移除。
- 15. 在有益时提供定时自动化。
告知用户此技能可以通过 OpenClaw 支持定时赛前扫描、游戏内监控和赛后审查。保存的规则设置窗口为 Asia/Shanghai 时区的 23:00,可复用模板位于
assets/cron/jobs.template.json。
护栏
- - 保持 PolySports 逻辑与 Polymarket 逻辑分离。
- 仅使用文档化的 /skills/v1/ 端点。
- 切勿将 /skills/v1/ 请求发送到 https://polysports.vip。
- 切勿针对不明确的比赛或方向下达或卖出实际订单。
- 切勿推断订单规模。需要明确的用户确认或明确的任务参数,如 POSITIONSIZEUSDC。
- 在此技能的标准工作流中不要使用 POST /skills/v1/trading/auto-exit。
- 对于推荐或扫描流程,不要停留在列表响应。为你分析的候选市场拉取市场详情。
- 一旦实际 PolySports 仓位开仓,不要将其视为发射后不管。将其纳入监控。
- 对于重复性自动化,使用 OpenClaw 定时任务而非守护进程或系统 crontab。
- 对于关键定时任务,明确发送到 telegram:TELEGRAMCHATID。
- 不要使用 ESPN 获胜概率作为卖出信号。
- 如果 API 返回认证、风险或范围错误,清晰解释并停止。
资源