A Market-Making Agent for Prediction Markets, Benchmarked Against the Published Optimum
Work in progress. This is my Fall 2026 capstone for Georgia Tech's Practice of QCF course, built with Naveen Kumar Singh, Rithvik Duggireddy and Soumya Ranjan Mohapatra. For now, this page describes the question and the plan. Results will replace it as they come in.
The idea
Prediction markets like Kalshi trade contracts that pay $1 if an event happens and $0 if it doesn't. A market maker posts a price to buy and a price to sell, and earns the gap between them. Two things eat into that profit: being stuck holding a pile of contracts when they settle, and trading against people who know more than you do.
There is now a published answer to how to quote optimally. Feil and Nendel (2026) write the problem as a Hamilton–Jacobi–Bellman (HJB) equation and solve it. But "optimal" only holds inside their model, and that model leaves out the two things that tend to hurt most in practice: informed traders and sudden news.
So our question is simple. How much does the theoretically optimal strategy degrade once informed traders and information shocks are added, and can a reinforcement-learning agent recover some of that loss?
The plan
1. Rebuild the benchmark. Reproduce the paper's model and numerical HJB solution, and check it against their published results before anything else.
2. Break its assumptions on purpose. Add traders with private information, calibrated to price-impact estimates from 41.6 million Kalshi trades (Bartlett and O'Hara, 2026). Separately, add sudden information jumps (informed by Xi et al., 2026). That gives four test environments: the original model, informed trading only, jumps only, and both together.
3. Train a learner. A Proximal Policy Optimization (PPO) agent sees the price, its inventory, time to resolution, recent volatility and order flow, and chooses its bid and ask. It optimizes the same objective as the HJB strategy, so the comparison is like-for-like.
4. Compare fairly. Put the RL agent against the original HJB policy, a recalibrated HJB policy and a simple inventory-and-flow rule, under the same fees, tick sizes and execution delays. Every policy is tested on unseen scenarios across multiple training seeds. We report profit, tail losses, drawdown and inventory exposure, not just average P&L.
Data
Kalshi's public API provides trades with direction, minute-level bid/ask candles, and settlement outcomes. We are targeting 50–100 standalone contracts across economics and sports.
What we're not assuming
We are not assuming RL wins. If the theoretical strategy holds up under realistic conditions, that is a useful finding too. The goal is to learn where adaptation helps and where the theory is already good enough.
We also stick to one contract at a time. Markets on correlated outcomes, like sports parlays (Rana et al., 2026), are a natural next step but outside this semester's scope.
Status
- ✓ Proposal
- Up next: Data pipeline
- Up next: HJB reproduction
- Up next: Informed-trading and jump simulator
- Up next: RL agent
- Up next: Results and write-up
Last updated: October 2026
References
- Feil, D. and Nendel, M. (2026). Optimal Market Making in Prediction Markets. arXiv:2607.17991. arxiv.org/abs/2607.17991
- Bartlett, R. and O'Hara, M. (2026). Adverse Selection in Prediction Markets: Evidence from Kalshi. SSRN Working Paper. papers.ssrn.com/abstract=6615739
- Xi, W., Moallemi, C. C., Pai, M. and Wang, S. (2026). Volatility in Prediction Markets: A Structural Approach. arXiv:2607.08199. arxiv.org/abs/2607.08199
- Rana, R., Nadkarni, V., Moshrefi, N. and Viswanath, P. (2026). ParlayMarket: Automated Market Making for Parlay-style Joint Contracts. arXiv:2603.22596. arxiv.org/abs/2603.22596