Mercados e odds

Mercados

Uma partida pode carregar varios mercados, agrupados sob um seletor de mercado como uma casa de apostas real. A regra: todo mercado declara os dados de que precisa para liquidar; se a fonte ativa nao consegue fornece-los, esse mercado nunca e criado — o app nunca oferece uma aposta que nao consegue pagar.

MercadoResultadosUsado para
Resultado da partida (1x2)Casa / Empate / Visitantefutebol (tem empates)
Vencedor (winner)Casa / Visitantebasquete, beisebol, hoquei, NFL, UFC, tenis...
Mais / Menos (ou25 futebol · ou custom)Mais / Menos que uma linhatotais de gols no futebol (auto via OpenLigaDB); outros esportes via custom
Ambas as equipes marcam (btts)Sim / Naofutebol
Artilheiro a qualquer momento (scorer)uma selecao por jogadorfutebol (curado pelo admin)
Personalizado (custom)seus proprios resultadoseventos de RP

O mercado de artilheiro com multiplos vencedores

O mercado Buteur e especial: mais de uma selecao pode vencer. Cada jogador que marca vence com suas proprias odds fixas. O admin o cria pela tela de administracao (um jogador por linha com um preco), os jogadores podem apostar em varios artilheiros e, na liquidacao, o admin marca todos que marcaram — cada apostador e pago com suas odds travadas. Ele e renderizado como uma lista vertical de jogadores no estilo de uma casa de apostas.


Modelos de odds

Escolha o modelo por evento (as fontes automaticas usam ao vivo por padrao).

Ao vivo — odds travadas no estilo de uma casa de apostas

As odds exibidas sao precificadas ao vivo a partir do pool de apostas (por isso elas se movem e parecem realistas), mas cada aposta trava as odds exibidas naquele momento e e paga valor apostado × odds travadas na liquidacao.

  • Uma aposta vencedora sempre paga mais do que o valor apostado (com piso em MinDecimal, 1.01).
  • O jogador ve um ganho potencial exato e travado imediatamente — como uma casa de apostas real.
  • A banca carrega o risco, limitado pelo teto de exposicao (abaixo).

Parimutuel — a banca nunca perde

Todas as apostas de um evento vao para um pool; a banca retira a vig; os vencedores dividem o restante na proporcao de sua aposta vencedora.

  • A banca nunca pode perder — o total pago e sempre o pool menos a margem.
  • As odds se autoequilibram e flutuam ate o prazo, de modo que o pagamento e uma estimativa (claramente sinalizada e calculada da mesma forma que o servidor liquidara, para que o boletim nunca prometa demais).
  • Em um grande favorito, uma aposta vencedora pode retornar menos do que o valor apostado — e assim que funcionam as apostas em pool (estilo de apostas mutuas). Use ao vivo se quiser garantia de ganho > valor apostado.

Fixo

Odds decimais predefinidas, travadas no momento da aposta (payout = stake × odds). Melhor para eventos de RP feitos manualmente, em que voce mesmo define o preco.


Teto de exposicao da banca

Config.Bet.MaxPayoutPerSelection = 1000000

Com odds ao vivo / fixas a banca deve os pagamentos. Este teto e a alavanca de seguranca: uma aposta que empurraria o pagamento potencial total da banca em um resultado para alem dele e recusada (err.cap). Ele tambem restringe naturalmente os resultados de odds altas (mais arriscados) mais do que os favoritos. Combinado com Config.Odds.MaxDecimal (o teto por aposta), ele limita o pior caso da banca.

O dinheiro e a prova de balas. A liquidacao e idempotente e protegida por ledger (sem pagamentos duplicados durante um crash, uma corrida ou um duplo clique), o parimutuel liquida a partir das linhas reais de apostas (a banca nunca pode perder para uma falha de cache), creditos que falham nunca se perdem (sao recreditados na proxima abertura do app ou spawn), e os vencedores offline sao pagos no proximo login. Todo o fluxo de dinheiro foi reforcado por uma auditoria adversarial completa.