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.5.5.tar.gz
(34.8 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.5.5-py3-none-any.whl
(44.7 kB
view details)
File details
Details for the file polynode-0.5.5.tar.gz.
File metadata
- Download URL: polynode-0.5.5.tar.gz
- Upload date:
- Size: 34.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4a6fcc8bd364aa948cac39e09e93ab923fb145d8610700f9c055c216825fa550
|
|
| MD5 |
58c98013b92f21be053ac1040fed94d7
|
|
| BLAKE2b-256 |
d7da257b6b2a15142e502db79266052b44f8f648cfe42abdb7d1e3ec3cf5c698
|
File details
Details for the file polynode-0.5.5-py3-none-any.whl.
File metadata
- Download URL: polynode-0.5.5-py3-none-any.whl
- Upload date:
- Size: 44.7 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 |
8467982efee104560ce2d2f81c8b7ad1cf973993e4354af28e5405c334a90a51
|
|
| MD5 |
a328f302a87d8ad391df39af9cd54549
|
|
| BLAKE2b-256 |
4c41bb954f9932a2185e68d14e26968b6e015776208442b8ea30ae8cf1e94b43
|