# GET /api/mcp/data/earnings-verdict/{ticker}

> Should I buy or sell the NVDA earnings straddle?

Combines the priced event move, the historical move distribution, consistency, IV crush, post-earnings drift and the earnings smile into an edge score and a signal with reasons and suggested structures. Preliminary when the report is far out.

- **Family:** Earnings and expected move (https://apexvol.com/developers/earnings-expected-move-api)
- **Plan:** Pro and above. Every call needs `Authorization: Bearer avmcp_<token>`; tokens are issued to paid and trial accounts under Account, then API Access.
- **Units:** Moves in percent; IVs in percentage points; edge_score and confidence 0 to 100.
- **Basis:** Historical moves are close-to-open gaps on the reaction day. The implied move is the straddle for the expiration after the report.
- **MCP tools:** `get_earnings_move_analysis`
- **Background:** https://apexvol.com/learn/earnings-trade-checklist

## Parameters

| Name | In | Default | Range | Meaning |
|---|---|---|---|---|
| `ticker` (required) | path |  | any covered symbol | The underlying, upper case. Use /search to check coverage. |

## Request

```bash
curl -H "Authorization: Bearer avmcp_YOUR_TOKEN" \
     "https://apexvol.com/api/mcp/data/earnings-verdict/NVDA"
```

## Response (captured 2026-09-08)

Real response, lists cut to the rows nearest the money. The envelope is `{"success": true, "data": ...}`.

```json
{
  "success": true,
  "data": {
    "confidence": {
      "consistency_label": "Moderate",
      "move_consistency_ratio": 0.79,
      "move_range_max": 16.4,
      "move_range_min": 0.53,
      "move_stddev": 4.42,
      "quarters_analyzed": 12,
      "straddle_return_stddev": 1.8
    },
    "direction": {
      "avg_down_move": -4.07,
      "avg_up_move": 7.65,
      "directional_bias": "slight_bearish",
      "down_count": 7,
      "quarters": [
        {
          "date": "2026-08-26",
          "gap_move_pct": 6.3,
          "move": 8.74,
          "straddle_return": 5.9
        },
        {
          "date": "2026-05-20",
          "gap_move_pct": -0.53,
          "move": -1.77,
          "straddle_return": 6.1
        },
        {
          "date": "2026-02-25",
          "gap_move_pct": -0.66,
          "move": -5.46,
          "straddle_return": 6.1
        }
      ],
      "up_count": 5
    },
    "edge": {
      "avg_straddle_return": 8.0,
      "diffusion_move_pct": 13.07,
      "edge_components": {
        "consistency": 20.8,
        "magnitude": 47.8,
        "mispricing": 50.0,
        "variance": 100.0
      },
      "edge_interpretation": "Moderate edge",
      "edge_score": 47.9,
      "event_variance_share": 0.1371,
      "historical_avg_close_to_close_pct": 5.56,
      "historical_avg_move_basis": "gap",
      "historical_avg_move_pct": 3.83,
      "implied_move_atm_strike": 230.0,
      "implied_move_expiration": "2026-11-20",
      "implied_move_model_pct": 4.8,
      "implied_move_model_sigma_pct": 6.0,
      "implied_move_pct": 5.21,
      "implied_move_source": "chain_event",
      "implied_move_straddle_price": 32.4,
      "move_ratio": 1.36,
      "straddle_dte": 73,
      "straddle_forecast_price": 1.44,
      "straddle_hit_rate": 16.6667,
      "straddle_market_price": 1.99,
      "straddle_mispricing_is_event": false,
      "straddle_mispricing_pct": 38.2,
      "straddle_move_pct": 14.07,
      "straddle_smooth_price": 2.03
    },
    "success": true,
    "ticker": "NVDA",
    "timestamp": "2026-09-08T08:07:28.913001",
    "timing": {
      "atm_iv": 32.0,
      "current_rv_annual": 37.9,
      "days_to_earnings": 71,
      "earnings_date": "2026-11-18",
      "earnings_exp_atm_iv": 38.08,
      "estimated_iv_after_event": null,
      "estimated_iv_crush_pct": null,
      "expected_move_pct": 11.96,
      "is_earnings_play": false,
      "iv_hv_xern_ratio_1m": 0.91,
      "iv_hv_xern_ratio_1y": 0.9,
      "iv_premium": -5.9,
      "iv_rank": 12.0,
      "preliminary": true,
      "stock_price": 230.3,
      "straddle_m1_spans_event": false,
      "straddle_price": 32.4
    },
    "verdict": {
      "confidence": 33,
      "preliminary": true,
      "reasons": [
        "Report is 71 days out: the 5.2% priced event move is an early read against a 3.8% average gap and is not scored yet",
        "Straddle buyers won only 17% of the last 12 quarters (gap vs breakeven)"
      ],
      "signal": "NO_CLEAR_EDGE",
      "suggested_strategies": [
        "Wait for better setup",
        "Small position if trading"
      ]
    },
    "wings": {
      "butterfly_25d": {
        "earnings": 0.87,
        "reference": 0.46
      },
      "call_skew_25d": {
        "earnings": -0.31,
        "reference": -0.7
      },
      "chart": {
        "deltas": [
          10,
          15,
          20
        ],
        "earnings_smile": [
          38.33,
          37.92,
          37.75
        ],
        "reference_smile": [
          37.73,
          37.21,
          37.02
        ]
      },
      "decomposition": {
        "deltas": [
          5,
          10,
          15
        ],
        "values": [
          0.37,
          0.6,
          0.71
        ]
      },
      "earnings_atm_iv": 37.99,
      "earnings_dte": 73,
      "earnings_exp": "2026-11-20",
      "historical": {
        "avg_butterfly_shift": -0.02,
        "avg_rr_shift": -0.23,
        "count": 8,
        "quarters": [
          {
            "butterfly_shift": -0.03,
            "days": [
              {
                "butterfly": 0.32,
                "date": "2026-08-19",
                "days_before": 7,
                "put_skew_25d": 1.25,
                "risk_reversal": -1.86
              },
              {
                "butterfly": 1.05,
                "date": "2026-08-20",
                "days_before": 6,
                "put_skew_25d": 1.28,
                "risk_reversal": -0.46
              },
              {
                "butterfly": 0.84,
                "date": "2026-08-21",
                "days_before": 5,
                "put_skew_25d": 0.9,
                "risk_reversal": -0.13
              }
            ],
            "earnings_date": "8/26/2026",
            "rr_shift": 1.39
          },
          {
            "butterfly_shift": -0.27,
            "days": [
              {
                "butterfly": 0.59,
                "date": "2026-05-13",
                "days_before": 7,
                "put_skew_25d": 0.2,
                "risk_reversal": 0.78
              },
              {
                "butterfly": 0.6,
                "date": "2026-05-14",
                "days_before": 6,
                "put_skew_25d": -0.62,
                "risk_reversal": 2.45
              },
              {
                "butterfly": 0.54,
                "date": "2026-05-15",
                "days_before": 5,
                "put_skew_25d": 0.16,
                "risk_reversal": 0.76
              }
            ],
            "earnings_date": "5/20/2026",
            "rr_shift": 0.77
          },
          {
            "butterfly_shift": 0.0,
            "days": [
              {
                "butterfly": 0.68,
                "date": "2026-02-18",
                "days_before": 7,
                "put_skew_25d": 4.19,
                "risk_reversal": -7.02
              },
              {
                "butterfly": 0.51,
                "date": "2026-02-19",
                "days_before": 6,
                "put_skew_25d": 3.95,
                "risk_reversal": -6.89
              },
              {
                "butterfly": 0.6,
                "date": "2026-02-20",
                "days_before": 5,
                "put_skew_25d": 4.11,
                "risk_reversal": -7.03
              }
            ],
            "earnings_date": "2/25/2026",
            "rr_shift": -0.7
          }
        ]
      },
      "per_wing_premium": {
        "call": 0.5,
        "put": 0.6
      },
      "put_skew_25d": {
        "distortion": 0.44,
        "earnings": 2.06,
        "reference": 1.62,
        "signal": "Normal skew shape: symmetric risk pricing"
      },
      "reference_atm_iv": 37.7,
      "reference_dte": 101,
      "reference_exp": "2026-12-18",
      "risk_reversal": {
        "earnings": -2.37,
        "reference": -2.32,
        "signal": "Balanced: no strong directional positioning"
      },
      "steepness": {
        "call": 0.08,
        "put": 1.76
      },
      "summary": "Put wings carry +0.6 pts of earnings premium. Call wings carry +0.5 pts. Event risk is priced roughly symmetrically across wings.",
      "tail_risk": {
        "earnings_call_10d": 0.34,
        "earnings_put_10d": 7.06,
        "reference_call_10d": 0.03,
        "reference_put_10d": 6.33
      },
      "tails_5d": {
        "earnings_call_5d": 1.29,
        "earnings_put_5d": 11.07,
        "reference_call_5d": 1.21,
        "reference_put_5d": 11.19
      },
      "term_structure": [
        {
          "dte": -4,
          "expiration": "2026-09-04",
          "is_earnings": false,
          "is_reference": false,
          "premiums": {
            "5": {
              "call": -22.29,
              "put": -22.49
            },
            "10": {
              "call": -22.18,
              "put": -22.6
            },
            "15": {
              "call": -22.08,
              "put": -22.75
            },
            "20": {
              "call": -21.98,
              "put": -22.99
            },
            "25": {
              "call": -21.91,
              "put": -23.4
            },
            "30": {
              "call": -21.93,
              "put": -24.1
            },
            "35": {
              "call": -22.11,
              "put": -24.77
            },
            "40": {
              "call": -22.6,
              "put": -26.41
            },
            "45": {
              "call": -23.74,
              "put": -29.94
            }
          }
        },
        {
          "dte": 1,
          "expiration": "2026-09-09",
          "is_earnings": false,
          "is_reference": false,
          "premiums": {
            "5": {
              "call": -11.93,
              "put": -12.06
            },
            "10": {
              "call": -11.8,
              "put": -12.08
            },
            "15": {
              "call": -11.66,
              "put": -12.08
            },
            "20": {
              "call": -11.49,
              "put": -12.1
            },
            "25": {
              "call": -11.31,
              "put": -12.16
            },
            "30": {
              "call": -11.12,
              "put": -12.34
            },
            "35": {
              "call": -10.91,
              "put": -12.8
            },
            "40": {
              "call": -10.63,
              "put": -13.84
            },
            "45": {
              "call": -9.91,
              "put": -16.4
            }
          }
        },
        {
          "dte": 3,
          "expiration": "2026-09-11",
          "is_earnings": false,
          "is_reference": false,
          "premiums": {
            "5": {
              "call": -7.58,
              "put": -7.59
            },
            "10": {
              "call": -7.48,
              "put": -7.53
            },
            "15": {
              "call": -7.32,
              "put": -7.42
            },
            "20": {
              "call": -7.11,
              "put": -7.34
            },
            "25": {
              "call": -6.86,
              "put": -7.32
            },
            "30": {
              "call": -6.61,
              "put": -7.46
            },
            "35": {
              "call": -6.4,
              "put": -7.97
            },
            "40": {
              "call": -6.3,
              "put": -9.27
            },
            "45": {
              "call": -6.45,
              "put": -12.56
            }
          }
        }
      ]
    }
  }
}
```

## Fields

- `verdict.signal, confidence, preliminary, reasons`: The answer and why.
- `edge.edge_score, edge_interpretation, avg_straddle_return`: How the straddle has paid historically.
- `timing.earnings_date, days_to_earnings, expected_move_pct, atm_iv`: The setup.
- `direction, confidence`: Bias and consistency of past moves.
- `wings`: The earnings smile against the reference expiration.

## Errors

- `401`: no or revoked token
- `429`: Retry-After seconds
- `403`: Pro plan required
- `424`: data feed unavailable, retry
- Full list: https://apexvol.com/developers/errors

## Ask it in an MCP client

- Should I buy or sell the NVDA earnings straddle?
- Is the AAPL earnings move over or underpriced?
- Give me an earnings verdict for TSLA with the reasons.

Conventions for units, bases and timestamps: https://apexvol.com/developers/conventions
