---
title: "Get Mlb Dog Hypothesis"
method: GET
path: "/api/grading/mlb-dog-hypothesis"
tags: ["grading"]
---

# Get Mlb Dog Hypothesis

`GET /api/grading/mlb-dog-hypothesis`

## Request

- Base URL: `https://api.fairline.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.fairline.io/api/grading/mlb-dog-hypothesis`
- Auth: HTTP bearer

Frozen-entry MLB dog-hypothesis cohort record (WS2 task 2.2).

Reads the prospective cohort of frozen sharp_dog_entries (from
DOG_COHORT_EPOCH), de-vigs each entry's raw pair three ways, and rolls up the
proportional PRIMARY cohort (n, record, actual-minus-sharp) plus the Shin and
power SENSITIVITY cohorts, executable coverage, flat 1u P&L on the executable
subset, and the entry-vs-close gap in its own labeled section. Empty (staging,
no rows) returns a sane zero cohort, never a 500. Cached in-process for
_DOG_HYP_CACHE_TTL.

## Response `200`

Successful Response

- MlbDogHypothesisResponse: Frozen-entry MLB dog-hypothesis cohort record (feeds the T11.4 gate). Top-level ``wins`` / ``losses`` / ``pending`` / ``actual_minus_sharp`` are the PRIMARY (proportional) cohort; ``devig_methods`` carries all three cohorts so the sensitivity read stays inspectable but distinct. Flat 1u P&L is over the executable subset only, at each member's frozen executable decimal.
  - `cohort_epoch` string, date-time, required
  - `gate` string, required
  - `n_hypothesis` integer, required
  - `wins` integer, required
  - `losses` integer, required
  - `pending` integer, required
  - `actual_minus_sharp` number, nullable
  - `devig_methods` DogHypothesisDevigCohort[], required
    - `method` string, required
    - `is_primary` boolean, required
    - `n_members` integer, required
    - `wins` integer, required
    - `losses` integer, required
    - `pending` integer, required
    - `actual_minus_sharp` number, nullable
  - `n_executable` integer, required
  - `executable_share` number, nullable
  - `n_sharp_only` integer, required
  - `pnl_units` number, required
  - `pnl_n` integer, required
  - `close_gap` DogHypothesisCloseGap, required: Entry-vs-close sharp-prob gap, reported separately from the frozen record. The close is the per-identity sharp-anchored (Pinnacle no-vig) close from the WS1 ``market_lines`` machinery. A missing close is counted unavailable and is never backfilled from a carried observation.
    - `n_available` integer, required
    - `n_missing` integer, required
    - `mean_entry_to_close_prob` number, nullable
  - `disclaimers` string[]

---

[API](https://skmtc.dev/fairline/apis/fairline-api.md) · [All operations](https://skmtc.dev/fairline/apis/fairline-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fairline/apis/fairline-api/revisions/9f7ed2bfdf75?raw)
