A technical overview of a Dynamic Parimutuel (DPM) betting system with support for limit orders.
If y is the total number of outstanding shares of YES and n is the total number of outstanding shares of NO, the instantaneous implied probability of the market is
$$ P(y, n) = \frac{y^2}{y^2 + n^2} $$
We introduce a cost function C which captures the total amount wagered by all traders given the current shares of YES and NO:
$$ C(y, n) = \sqrt{y^2 + n^2} $$
If a trader places a bet of $b on YES, they add $b to the YES pool and receive s shares of the final pool if YES is the outcome, where s satisfies
$$ b = C(y + s, n) - C(y, n) $$
The market creator chooses an initial probability p and an ante amount to initialize the betting pool:
$$ p = \frac{y_{start}^2}{y_{start}^2 + n_{start}^2} \quad \text{s.t.} \quad \sqrt{y_{start}^2 + n_{start}^2} = ante, \quad y_{start}, n_{start} > 0 $$
Suppose the market resolves YES. The payout for a YES bet of s shares (with y total YES shares) is
$$ payout = \frac{s}{y} \cdot pool $$