# API 集成总结 ## Pacifica DEX API 核心特性 ### 🔗 基本信息 - **Base URL**: `https://api.pacifica.fi` - **WebSocket**: `wss://ws.pacifica.fi/ws` - **认证**: Ed25519 签名 (Solana 标准) - **SDK**: Python SDK 可用 ### 📊 主要功能分类 #### 1. 市场数据 (6个端点) ``` GET /api/v1/info # 市场信息 GET /api/v1/prices # 价格数据 GET /api/v1/book # 订单簿 GET /api/v1/trades # 历史交易 GET /api/v1/kline # K线数据 GET /api/v1/funding # 资金费率 ``` #### 2. 账户管理 (8个端点) ``` POST /api/v1/account/info # 账户信息 POST /api/v1/account/leverage # 杠杆设置 GET /api/v1/account/positions # 仓位查询 GET /api/v1/account/balance # 余额查询 GET /api/v1/account/trades # 交易历史 GET /api/v1/account/funding # 资金历史 POST /api/v1/account/withdraw # 提现申请 POST /api/v1/account/margin_mode # 保证金模式 ``` #### 3. 订单交易 (7个端点) ``` POST /api/v1/order/market # 市价单 POST /api/v1/order/limit # 限价单 POST /api/v1/order/stop # 止损单 POST /api/v1/order/cancel # 取消订单 POST /api/v1/order/batch # 批量下单 GET /api/v1/order/open # 当前委托 GET /api/v1/order/history # 订单历史 ``` #### 4. 子账户 (2个端点) ``` POST /api/v1/account/subaccount/create # 创建子账户 POST /api/v1/account/subaccount/transfer # 资金转移 ``` ### 📡 WebSocket 订阅 (8种类型) | 订阅类型 | 主题格式 | 说明 | | -------- | --------------------- | -------------- | | 价格 | `prices@all` | 所有交易对价格 | | 订单簿 | `orderbook@BTCUSDT` | 指定交易对深度 | | 交易 | `trades@BTCUSDT` | 最新成交 | | K线 | `candle@BTCUSDT@1m` | K线数据 | | 余额 | `balance@{account}` | 账户余额变化 | | 保证金 | `margin@{account}` | 保证金状态 | | 仓位 | `positions@{account}` | 仓位变化 | | 订单 | `orders@{account}` | 订单状态更新 | ### ⚡ 性能限制 - **REST API**: 公开端点 1000次/分钟,私有端点 500次/分钟 - **WebSocket**: 每IP 5个连接,每连接 100个订阅 - **订单频率**: 每秒 10 次下单请求 ### 🔐 认证示例 ```javascript // 签名计算 const message = `${method}${path}${timestamp}${body}` const signature = nacl.sign.detached(new TextEncoder().encode(message), privateKeyBytes) // 请求头 headers = { 'Content-Type': 'application/json', 'Pacifica-Signature': base64.encode(signature), 'Pacifica-Timestamp': timestamp, } ``` ## 已实现的适配器功能 ### ✅ 当前支持 - 账户信息查询 - 余额和仓位管理 - 市价单和限价单 - WebSocket 实时数据订阅 - 子账户管理 - 签名认证机制 ### 📝 使用示例 ```typescript import { PacificaAdapter } from './src/exchanges/pacifica/PacificaAdapter' const adapter = new PacificaAdapter(client) // 获取余额 const balances = await adapter.balances() // 下限价单 const order = await adapter.placeOrder({ symbol: 'BTCUSDT', side: 'BUY', type: 'LIMIT', quantity: '0.1', price: '50000', }) // 订阅实时数据 adapter.ws().on('depth', data => { console.log('订单簿更新:', data) }) ``` --- 📚 **完整文档**: `docs/PACIFICA_API_REFERENCE.md` 🧪 **测试命令**: `yarn test:pacifica` 🔗 **官方文档**: https://docs.pacifica.fi/api-documentation/api