# Polymarket BTC Up/Down Trading Bot 这是一个自动化交易机器人,用于在 Polymarket 上交易比特币涨跌预测市场。机器人会根据当前时间自动计算正确的市场 slug,并同时下单 UP 和 DOWN 的限价单。 ## 功能特性 - 🕐 **自动时间计算**:根据当前 UTC 时间自动计算下一个 15 分钟间隔的市场 slug - 📊 **双向下单**:同时下单 UP 和 DOWN 的限价单 - 🔐 **环境变量支持**:通过 `.env.local` 文件安全地管理私钥和配置 - ⚡ **实时交易**:使用 Polymarket CLOB API 进行实时交易 - 🛡️ **错误处理**:完善的错误处理和日志记录 ## 安装依赖 ```bash npm install ``` ## 环境配置 1. 复制环境变量示例文件: ```bash cp env.example .env.local ``` 2. 编辑 `.env.local` 文件,填入你的配置: ```env PRIVATE_KEY=你的私钥 FUNDER_ADDRESS=你的Polymarket地址 ``` ## 使用方法 ```bash node index.mjs ``` ## 配置说明 ### 环境变量 | 变量名 | 描述 | 示例 | |--------|------|------| | `PRIVATE_KEY` | 你的以太坊私钥 | `0x1234...` | | `FUNDER_ADDRESS` | 你的 Polymarket 地址 | `0xabcd...` | ### 交易参数 当前配置的交易参数: - **价格**:0.49 - **数量**:5 - **订单类型**:GTC (Good Till Cancelled) - **市场间隔**:15 分钟 ## 市场信息 机器人会自动获取以下信息: - 市场 ID 和问题描述 - UP/DOWN token ID - 当前价格和流动性 - 最小订单大小和价格精度 ## 安全注意事项 ⚠️ **重要**: - 永远不要将 `.env.local` 文件提交到版本控制系统 - 确保私钥安全,不要分享给他人 - 建议使用专门的交易账户,不要使用主钱包 - 在正式交易前,先在测试环境验证 ## 项目结构 ``` poly/ ├── index.mjs # 主程序文件 ├── package.json # 项目配置和依赖 ├── .env.example # 环境变量示例文件 ├── .env.local # 环境变量文件(需要创建) └── README.md # 项目说明文档 ``` ## 依赖包 - `@polymarket/clob-client`: Polymarket CLOB API 客户端 - `@ethersproject/wallet`: 以太坊钱包管理 - `dotenv`: 环境变量管理 ## 故障排除 ### 常见问题 1. **API Key 创建失败** - 检查私钥是否正确 - 确认网络连接正常 - 验证 Polymarket 账户状态 2. **市场未找到** - 检查时间计算是否正确 - 确认市场是否已激活 - 验证 slug 格式 3. **订单创建失败** - 检查账户余额 - 确认订单参数是否有效 - 查看市场状态 ### 日志说明 程序会输出详细的日志信息: - 时间戳计算过程 - API 调用状态 - 订单创建结果 - 错误信息(如有) ## 许可证 本项目仅供学习和研究使用。使用本软件进行实际交易的风险由用户自行承担。 ## 贡献 欢迎提交 Issue 和 Pull Request 来改进这个项目。 ## 联系方式 如有问题,请通过 GitHub Issues 联系。