Future

Cover image for HyperMarkets: Fast, Fair, and Fun Prediction Markets on Hyperliquid Perps
Chris Karvouniaris
Chris Karvouniaris

Posted on

HyperMarkets: Fast, Fair, and Fun Prediction Markets on Hyperliquid Perps

What are HyperMarkets?

TickerTerminal just launched HyperMarkets, a next-gen decentralized prediction market platform built on HyperEVM and powered by Hyperliquid. It’s designed for fast, automated, and fully on-chain trading, where users can participate in short-term markets, predicting financial outcomes using an automated market maker (AMM) mechanism in a simple, gamified way.

Key features of HyperMarkets include:

  • Binary Markets: Simple Higher/Not Higher predictions.
  • 10-Minute Rounds: Fast-paced trading with quick resolutions.
  • Virtual Liquidity: Efficient capital utilisation with virtual AMM.
  • Native Oracles: HyperEVM precompiles provide trustless price feeds.
  • Winner-Takes-All: Winning side splits the treasury proportionally.
  • Permissionless: Anyone can participate in any market.
  • On-Chain Resolution: Fully automated and transparent.

HyperMarkets is designed to make prediction markets simple, fair, and composable, while still offering real DeFi mechanics under the hood.


1. AMM Mechanics: Liquidity Solved

Traditional prediction markets often struggle with liquidity. You’re trading against other users, which can lead to long waits and illiquid markets. HyperMarkets fixes this with a virtual AMM.

Key points:

  • Trade against the AMM, not a person.
  • Capital efficiency through virtual reserves.
  • Odds adjust automatically based on demand for YES/NO shares.
  • Liquidity and pricing are unified. Every trade shifts the curve and updates the odds.
  • Infinite counterparties, smooth payouts, and fair odds — instantly.
  • Think of it like Uniswap, but for probabilities. Each trade updates the odds automatically.

2. UX & Trading Simplicity

HyperMarkets compresses prediction trading into a simple, game-like experience:

  • Binary outcomes. Will the 10-minute candle close HIGHER or NOT?
  • 10-minute rounds. Fast cycles, continuous opportunities.
  • Losing side’s funds go to the treasury.
  • Winners split the treasury proportionally to their bet size.
  • Larger bets = larger share of the winnings.
  • Compressed trading cycle. Predict → Resolve → Repeat.

No margin calls. No liquidation math. Just signal, bet, and see if you’re right.


3. Permissionless Resolution: Decentralized Truth

Markets need a reliable, decentralized way to confirm outcomes. HyperMarkets uses native Hyperliquid oracles and resolution bots:

  • Anyone can run a bot to resolve rounds on-chain.
  • Bots earn ~40% of protocol fees, creating an incentive layer.
  • Multiple bots ensure redundancy — if one fails, others pick up the slack.
  • Think of resolvers as validators for reality: securing markets without centralized control.

Here’s a simple example in Python for running a resolver bot:

from web3 import Web3

CONTRACT_ABI = [
    {
        "inputs": [],
        "name": "checkResolutionStatus",
        "outputs": [
            {"internalType": "bool", "name": "isResolvable", "type": "bool"},
            {"internalType": "uint256", "name": "timeRemaining", "type": "uint256"},
            {"internalType": "uint256", "name": "totalResolverFees", "type": "uint256"}
        ],
        "stateMutability": "view",
        "type": "function"
    },
    {
        "inputs": [],
        "name": "resolveMarkets",
        "outputs": [],
        "stateMutability": "nonpayable",
        "type": "function"
    }
]

# Network configuration
RPC_URL = 'https://rpc.hyperliquid-testnet.xyz/evm'
CONTRACT_ADDRESS = "0x52d54450b2850579048A6EF1409991146037abAE"

w3 = Web3(Web3.HTTPProvider(RPC_URL))
contract = w3.eth.contract(
    address=Web3.to_checksum_address(CONTRACT_ADDRESS),
    abi=CONTRACT_ABI
)

account = w3.eth.account.from_key("PRIVATE_KEY_HERE")

while True:
    try:
        is_resolvable, time_remaining, total_fees = contract.functions.checkResolutionStatus().call()

        if is_resolvable:
            nonce = w3.eth.get_transaction_count(account.address)
            try:
                gas_estimate = contract.functions.resolveMarkets().estimate_gas({
                    'from': account.address
                })
                gas_limit = int(gas_estimate * 1.2)  # Add 20% buffer
            except Exception as e:
                print(f"⚠️ Gas estimation failed, using default: {e}")
                gas_limit = 500000

            gas_price = w3.eth.gas_price

            tx = contract.functions.resolveMarkets().build_transaction({
                'from': account.address,
                'nonce': nonce,
                'gas': gas_limit,
                'gasPrice': gas_price,
            })

            signed_tx = account.sign_transaction(tx)
            tx_hash = w3.eth.send_raw_transaction(signed_tx.rawTransaction)
            receipt = w3.eth.wait_for_transaction_receipt(tx_hash, timeout=120)

            print(f"✅ Markets resolved! TX: {tx_hash.hex()}")
            print(f" Fees earned: {total_fees}")
        else:
            print(f"⏳ Not resolvable yet. Time remaining: {time_remaining}s")
    except Exception as e:
        print(f"❌ Error: {e}")
    # Block time
    time.sleep(1)
Enter fullscreen mode Exit fullscreen mode

HyperMarkets makes prediction markets fast, fair, and permissionless. Binary YES/NO bets, 10-minute rounds, virtual AMM liquidity, and decentralized resolution bots turn short-term trading into a transparent, gamified, and composable experience.

Try it yourself, place predictions, or run a resolver bot — every 10 minutes is a new opportunity to learn, experiment, and earn.

🔗 Explore the platform: Hypermarkets
📖 Learn more: Docs
🔔 Updates on: TickerTerminal on X

Top comments (0)