Python SDK for the PolyNode real-time prediction market data platform
Project description
polynode
Python SDK for the PolyNode real-time prediction market data platform.
Install
pip install polynode
For trading support:
pip install polynode[trading]
Quick Start
REST API
from polynode import PolyNode
with PolyNode(api_key="pn_live_...") as pn:
status = pn.status()
markets = pn.markets(count=10)
settlements = pn.recent_settlements(count=5)
Async REST
import asyncio
from polynode import AsyncPolyNode
async def main():
async with AsyncPolyNode(api_key="pn_live_...") as pn:
status = await pn.status()
markets = await pn.markets(count=10)
asyncio.run(main())
WebSocket Streaming
import asyncio
from polynode import AsyncPolyNode
async def main():
async with AsyncPolyNode(api_key="pn_live_...") as pn:
sub = await pn.ws.subscribe("settlements").min_size(1000).send()
async for event in sub:
print(event.event_type, event.market_title, event.taker_price)
asyncio.run(main())
Orderbook
import asyncio
from polynode import OrderbookEngine
async def main():
engine = OrderbookEngine(api_key="pn_live_...")
await engine.subscribe(["token_id_1", "token_id_2"])
engine.on("ready", lambda: print(f"Tracking {engine.size} books"))
engine.on("update", lambda u: print(f"{u.asset_id}: {engine.midpoint(u.asset_id)}"))
asyncio.run(main())
Trading
import asyncio
from polynode.trading import PolyNodeTrader, TraderConfig, OrderParams
async def main():
trader = PolyNodeTrader(TraderConfig(polynode_key="pn_live_..."))
status = await trader.ensure_ready("0xYourPrivateKey...")
result = await trader.order(OrderParams(
token_id="...",
side="BUY",
price=0.55,
size=100,
))
print(result)
trader.close()
asyncio.run(main())
Documentation
Full docs at docs.polynode.dev
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
polynode-0.6.1.tar.gz
(36.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
polynode-0.6.1-py3-none-any.whl
(47.2 kB
view details)
File details
Details for the file polynode-0.6.1.tar.gz.
File metadata
- Download URL: polynode-0.6.1.tar.gz
- Upload date:
- Size: 36.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ed16bfd0a86b06deedc627647919061347d39b2e82cc48dc3ee6e364fb46891
|
|
| MD5 |
8081f5311bca6ec92b85caac4bfbcaac
|
|
| BLAKE2b-256 |
da5b05b5127eb145fafcafa524d5f9174de8c6db3f3832ca80f23d91271d18df
|
File details
Details for the file polynode-0.6.1-py3-none-any.whl.
File metadata
- Download URL: polynode-0.6.1-py3-none-any.whl
- Upload date:
- Size: 47.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5f4bef27de3abf4b9b9566e3a4e5a647b79c82bcf31d9c46b76b07bd9db4e23f
|
|
| MD5 |
04afc2c839646907915569b2278d4bda
|
|
| BLAKE2b-256 |
cfd6657fb96615ea7217eba9dd85ea421bca7e0f81c7ca77557f7620f9ac291a
|