Skip to main content
polymarket-client 软件包是构建 Polymarket 集成的官方 Python SDK。

GitHub

查看 Python SDK 源代码。

PyPI 软件包

从 PyPI 安装 polymarket-client
有关近期 Python 版本,请参阅 SDK 更新日志

快速入门

1

安装 SDK

使用你偏好的软件包管理器安装 SDK。
2

创建公共客户端

创建 AsyncPublicClient 以访问公开的 Polymarket 数据。
3

获取活跃市场

获取一页活跃市场,发现交易机会。

异步与同步接口

公共客户端访问公开数据。安全客户端还提供交易和账户访问。两种客户端均提供异步和同步形式。 异步客户端适合已经运行事件循环的服务、机器人和应用。同步客户端适合脚本和笔记本。
包括实时订阅在内的部分功能仅支持异步接口,因为它们依赖长连接数据流。

分页

SDK 的列表方法使用统一的分页器接口。遍历分页器可获取所有页面;如果需要控制请求节奏,也可以逐页获取。
如果页面边界并不重要,可以直接遍历所有项目。
page.next_cursor 是不透明的 SDK 游标。如果希望稍后继续扫描,请原样保存;从第一页开始时则省略它。

类型

SDK 方法返回带类型的模型,其公共类型由 polymarket 导出。
SDK 还为领域标识符和 EVM 地址使用不同类型。对精度敏感的值使用 decimal.Decimal,日期和时间戳使用 Python 的 datetime 类型。

错误处理

所有 SDK 异常都继承自 PolymarketError。当应用能够处理特定异常时先捕获该异常,再捕获基础异常作为后备。

安全客户端

当集成需要交易或访问账户数据时,请创建 AsyncSecureClientSecureClient。Python SDK 使用本地私钥创建签名器。
接下来,请参阅钱包与身份验证,配置账户钱包和无 Gas 交易。

实时订阅

Python SDK 可以把多个实时数据源的更新合并为单一事件流。
实时订阅仅可通过 AsyncPublicClientAsyncSecureClient 使用。PublicClientSecureClient 未实现 subscribe()
使用一个或多个订阅规范调用 subscribe()AsyncPublicClientAsyncSecureClient 都支持公共数据流;AsyncSecureClient 还提供已连接账户的私有数据流。
在处理特定事件结构之前,请先通过 event.topic 缩小类型范围。示例仅展示了部分数据流;有关各数据源的选项,请参阅实时数据实时订单更新Perps 实时更新

DataFrame 与 Jupyter

将页面和分页器直接转换为 pandas DataFramePolars DataFrameApache Arrow Table。安装所用格式对应的 pandaspolarsarrow 额外依赖;quant 额外依赖会安装全部三项。
分页器转换必须明确指定限制。传入 limit=None 可获取所有项目。 常用 SDK 对象还会在 Jupyter 笔记本中呈现为紧凑卡片。将对象作为单元格的最后一个表达式返回即可显示。

后续步骤

读取市场数据

发现市场,并使用价格、订单簿和历史数据。

订阅实时更新

实时接收市场和账户更新。

下第一笔订单

设置账户并完成第一笔经过身份验证的交易。