Skip to content

Latest commit

 

History

History
52 lines (31 loc) · 3.18 KB

TIP-110.md

File metadata and controls

52 lines (31 loc) · 3.18 KB
id Title Status Author Description Discussions to Created
TIP-110 Add spread and total points/goals markets to Overtime Draft Danijel Add spread and total points/goals markets to Overtime https://discord.gg/rPpPcMXSeU 2022-11-29

Abstract

This TIP proposes to add markets for winner with handicap/spread and for total points/goals as applicable per sport on Overtime.

Motivation

Spread/handicap markets are quire popular on sportbooks specially for binary sports such as NBA or NFL. Instead of taking very low odds by positioning on the favourite, users prefer positioning with spread applied which take the odds usually to 50% before the fee is applied.
Similarly, total points markets are quite popular. Users here take a position of OVER or UNDER a given threshold for e.g. total number of points in an NBA match.

The odds for these markets are already available on the Oracle side, so we can proceed supporting it in Overtime.

However, given that not only the odds but also the specific thresholds are changing on the data provider side as we get closer to the start of a given game, we have to implement these markets in a different way than regular moneyline markets. More details in the specification section.

Specification

Example game:
NBA Lakers vs Clippers

Spread market: Lakers (-3.5) vs Clippers: will resolve as HOME if Lakers win with more than 3.5 points or AWAY otherwise.

Total points: Threshold = 200.5: will resolve as HOME if total points in a game surpasses 200.5, or AWAY otherwise.

If the threshold is a whole number (e.g. 200 and not 200.5) and the number of points is exactly that number (200), the market resolved as cancelled and all positions are claimable as refunds. Same applies for spreads with threshold as whole number.
Assumption is that all markets are resolved with results after overtimes (for binary sports, not for soccer).

The spread can change as we get closer to the game, e.g. the following can be a sequence of data chronologically as we get it from the oracle:

  • Lakers (-3.5) vs Clippers
  • Lakers (-4.5) vs Clippers
  • Lakers (-5.5) vs Clippers
  • Lakers (-3.5) vs Clippers

Every time the spread changes we create a new market and pause the previous one. Due to implementation complexity the skew and caps are reset every time a new market is created, so for the MVP release we will start with managable caps to not risk all AMM liquidity on a single game.
If a spread reappears (-3.5 in the example above), we reactive the market previously created.

Each spread and totals market will have a reference to the parent market which is the one currently known as moneyline. All markets are resolved in a single method as we get the results from the oracle inclusive of exact points scored per team.

Per previously established rules a Parlay can only have one position from a specific game in a ticket.

Selling to the AMM will not be supported for these markets.

Implementation

thales-markets/contracts#240

Copyright

Copyright and related rights waived via CC0.