Skip to main content

Trading

Each market has exactly two outcomes. “Yes” shares represent a belief that the event will happen; “No” shares represent the opposite. When a market resolves, winning shares pay out 1.00 × currency base multiplier (e.g., $1.00 USD or ₦100.00 NGN) and losing shares pay out nothing.
No. Prices are dynamic and adjust continuously based on trading activity and market sentiment. On AMM markets, prices update automatically after every trade. On CLOB markets, prices are set by the bids and asks of market participants.
The minimum tradable amount is $1.00 USD or ₦100.00 NGN per order. Prices are probabilities between 0.00 and 1.00, so the cost per share equals price × currency base multiplier.
Yes. You can hold positions in as many markets as you want simultaneously, as long as you have sufficient funds in your wallet.
Yes. You can buy or sell shares at any time while a market is open. Markets close at the closing date specified on the event, after which no new trades are accepted.
It depends on the market engine:
  • AMM markets: Trades execute instantly and cannot be cancelled. To exit, sell your shares back to the market.
  • CLOB markets: Limit orders that have not yet been filled can be cancelled via DELETE /v1/pm/orders/{orderId}. Once an order is fully or partially filled, the filled portion cannot be reversed.
Losing shares are worth nothing at resolution. The amount you invested in those shares is not returned. You can reduce your exposure before the market closes by selling your shares, though the sale price depends on current market conditions.

Wallets and currencies

Bayse Markets supports two currencies:
  • USD (US Dollar) — base multiplier of 1. Shares cost price × 1 and win pays $1.00.
  • NGN (Nigerian Naira) — base multiplier of 100. Shares cost price × 100 and win pays ₦100.00.
Specify the currency in your API requests using the currency field. USD is the default if omitted.
You can hold balances in both USD and NGN wallets. However, you can only trade from one wallet at a time. If you have open positions in one currency, you must resolve or sell them before switching to place trades from the other currency.
No. Withdrawals must go to an account registered under the same first and last name as your Bayse Markets account. Name mismatches will cause the withdrawal to fail.

Accounts

No. Each person may hold only one Bayse Markets account. Creating multiple accounts may result in the suspension or termination of all associated accounts.

API

There are two authentication flows:
  1. Session auth (for managing API keys): Call POST /v1/user/login with your email and password to get a session token and deviceId. Use these as headers when creating, listing, revoking, or rotating API keys.
  2. API key auth (for trading and data):
    • Read endpoints: Include your public key in the X-Public-Key header.
    • Write endpoints: Include X-Public-Key, X-Timestamp (Unix seconds), and X-Signature (HMAC-SHA256 of {timestamp}.{METHOD}.{path}.{bodyHash}, base64-encoded using your secret key).
See Authentication for full details and code examples.
Yes. The login endpoint (POST /v1/user/login) is rate-limited to 1 request per 2 minutes per email address. Cache your session token and reuse it for API key operations. See Rate limits for details.
An event is the top-level prediction question (e.g., “NBA Finals 2024”). A market is a specific tradeable sub-question within that event (e.g., “Will the Lakers win?”). Single events contain one market; combined events contain multiple related markets.In the Bayse app, events display as “markets” and markets display as “sub-markets.”
  • AMM (Automated Market Maker): Algorithmic pricing with instant execution. No order book. Liquidity is always available.
  • CLOB (Central Limit Order Book): Traditional limit order matching. You specify a price and the order fills when a counterparty matches. Supports GTC, FAK, FOK, and GTD time-in-force options.
Subscribe to the Bayse Markets WebSocket feed at wss://relay.bayse.markets/v1/ws. Available channels are orderbook, trades, and ticker. See the WebSocket documentation for details.