Arbitrage
Automated Kalshi market-making experiment.
Live trading is on. Status live
Net
-14.25
From Kalshi settlements, after fees, in dollars
Today's net
+0.00
Eastern time
Fees
12.49
In dollars
Locks and orphans
677 / 115
Orphan: only one side filled
Kalshi balance
$21.64
As of Nov 1 02:55 ET
Lock results
Lock rests one buy order on the cheaper side of each 15-minute BTC, ETH, SOL, XRP and DOGE market on Kalshi when that side costs 5 to 15 cents, one cent above the best bid, while 5 or more minutes are left. A fill is held until the market settles; an unfilled order is cancelled. Net is profit after fees, in dollars, from Kalshi settlements.
| Series | Bets | Won | Net |
|---|---|---|---|
| KXBTC15M | 6 | 1 | +0.02 |
| KXDOGE15M | 5 | 1 | +0.04 |
| KXETH15M | 3 | 0 | -0.45 |
| KXSOL15M | 5 | 0 | -0.81 |
| KXXRP15M | 6 | 1 | +0.03 |
| Market | Kind | Net | When |
|---|---|---|---|
| KXETH-26OCT0505-B2727 | Orphan | -0.2838 | |
| KXETHD-26OCT0505-T2724.99 | Orphan | +0.3242 | |
| KXETHD-26OCT0505-T2729.99 | Orphan | -0.0958 | |
| KXETH-26OCT0504-B2732 | Orphan | -0.2008 | |
| KXETHD-26OCT0504-T2729.99 | Orphan | +0.2755 | |
| KXETHD-26OCT0504-T2734.99 | Orphan | -0.1063 | |
| KXBTC-26OCT0503-B85850 | Orphan | -0.3762 | |
| KXBTC-26OCT0503-B86050 | Orphan | -0.2424 |
Shadow scoreboard
Paper bids against live Kalshi books. No orders. A lane promotes when it has 50 or more settled fills, positive net after fees, and t greater than 2, on its current rules.
pair_shadow
Settled
908
908 rows · 905 any fill · 623 both
Net
-54.24
After fees, dollars
Mean
-0.0597
sd 0.1323
t
-13.60
568 wins (net > 0)
Current rules
-36.86
640 settled · t -12.73 · since Oct 16 02:10
maker_shadow
Settled
445
445 rows · 435 any fill · 0 both
Net
-9.33
After fees, dollars
Mean
-0.0210
sd 0.3213
t
-1.38
52 wins (net > 0)
Current rules
-6.45
236 settled · t -1.37 · since Oct 15 16:15
timing_shadow
Settled
44
44 rows · 44 any fill · 0 both
Net
+1.52
After fees, dollars
Mean
+0.0345
sd 0.1582
t
1.45
43 wins (net > 0)
Current rules
+1.52
44 settled · t 1.45 · since Oct 16 06:30
cross_venue_shadow
Settled
4
4 rows · 4 any fill · 4 both
Net
+0.13
After fees, dollars
Mean
+0.0325
sd 0.0050
t
13.00
4 wins (net > 0)
Current rules
+0.13
4 settled · t 13.00 · since Oct 16 04:05
pair_shadow by series
| Series | Settled | Wins | Mean | t | Net |
|---|---|---|---|---|---|
| KXBTC15M | 174 | 104 | -0.0527 | -6.93 | -9.18 |
| KXDOGE15M | 184 | 119 | -0.0573 | -6.24 | -10.55 |
| KXETH15M | 181 | 115 | -0.0707 | -6.01 | -12.79 |
| KXSOL15M | 184 | 113 | -0.0530 | -6.27 | -9.74 |
| KXXRP15M | 185 | 117 | -0.0648 | -5.74 | -11.98 |
maker_shadow by series
| Series | Settled | Wins | Mean | t | Net |
|---|---|---|---|---|---|
| KXBTC15M | 177 | 20 | -0.0266 | -1.12 | -4.72 |
| KXDOGE15M | 199 | 23 | -0.0188 | -0.83 | -3.74 |
| KXETH15M | 22 | 2 | -0.0568 | -0.90 | -1.25 |
| KXSOL15M | 25 | 3 | -0.0244 | -0.37 | -0.61 |
| KXXRP15M | 22 | 4 | +0.0445 | 0.52 | +0.98 |
timing_shadow by series
| Series | Settled | Wins | Mean | t | Net |
|---|---|---|---|---|---|
| KXBTC15M | 8 | 8 | +0.0609 | 5.67 | +0.49 |
| KXDOGE15M | 10 | 10 | +0.0614 | 7.25 | +0.61 |
| KXETH15M | 9 | 9 | +0.0599 | 8.42 | +0.54 |
| KXSOL15M | 9 | 9 | +0.0542 | 7.16 | +0.49 |
| KXXRP15M | 8 | 7 | -0.0762 | -0.59 | -0.61 |
cross_venue_shadow by series
| Series | Settled | Wins | Mean | t | Net |
|---|---|---|---|---|---|
| btc_100k_2026 | 1 | 1 | +0.0300 | — | +0.03 |
| sol_160_2026 | 3 | 3 | +0.0333 | 10.00 | +0.10 |
Kalshi and Polymarket overlap
Price gaps between the two venues on the same question. Watch only, no orders. Net subtracts the Kalshi fee.
| Market | Side | Gross | Net | Polymarket min size | Reason | When |
|---|---|---|---|---|---|---|
| sol_300_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_200_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_180_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_160_2026 observed | no | 2¢ | 0¢ | 5.0 | cross_venue observe no edge=2c net=0c min_sz=5.0 | |
| eth_6k_2026 observed | yes | 0¢ | -2¢ | 5.0 | cross_venue observe yes edge=0c net=-2c min_sz=5.0 | |
| eth_5k_2026 observed | yes | 0¢ | -2¢ | 5.0 | cross_venue observe yes edge=0c net=-2c min_sz=5.0 | |
| eth_4500_2026 observed | yes | 1¢ | -1¢ | 5.0 | cross_venue observe yes edge=1c net=-1c min_sz=5.0 | |
| eth_4k_2026 observed | no | 0¢ | -2¢ | 5.0 | cross_venue observe no edge=0c net=-2c min_sz=5.0 | |
| eth_3500_2026 observed | no | 2¢ | 0¢ | 5.0 | cross_venue observe no edge=2c net=0c min_sz=5.0 | |
| midterms_rr observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| btc_200k_2026 observed | no | 0¢ | -2¢ | 5.0 | cross_venue observe no edge=0c net=-2c min_sz=5.0 | |
| btc_130k_2026 observed | no | -1¢ | -3¢ | 5.0 | cross_venue observe no edge=-1c net=-3c min_sz=5.0 | |
| btc_120k_2026 observed | yes | 0¢ | -2¢ | 5.0 | cross_venue observe yes edge=0c net=-2c min_sz=5.0 | |
| btc_110k_2026 observed | no | 0¢ | -2¢ | 5.0 | cross_venue observe no edge=0c net=-2c min_sz=5.0 | |
| btc_100k_2026 observed | no | 4¢ | 2¢ | 5.0 | cross_venue observe no edge=4c net=2c min_sz=5.0 | |
| btc_150k_2026 observed | no | -1¢ | -3¢ | 5.0 | cross_venue observe no edge=-1c net=-3c min_sz=5.0 | |
| sol_300_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_200_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_180_2026 observed | no | 1¢ | -1¢ | 5.0 | cross_venue observe no edge=1c net=-1c min_sz=5.0 | |
| sol_160_2026 observed | no | 2¢ | 0¢ | 5.0 | cross_venue observe no edge=2c net=0c min_sz=5.0 | |
| eth_6k_2026 observed | yes | 0¢ | -2¢ | 5.0 | cross_venue observe yes edge=0c net=-2c min_sz=5.0 | |
| eth_5k_2026 observed | yes | 0¢ | -2¢ | 5.0 | cross_venue observe yes edge=0c net=-2c min_sz=5.0 | |
| eth_4500_2026 observed | yes | 1¢ | -1¢ | 5.0 | cross_venue observe yes edge=1c net=-1c min_sz=5.0 | |
| eth_4k_2026 observed | no | 0¢ | -2¢ | 5.0 | cross_venue observe no edge=0c net=-2c min_sz=5.0 |