用途:该机器人用于在 Polymarket 上执行自动化跟单交易。它持续监控一个指定的目标钱包,检测其交易活动,并将 BUY 交易按比例镜像到用户自己的账户。SELL 交易会被检测到但默认跳过。
主要能力:
- 通过 Polymarket Data API 进行 REST 轮询(默认约每 2 秒一次)监控目标钱包,并可选用 WebSocket 实现低延迟订阅(支持市场频道或用户频道)。
- 仅镜像 BUY 交易,使用可配置的 POSITION_MULTIPLIER(默认 10%)计算跟单规模,并受 MIN_TRADE_SIZE 和 MAX_TRADE_SIZE 限制。
- 通过 Polymarket CLOB 客户端提交 FOK、FAK 或 LIMIT 订单,支持滑点容忍度设置。
- 风险控制:支持按会话(MAX_SESSION_NOTIONAL)和按市场(MAX_PER_MARKET_NOTIONAL)的名义金额上限,设为 0 可禁用。
- 三种认证模式:EOA(SIG_TYPE=0,默认)、Poly Proxy(SIG_TYPE=1)、Poly Polymorphic(SIG_TYPE=2)。
- 在内存中跟踪持仓(PositionTracker),并在订单成交时更新。
- 首次 EOA 运行时会自动提交 USDC.e/CTF 授权交易。
使用方式:
- 环境要求:Node.js v18+,CLOB SDK 依赖 ethers v5(已在 package.json 中锁定,不可升级到 v6)。
- 安装:git clone https://github.com/Neron888/Polymarket-copy-trading-bot.git,进入目录后运行 npm install。
- 配置:复制 .env.example 为 .env,并填写必需项:TARGET_WALLET、WALLET_PRIVATE_KEY、RPC_URL,以及可选的认证、规模和风险参数。
- 生成 API 凭证:运行 npm run generate-api-creds 将密钥写入 .polymarket-api-creds;也可用 npm run test-api-creds 验证。EOA 模式下首次启动也会自动生成。
- 启动:开发模式用 npm start;生产模式先 npm run build 再 npm run start:prod。
- 执行流程:检测交易 → 判断是否为 BUY → 按需订阅 WebSocket → 计算跟单规模 → 风险检查 → 提交订单(FOK/FAK/LIMIT)→ 记录成交 → 更新统计。
适用场景:
- 希望自动复制特定 Polymarket 钱包交易策略的用户。
- 需要在 Polygon 主网上进行低延迟跟单,并希望使用 WebSocket 而非轮询的场景。
- 需要严格控制每笔交易规模、会话和单市场总敞口的用户。
限制与注意事项:
- 仅镜像 BUY 交易,SELL 交易默认跳过。
- 需要 Polygon 主网上的 USDC.e 作为抵押品,以及 POL(原 MATIC)支付 gas。
- 会话名义金额上限在进程重启后重置。
- FOK 订单在流动性不足时可能失败,可改用 FAK 或 LIMIT。
- 需确保钱包私钥正确且以 0x 开头;SIG_TYPE=1/2 时需保证 PROXY_WALLET_ADDRESS 与 Polymarket 账户匹配。
- ethers 必须保持 v5,不可升级至 v6。
- 文档未提供收费、价格或具体收益保证等信息。