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.2.tar.gz
(38.3 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.2-py3-none-any.whl
(49.4 kB
view details)
File details
Details for the file polynode-0.6.2.tar.gz.
File metadata
- Download URL: polynode-0.6.2.tar.gz
- Upload date:
- Size: 38.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
19969fed68da4514cabbdb1f7fe2cd9a6a5ba0736f1dbc46fbad9e2d37ec4f7d
|
|
| MD5 |
188bca8f6d8d528a6115c8298a4ebfc4
|
|
| BLAKE2b-256 |
bf87ad942a8433de0bf05b082fa5e00c2c07d97045aca2b3c84f6bd9daf442e7
|
File details
Details for the file polynode-0.6.2-py3-none-any.whl.
File metadata
- Download URL: polynode-0.6.2-py3-none-any.whl
- Upload date:
- Size: 49.4 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 |
91f5e4962d21d2de80ef056013e2550f157f2d15da66bf2149fe0a9d53e41dfb
|
|
| MD5 |
06b65136d74c765a1dffffa055ffb872
|
|
| BLAKE2b-256 |
b844a49816a97086dc1e0f4c85eeb7efee68337d03fc9832b22394ba3404e2c7
|