> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sx.bet/llms.txt
> Use this file to discover all available pages before exploring further.

# Quarter Line Markets

> How quarter-line markets work on SX Bet

Soccer markets on SX Bet now support quarter lines — Asian handicap and Asian totals in `.25` increments (e.g. `-1.25`, `+0.75`, `Over 2.75`). We're rolling this out gradually: quarter lines are currently enabled on a subset of soccer fixtures and will expand across the rest of soccer over the coming weeks.

While the rollout is in progress, you'll see quarter-line markets appear alongside whole and half lines for some fixtures and not others. Both [`GET /markets/active`](/api-reference/get-markets-active) and [`GET /markets/find`](/api-reference/get-markets) return them with `line` set to the quarter value.

<Accordion title="Example quarter-line market">
  ```json theme={null}
  {
    "status": "success",
    "data": [
      {
        "status": "ACTIVE",
        "marketHash": "0x59b0e45f79d4b6eedaed199011b8bf72a8b4342e3b410457cc42abcf05d3592d",
        "outcomeOneName": "Brighton and Hove Albion -1.25",
        "outcomeTwoName": "Wolverhampton Wanderers +1.25",
        "outcomeVoidName": "NO_GAME_OR_EVEN",
        "teamOneName": "Brighton and Hove Albion",
        "teamTwoName": "Wolverhampton Wanderers",
        "type": 3,
        "gameTime": 1778335200,
        "line": -1.25,
        "sportXeventId": "L18724593",
        "liveEnabled": false,
        "sportLabel": "Soccer",
        "sportId": 5,
        "leagueId": 29,
        "leagueLabel": "English Premier League",
        "group1": "English Premier League",
        "chainVersion": "SXR",
        "participantOneId": 1002,
        "participantTwoId": 998,
        "mainLine": false,
        "sxTeamOneId": 100,
        "sxTeamTwoId": 97,
        "__type": "Market"
      }
    ]
  }
  ```
</Accordion>

## How quarter lines work

A bet on a quarter-line market is split by the API into two trades on the surrounding whole and half lines, with half the stake on each at the same odds. A 50 USDC bet on `Brighton -1.25 @ 1.9` is recorded as:

* 25 USDC on `Brighton -1.0 @ 1.9`
* 25 USDC on `Brighton -1.5 @ 1.9`

The two child trades settle independently against the same final score, which reproduces the five quarter-line outcomes that can't be expressed by a single binary market:

| Result                  | `Brighton -1.0` | `Brighton -1.5` | Net payout on 50 USDC |
| ----------------------- | --------------- | --------------- | --------------------- |
| Brighton wins by 2+     | Win             | Win             | 47.50 USDC (full win) |
| Brighton wins by 1      | Push            | Loss            | 25 USDC (half loss)   |
| Brighton draws or loses | Loss            | Loss            | 0 USDC (full loss)    |

Orderbooks, posting orders, and filling on whole and half lines are unchanged — quarter-line splitting only happens when a bet is placed against a quarter-line `marketHash`.

## How quarter-line bets appear in the API

A single quarter-line bet appears as:

* **Two entries** in [`GET /trades`](/api-reference/get-trades) — one raw on-chain trade per leg, each on its own leg `marketHash`.
* **Three entries** in [`GET /trades/consolidated`](/api-reference/get-trades-consolidated) — the two leg consolidated trades (each on its leg `marketHash`) plus a synthetic **parent** consolidated trade keyed to the quarter-line market's `marketHash` and a derived parent `fillHash`. The parent consolidated trade aggregates `totalStake` / `totalReturn` / `netReturn` across the legs and is the entry to use for user-facing P\&L on the bet.

### Deduping with `quarterLineFillHash`

Use `quarterLineFillHash` to dedupe `/trades/consolidated` responses:

* The two leg consolidated trades carry `quarterLineFillHash = <parent fillHash>`.
* The parent consolidated trade carries `fillHash = <parent fillHash>` and `quarterLineFillHash = null`.

Sum just the parents — or just the legs, but never both — when aggregating P\&L or volume.

### Settlement

Each child trade settles independently, so a single bet may produce 0–2 settlement transactions depending on the result. The parent entry's settlement state in `/trades/consolidated` reflects the combined outcome once both leg entries have settled.
