{
  "schemaVersion": 1,
  "currency": "ALTS",
  "reportDate": "2026-09-22",
  "generatedAt": "2026-09-22T18:20:12+00:00",
  "currentSnapshotAt": "2026-09-22T18:18:00+00:00",
  "comparisonCutoffAt": "2026-09-22T18:18:00+00:00",
  "headline": "Altcoin options split as XRP call volatility pulls away from TRX",
  "standfirst": "Altcoin one-week RR25 dispersion widened 5.09 volatility points to 8.91 points, as XRP’s one-week call-minus-put RR25 reached 9.91% while TRX’s stood at 1.00%. The widening marks a sharper separation in relative call-side volatility across the complex, even as the one-week ATM IV level gap between AVAX and TRX narrowed 0.24 points to 61.64 points.",
  "marketSummary": "XRP and TRX defined the altcoin options split at the cutoff: XRP one-week RR25 was 9.91%, compared with TRX one-week RR25 of 1.00%. Both readings remained positive, meaning calls were richer than puts, but the 8.91-point gap widened from 3.82 points.",
  "rows": [
    {
      "asset": "XRP",
      "currentSnapshotAt": "2026-09-22T18:18:00+00:00",
      "previousSnapshotAt": "2026-09-21T18:37:00+00:00",
      "comparisonStatus": "available",
      "comparisonNote": null,
      "rejectedPreviousSnapshotAt": null,
      "currentListedExpiries": 6,
      "comparedListedExpiries": 5,
      "tenors": [
        {
          "tenor": "1W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 77.86,
            "previous": 70.95,
            "change": 6.91,
            "percentChange": 9.74
          },
          "rr25": {
            "current": 9.91,
            "previous": 6.38,
            "change": 3.53,
            "percentChange": 55.33
          },
          "bf25": {
            "current": 7.41,
            "previous": 6.18,
            "change": 1.23,
            "percentChange": 19.9
          }
        },
        {
          "tenor": "2W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 74.65,
            "previous": 68.96,
            "change": 5.69,
            "percentChange": 8.25
          },
          "rr25": {
            "current": 10.22,
            "previous": 6.0,
            "change": 4.22,
            "percentChange": 70.33
          },
          "bf25": {
            "current": 7.58,
            "previous": 6.2,
            "change": 1.38,
            "percentChange": 22.26
          }
        },
        {
          "tenor": "1M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 72.2,
            "previous": 66.86,
            "change": 5.34,
            "percentChange": 7.99
          },
          "rr25": {
            "current": 9.9,
            "previous": 5.7,
            "change": 4.2,
            "percentChange": 73.68
          },
          "bf25": {
            "current": 7.42,
            "previous": 5.88,
            "change": 1.54,
            "percentChange": 26.19
          }
        },
        {
          "tenor": "3M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 69.47,
            "previous": 65.17,
            "change": 4.3,
            "percentChange": 6.6
          },
          "rr25": {
            "current": 8.25,
            "previous": 6.71,
            "change": 1.54,
            "percentChange": 22.95
          },
          "bf25": {
            "current": 7.23,
            "previous": 5.65,
            "change": 1.58,
            "percentChange": 27.96
          }
        },
        {
          "tenor": "6M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "9M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "1Y",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        }
      ],
      "oneWeek": {
        "tenor": "1W",
        "availability": "available",
        "unavailableReason": null,
        "atmIv": {
          "current": 77.86,
          "previous": 70.95,
          "change": 6.91,
          "percentChange": 9.74
        },
        "rr25": {
          "current": 9.91,
          "previous": 6.38,
          "change": 3.53,
          "percentChange": 55.33
        },
        "bf25": {
          "current": 7.41,
          "previous": 6.18,
          "change": 1.23,
          "percentChange": 19.9
        }
      },
      "nearestEligibleForward": {
        "label": "25SEP26",
        "daysToExpiry": 2.571,
        "forward": {
          "current": 1.58,
          "previous": 1.51,
          "change": 0.07,
          "percentChange": 4.64
        }
      },
      "realisedVolatility": {
        "source": "canonical/XRP-USDC-INDEX (DERIBIT and OKX indexes)",
        "fallbackObservations": 35,
        "fallbackPolicy": "Missing canonical minutes use the stored Deribit index first, then the stored OKX index; canonical bars always take precedence.",
        "samplingInterval": "1 minute",
        "annualizationBasis": "365 days",
        "windowEnd": "2026-09-22T18:18:00+00:00",
        "spotWindowStart": "2026-09-21T18:18:00+00:00",
        "spotMetric": "spot-index return",
        "spotUnit": "percent",
        "spotMove24hPercent": null,
        "rv24hPercent": null,
        "rv7dPercent": null,
        "rv30dPercent": null,
        "observations": {
          "24h": 1420,
          "7d": 9849,
          "30d": 42931
        },
        "coverage": {
          "24h": {
            "status": "unavailable",
            "observedReturns": 1420,
            "expectedReturns": 1440,
            "coveragePercent": 98.6111,
            "largestMissingRunMinutes": 18,
            "unavailableReason": "24h RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 98.6111% with a largest gap of 18 minutes."
          },
          "7d": {
            "status": "unavailable",
            "observedReturns": 9849,
            "expectedReturns": 10080,
            "coveragePercent": 97.7083,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "7d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 97.7083% with a largest gap of 228 minutes."
          },
          "30d": {
            "status": "unavailable",
            "observedReturns": 42931,
            "expectedReturns": 43200,
            "coveragePercent": 99.3773,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "30d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 99.3773% with a largest gap of 228 minutes."
          }
        },
        "coveragePolicy": {
          "version": "observed-minute-returns-v1",
          "minimumCoveragePercent": 99.5,
          "maximumMissingRunMinutes": 60,
          "methodology": "Each RV window qualifies independently. RV annualises the mean squared observed one-minute log return; returns spanning gaps are excluded, not interpolated or zero-filled. Partial estimates assume observed minutes are representative and may miss volatility during gaps."
        },
        "spotUnavailableReason": "No exact 24-hour comparison index bar.",
        "oneWeekAtmIvPercent": 77.86,
        "oneWeekIvMinus7dRvPoints": null,
        "oneWeekIvMinus24hRvPoints": null,
        "oneWeekIvMinus30dRvPoints": null
      },
      "realisedVolatilityUnavailableReason": null
    },
    {
      "asset": "HYPE",
      "currentSnapshotAt": "2026-09-22T18:15:00+00:00",
      "previousSnapshotAt": "2026-09-21T18:37:00+00:00",
      "comparisonStatus": "available",
      "comparisonNote": null,
      "rejectedPreviousSnapshotAt": null,
      "currentListedExpiries": 6,
      "comparedListedExpiries": 5,
      "tenors": [
        {
          "tenor": "1W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 65.2,
            "previous": 66.39,
            "change": -1.19,
            "percentChange": -1.79
          },
          "rr25": {
            "current": 4.56,
            "previous": 3.52,
            "change": 1.04,
            "percentChange": 29.55
          },
          "bf25": {
            "current": 4.18,
            "previous": 4.06,
            "change": 0.12,
            "percentChange": 2.96
          }
        },
        {
          "tenor": "2W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 63.3,
            "previous": 64.32,
            "change": -1.02,
            "percentChange": -1.59
          },
          "rr25": {
            "current": 4.4,
            "previous": 3.62,
            "change": 0.78,
            "percentChange": 21.55
          },
          "bf25": {
            "current": 3.96,
            "previous": 4.32,
            "change": -0.36,
            "percentChange": -8.33
          }
        },
        {
          "tenor": "1M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 61.92,
            "previous": 63.58,
            "change": -1.66,
            "percentChange": -2.61
          },
          "rr25": {
            "current": 3.95,
            "previous": 4.34,
            "change": -0.39,
            "percentChange": -8.99
          },
          "bf25": {
            "current": 3.61,
            "previous": 3.94,
            "change": -0.33,
            "percentChange": -8.38
          }
        },
        {
          "tenor": "3M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 60.05,
            "previous": 61.54,
            "change": -1.49,
            "percentChange": -2.42
          },
          "rr25": {
            "current": 3.67,
            "previous": 5.03,
            "change": -1.36,
            "percentChange": -27.04
          },
          "bf25": {
            "current": 3.87,
            "previous": 3.69,
            "change": 0.18,
            "percentChange": 4.88
          }
        },
        {
          "tenor": "6M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "9M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "1Y",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        }
      ],
      "oneWeek": {
        "tenor": "1W",
        "availability": "available",
        "unavailableReason": null,
        "atmIv": {
          "current": 65.2,
          "previous": 66.39,
          "change": -1.19,
          "percentChange": -1.79
        },
        "rr25": {
          "current": 4.56,
          "previous": 3.52,
          "change": 1.04,
          "percentChange": 29.55
        },
        "bf25": {
          "current": 4.18,
          "previous": 4.06,
          "change": 0.12,
          "percentChange": 2.96
        }
      },
      "nearestEligibleForward": {
        "label": "25SEP26",
        "daysToExpiry": 2.572,
        "forward": {
          "current": 96.9,
          "previous": 93.05,
          "change": 3.85,
          "percentChange": 4.14
        }
      },
      "realisedVolatility": {
        "source": "canonical/HYPE-USDC-INDEX (DERIBIT and OKX indexes)",
        "fallbackObservations": 35,
        "fallbackPolicy": "Missing canonical minutes use the stored Deribit index first, then the stored OKX index; canonical bars always take precedence.",
        "samplingInterval": "1 minute",
        "annualizationBasis": "365 days",
        "windowEnd": "2026-09-22T18:15:00+00:00",
        "spotWindowStart": "2026-09-21T18:15:00+00:00",
        "spotMetric": "spot-index return",
        "spotUnit": "percent",
        "spotMove24hPercent": null,
        "rv24hPercent": null,
        "rv7dPercent": null,
        "rv30dPercent": null,
        "observations": {
          "24h": 1417,
          "7d": 9849,
          "30d": 42929
        },
        "coverage": {
          "24h": {
            "status": "unavailable",
            "observedReturns": 1417,
            "expectedReturns": 1440,
            "coveragePercent": 98.4028,
            "largestMissingRunMinutes": 21,
            "unavailableReason": "24h RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 98.4028% with a largest gap of 21 minutes."
          },
          "7d": {
            "status": "unavailable",
            "observedReturns": 9849,
            "expectedReturns": 10080,
            "coveragePercent": 97.7083,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "7d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 97.7083% with a largest gap of 228 minutes."
          },
          "30d": {
            "status": "unavailable",
            "observedReturns": 42929,
            "expectedReturns": 43200,
            "coveragePercent": 99.3727,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "30d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 99.3727% with a largest gap of 228 minutes."
          }
        },
        "coveragePolicy": {
          "version": "observed-minute-returns-v1",
          "minimumCoveragePercent": 99.5,
          "maximumMissingRunMinutes": 60,
          "methodology": "Each RV window qualifies independently. RV annualises the mean squared observed one-minute log return; returns spanning gaps are excluded, not interpolated or zero-filled. Partial estimates assume observed minutes are representative and may miss volatility during gaps."
        },
        "spotUnavailableReason": "No exact 24-hour comparison index bar.",
        "oneWeekAtmIvPercent": 65.2,
        "oneWeekIvMinus7dRvPoints": null,
        "oneWeekIvMinus24hRvPoints": null,
        "oneWeekIvMinus30dRvPoints": null
      },
      "realisedVolatilityUnavailableReason": null
    },
    {
      "asset": "AVAX",
      "currentSnapshotAt": "2026-09-22T18:18:00+00:00",
      "previousSnapshotAt": "2026-09-21T18:37:00+00:00",
      "comparisonStatus": "available",
      "comparisonNote": null,
      "rejectedPreviousSnapshotAt": null,
      "currentListedExpiries": 6,
      "comparedListedExpiries": 5,
      "tenors": [
        {
          "tenor": "1W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 82.27,
            "previous": 81.02,
            "change": 1.25,
            "percentChange": 1.54
          },
          "rr25": {
            "current": 7.52,
            "previous": 6.6,
            "change": 0.92,
            "percentChange": 13.94
          },
          "bf25": {
            "current": 6.68,
            "previous": 6.42,
            "change": 0.26,
            "percentChange": 4.05
          }
        },
        {
          "tenor": "2W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 77.24,
            "previous": 74.16,
            "change": 3.08,
            "percentChange": 4.15
          },
          "rr25": {
            "current": 6.86,
            "previous": 6.07,
            "change": 0.79,
            "percentChange": 13.01
          },
          "bf25": {
            "current": 6.44,
            "previous": 6.15,
            "change": 0.29,
            "percentChange": 4.72
          }
        },
        {
          "tenor": "1M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 73.03,
            "previous": 69.22,
            "change": 3.81,
            "percentChange": 5.5
          },
          "rr25": {
            "current": 5.92,
            "previous": 5.04,
            "change": 0.88,
            "percentChange": 17.46
          },
          "bf25": {
            "current": 5.7,
            "previous": 5.28,
            "change": 0.42,
            "percentChange": 7.95
          }
        },
        {
          "tenor": "3M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 70.67,
            "previous": 65.05,
            "change": 5.62,
            "percentChange": 8.64
          },
          "rr25": {
            "current": 6.34,
            "previous": 4.55,
            "change": 1.79,
            "percentChange": 39.34
          },
          "bf25": {
            "current": 5.32,
            "previous": 5.07,
            "change": 0.25,
            "percentChange": 4.93
          }
        },
        {
          "tenor": "6M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "9M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "1Y",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        }
      ],
      "oneWeek": {
        "tenor": "1W",
        "availability": "available",
        "unavailableReason": null,
        "atmIv": {
          "current": 82.27,
          "previous": 81.02,
          "change": 1.25,
          "percentChange": 1.54
        },
        "rr25": {
          "current": 7.52,
          "previous": 6.6,
          "change": 0.92,
          "percentChange": 13.94
        },
        "bf25": {
          "current": 6.68,
          "previous": 6.42,
          "change": 0.26,
          "percentChange": 4.05
        }
      },
      "nearestEligibleForward": {
        "label": "25SEP26",
        "daysToExpiry": 2.571,
        "forward": {
          "current": 11.03,
          "previous": 10.88,
          "change": 0.15,
          "percentChange": 1.38
        }
      },
      "realisedVolatility": {
        "source": "canonical/AVAX-USDC-INDEX (DERIBIT and OKX indexes)",
        "fallbackObservations": 35,
        "fallbackPolicy": "Missing canonical minutes use the stored Deribit index first, then the stored OKX index; canonical bars always take precedence.",
        "samplingInterval": "1 minute",
        "annualizationBasis": "365 days",
        "windowEnd": "2026-09-22T18:18:00+00:00",
        "spotWindowStart": "2026-09-21T18:18:00+00:00",
        "spotMetric": "spot-index return",
        "spotUnit": "percent",
        "spotMove24hPercent": null,
        "rv24hPercent": null,
        "rv7dPercent": null,
        "rv30dPercent": null,
        "observations": {
          "24h": 1420,
          "7d": 9849,
          "30d": 42931
        },
        "coverage": {
          "24h": {
            "status": "unavailable",
            "observedReturns": 1420,
            "expectedReturns": 1440,
            "coveragePercent": 98.6111,
            "largestMissingRunMinutes": 18,
            "unavailableReason": "24h RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 98.6111% with a largest gap of 18 minutes."
          },
          "7d": {
            "status": "unavailable",
            "observedReturns": 9849,
            "expectedReturns": 10080,
            "coveragePercent": 97.7083,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "7d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 97.7083% with a largest gap of 228 minutes."
          },
          "30d": {
            "status": "unavailable",
            "observedReturns": 42931,
            "expectedReturns": 43200,
            "coveragePercent": 99.3773,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "30d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 99.3773% with a largest gap of 228 minutes."
          }
        },
        "coveragePolicy": {
          "version": "observed-minute-returns-v1",
          "minimumCoveragePercent": 99.5,
          "maximumMissingRunMinutes": 60,
          "methodology": "Each RV window qualifies independently. RV annualises the mean squared observed one-minute log return; returns spanning gaps are excluded, not interpolated or zero-filled. Partial estimates assume observed minutes are representative and may miss volatility during gaps."
        },
        "spotUnavailableReason": "No exact 24-hour comparison index bar.",
        "oneWeekAtmIvPercent": 82.27,
        "oneWeekIvMinus7dRvPoints": null,
        "oneWeekIvMinus24hRvPoints": null,
        "oneWeekIvMinus30dRvPoints": null
      },
      "realisedVolatilityUnavailableReason": null
    },
    {
      "asset": "TRX",
      "currentSnapshotAt": "2026-09-22T18:18:00+00:00",
      "previousSnapshotAt": "2026-09-21T18:37:00+00:00",
      "comparisonStatus": "available",
      "comparisonNote": null,
      "rejectedPreviousSnapshotAt": null,
      "currentListedExpiries": 6,
      "comparedListedExpiries": 5,
      "tenors": [
        {
          "tenor": "1W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 20.63,
            "previous": 19.14,
            "change": 1.49,
            "percentChange": 7.78
          },
          "rr25": {
            "current": 1.0,
            "previous": 2.78,
            "change": -1.78,
            "percentChange": -64.03
          },
          "bf25": {
            "current": 1.82,
            "previous": 2.36,
            "change": -0.54,
            "percentChange": -22.88
          }
        },
        {
          "tenor": "2W",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 20.8,
            "previous": 19.09,
            "change": 1.71,
            "percentChange": 8.96
          },
          "rr25": {
            "current": 0.6,
            "previous": 2.67,
            "change": -2.07,
            "percentChange": -77.53
          },
          "bf25": {
            "current": 1.94,
            "previous": 2.63,
            "change": -0.69,
            "percentChange": -26.24
          }
        },
        {
          "tenor": "1M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 21.06,
            "previous": 19.63,
            "change": 1.43,
            "percentChange": 7.28
          },
          "rr25": {
            "current": 0.28,
            "previous": 2.86,
            "change": -2.58,
            "percentChange": -90.21
          },
          "bf25": {
            "current": 2.0,
            "previous": 2.82,
            "change": -0.82,
            "percentChange": -29.08
          }
        },
        {
          "tenor": "3M",
          "availability": "available",
          "unavailableReason": null,
          "atmIv": {
            "current": 21.88,
            "previous": 19.14,
            "change": 2.74,
            "percentChange": 14.32
          },
          "rr25": {
            "current": -0.71,
            "previous": -1.02,
            "change": 0.31,
            "percentChange": 30.39
          },
          "bf25": {
            "current": 2.21,
            "previous": 3.18,
            "change": -0.97,
            "percentChange": -30.5
          }
        },
        {
          "tenor": "6M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "9M",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        },
        {
          "tenor": "1Y",
          "availability": "unavailable",
          "unavailableReason": "The target tenor is not bracketed by listed expiries; extrapolated values are suppressed.",
          "atmIv": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "rr25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          },
          "bf25": {
            "current": null,
            "previous": null,
            "change": null,
            "percentChange": null
          }
        }
      ],
      "oneWeek": {
        "tenor": "1W",
        "availability": "available",
        "unavailableReason": null,
        "atmIv": {
          "current": 20.63,
          "previous": 19.14,
          "change": 1.49,
          "percentChange": 7.78
        },
        "rr25": {
          "current": 1.0,
          "previous": 2.78,
          "change": -1.78,
          "percentChange": -64.03
        },
        "bf25": {
          "current": 1.82,
          "previous": 2.36,
          "change": -0.54,
          "percentChange": -22.88
        }
      },
      "nearestEligibleForward": {
        "label": "25SEP26",
        "daysToExpiry": 2.571,
        "forward": {
          "current": 0.34,
          "previous": 0.34,
          "change": 0.0,
          "percentChange": 0.0
        }
      },
      "realisedVolatility": {
        "source": "canonical/TRX-USDC-INDEX (DERIBIT and OKX indexes)",
        "fallbackObservations": 35,
        "fallbackPolicy": "Missing canonical minutes use the stored Deribit index first, then the stored OKX index; canonical bars always take precedence.",
        "samplingInterval": "1 minute",
        "annualizationBasis": "365 days",
        "windowEnd": "2026-09-22T18:18:00+00:00",
        "spotWindowStart": "2026-09-21T18:18:00+00:00",
        "spotMetric": "spot-index return",
        "spotUnit": "percent",
        "spotMove24hPercent": null,
        "rv24hPercent": null,
        "rv7dPercent": null,
        "rv30dPercent": null,
        "observations": {
          "24h": 1420,
          "7d": 9849,
          "30d": 42931
        },
        "coverage": {
          "24h": {
            "status": "unavailable",
            "observedReturns": 1420,
            "expectedReturns": 1440,
            "coveragePercent": 98.6111,
            "largestMissingRunMinutes": 18,
            "unavailableReason": "24h RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 98.6111% with a largest gap of 18 minutes."
          },
          "7d": {
            "status": "unavailable",
            "observedReturns": 9849,
            "expectedReturns": 10080,
            "coveragePercent": 97.7083,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "7d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 97.7083% with a largest gap of 228 minutes."
          },
          "30d": {
            "status": "unavailable",
            "observedReturns": 42931,
            "expectedReturns": 43200,
            "coveragePercent": 99.3773,
            "largestMissingRunMinutes": 228,
            "unavailableReason": "30d RV requires at least 99.5% valid one-minute returns and no price gap over 60 minutes; coverage is 99.3773% with a largest gap of 228 minutes."
          }
        },
        "coveragePolicy": {
          "version": "observed-minute-returns-v1",
          "minimumCoveragePercent": 99.5,
          "maximumMissingRunMinutes": 60,
          "methodology": "Each RV window qualifies independently. RV annualises the mean squared observed one-minute log return; returns spanning gaps are excluded, not interpolated or zero-filled. Partial estimates assume observed minutes are representative and may miss volatility during gaps."
        },
        "spotUnavailableReason": "No exact 24-hour comparison index bar.",
        "oneWeekAtmIvPercent": 20.63,
        "oneWeekIvMinus7dRvPoints": null,
        "oneWeekIvMinus24hRvPoints": null,
        "oneWeekIvMinus30dRvPoints": null
      },
      "realisedVolatilityUnavailableReason": null
    }
  ],
  "crossAssetAnalysis": {
    "schemaVersion": 1,
    "purpose": "Identify what is unusual across the altcoin options complex, not produce four mini reports.",
    "returnMetric": {
      "key": "spotPerformance24h",
      "source": "spotMove24hPercent",
      "label": "24h spot-index return",
      "unit": "percent"
    },
    "assets": [
      "XRP",
      "HYPE",
      "AVAX",
      "TRX"
    ],
    "comparableAssets": [
      "XRP",
      "HYPE",
      "AVAX",
      "TRX"
    ],
    "oneWeek": {
      "atmIvLevel": {
        "leader": "AVAX",
        "laggard": "TRX",
        "highest": 82.27,
        "lowest": 20.63,
        "spread": 61.64,
        "highestToLowestRatio": 3.9879,
        "largestAbsoluteMoveAsset": "AVAX",
        "largestAbsoluteMoveValue": 82.27,
        "values": [
          {
            "asset": "XRP",
            "value": 77.86
          },
          {
            "asset": "HYPE",
            "value": 65.2
          },
          {
            "asset": "AVAX",
            "value": 82.27
          },
          {
            "asset": "TRX",
            "value": 20.63
          }
        ],
        "previousSpread": 61.88,
        "spreadChange": -0.24,
        "dispersionDirection": "compressing"
      },
      "atmIvChange": {
        "leader": "XRP",
        "laggard": "HYPE",
        "highest": 6.91,
        "lowest": -1.19,
        "spread": 8.1,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": "XRP",
        "largestAbsoluteMoveValue": 6.91,
        "values": [
          {
            "asset": "XRP",
            "value": 6.91
          },
          {
            "asset": "HYPE",
            "value": -1.19
          },
          {
            "asset": "AVAX",
            "value": 1.25
          },
          {
            "asset": "TRX",
            "value": 1.49
          }
        ]
      },
      "rr25Level": {
        "leader": "XRP",
        "laggard": "TRX",
        "highest": 9.91,
        "lowest": 1.0,
        "spread": 8.91,
        "highestToLowestRatio": 9.91,
        "largestAbsoluteMoveAsset": "XRP",
        "largestAbsoluteMoveValue": 9.91,
        "values": [
          {
            "asset": "XRP",
            "value": 9.91
          },
          {
            "asset": "HYPE",
            "value": 4.56
          },
          {
            "asset": "AVAX",
            "value": 7.52
          },
          {
            "asset": "TRX",
            "value": 1.0
          }
        ],
        "previousSpread": 3.82,
        "spreadChange": 5.09,
        "dispersionDirection": "widening"
      },
      "rr25Change": {
        "leader": "XRP",
        "laggard": "TRX",
        "highest": 3.53,
        "lowest": -1.78,
        "spread": 5.31,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": "XRP",
        "largestAbsoluteMoveValue": 3.53,
        "values": [
          {
            "asset": "XRP",
            "value": 3.53
          },
          {
            "asset": "HYPE",
            "value": 1.04
          },
          {
            "asset": "AVAX",
            "value": 0.92
          },
          {
            "asset": "TRX",
            "value": -1.78
          }
        ]
      }
    },
    "relativeVolatilityLeader": {
      "asset": "XRP",
      "metric": "absolute 1W ATM IV change",
      "value": 6.91
    },
    "termStructure": {
      "definition": "1Y minus 1W ATM IV, in volatility points",
      "currentSlope": {
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ],
        "previousSpread": null,
        "spreadChange": null,
        "dispersionDirection": "unavailable"
      },
      "slopeChange": {
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      }
    },
    "relativeValue": {
      "ivMinusRealised7d": {
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      },
      "spotPerformance24h": {
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      }
    },
    "rankings": {
      "oneWeekAtmIvLevel": [
        {
          "rank": 1,
          "asset": "AVAX",
          "value": 82.27,
          "previousRank": 1,
          "rankChange": 0
        },
        {
          "rank": 2,
          "asset": "XRP",
          "value": 77.86,
          "previousRank": 2,
          "rankChange": 0
        },
        {
          "rank": 3,
          "asset": "HYPE",
          "value": 65.2,
          "previousRank": 3,
          "rankChange": 0
        },
        {
          "rank": 4,
          "asset": "TRX",
          "value": 20.63,
          "previousRank": 4,
          "rankChange": 0
        }
      ],
      "oneWeekAtmIvChange": [
        {
          "rank": 1,
          "asset": "XRP",
          "value": 6.91,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 2,
          "asset": "TRX",
          "value": 1.49,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 3,
          "asset": "AVAX",
          "value": 1.25,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 4,
          "asset": "HYPE",
          "value": -1.19,
          "previousRank": null,
          "rankChange": null
        }
      ],
      "oneWeekAtmIvAbsoluteMove": [
        {
          "rank": 1,
          "asset": "XRP",
          "value": 6.91,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 2,
          "asset": "TRX",
          "value": 1.49,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 3,
          "asset": "AVAX",
          "value": 1.25,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": 4,
          "asset": "HYPE",
          "value": -1.19,
          "previousRank": null,
          "rankChange": null
        }
      ],
      "ivMinusRealised7d": [
        {
          "rank": null,
          "asset": "XRP",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "HYPE",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "AVAX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "TRX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        }
      ],
      "oneWeekRr25CallRichness": [
        {
          "rank": 1,
          "asset": "XRP",
          "value": 9.91,
          "previousRank": 2,
          "rankChange": 1
        },
        {
          "rank": 2,
          "asset": "AVAX",
          "value": 7.52,
          "previousRank": 1,
          "rankChange": -1
        },
        {
          "rank": 3,
          "asset": "HYPE",
          "value": 4.56,
          "previousRank": 3,
          "rankChange": 0
        },
        {
          "rank": 4,
          "asset": "TRX",
          "value": 1.0,
          "previousRank": 4,
          "rankChange": 0
        }
      ],
      "oneWeekRr25PutRichness": [
        {
          "rank": 1,
          "asset": "TRX",
          "value": 1.0,
          "previousRank": 1,
          "rankChange": 0
        },
        {
          "rank": 2,
          "asset": "HYPE",
          "value": 4.56,
          "previousRank": 2,
          "rankChange": 0
        },
        {
          "rank": 3,
          "asset": "AVAX",
          "value": 7.52,
          "previousRank": 4,
          "rankChange": 1
        },
        {
          "rank": 4,
          "asset": "XRP",
          "value": 9.91,
          "previousRank": 3,
          "rankChange": -1
        }
      ],
      "termStructureSlope": [
        {
          "rank": null,
          "asset": "XRP",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "HYPE",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "AVAX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "TRX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        }
      ],
      "termStructureSlopeChange": [
        {
          "rank": null,
          "asset": "XRP",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "HYPE",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "AVAX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "TRX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        }
      ],
      "spotPerformance24h": [
        {
          "rank": null,
          "asset": "XRP",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "HYPE",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "AVAX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        },
        {
          "rank": null,
          "asset": "TRX",
          "value": null,
          "previousRank": null,
          "rankChange": null
        }
      ]
    },
    "outliers": [
      {
        "metric": "1W ATM IV change",
        "asset": "XRP",
        "value": 6.91,
        "groupMedian": 1.37,
        "distanceFromMedian": 5.54
      },
      {
        "metric": "1W ATM IV level",
        "asset": "TRX",
        "value": 20.63,
        "groupMedian": 71.53,
        "distanceFromMedian": -50.9
      },
      {
        "metric": "1W RR25 level",
        "asset": "TRX",
        "value": 1.0,
        "groupMedian": 6.04,
        "distanceFromMedian": -5.04
      }
    ],
    "relativeValueObservation": null,
    "historicalContext": {
      "minimumObservations": 20,
      "observations": 24,
      "oneWeekAtmIvLevelDispersionPercentile": 91.7,
      "oneWeekAtmIvChangeDispersionPercentile": 78.3,
      "oneWeekRr25LevelDispersionPercentile": 91.7,
      "termStructureDispersionPercentile": null,
      "ivMinusRealisedDispersionPercentile": null,
      "availabilityNote": null
    },
    "correlations": {
      "metric": "spotMove24hPercent",
      "minimumObservations": 10,
      "lookbackObservations": 30,
      "pairs": [
        {
          "assets": [
            "XRP",
            "HYPE"
          ],
          "value": 0.5469,
          "observations": 11
        },
        {
          "assets": [
            "XRP",
            "AVAX"
          ],
          "value": 0.205,
          "observations": 12
        },
        {
          "assets": [
            "XRP",
            "TRX"
          ],
          "value": 0.3465,
          "observations": 12
        },
        {
          "assets": [
            "HYPE",
            "AVAX"
          ],
          "value": 0.4459,
          "observations": 11
        },
        {
          "assets": [
            "HYPE",
            "TRX"
          ],
          "value": 0.0603,
          "observations": 11
        },
        {
          "assets": [
            "AVAX",
            "TRX"
          ],
          "value": 0.2862,
          "observations": 12
        }
      ],
      "availabilityNote": null
    },
    "evidence": [
      {
        "id": "alts-cross-1w-atm-change-dispersion",
        "metric": "1W ATM IV change dispersion",
        "unit": "volatility points",
        "leader": "XRP",
        "laggard": "HYPE",
        "highest": 6.91,
        "lowest": -1.19,
        "spread": 8.1,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": "XRP",
        "largestAbsoluteMoveValue": 6.91,
        "values": [
          {
            "asset": "XRP",
            "value": 6.91
          },
          {
            "asset": "HYPE",
            "value": -1.19
          },
          {
            "asset": "AVAX",
            "value": 1.25
          },
          {
            "asset": "TRX",
            "value": 1.49
          }
        ]
      },
      {
        "id": "alts-cross-1w-atm-level-dispersion",
        "metric": "1W ATM IV level dispersion",
        "unit": "volatility points",
        "leader": "AVAX",
        "laggard": "TRX",
        "highest": 82.27,
        "lowest": 20.63,
        "spread": 61.64,
        "highestToLowestRatio": 3.9879,
        "largestAbsoluteMoveAsset": "AVAX",
        "largestAbsoluteMoveValue": 82.27,
        "values": [
          {
            "asset": "XRP",
            "value": 77.86
          },
          {
            "asset": "HYPE",
            "value": 65.2
          },
          {
            "asset": "AVAX",
            "value": 82.27
          },
          {
            "asset": "TRX",
            "value": 20.63
          }
        ],
        "previousSpread": 61.88,
        "spreadChange": -0.24,
        "dispersionDirection": "compressing"
      },
      {
        "id": "alts-cross-1w-rr25-dispersion",
        "metric": "1W RR25 level dispersion",
        "unit": "volatility points",
        "leader": "XRP",
        "laggard": "TRX",
        "highest": 9.91,
        "lowest": 1.0,
        "spread": 8.91,
        "highestToLowestRatio": 9.91,
        "largestAbsoluteMoveAsset": "XRP",
        "largestAbsoluteMoveValue": 9.91,
        "values": [
          {
            "asset": "XRP",
            "value": 9.91
          },
          {
            "asset": "HYPE",
            "value": 4.56
          },
          {
            "asset": "AVAX",
            "value": 7.52
          },
          {
            "asset": "TRX",
            "value": 1.0
          }
        ],
        "previousSpread": 3.82,
        "spreadChange": 5.09,
        "dispersionDirection": "widening"
      },
      {
        "id": "alts-cross-term-structure-divergence",
        "metric": "1Y minus 1W ATM IV slope dispersion",
        "unit": "volatility points",
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ],
        "previousSpread": null,
        "spreadChange": null,
        "dispersionDirection": "unavailable"
      },
      {
        "id": "alts-cross-iv-minus-realised-dispersion",
        "metric": "1W IV minus 7D realised volatility dispersion",
        "unit": "volatility points",
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      },
      {
        "id": "alts-cross-spot-performance",
        "metric": "24H spot performance dispersion",
        "unit": "percentage points",
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      },
      {
        "id": "alts-cross-term-structure-change",
        "metric": "1Y minus 1W ATM IV slope change dispersion",
        "unit": "volatility points",
        "leader": null,
        "laggard": null,
        "highest": null,
        "lowest": null,
        "spread": null,
        "highestToLowestRatio": null,
        "largestAbsoluteMoveAsset": null,
        "largestAbsoluteMoveValue": null,
        "values": [
          {
            "asset": "XRP",
            "value": null
          },
          {
            "asset": "HYPE",
            "value": null
          },
          {
            "asset": "AVAX",
            "value": null
          },
          {
            "asset": "TRX",
            "value": null
          }
        ]
      }
    ]
  },
  "newsContext": {
    "outcome": "No sufficiently relevant context identified",
    "summary": "No qualifying context was found in the monitored news sources for this reporting window.",
    "events": [],
    "coverage_status": "healthy",
    "coverage_basis": "monitored-source-search",
    "section_heading": "No sufficiently relevant context identified"
  },
  "methodology": {
    "source": "Stored Derivasys SVI surfaces",
    "comparison": "Latest successful snapshot at or before the common cutoff versus the nearest successful snapshot 24 hours earlier, within a three-hour tolerance.",
    "availability": "Current levels remain visible when a 24-hour baseline does not yet exist; changes stay null rather than being inferred from a shorter window."
  },
  "comparedListedExpiries": 20,
  "summaryMetrics": {
    "basis": "Equal-weight average across assets with a valid 24-hour baseline",
    "unit": "volatility points",
    "atmIvChange": 2.12,
    "rr25Change": 0.93,
    "bf25Change": 0.27
  },
  "commentary": {
    "source": "codex",
    "model": "gpt-5.6-terra",
    "headline": "Altcoin skew dispersion widens as XRP separates from TRX",
    "executiveSummary": "XRP and TRX defined the altcoin options split at the cutoff: XRP one-week RR25 was 9.91%, compared with TRX one-week RR25 of 1.00%. Both readings remained positive, meaning calls were richer than puts, but the 8.91-point gap widened from 3.82 points.",
    "evidenceIds": [
      "alts-cross-1w-rr25-dispersion",
      "alts-cross-1w-atm-change-dispersion"
    ],
    "newsSummary": "No qualifying news context was retained for the cross-altcoin options comparison.",
    "marketContextSummary": "No retained news item supports an assessment of a driver for the observed options repricing.",
    "marketContext": [],
    "newsEvidenceIds": []
  },
  "newsEvidence": {
    "schemaVersion": 1,
    "source": "local-news-mcp",
    "collection": {
      "schemaVersion": 1,
      "basis": "monitored-source-search",
      "status": "complete",
      "requiredScopes": [
        "AVAX",
        "GLOBAL",
        "HYPE",
        "MACRO",
        "TRX",
        "XRP"
      ],
      "completedScopes": [
        "AVAX",
        "GLOBAL",
        "HYPE",
        "MACRO",
        "TRX",
        "XRP"
      ],
      "missingScopes": [],
      "queries": [
        {
          "arguments": {
            "assets": [
              "XRP"
            ],
            "content_kinds": [
              "catalyst",
              "reporting"
            ],
            "end": "2026-09-22T18:18:00+00:00",
            "limit": 50,
            "min_confidence": 0,
            "min_importance": 0,
            "start": "2026-09-21T18:18:00+00:00",
            "statuses": [
              "breaking",
              "developing",
              "confirmed"
            ]
          },
          "complete": true,
          "pages": [
            {
              "cursor": null,
              "status": "succeeded",
              "returnedCount": 2,
              "hasMore": false,
              "nextCursor": null,
              "resultSha256": "23cf72fef69c4a82ec6cab45dfa80d0e1038b1ccd682dec63ea1e160bc577290"
            }
          ]
        },
        {
          "arguments": {
            "assets": [
              "AVAX"
            ],
            "content_kinds": [
              "catalyst",
              "reporting"
            ],
            "end": "2026-09-22T18:18:00+00:00",
            "limit": 50,
            "min_confidence": 0,
            "min_importance": 0,
            "start": "2026-09-21T18:18:00+00:00",
            "statuses": [
              "breaking",
              "developing",
              "confirmed"
            ]
          },
          "complete": true,
          "pages": [
            {
              "cursor": null,
              "status": "succeeded",
              "returnedCount": 2,
              "hasMore": false,
              "nextCursor": null,
              "resultSha256": "1e1823b639e45075d0f8cbe1072910145392d30f25f112139da8918d4c57b1d1"
            }
          ]
        },
        {
          "arguments": {
            "assets": [
              "HYPE"
            ],
            "content_kinds": [
              "catalyst",
              "reporting"
            ],
            "end": "2026-09-22T18:18:00+00:00",
            "limit": 50,
            "min_confidence": 0,
            "min_importance": 0,
            "start": "2026-09-21T18:18:00+00:00",
            "statuses": [
              "breaking",
              "developing",
              "confirmed"
            ]
          },
          "complete": true,
          "pages": [
            {
              "cursor": null,
              "status": "succeeded",
              "returnedCount": 1,
              "hasMore": false,
              "nextCursor": null,
              "resultSha256": "a574b261af54916053804ecd6c75ddb1b46cca310f6d859f4e0d25e302904421"
            }
          ]
        },
        {
          "arguments": {
            "content_kinds": [
              "catalyst",
              "reporting"
            ],
            "end": "2026-09-22T18:18:00+00:00",
            "limit": 50,
            "min_confidence": 0,
            "min_importance": 0,
            "start": "2026-09-21T18:18:00+00:00",
            "statuses": [
              "breaking",
              "developing",
              "confirmed"
            ]
          },
          "complete": true,
          "pages": [
            {
              "cursor": null,
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMTY6MTY6MDEuMTk2NjQ4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjdhMGMxM2Q2LTU3MmUtNDExNi1hZjUzLWU3YTRhMTc3ZTQ3YSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "efde3637c129f75a2dd107904258e443cfb39b95a7c3504f295bd93c4f33bdcb"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMTY6MTY6MDEuMTk2NjQ4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjdhMGMxM2Q2LTU3MmUtNDExNi1hZjUzLWU3YTRhMTc3ZTQ3YSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMTQ6Mzk6MTcuMjQ2Mzg5KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjVkYzgyYjFiLTVjNGItNGQ0Mi1iZjE3LTEzM2UwYTdhYTczNyIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "c244b8d0f2639277d7a0be199b771aad0dff1660c11868ae8e88e7e4e7634d6b"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMTQ6Mzk6MTcuMjQ2Mzg5KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjVkYzgyYjFiLTVjNGItNGQ0Mi1iZjE3LTEzM2UwYTdhYTczNyIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMTI6NDA6NTQuMDMyOTg4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6ImQ2MGI2MDMzLTU2Y2MtNDNkZS1iMzEzLTJkNDdiZWE3NTEzYSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "8e9c255c3e0312a56128f6af36c5f2087309eed3c21026ec790223e197be90d0"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMTI6NDA6NTQuMDMyOTg4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6ImQ2MGI2MDMzLTU2Y2MtNDNkZS1iMzEzLTJkNDdiZWE3NTEzYSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMTA6MjQ6MjIuOTY4MzA4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6ImZmZGE0YmE4LWNlMTgtNGIxZS05MTJjLWFlZTZlMWE1NGE1MCIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "a931040805aaf31a010c9315e27c290527a2f769b4806e867c2a483a9e4d476c"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMTA6MjQ6MjIuOTY4MzA4KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6ImZmZGE0YmE4LWNlMTgtNGIxZS05MTJjLWFlZTZlMWE1NGE1MCIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMDg6MTU6MzIuMTg2NDc1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjJhZTY2ODRiLTdjMmQtNDc4NC1iZmU3LTkyZjRmYWE1ZTA5OSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "17f30eb58bffd948514a3a19c1fbb3772e74a7981ba9d7df784b02ce8f1b7bbe"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMDg6MTU6MzIuMTg2NDc1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjJhZTY2ODRiLTdjMmQtNDc4NC1iZmU3LTkyZjRmYWE1ZTA5OSIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMDU6MjM6NDEuODk1MjA1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjQ3YmU4ZGY5LTQyNzMtNGM3Yi05ZDRmLTVkMzc3ZDNiYWEzYyIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "bb3c5095165b1328cb52a9e436ca1840a4b80ddc33530b304843b3ca4b33b0aa"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMDU6MjM6NDEuODk1MjA1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjQ3YmU4ZGY5LTQyNzMtNGM3Yi05ZDRmLTVkMzc3ZDNiYWEzYyIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjJUMDA6MzE6MTkuNjM2ODA2KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjFhYWUxYjlhLWZmNmEtNGQyMy1iZDhiLTQ2OGMwYjcyZWZiMCIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "cafca2fd348c14418cf1a15312bb183b7c28874e9d89859f6801fb0e819adbab"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjJUMDA6MzE6MTkuNjM2ODA2KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjFhYWUxYjlhLWZmNmEtNGQyMy1iZDhiLTQ2OGMwYjcyZWZiMCIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 50,
              "hasMore": true,
              "nextCursor": "eyJhdCI6IjIwMjYtMDktMjFUMjA6NDk6MzEuNjY5NTU1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjFhZTE3MmYwLWY0Y2UtNDY4MS1hMzdjLWIwODk2YTRjZDVjYiIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "resultSha256": "06befb05b6214bd64fce0c8fbcadbfee27a6d66fc93e998037a1c0497ce32e8b"
            },
            {
              "cursor": "eyJhdCI6IjIwMjYtMDktMjFUMjA6NDk6MzEuNjY5NTU1KzAwOjAwIiwiZmlsdGVycyI6IjIwYmFhOTE0NzI0OWRmMzMiLCJpZCI6IjFhZTE3MmYwLWY0Y2UtNDY4MS1hMzdjLWIwODk2YTRjZDVjYiIsInNvcnQiOiJmaXJzdF9zZWVuX2F0OmRlc2MsZXZlbnRfaWQ6ZGVzYyIsInYiOjF9",
              "status": "succeeded",
              "returnedCount": 43,
              "hasMore": false,
              "nextCursor": null,
              "resultSha256": "09240769713a41730d4dd26efba9ddcf49c5e6dc71455ab3be03789f850caa28"
            }
          ]
        },
        {
          "arguments": {
            "assets": [
              "TRX"
            ],
            "content_kinds": [
              "catalyst",
              "reporting"
            ],
            "end": "2026-09-22T18:18:00+00:00",
            "limit": 50,
            "min_confidence": 0,
            "min_importance": 0,
            "start": "2026-09-21T18:18:00+00:00",
            "statuses": [
              "breaking",
              "developing",
              "confirmed"
            ]
          },
          "complete": true,
          "pages": [
            {
              "cursor": null,
              "status": "succeeded",
              "returnedCount": 0,
              "hasMore": false,
              "nextCursor": null,
              "resultSha256": "e88f3a0a4478e2efd693ede0f6bdfc94bd69378c3e7a3cdc2473dfc26ed1a327"
            }
          ]
        }
      ],
      "upstreamIngestionHealth": "not-exposed"
    },
    "generatedAt": "2026-09-22T18:18:00+00:00",
    "window": {
      "startAt": "2026-09-21T18:18:00+00:00",
      "endAt": "2026-09-22T18:18:00+00:00",
      "endExclusive": true
    },
    "coverage": {
      "configuredSources": 1,
      "successfulSources": 1,
      "failedSources": 0
    },
    "provenance": {
      "collectionArchitecture": "central-canonical-event-store",
      "mcpServersQueried": 1,
      "assetScopedQueries": 8,
      "macroQueries": 19,
      "canonicalEventsConsidered": 2,
      "publishersRepresented": 2,
      "discoveryEventsScanned": 923,
      "upstreamFeedCount": null,
      "coverageNote": "The local news MCP exposes canonical events, not its upstream feed inventory; legacy feed-count fields below describe the single MCP endpoint and are not comparable with the former RSS collector."
    },
    "selection": {
      "feedsQueried": 1,
      "publishersQueried": 2,
      "feedEntriesScanned": 5,
      "articlesPassingTimeFilter": 5,
      "articlesPassingSourceRelevanceRules": 2,
      "articlesPassingSelectionThreshold": 0,
      "storiesSelected": 0,
      "selectedPublishers": 0,
      "maximumStories": 3,
      "maximumStoriesPerPublisher": 2,
      "minimumSelectionScore": 0,
      "lockedEventSet": true,
      "qualityThresholds": {
        "minimumConfidence": null,
        "minimumImportance": null,
        "minimumSourceQuality": 0.58,
        "minimumCatalystScore": null,
        "minimumMediaReliability": 0.6
      },
      "candidateAudit": [
        {
          "eventId": "c0eb4714-7ae3-468f-bd1a-33319b2aed1b",
          "selected": false,
          "eligible": false,
          "checks": {
            "verifiedSourceMetadata": true,
            "contentKind": true,
            "status": true
          },
          "inWindow": true,
          "reportRelevant": false,
          "decision": "ineligible"
        },
        {
          "eventId": "cde60d9b-a5cf-47b2-bc4b-1711adc660a6",
          "selected": false,
          "eligible": false,
          "checks": {
            "verifiedSourceMetadata": true,
            "contentKind": true,
            "status": true
          },
          "inWindow": true,
          "reportRelevant": false,
          "decision": "ineligible"
        },
        {
          "eventId": "f4f582fe-de9e-4ee2-99e1-95d2c642f4e6",
          "selected": false,
          "eligible": false,
          "checks": {
            "verifiedSourceMetadata": true,
            "contentKind": true,
            "status": true
          },
          "inWindow": true,
          "reportRelevant": false,
          "decision": "ineligible"
        },
        {
          "eventId": "24d7ff29-14c1-4b79-bfa4-695bab54c156",
          "selected": false,
          "eligible": true,
          "checks": {
            "verifiedSourceMetadata": true,
            "contentKind": true,
            "status": true
          },
          "inWindow": true,
          "reportRelevant": true,
          "decision": "editorial-selection"
        },
        {
          "eventId": "0a5166cd-c21d-4cbd-b87d-4a9f5e6c4e4e",
          "selected": false,
          "eligible": true,
          "checks": {
            "verifiedSourceMetadata": true,
            "contentKind": true,
            "status": true
          },
          "inWindow": true,
          "reportRelevant": true,
          "decision": "editorial-selection"
        }
      ],
      "planRationale": "No in-window candidate provided a sufficiently relevant, non-routine cross-altcoin context. The AVAX operational notices are asset-specific and do not explain the XRP–TRX cross-asset skew thesis."
    },
    "items": []
  },
  "newsStatus": "no-relevant-catalyst",
  "researchDossier": "/Users/seangordon/code/report-publisher-harness/runs/2026-09-22-20260922T181815Z/editorial/dossier.json"
}
