Inspiration

We started with a weird question: what would a stock market look like if traders were spread across the solar system? It turned out to be a real finance problem in disguise. In 1974, Herstatt Bank collapsed because one half of its currency trades settled in Germany and the other half was due hours later in New York. Time zones broke a bank. On Neptune, the "time zone" is over four hours of light travel, and almost half the messages never arrive. We wanted to see if you could build an exchange that still works under those rules.

What it does

The MultiPlanetary Exchange (MPX) clears trades for nine settlements, from Mercury to Neptune, through two relays orbiting the Sun. It supports transfers between planets, spot trading, futures, cross-planet swaps and margin calls.

The app lets you make a trade from any planet and watch it happen. You see each packet fly through the relays, lost copies drop out, the batch clear at Earth, and the confirmation travel back. Your portfolio updates as your money lands. There's also a live market where the same stock trades at nine different prices because news can only spread at the speed of light, a network map where you can watch the Sun block links over time, and a margin calculator.

How we built it

We built everything on the competition's frozen model of the solar system: fixed orbits, light-time of 8.317 minutes per AU, a 0.10 AU solar exclusion zone, two relays, lossy launches and a 600-message daily limit.

The core is a Python toolkit that propagates orbits, solves light-time exactly (including the receiver moving while the signal is in flight), and scans 200 years of geometry for every link closure. On top of that we wrote a protocol engine that runs every message, ledger entry and margin call. We used it to produce the evidence in our paper: scenario traces, stress tests, Monte Carlo price runs, and reruns at later dates.

The app is a single HTML file that recomputes the same physics live in the browser, so its numbers match the paper exactly.

We cross-checked the whole model with a second, independent implementation in JavaScript, built from the brief rather than ported from the Python. Both give the same answers to the last digit: Neptune to Earth in 4.1747 hours, 54.76% of first launches arriving, and 3.33% of attempts abandoned.

Challenges we ran into

Retries don't work for deadlines. From Neptune, a lost packet gets retried hours later, which is useless for an order trying to make a batch. We switched to sending independent copies up front, sized so at least one arrives on time 99.5% of the time.

Fairness was harder than it looked. Our first rule for "no front-running" broke because the brief's direct service is faster than the relay network. Deadlines had to be set by the straight-line speed of light, which nothing can beat.

The message budget kept us honest. With 600 messages a day for the whole system, we couldn't run batches as often as we wanted, which led to a two-speed design: inner planets every 90 minutes, outer planets every six hours.

We also caught our own bugs. One early rule could have created money out of thin air if a confirmation got lost. We rebuilt transfers so only the receiving side can declare that money never arrived.

Accomplishments that we're proud of

The network never goes dark. We proved the Sun can never block both relays at once, and checked every hour of 200 years. Money moves exactly once, no matter how many packets get lost. We mapped where it breaks. Defaults only start when prices move about 30% in three days, and we can show exactly where that boundary sits. Two independent implementations, one in Python and one in JavaScript, agree to the last digit. It's real enough to play with: an app where anyone can make a trade on Neptune and watch it settle.

What we learned

Speed of light isn't just a physics constraint; it's a financial one. Every number in our design, from margin size to batch timing to how many copies an order needs, comes back to how far away the other side is. Distance literally costs capital: the same position needs 1.33% margin on Earth and 3.01% on Neptune.

We also learned that a good stress test matters more than a good result. Some of our best design decisions came from runs that broke things.

What's next for MULTIPLANETARY EXCHANGE SYSTEM

Swap the fixed ellipses for a real ephemeris. Earth alone wobbles about 4,700 km because of the Moon. A ring of relays could cut outer-planet delays. Model how traders choose between the fast and slow batch tiers. Apply the same light-speed fairness ideas to terrestrial markets, where microseconds matter the same way hours do here.

Built With

Share this project:

Updates

Submission history