Part of the Ashva module inventory — a multi-tenant tote and fixed-odds betting platform we built and operate. The engineering practice behind it is our platform build and integration service line.
A price is a probability with a margin applied to it. Systems that store only the price lose the ability to answer the two questions that matter when a market goes wrong: what did we think would happen, and what did we charge for being wrong about it.
This module holds the probability set as the primary artefact. Prices are derived, and the derivation is inspectable.
Margin, not mark-up
Book percentage is managed per market, with control over how margin is distributed across the field. Flat mark-up across every runner is the default in many systems and it is the wrong default: it overprices long shots relative to their true chance and leaves the short end exposed.
Movement rules
Markets move on feed updates, scratchings, tote fluctuation and trader action. Movement controls cap the size and frequency of moves and can suspend a market when a move exceeds a threshold rather than repricing through it. Suspension is a cheap outcome. Accepting a stream of bets into a mispriced market is not.
Derived markets stay consistent
Place, top-two and head-to-head markets are derived from the same probability set as the win market. Pricing them independently is how a platform ends up quoting positions that can be arbitraged against each other inside a single market set.
Correlated legs
Same-race-multi pricing treats legs within a race as correlated rather than independent. Multiplying independent probabilities across runners in the same race produces prices that are systematically wrong in the customer’s favour on some combinations and unsellable on others.
Per tenant
Margin, rounding, price ceilings and market availability are set per tenant against a shared probability set. Two brands on the platform can hold different price positions without maintaining two views of what is likely to happen.
What this module does not do
It does not enforce exposure. Limits, acceptance and referral live in the risk module. It also does not decide whether to offer a market: availability by jurisdiction and tenant is configuration, held with the operator and aggregator records.