How Neutralis Works
A technical overview of the automated prediction market arbitrage system — from signal detection to trade execution.
Overview
Prediction markets let participants trade on the probability of real-world events. When two exchanges price the same event differently, an arbitrage opportunity exists — buy the underpriced side on one venue, sell the overpriced side on the other, and profit regardless of the outcome.
Neutralis automates this entire pipeline: scanning thousands of markets in real time, matching events across platforms using NLP, calculating edge after fees and slippage, evaluating each trade through a series of risk guards, and executing cross-platform pairs with sub-second latency.
Supported Venues
Kalshi
RegulatedA CFTC-regulated exchange offering binary event contracts. Kalshi markets cover politics, economics, sports, entertainment, and more. Neutralis connects via REST and WebSocket APIs with RSA-PSS authentication.
Polymarket
CryptoA crypto-native prediction market built on Polygon with a central limit order book (CLOB). Polymarket offers deep liquidity across political, sports, and crypto markets with near-zero fees.
Cross-platform matching
Markets are paired across venues using TF-IDF text similarity, entity extraction, and temporal alignment. Abbreviations are expanded automatically (“Man City” → “Manchester City”), and each market matches at most once to prevent duplicated signals. The system currently tracks 70+ matched pairs across sports, politics, entertainment, and crypto categories.
Signal Detection
Three types of arbitrage signals are detected in real time:
Cross-platform arbitrage
The same event trades on both Kalshi and Polymarket. When the combined cost of YES on one venue and NO on the other falls below $1.00 after fees, the spread is a guaranteed profit regardless of outcome.
Example
"Will Arsenal win the Premier League?" trades at $0.42 on Kalshi and $0.55 on Polymarket. Buying YES on Kalshi ($0.42) and NO on Polymarket ($0.45) costs $0.87 — locking in $0.13 edge before fees.
Complement arbitrage
On a single venue, the YES ask plus the NO ask for the same market falls below $1.00. Since one outcome must occur, buying both sides guarantees a profit equal to the gap minus fees.
Example
A market has YES ask $0.48 and NO ask $0.49. Buying both costs $0.97 — guaranteed to pay out $1.00 for a $0.03 gross edge.
Three-way Dutch book
Soccer match markets have three outcomes: Team A wins, Team B wins, or Draw. If the combined ask across all three binary markets falls below $1.00 after fees on all three legs, buying all three guarantees a profit.
Example
Man City ($0.45) + Liverpool ($0.30) + Draw ($0.22) = $0.97. One outcome must occur, paying $1.00 — netting $0.03 before fees.
Risk Management
Every signal passes through a guard pipeline before execution. All guards must pass for a trade to be placed.
Pre-trade guards
Minimum edge
Rejects signals below a configurable edge threshold (default: 0.05% for cross-platform, 1.0% for same-venue). Ensures trades are profitable after fees and slippage.
Liquidity check
Verifies the orderbook has sufficient depth to fill the position size without excessive slippage. Scales with the intended trade size.
Exposure limits
Enforces maximum exposure per ticker, per event, per venue, and total portfolio. Prevents concentration risk.
Daily loss limit
Halts trading if realized losses for the day exceed a configurable dollar threshold. Resets at midnight UTC.
Max open positions
Caps the total number of concurrent open positions to manage portfolio complexity and margin requirements.
Spread filter
Rejects markets with excessively wide bid-ask spreads or one-sided quotes, which indicate low liquidity or stale pricing.
Exit strategies
Stop-loss
15%Closes a position if unrealized loss exceeds 15% of entry value.
Take-profit
25%Locks in gains when unrealized profit reaches 25% of entry value.
Time decay
24hExits positions held longer than 24 hours if the remaining edge has fallen below a floor threshold.
Execution
The system connects to both venues via WebSocket for real-time price updates. When a qualified signal is detected, execution follows a specific order to minimize risk:
Polymarket first
The riskier leg executes first as a fill-or-kill (FOK) market order. If it fails, no trade is placed.
Kalshi second
After Polymarket fills, the hedging leg is placed on Kalshi as a GTC limit order at maker pricing (4x cheaper fees).
Fallback management
If the Kalshi leg fails after Polymarket fills, the system manages the one-legged position using exit strategies (stop-loss, take-profit, time-decay).
Fee Model
Kalshi fees
Parabolic fee curve: 0.07 × P × (1−P) per contract (taker). Maximum fee of $0.0175 at P = 0.50. Maker orders are 4x cheaper.
Polymarket fees
Near-zero fees for standard markets (political, sports). Taker fee of 0.01% applies to some market categories. All fee calculations are included in edge computation before trade qualification.
Dashboard
The web dashboard provides full visibility into system activity:
Dashboard
Portfolio stats, open positions, and live signal feed
Automation
Start/pause trading, kill switch, risk metrics, and recent trade candidates
Activity
Full audit log with filterable event types and CSV export
Explore
Cross-platform market matches with confidence scores
Settings
Exchange connections (Kalshi + Polymarket) and risk profile configuration
Ready to get started?
Create an account to start trading.