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

# Odds em queda (dropping odds)

> Detetar odds que encurtam — o sinal do dinheiro sharp — com o histórico completo de odds da Pinnacle.

Uma **dropping odd** é um resultado cuja odd decimal **desce** (encurta) de forma notável ao longo do tempo — p. ex. uma vitória em casa que passa de **2,50 para 2,10**. Uma odd mais curta significa uma **probabilidade implícita a subir**: entra dinheiro nesse lado. Como a Pinnacle é a casa mais *sharp*, estes movimentos costumam indicar **informação de mercado** (lesão, onze, um *steam move*).

## Porque é um sinal

* **Dinheiro informado**: na Pinnacle uma queda acentuada reflete apostas grandes/informadas, não ruído.
* **CLV positivo**: apostar *antes* de a odd encurtar mais bate o fecho (ver [true odds](/pt/concepts/true-odds)).
* **Timing ao vivo**: em direto, as dropping odds reagem aos eventos do jogo em segundos.

## Detetá-las com a apinn

Cada chamada a [`/api/odds?full_history=1`](/pt/api-reference/introduction) devolve **todos os snapshots** de um evento (cada um com timestamp), com as odds brutas `odds1/odds0/odds2` **e** as devig `todds1/0/2`. Compara a **abertura** (primeiro snapshot) com o valor **atual**:

<Steps>
  <Step title="Listar os jogos ao vivo">
    ```bash theme={null}
    curl "https://api.apinn.io/api/fixtures?sport_id=29&live=1" -H "X-API-Key: A_TUA_CHAVE"
    ```
  </Step>

  <Step title="Obter o histórico de odds">
    ```bash theme={null}
    curl "https://api.apinn.io/api/odds?event_id=1632003656&full_history=1&main_lines_only=1&market=moneyline" \
      -H "X-API-Key: A_TUA_CHAVE"
    ```
  </Step>

  <Step title="Calcular a queda por resultado">
    `queda% = (abertura − atual) / abertura × 100` — guarda as quedas ≥ ao teu limiar.
  </Step>
</Steps>

```python Python theme={null}
import requests

BASE, H = "https://api.apinn.io", {"X-API-Key": "A_TUA_CHAVE"}
LIMIAR = 8         # % de queda mínimo
event_id = 1632003656

hist = requests.get(f"{BASE}/api/odds",
    params={"event_id": event_id, "full_history": 1,
            "main_lines_only": 1, "market": "moneyline"}, headers=H).json()

# snapshots ordenados por timestamp ; abertura = primeiro, atual = último
snaps = sorted(hist, key=lambda r: r["timestamp"])
if snaps:
    open_, now = snaps[0], snaps[-1]
    for k, label in [("odds1", "casa"), ("odds0", "empate"), ("odds2", "fora")]:
        o, n = open_.get(k), now.get(k)
        if o and n:
            drop = (o - n) / o * 100
            if drop >= LIMIAR:
                print(f"⬇ {label}: {o:.2f} → {n:.2f}  (−{drop:.1f}%)")
```

<Info>
  Usa antes os campos **`todds`** (sem a margem) para um sinal mais limpo: a queda reflete então o movimento da **probabilidade justa**, não a margem.
</Info>

## Boas práticas

* **Limita as odds** (p. ex. 1,30–6,00): ignora os extremos ruidosos.
* **Janela**: desde a abertura (movimento de fundo) ou nos **últimos N minutos** (reação ao vivo).
* **Tempo real**: para sub-segundo, ouve o fluxo [SSE](/pt/concepts/streaming) em vez de fazer polling.
* **Inverso**: as *rising odds* (odds a subir) sinalizam dinheiro a **sair** de um lado.

## Constrói-o num prompt

Não queres programar? Cola o nosso prompt pronto a usar no Claude e ele constrói o monitor de dropping odds — ver **[Construir com Claude](/pt/build-with-claude)**.
