whatisgithub

What is polymarket-kalshi-arbitrage-bot?

longbridges/polymarket-kalshi-arbitrage-bot — explained in plain English

Analysis updated 2026-05-18

79TypeScriptAudience · developerComplexity · 4/5Setup · hard

In one sentence

A TypeScript bot that automatically buys and profits from price differences on the same prediction market listed on both Kalshi and Polymarket.

Mindmap

mindmap
  root((arbitrage bot))
    What it does
      Compare prices
      Trigger buy orders
      Track settlements
    Tech stack
      TypeScript
      Node.js
      Express
    Use cases
      Exploit price gaps
      Catch late entries
      Monitor via API
    Audience
      Traders
      Developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Automatically monitor paired prediction markets on Kalshi and Polymarket for price gaps

USE CASE 2

Trigger a buy order on Polymarket when the price gap between platforms exceeds your threshold

USE CASE 3

Catch late-entry opportunities when Kalshi has settled but Polymarket liquidity remains

USE CASE 4

Check the bot's current prices and last decision through a built-in status API

What is it built with?

TypeScriptNode.jsExpressAxios

How does it compare?

longbridges/polymarket-kalshi-arbitrage-botjapp-fi/polymarket-mcp-servershaya16/spent
Stars797979
LanguageTypeScriptTypeScriptTypeScript
Setup difficultyhardmoderatemoderate
Complexity4/53/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires wallet credentials for executing trades and API access to both Kalshi and Polymarket.

License is not specified in the description.

So what is it?

This is an automated arbitrage bot for prediction markets, written in TypeScript. Arbitrage means exploiting a price difference for the same thing on two different platforms, if one marketplace prices a "yes" outcome at 95 cents and another prices the same outcome at 82 cents, you can buy the cheaper one and profit when they converge. The bot monitors paired markets on Kalshi and Polymarket, both of which are platforms where you can bet on the outcomes of real-world events (like whether Bitcoin will be higher or lower in 15 minutes). It polls both platforms' APIs on a configurable interval, compares the pricing, and triggers a buy order on Polymarket when the price gap exceeds a threshold you define. It also handles a second scenario: if Kalshi has already settled a market (the event resolved) but Polymarket's order book still has liquidity, it treats that as a late entry opportunity. The bot runs as a lightweight Express web service (Express is a simple Node.js web server framework) that you can deploy on a server or cloud instance. A built-in status API endpoint lets you monitor current prices and the bot's last decision in real time. The tech stack is Node.js 18 or newer, TypeScript, Express, Axios for HTTP calls, and the official Polymarket CLOB client library for order placement. You configure it entirely through environment variables: market identifiers, spread thresholds, wallet credentials for executing trades, and polling intervals. This is aimed at technically-minded traders comfortable running their own server-side automation.

Copy-paste prompts

Prompt 1
Help me deploy Longbridges's polymarket-kalshi-arbitrage-bot and configure my spread threshold
Prompt 2
Explain how this bot detects and acts on price differences between Kalshi and Polymarket
Prompt 3
Show me how to set up wallet credentials and polling intervals for this arbitrage bot
Prompt 4
Walk me through the status API endpoint this bot exposes for monitoring trades

Frequently asked questions

What is polymarket-kalshi-arbitrage-bot?

A TypeScript bot that automatically buys and profits from price differences on the same prediction market listed on both Kalshi and Polymarket.

What language is polymarket-kalshi-arbitrage-bot written in?

Mainly TypeScript. The stack also includes TypeScript, Node.js, Express.

What license does polymarket-kalshi-arbitrage-bot use?

License is not specified in the description.

How hard is polymarket-kalshi-arbitrage-bot to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is polymarket-kalshi-arbitrage-bot for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.