OneChronos (YC S16) – Combinatorial auctions market for US equities

Hi HN—we're Kelly and Steve, co-founders of OneChronos ( OneChronos is a "Smart Market" for US equities—meaning we match counterparties using mathematical optimization instead of classical human auctioneer mechanics [1]. Our flavor of Smart Market—combinatorial auctions—lets users enter orders spanning multiple securities and specify matching preferences way beyond just price and quantity.

We didn't invent Smart Markets or combinatorial auctions. Roughly $1T/year flows through them in industries ranging from display advertising to telecommunications. The underlying theory was the subject of the 2020 Nobel Prize in Economic Sciences [2]. We're bringing them to capital markets, and we have both the customers and the regulatory clearance to do so. Our initial user base contains the household names cumulatively responsible for ≈70% of US equities trading volume.

Today's market structure costs institutional investors at least a trillion dollars annually. We'll go into the details below, but the big thing to understand is that mutual/pension/sovereign funds, 401K plans, and ETF managers pay the price, and ultimately it gets passed on to households. Given diverse investment time horizons and risk preferences, capital markets are not a zero-sum game, but the existing market structure makes it one. Any form of market friction that prevents mutually beneficial trades from happening is an economic loss. Our goal is to make a lot more mutually beneficial trades happen.

We started working on OneChronos as experienced traders and auction theorists. Even so, getting here has taken five years of iterating with customers, tackling two deep tech problems, and working through an involved regulatory process. We'll describe what's causing existing market friction, the solution, and why that solution is a significant technical lift.

When people hear about market friction and hidden costs, they usually think about low latency technology, market data, exchange fees, and predatory HFT practices. Those are significant, and yet they are rounding errors compared to others. The principal sources of market friction that we're attacking are bidders' inability to express economic complements (things that are worth more together than separately), substitutes (things with diminishing marginal utility that are replacements for each other) and non-price factors, and game-theoretic incentives against bidding "truthfully"—that is, against specifying how many units of a good you have and the highest price at which you'd buy or the lowest at which you'd sell them (your supply and demand curve). The most commonly proposed market structure "fixes," like single good periodic batch auctions and the IEX speed bump, don't address any of these.

Imagine that a buyer values two goods A and B at $10 for the package, but only $4 for each individually since they're complements. Similarly, a seller might unload the package for $8 while demanding $5 for each good individually. Both agents have "exposure risk" if A and B are bought and sold separately—they might get stuck with an incomplete package. No trade happens if the risk is high enough (buy at $4, sell at $5, no cross). But if they can trade the package atomically, there's a mutual win of $2 in gains from trade. Similar missed opportunities happen if agents only want A XOR B or have different prices for different counterparties (price discrimination). This game of imperfect information and missed opportunities plays out every day in capital markets globally.

The straightforward solution to these problems is called "Expressive Bidding"—the ability to communicate parametric bids to the auctioneer, e.g., buy at most one of {$10 for A and B, $4 for A, $4 for B} or sell at most two units of A, pricing it at $10 for counterparty C_1, $9 for C_2, or $8 for C_3. Given everyone's Expressive Bid and a well-chosen objective function, the auctioneer uses constrained optimization to clear the market and unlock efficiencies. Awesome. So why didn't this happen when markets first started going electronic?

General combinatorial auctions are isomorphic to weighted set packing. Clearing them is an NP-complete optimization problem. Finding feasible and near-optimal solutions at the speed and scale of capital markets is deep tech problem #1. Furthermore, bidding in combinatorial auctions can be challenging in both a computational and UX sense. Making it easy is deep tech problem #2.

We tackle problem #1 similarly to how game AI like AlphaZero and optimizers like AlphaFold work. The combination of deep learning, heuristics, and classical AI search techniques is powerful, and applying them to combinatorial auctions in novel ways is a core part of our IP. Problem #2 involves the magic of formal methods. Expressive Bidding users submit snippets of code (a functionally pure subset of OCaml/ReasonML) called a Proxy Bidder. These proxies are essentially functions mapping "proposals" (allocations of goods) to prices, e.g., f({2A, -B}) → -5, meaning that the bidder wants $5 for buying two units of A and selling one unit of B. Using formal methods, we turn Proxy Bidders into Expressive Bids that our optimizers can understand. You can see what that looks like here [3]. This approach is dead simple for end users, but it took years of collaborative R&D with our friends and formal methods legends at Imandra [4] to enable.

Not everyone needs to write or use Expressive Bids. For common use cases, we're offering pre-canned/forkable Expressive Bids for things like pairs trades and factor neutral portfolios. That aside, users who don't use Expressive Bidding still benefit from those who use it and create unique liquidity that doesn't exist on other trading venues. Our economic mechanism prevents "dark forest" scenarios in which Expressive Bidding has adversarial uses that detract from overall match quality. "Power users" can only benefit those who treat us like a vanilla trading venue—and each other.

We make money by charging a small commission in line with other venues ($0.0009) on each share traded. Longer-term, we're excited about a pricing model that balances computational resources used against liquidity contributed and compensates OneChronos based on how much value we add. Specifically, we'll measure how much notional dollar price improvement we generate for the market beyond what's generated by a "vanilla" double auction that we run in parallel (a neat trick enabled by Expressive Bidding–we can run an arbitrary number of auctions with different rulesets in parallel to measure relative performance). This approach aligns our incentives with our customers and eliminates fixed costs (which cause market friction) from trading.

Only FINRA registered broker-dealers connect to OneChronos directly. If you work at one, and you're not yet a subscriber, please get in touch. We love talking to both subscribers and their customers, and we'd love to hear from institutional investors looking to leverage OneChronos through their existing broker algo and DMA workflows. Retail customers will eventually access us through brokers that choose to allow it (PFOF is its own thing). In the meantime, stay tuned for other more decentralized asset classes :) You can reach us at info (at)

And we're hiring! If you're passionate about deeply technical problems ranging from mechanism design to applying ML to combinatorial optimization to writing compilers and engineering sophisticated distributed systems to HFT tolerances, get in touch — careers (at)

Steve and I will be online today and would love to talk about our technical challenges, auctions/mechanism design, market structure, and the future of OneChronos.


[2] - Paul Milgrom, one of the laureates, is the Chair of OneChronos Labs, our research arm.



Get Top 5 Posts of the Week

best of all time best of today best of yesterday best of this week best of this month best of last month best of this year best of 2023 best of 2022 yc w24 yc s23 yc w23 yc s22 yc w22 yc s21 yc w21 yc s20 yc w20 yc s19 yc w19 yc s18 yc w18 yc all-time 3d algorithms animation android [ai] artificial-intelligence api augmented-reality big data bitcoin blockchain book bootstrap bot css c chart chess chrome extension cli command line compiler crypto covid-19 cryptography data deep learning elexir ether excel framework game git go html ios iphone java js javascript jobs kubernetes learn linux lisp mac machine-learning most successful neural net nft node optimisation parser performance privacy python raspberry pi react retro review my ruby rust saas scraper security sql tensor flow terminal travel virtual reality visualisation vue windows web3 young talents

andrey azimov by Andrey Azimov