Feature Support & Compliance
June 23, 2026 ยท View on GitHub
This document details the feature support and compliance status for each exchange. PMXT enforces a strict compliance standard to ensure protocol consistency across all implementations.
Functions Status
| Category | Function | Polymarket | PolymarketUS | Kalshi | Limitless | Probable | Baozi | Myriad | Opinion | Metaculus | Smarkets | Hyperliquid | GeminiTitan | SuiBets | Rain | Hunch |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Market Data | fetchMarkets | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y |
fetchEvents | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |
fetchMarket | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |
fetchEvent | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |
| Public Data | fetchOHLCV | Y | - | Y | Y | Y | Y | Y | Y | - | - | Y | - | - | Y | Y |
fetchOrderBook | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | Y | Y | Y | |
fetchTrades | Y | - | Y | Y | Y | Y | Y | - | - | Y | Y | - | - | Y | Y | |
| Private Data | fetchBalance | Y | Y | Y | Y | Y | Y | Y | - | - | Y | Y | - | - | Y | Y |
fetchPositions | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | Y | Y | Y | |
fetchMyTrades | Y | Y | Y | Y | Y | - | Y | Y | - | Y | Y | - | - | Y | - | |
| Trading | createOrder | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y |
cancelOrder | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | Y | Y | - | Y | - | |
fetchOrder | Y | Y | Y | Y | Y | Y | - | Y | - | Y | - | - | - | Y | - | |
fetchOpenOrders | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | - | Y | Y | |
fetchClosedOrders | - | - | Y | Y | - | - | - | Y | - | Y | Y | Y | - | - | - | |
fetchAllOrders | - | - | Y | Y | - | - | - | Y | - | Y | Y | Y | - | - | - | |
| Calculations | getExecutionPrice | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | Y | Y | Y |
getExecutionPriceDetailed | Y | Y | Y | Y | Y | Y | Y | Y | - | Y | Y | Y | Y | Y | Y | |
| Real-time | watchOrderBook | Y | Y | Y | Y | Y | Y | Y | Y | - | - | - | Y | - | Y | Y |
watchTrades | Y | Y | Y | Y | - | - | Y | Y | - | - | - | Y | - | Y | Y |
Legend
- Y - Supported
- - - Not supported
Compliance Policy
- Failure over Warning: Tests must fail if no relevant data (markets, events, candles) is found. This ensures that we catch API breakages or unexpected empty responses.
Tests with authentication
Authenticated tests require a dotenv in the root dir with the venue credentials needed for the methods under test. Use only test accounts or intentionally funded wallets.
# Polymarket
POLYMARKET_PRIVATE_KEY=0x...
POLYMARKET_API_KEY=...
POLYMARKET_API_SECRET=...
POLYMARKET_PASSPHRASE=...
POLYMARKET_FUNDER_ADDRESS=0x...
# Polymarket US
POLYMARKET_US_KEY_ID=...
POLYMARKET_US_SECRET_KEY=...
# Kalshi
KALSHI_API_KEY=...
KALSHI_PRIVATE_KEY=... (RSA Private Key)
# Limitless
LIMITLESS_PRIVATE_KEY=0x...
LIMITLESS_API_KEY=...
LIMITLESS_API_SECRET=...
LIMITLESS_PASSPHRASE=...
# Probable
PROBABLE_API_KEY=...
PROBABLE_API_SECRET=...
PROBABLE_PASSPHRASE=...
PROBABLE_PRIVATE_KEY=0x...
# Baozi
BAOZI_PRIVATE_KEY=...
# Myriad
MYRIAD_API_KEY=...
MYRIAD_WALLET_ADDRESS=0x...
# Opinion
OPINION_API_KEY=...
OPINION_PRIVATE_KEY=0x...
OPINION_FUNDER_ADDRESS=0x...
# Metaculus (required for API access โ unauthenticated requests return 403)
METACULUS_API_TOKEN=...
# Smarkets
SMARKETS_EMAIL=...
SMARKETS_PASSWORD=...
# Hyperliquid
HYPERLIQUID_WALLET_ADDRESS=0x...
HYPERLIQUID_PRIVATE_KEY=0x...
# Gemini Titan
GEMINI_API_KEY=...
GEMINI_API_SECRET=...
# SuiBets
SUIBETS_WALLET_ADDRESS=0x...
# Rain
RAIN_PRIVATE_KEY=0x...
RAIN_WALLET_ADDRESS=0x...
RAIN_SUBGRAPH_URL=...
RAIN_SUBGRAPH_API_KEY=...
RAIN_WS_RPC_URL=...
# Hunch
HUNCH_PRIVATE_KEY=0x...
HUNCH_WALLET_ADDRESS=0x...
HUNCH_BASE_URL=...