ALPHA TIER HISTORICAL

Historical Max Pain Data API

Replay max pain, pain curve, dealer alignment, and pin probability at any minute since April 2018. Same shape as live /v1/maxpain.

Coverage
2018-04-16 → 2026-04-02
Granularity
1 minute
Tier
Alpha+
Format
JSON (REST)

Endpoint

GET/v1/maxpain/{symbol}?at=...&expiration=
Host: historical.flashalpha.comAuth: X-Api-KeyTier: Alpha
curl -H "X-Api-Key: YOUR_API_KEY" \
  "https://historical.flashalpha.com/v1/maxpain/SPY?at=2026-03-05T15:30:00"

Response (truncated)

{
  "symbol": "SPY",
  "underlying_price": 679.46,
  "as_of": "2026-03-05T15:30:00",
  "max_pain_strike": 684,
  "distance": { "absolute": 4.54, "percent": 0.67, "direction": "below" },
  "expiration": "2026-03-05",
  "put_call_oi_ratio": 2.033,
  "pain_curve":   [ { "strike": "...", "call_pain": "...", "put_pain": "...", "total_pain": "..." } ],
  "oi_by_strike": [ { "strike": "...", "call_oi": "...", "put_oi": "...", "total_oi": "..." } ],
  "max_pain_by_expiration": [ { "expiration": "...", "max_pain_strike": "...", "dte": "...", "total_oi": "..." } ],
  "dealer_alignment": { "alignment": "moderate", "gamma_flip": 677.5, "call_wall": 685, "put_wall": 680 },
  "expected_move": { "straddle_price": 1.57, "atm_iv": 19.6, "max_pain_within_expected_range": false },
  "pin_probability": 45
}

What This Unlocks

  • Quantify how often price actually pinned to max pain across thousands of historical expiries.
  • Compare max pain vs gamma flip vs walls as predictors at minute granularity.
  • Build expiration-week dashboards showing how max pain evolved through the week.