article
README
🚀 PolyMarket 多边形市场预测平台
PolyMarket 是一个基于多边形网络的去中心化预测市场平台,用户能在该平台创建和交易与现实世界事件相关的代币,可依据对事件结果的信心投注,并通过代币价格波动获取收益。
🚀 快速开始
多边形协议 (MCP) 服务器简介
PolyMarket 多边形协议(MCP)服务器是连接到 PolyMarket API 的代理服务器,为用户提供预测市场的数据接口。
✨ 主要特性
服务器功能
- 实时数据:获取当前市场最新的价格和交易信息。
- 详细信息:查询特定市场的基本信息,包括事件描述、时间限制等。
- 历史数据:回顾指定时间段内的市场历史数据,了解价格波动趋势。
特性优势
灵活性
MCP 服务器支持多种接口调用方式,用户可按需选择适合的调用方法。
高效性
通过优化 API 调用流程和采用高效的缓存机制,确保数据查询的速度和响应时间。
可扩展性
系统架构设计灵活,能根据业务需求进行横向扩展,满足高并发场景下的性能要求。
📦 安装指南
安装步骤
-
前提条件
- 确保已安装 Python 3.9 或更高版本。
- 验证
httpx库是否已安装,若未安装可使用以下命令进行安装:pip install httpx>=0.24.0 - 安装
mcp-core和python-dotenv:pip install mcp-core python-dotenv>=1.0.0
-
代码示例 初始化 MCP 代理服务器的步骤如下:
from mcp_core import MP
# 初始化代理
mp = MP()
# 连接 PolyMarket 网络
await mp.connect()
# 获取当前所有市场信息
markets = await mp.list_markets()
本地运行指南
# 克隆 MCP 项目仓库
git clone https://github.com/poly_market/mcp.git
# 进入项目目录
cd mcp
# 安装依赖项
pip install -r requirements.txt
# 启动服务器
python3 server.py
💻 使用示例
基础用法
以下是初始化 MCP 代理服务器并获取市场信息的示例:
from mcp_core import MP
# 初始化代理
mp = MP()
# 连接 PolyMarket 网络
await mp.connect()
# 获取当前所有市场信息
markets = await mp.list_markets()
📚 详细文档
数据接口文档
获取市场列表
- 功能描述:获取当前 PolyMarket 平台上的所有可用市场信息。
- 输入参数:无,无需提供任何参数。
- 返回值:返回 JSON 格式的数据,包含以下字段:
- id: 市场唯一标识符
- event_name: 事件名称
- description: 事件描述
- start_time: 事件开始时间(ISO 8601 格式)
- end_time: 事件结束时间(ISO 8601 格式)
- 示例响应:
[
{
"id": "market_1",
"event_name": "2024年美国总统选举结果",
"description": "预测谁将赢得2024年美国大选。",
"start_time": "2023-01-01T00:00:00Z",
"end_time": "2024-11-08T23:59:59Z"
},
...
]
获取市场详情
- 功能描述:查询指定市场的详细信息。
- 输入参数:
- market_id: 市场唯一标识符(字符串类型)
- 返回值:返回 JSON 格式的数据,包含以下字段:
- id: 市场唯一标识符
- event_name: 事件名称
- description: 事件描述
- start_time: 事件开始时间(ISO 8601 格式)
- end_time: 事件结束时间(ISO 8601 格式)
- outcomes: 可能的事件结果及其对应的价格信息
- 示例响应:
{
"id": "market_1",
"event_name": "2024年美国总统选举结果",
"description": "预测谁将赢得2024年美国大选。",
"start_time": "2023-01-01T00:00:00Z",
"end_time": "2024-11-08T23:59:59Z",
"outcomes": [
{
"outcome_id": "outcome_1",
"label": "乔·拜登胜选",
"probability": 0.7,
"price": 0.65
},
{
"outcome_id": "outcome_2",
"label": "唐纳德·特朗普胜选",
"probability": 0.3,
"price": 0.45
}
]
}
获取市场历史数据
- 功能描述:查询指定时间段内的市场历史数据。
- 输入参数:
- market_id: 市场唯一标识符(字符串类型)
- start_time: 数据起始时间(ISO 8601 格式,可选,默认为最早记录时间)
- end_time: 数据结束时间(ISO 8601 格式,可选,默认为当前时间)
- 返回值:返回 JSON 格式的数据列表,每一项包含以下字段:
- timestamp: 时间戳
- price: 当时市场价格
- volume: 当时交易量
- 示例响应:
[
{
"timestamp": "2023-10-01T00:00:00Z",
"price": 0.65,
"volume": 1234.56
},
...
]
错误处理
错误代码
| 错误代码 | 描述 | |--------|------| | 400 | 参数错误或缺失 | | 401 | 鉴权失败 | | 404 | 资源未找到 | | 500 | 服务器内部错误 |
错误响应示例
{
"error": {
"code": 400,
"message": "参数 market_id 缺失或无效"
}
}
文档扩展
如需更多详细信息,请参考官方文档。
🤝 贡献指南
欢迎社区开发者参与项目开发,贡献代码或提出建议。请访问GitHub 仓库了解更多信息。
⚠️ 重要提示
使用本 API 前,请仔细阅读并遵守 PolyMarket 的服务条款和使用规范,确保合规合法地进行相关操作。
扫码联系在线客服