ammario 3 days ago

Cool to see. I'm currently #1 on the Kalshi volume leaderboard (https://kalshi.com/social/leaderboard) with a proprietary market making algorithm.

There is plenty of money to be made on Kalshi, but I had to rethink the math from the ground up as most of the literature describes highly liquid, somewhat stable markets.

One small change you could make to your algorithm is to calculate the skews/spreads in log-odds space. A change in price from 50c to 49c represents a very small delta in expected return whereas 2c to 1c is a doubling. Dealing with probability contracts in log-odds controls for this effect.

  • andes314 a day ago

    That's awesome! Yes, not being able to place fractional cent costs makes the problem unique relative to other markets.

    I will give this a shot! And if you would be willing to collaborate, please shoot me an email.

    • ammario a day ago

      Unfortunately collaboration here would kill my alpha ;)

  • seizethecheese 2 days ago

    Is volume going up?

    • ammario 2 days ago

      I've been recording every trade across the platform for the past 3 months, which is when I began my operation.

      Median Daily Volume (M$)

      Dec 2024 - 10.2

      Jan 2025 - 5.04

      Feb 2025 - 5.89

      So, in short, my data is inconclusive. I've been impressed with their marketing and business development though. They seem to be cozy with the new administration and I imagine any headwinds they had from the CFTC are disappearing.

      • seizethecheese 2 days ago

        That February number is quite promising! Thanks.

andes314 3 days ago

I built a market making algorithm for Kalshi, an event futures exchange. The algorithm dynamically places bids and asks to capture the spread while managing inventory risk. It supports multiple strategies running in parallel, each with its own configuration. The codebase is located at https://github.com/rodlaf/kalshimarketmaker.

  • swilliams231 3 days ago

    This is awesome. I tried doing something like this but had to put it on hold due to college classes/exams. Have you had any success with this strategy?

    • andes314 3 days ago

      I gave it some cash but in the end, with my risk configuration, it wasn't 'exciting' enough because orders don't really get taken very frequently. I think You'd have to deploy much more cash than I did (> $1000) and trade at least a couple dozen securities to really make it 'fun'.

      A major improvement to the software that I didn't get around to was a script to identify which securities offer the best market making opportunities (e.g., maybe by generating a custom YAML file).

      • swilliams231 2 days ago

        Did you try using it on the temperature markets? Those seem to get the most consistent trading volume.

        Also, LMK if you want some of the data, I collected I can share this via an S3 bucket. It's from the chicago max temp market. I ended up scrapping my strategy (not market making), but don't want the data to go to waste.

        • keith4u 2 days ago

          Hey, not OP but I am interested in whatever data you have, I mess around with the temperature markets. Have gotten started with NYC, but am about to start with Chicago. E-mail in profile.

vagab0nd 2 days ago

Arbitraging is so 2024. The future is prediction market manipulation/crowd funding. Imagine shorting "asteroid hitting earth" and using the proceeds to divert the asteroid.

  • fooker 2 days ago

    This is why Warren Buffett is successful.

    He buys up companies with a strong potential, then manages it to be better.

wslh 2 days ago

ELI5: how market making works in event prediction? I logged in into Kalshi and I only yes/no ossible answers with two probabilities associated. Their page on market making doesn't explain it [1].

[1] https://help.kalshi.com/faq/what-is-the-market-maker-program

  • andes314 2 days ago

    You treat a single side (yes or no) as a contract and do it as you would any other security. The difference here is you can hold “negative” stock which is stock in the opposite side. To reduce inventory risk you adjust your willingness to sell/buy so you’re always hovering around zero.

zietzm 3 days ago

Nice work! Code is super readable. Are you planning to keep improving it, or was this more an experiment to learn?

  • andes314 3 days ago

    This was an experiment to both 1) learn how market making works and 2) figure out what is so hard about it. My main insight from this process is that order management--making sure only the orders you want are placed, and fast, is a pretty complex software problem. The algorithm itself seems to be one of the easier things to implement.

    • mgaunard 3 days ago

      I find that the best way to solve that is to make the strategy define its desired state, and then you have another component that diffs the current and desired states to identify the necessary transactions to send out as well as their priority based on the nature of the diff, then finally go to a scheduler.

maest 3 days ago

How big are the kalshi markets anyway?

  • boshalfoshal 3 days ago

    The markets that are basically derivatives of financial products (qqq/spy closing price, oil, rates, etc) have pretty decently sized volume but are likely pretty efficiently priced and most likely have institutions market making on them.

    The more niche markets are orders of magnitude smaller and are probably less efficient. However, market making on some low volume, niche market probably won't pay much.

    • DiscourseFan 2 days ago

      One of the exceptions to that was of course the recent election, but events with such high volumes on that scale of unpredictability are quite rare.

  • ammario 3 days ago

    Daily trading volume is about ~$5m