Files
2026-07-27 10:41:20 +08:00

5.3 KiB
Raw Permalink Blame History

Polymarket-5min-bot

English | 中文

联系方式smith123_lee

面向 Polymarket 加密货币「Up or Down」5 分钟预测市场的 Rust 套利机器人。

account运行界面

基本原理

Polymarket 的 Up/Down 市场每 5 分钟(UTC)开一个新窗口,每个市场有 YES 和 NO 两个结果代币。

理论上,持有等量 YES + NO 可在结算时兑换 1 USDC,因此:

YES 卖一价 + NO 卖一价 < 1  →  存在套利空间

机器人大致流程如下:

  1. 发现市场 — 按配置的币种(如 btc、eth)自动查找当前 5 分钟窗口对应的 Up/Down 市场。
  2. 监控订单簿 — 订阅 CLOB 订单簿,实时计算 YES + NO 的合计价格。
  3. 执行套利 — 当合计价格低于阈值时,同时买入 YES 和 NO;可通过滑点、单笔上限、执行价差等参数控制下单行为。
  4. Merge 回收 — 若同时持有 YES 和 NO,可链上 Merge 合并为 USDC/pUSD,减少持仓风险。
  5. 窗口收尾 — 接近窗口结束时,可自动取消挂单、Merge、并卖出剩余单腿仓位。

本程序连接真实市场与真实资金,使用前请充分理解风险。

快速开始

预编译可执行文件

如果你不会编译代码,请直接使用 Releases 中提供的预编译可执行文件:

  1. 从 Releases 下载对应系统/架构的安装包
  2. 复制 .env.example.env,并填写必填项
  3. 运行:
  • Linux / macOS./polypulse
  • Windowspolypulse.exe

从源码编译

需要先安装 Rust

cp .env.example .env   # 填写 .env 配置文件的必填项后启动
cargo run              # 运行程序

详细参数说明见 .env.example,按 [1] ~ [9] 分区排列:越靠前越重要。

基础配置

必填

变量 说明
POLYMARKET_PRIVATE_KEY 签名私钥。邮箱/Magic 从 reveal.magic.link/polymarket 导出;浏览器钱包导出对应 EOA 私钥
POLYMARKET_PROXY_ADDRESS 资金托管地址(Settings 里的 Address,非 EOA),见 polymarket.com/settings

签名类型 SIGNATURE_TYPE

Settings 里资金钱包的类型 选择,与「邮箱还是浏览器钱包注册」无必然对应:

适用场景
Poly1271默认 V2 deposit wallet;邮箱/Magic 与浏览器钱包授权账号均适用
Proxy 仅 V1 旧 Magic 代理(Settings 地址须等于 ProxyFactory 从 EOA 推导的地址)
GnosisSafe Gnosis Safe 多签
Eoa 纯 EOA 直连,无需 POLYMARKET_PROXY_ADDRESS

判断方法: 保持默认 Poly1271 即可。若误设 Proxy 且下单报 please use the deposit wallet flow,说明账号已走 V2 deposit wallet,应改回 Poly1271(私钥与 POLYMARKET_PROXY_ADDRESS 无需改动)。

Merge 所需(启用定时 Merge 或收尾时必填)

变量 说明
POLY_BUILDER_API_KEY Builder API Key
POLY_BUILDER_SECRET Builder API Secret
POLY_BUILDER_PASSPHRASE Builder API Passphrase

以上三项在 Polymarket → Settings → Builder 获取。

常用可选项

变量 默认值 说明
CRYPTO_SYMBOLS btc,eth,sol,xrp 监控的币种,逗号分隔
ARBITRAGE_EXECUTION_SPREAD 0.01 执行阈值:yes + no <= 1 - spread 时下单
MAX_ORDER_SIZE_USDC 100.0 单笔最大下单量
RISK_MAX_EXPOSURE_USDC 1000.0 每轮最大风险敞口
MERGE_INTERVAL_MINUTES 0 定时 Merge 间隔(分钟),0 为关闭
WIND_DOWN_BEFORE_WINDOW_END_MINUTES 0 窗口结束前收尾(分钟),0 为关闭
RUST_LOG info 日志级别

其余参数(CLOB 地址、签名类型、滑点、订单类型、持仓同步等)均有合理默认值,一般无需修改。完整列表与注释见 .env.example

免责声明

本软件仅供学习与研究,不构成任何投资建议。加密货币与预测市场存在较高风险,可能导致资金损失。使用前请自行评估风险,并遵守 Polymarket 服务条款及当地法律法规。