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.7.0.tar.gz
(43.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.7.0-py3-none-any.whl
(52.7 kB
view details)
File details
Details for the file polynode-0.7.0.tar.gz.
File metadata
- Download URL: polynode-0.7.0.tar.gz
- Upload date:
- Size: 43.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 |
a929d9cb6ce743f93382014e234625915aaf7088a80e36b948ca93cef6fa6a79
|
|
| MD5 |
4c42cd6cc048d0b51adf0438be212d29
|
|
| BLAKE2b-256 |
d2aff9a6feace330347bddcff6667f8b746936cfb69417c80c3cc5add7f82df3
|
File details
Details for the file polynode-0.7.0-py3-none-any.whl.
File metadata
- Download URL: polynode-0.7.0-py3-none-any.whl
- Upload date:
- Size: 52.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 |
918ec048e73d66613c232a7ebf8e02981656ae4815f0748818de642eb433dae8
|
|
| MD5 |
a9cd9e0b28968d4b246d77f85dc727e1
|
|
| BLAKE2b-256 |
b080852490cd1a66031b2ad50965ca8c92e90119391ad0edeb55671b54aaff76
|