# StationFX CBOE Volatility Index (VIX)

> StationFX CBOE Volatility Index (VIX) is a paid API for AI agents from stationfx.com, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-02).

Returns daily CBOE VIX time-series data with derived statistics for risk sentiment analysis, hedging signals, and market regime detection.

## Facts

- Endpoint: GET https://stationfx.com/economic-data/financial-conditions/cboe-volatility-index-vix?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/stationfx-cboe-volatility-index-vix-3e5045ac
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_asrvjYGXmIlM7YLxeB_i_

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability stationfx-cboe-volatility-index-vix-3e5045ac
```

Example prompt: Pull the VIX data from StationFX for the last 90 days in JSON format, and tell me if current volatility is elevated relative to its 5-year history — include the z-score and percentile rank.

## When to prefer this

Choose this endpoint when you need daily CBOE VIX data enriched with statistical context (z-scores, percentile ranks, rolling averages, trend signals) rather than a raw price feed. Ideal for agents performing risk regime detection, hedging signal generation, or macro financial conditions analysis where historical context and derived statistics matter. Prefer over raw market data APIs when pre-computed analytics are needed without additional transformation.

## Known failure modes

- Invalid date range (date_from after date_to) may return empty data or error
- Requesting dates before VIX history begins returns no data
- Invalid fmt enum value returns format error
- Network or payment (x402) failure returns no response
- Requesting future dates returns no data

## How this service works

CBOE measure of expected 30-day volatility in the S&P 500, derived from options prices. The market's fear gauge. Spikes during crises and risk-off events. Use for risk sentiment analysis, hedging signal generation, and regime detection. Daily frequency with full history.

## Output

Returns an array of daily observations, each containing the raw VIX value, month-over-month and year-over-year absolute and percentage changes, z-scores relative to trailing 12 months and 5 years, percentile rank over trailing 5 years, 3-month and 12-month rolling averages, and a binary above-trend flag. Optionally returned in compact 'toon' format for agent-friendly consumption.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http",
     "description": "Always \"http\" for HTTP endpoints"
    },
    "method": {
     "enum": [
      "GET",
      "HEAD",
      "DELETE"
     ],
     "type": "string",
     "description": "HTTP method. Always GET for StationFX query endpoints"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "fmt": {
       "enum": [
        "json",
        "toon"
       ],
       "type": "string",
       "description": "Response format. Use toon for compact agent-friendly output."
      },
      "fields": {
       "type": "string",
       "description": "Comma-separated metric names"
      },
      "date_to": {
       "type": "string",
       "description": "End date YYYY-MM-DD"
      },
      "date_from": {
       "type": "string",
       "description": "Start date YYYY-MM-DD"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string",
     "description": "Response format. Always \"json\" (or \"toon\" if fmt=toon was requested)"
    },
    "example": {
     "type": "object",
     "properties": {
      "data": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "date": {
          "type": "string",
          "description": "Observation date YYYY-MM-DD"
         },
         "value": {
          "type": "number",
          "description": "Raw observed value in series units"
         },
         "mom_pct": {
          "type": "number",
          "description": "Month-over-month % change"
         },
         "yoy_pct": {
          "type": "number",
          "description": "Year-over-year % change"
         },
         "zscore_5y": {
          "type": "number",
          "description": "Z-score relative to trailing 5 years"
         },
         "mom_change": {
          "type": "number",
          "description": "Month-over-month absolute change"
         },
         "yoy_change": {
          "type": "number",
          "description": "Year-over-year absolute change"
         },
         "zscore_12m": {
          "type": "number",
          "description": "Z-score relative to trailing 12
… (truncated)
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "properties": {
   "data": {
    "type": "array",
    "items": {
     "type": "object",
     "properties": {
      "date": {
       "type": "string",
       "description": "Observation date YYYY-MM-DD"
      },
      "value": {
       "type": "number",
       "description": "Raw observed value in series units"
      },
      "mom_pct": {
       "type": "number",
       "description": "Month-over-month % change"
      },
      "yoy_pct": {
       "type": "number",
       "description": "Year-over-year % change"
      },
      "zscore_5y": {
       "type": "number",
       "description": "Z-score relative to trailing 5 years"
      },
      "mom_change": {
       "type": "number",
       "description": "Month-over-month absolute change"
      },
      "yoy_change": {
       "type": "number",
       "description": "Year-over-year absolute change"
      },
      "zscore_12m": {
       "type": "number",
       "description": "Z-score relative to trailing 12 months"
      },
      "above_trend": {
       "type": "integer",
       "description": "1 if value is above long-run trend, else 0"
      },
      "pct_rank_5y": {
       "type": "number",
       "description": "Percentile rank over trailing 5 years (0-100)"
      },
      "rolling_3m_avg": {
       "type": "number",
       "description": "3-month rolling average"
      },
      "rolling_12m_avg": {
       "type": "number",
       "description": "12-month rolling average"
      },
      "trend_direction": {
       "type": "integer",
       "description": "Trend: 1 rising, -1 falling, 0 flat"
      }
     }
    },
    "description": "Observations ordered by date ascending"
   },
   "meta": {
    "type": "object",
    "description": "Series metadata: source_key (FRED series ID), units, frequency (D/W/M/Q/A), date_from, date_to, fields"
   }
  },
  "description": "Station f(x) response with metadata and pre-computed derived metrics"
 },
 "example": {
  "data": [
   {
    "date": "2024-01-01",
    "value": 5.33,
    "mom_pct": 0,
    "yoy_change": 0.5,
    "zscore_12m": 1.2,
    "trend_direction": 1
   }
  ],
  "meta": {
   "frequency": "D",
   "source_key": "VIXCLS"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/stationfx-cboe-volatility-index-vix-3e5045ac/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from stationfx.com](https://www.zero.xyz/host/stationfx.com/llms.txt)
