Skip to content

Latest commit

 

History

History
115 lines (93 loc) · 4.12 KB

File metadata and controls

115 lines (93 loc) · 4.12 KB

Feature Support & Compliance

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=...