API de Cadenas de opciones de Yahoo Finance

POST

Salud de la API

Salud 24 h
Normal
Tiempo medio 24 h
—
  • Saludable / normal
  • Disponible
  • Limitada
  • Casi sin servicio
Normal

Obtiene cadenas de calls y puts para el símbolo indicado en keyword, con vencimientos y strikes disponibles. No ejecuta operaciones ni garantiza cotizaciones instantáneas.

Yahoo Finance Cadenas de opciones lee las opciones cotizadas sobre un símbolo, que pasas en keyword, y devuelve la cadena en un solo objeto: el symbol, todas las fechas de vencimiento en expiration_dates, todos los precios de ejercicio en strikes y los contratos en calls y puts. De cada contrato obtienes contract_symbol, strike, last_price, bid, ask, volume, open_interest, implied_volatility y el indicador in_the_money, que señala si está dentro del dinero. Lo usan analistas, investigadores cuantitativos y desarrolladores de herramientas financieras para revisar precios de ejercicio, seguir la volatilidad implícita y ver dónde se acumula el interés abierto.

Escribe el símbolo como lo muestra Yahoo Finance, por ejemplo AAPL, con su sufijo de mercado si lo tiene; los nombres de empresa no se buscan. No hay un parámetro para elegir vencimiento, así que comprueba en expiration a qué fecha pertenecen los contratos devueltos. last_price es el precio de la última operación, que en un contrato con poca actividad puede ser antiguo, mientras que bid y ask son los precios de compra y de venta publicados. Son datos de mercado, no recomendaciones de inversión.

Precio $1.39 por 1.000 solicitudes ($0.001389 por llamada). Las llamadas fallidas y los resultados vacíos no se cobran. Síncrona. Para tareas lentas añade "mode": "async" al cuerpo, recibe un job_id y consúltalo.

Prompt para IA

Pégalo en tu asistente de IA. Ya incluye los parámetros, los campos de respuesta y una solicitud de ejemplo de este endpoint, así que el asistente puede preguntarte qué necesitas y luego escribir el script.

Ayúdame a escribir un script de recopilación de datos con el endpoint de EveryInfra Yahoo Finance: Cadenas de opciones (yahoo_finance/options).

Contrato del endpoint:
- Solicitud: POST https://api.everyinfra.com/api/v1/social con la cabecera Authorization: Bearer <clave API>. Lee la clave de la variable de entorno EVERYINFRA_API_KEY y no la escribas en el código.
- En el cuerpo de la solicitud, pon platform en yahoo_finance y action en options, y los parámetros dentro de params.
- Parámetros obligatorios:
  - keyword: Código de valor (ticker) de Yahoo Finance, como AAPL. No es una búsqueda por el nombre completo de la empresa.
- Devuelve un objeto. Campos principales: contract_symbol, strike, last_price, bid, ask, volume, open_interest, implied_volatility, in_the_money, expiration, symbol, expiration_dates; 15 campos en total, lista completa en https://api.everyinfra.com/api/v1/social/catalog?platform=yahoo_finance.
- Cuerpo de solicitud de ejemplo:
{
  "platform": "yahoo_finance",
  "action": "options",
  "params": {
    "keyword": "AAPL"
  }
}
- Precio: $1.39 por 1.000 solicitudes; los resultados fallidos y vacíos no se cobran.
- Para decenas o cientos de objetivos, añade "mode": "async" al cuerpo: recibes un job_id al instante y consultas GET https://api.everyinfra.com/api/v1/jobs/{job_id} para obtener el resultado.
- Ante un 422, corrige la solicitud con los nombres de parámetros y los valores admitidos que sugiere el error; ante un 429 o un 503, espera lo que indique Retry-After y vuelve a intentarlo.

Antes de escribir código, pregúntame qué objetivos necesito, cuántos, qué campos y en qué formato quiero el resultado; luego confirma conmigo el plan y el coste aproximado.

Parámetros de la solicitud

NombreUbicaciónTipoObligatorioPor defectoDescripción
AuthorizationheaderstringSí-Bearer seguido de tu clave de API. Créala en la consola; nunca la pongas en una URL ni en un repositorio de código.
platformbodystringSíyahoo_financeIdentificador de la plataforma, valor fijo.
actionbodystringSíoptionsIdentificador de la capacidad, valor fijo.
keywordbody.paramsNo declaradoSí-Código de valor (ticker) de Yahoo Finance, como AAPL. No es una búsqueda por el nombre completo de la empresa. Las acciones history, financials, news, analyst y options obtienen, respectivamente, cotizaciones históricas, datos financieros, noticias, informes de analistas y opciones para un único código de valor por llamada. Debes conservar el sufijo del mercado si lo hubiera.

Ejemplos de código

bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "yahoo_finance",
  "action": "options",
  "params": {
    "keyword": "AAPL"
  }
}'

[Definición OpenAPI (JSON)]Los ejemplos leen la clave de la variable de entorno EVERYINFRA_API_KEY; el código copiado nunca contiene tu clave.

Ejemplo de respuesta

Respuesta real

Obtenida el 26 de septiembre de 2026, 08:56 (UTC) llamando a esta API con los parámetros del ejemplo de código de arriba. results y count son la respuesta real de esa llamada, sin información personal (nombres, usuarios, avatares, enlaces de perfil, datos de contacto). id, billing y quota cambian en cada llamada, por eso solo se muestra su estructura.

json
{
  "id": "req_…",
  "platform": "yahoo_finance",
  "action": "options",
  "results": {
    "symbol": "AAPL",
    "expiration_dates": [
      "2026-09-28T00:00:00+00:00",
      "2026-09-30T00:00:00+00:00",
      "2026-10-02T00:00:00+00:00"
    ],
    "strikes": [
      250,
      255,
      265
    ],
    "calls": [
      {
        "contract_symbol": "AAPL260928C00250000",
        "strike": 250,
        "last_price": 89.85,
        "bid": 89.25,
        "ask": 92.7,
        "volume": 1,
        "open_interest": 1,
        "implied_volatility": 2.24365673461914,
        "in_the_money": true,
        "expiration": "2026-09-28T00:00:00+00:00"
      },
      {
        "contract_symbol": "AAPL260928C00265000",
        "strike": 265,
        "last_price": 72.52,
        "bid": 74.05,
        "ask": 77.75,
        "volume": 4,
        "open_interest": 5,
        "implied_volatility": 1.9111332568359376,
        "in_the_money": true,
        "expiration": "2026-09-28T00:00:00+00:00"
      },
      {
        "contract_symbol": "AAPL260928C00270000",
        "strike": 270,
        "last_price": 65.74,
        "bid": 69.05,
        "ask": 72.95,
        "volume": 2,
        "open_interest": 3,
        "implied_volatility": 1.84765701171875,
        "in_the_money": true,
        "expiration": "2026-09-28T00:00:00+00:00"
      }
    ],
    "puts": [
      {
        "contract_symbol": "AAPL260928P00250000",
        "strike": 250,
        "last_price": 0.01,
        "bid": 0,
        "ask": 0.01,
        "volume": 7,
        "open_interest": 4,
        "implied_volatility": 1.0625046875000002,
        "in_the_money": false,
        "expiration": "2026-09-28T00:00:00+00:00"
      },
      {
        "contract_symbol": "AAPL260928P00255000",
        "strike": 255,
        "last_price": 0.01,
        "bid": 0,
        "ask": 0.01,
        "volume": 2,
        "open_interest": 4,
        "implied_volatility": 1.000005,
        "in_the_money": false,
        "expiration": "2026-09-28T00:00:00+00:00"
      },
      {
        "contract_symbol": "AAPL260928P00265000",
        "strike": 265,
        "last_price": 0.05,
        "bid": 0,
        "ask": 0.01,
        "volume": 36,
        "open_interest": 12,
        "implied_volatility": 0.87500125,
        "in_the_money": false,
        "expiration": "2026-09-28T00:00:00+00:00"
      }
    ],
    "platform": "yahoo_finance"
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}

Campos de la respuesta

Los datos están en results. La tabla lista los campos que puede tener cada registro; los valores que la plataforma no muestra nunca se inventan.

CampoSignificado
contract_symbolConserva el significado de la plataforma
strikeConserva el significado de la plataforma
last_priceConserva el significado de la plataforma
bidConserva el significado de la plataforma
askConserva el significado de la plataforma
volumeConserva el significado de la plataforma
open_interestConserva el significado de la plataforma
implied_volatilityConserva el significado de la plataforma
in_the_moneyConserva el significado de la plataforma
expirationConserva el significado de la plataforma
symbolConserva el significado de la plataforma
expiration_datesConserva el significado de la plataforma
strikesConserva el significado de la plataforma
callsConserva el significado de la plataforma
putsConserva el significado de la plataforma
platformIdentificador de la plataforma, igual que platform en la solicitud (por ejemplo xiaohongshu, tiktok).

Preguntas frecuentes

¿Necesito una URL de Yahoo Finance para usar esta API?

No. keyword recibe solo el símbolo tal como aparece en Yahoo Finance, por ejemplo AAPL, conservando el sufijo de mercado cuando lo tiene; no hace falta el enlace de ninguna página. Los nombres de empresa no se buscan y cada llamada lee un único símbolo. Para la cotización y los datos fundamentales del subyacente, pasa el mismo símbolo a Yahoo Finance Búsqueda.

¿Cómo elijo una fecha de vencimiento?

No se elige en la solicitud: la capacidad solo recibe keyword y no tiene selector de vencimiento. La respuesta enumera todos los vencimientos disponibles en expiration_dates, y expiration indica a qué fecha pertenecen los contratos recibidos. Guarda esa fecha con cada fila para que las cadenas leídas en días distintos encajen al compararlas.

¿Cómo sé si un contrato tiene actividad?

Mira volume, el volumen negociado, y open_interest, los contratos que siguen abiertos, y luego la distancia entre bid y ask. Poco volumen, poco interés abierto y un diferencial amplio indican que last_price puede estar desfasado. Trata con cautela la implied_volatility de esos contratos si construyes una curva de volatilidad; son datos para analizar, no una señal para operar.

Errores y facturación

401
Falta la clave o no es válida. La autenticación se comprueba antes que los parámetros, así que las solicitudes sin autenticar no ven el esquema de parámetros.
422
Nombre o valor de parámetro incorrecto. El error enumera los parámetros y valores permitidos de esta capacidad y la opción más cercana; ocurre antes de cualquier cobro.
402
Saldo insuficiente. Recarga primero.
429
Se alcanzó el límite de solicitudes por minuto de la cuenta (todas sus claves API cuentan juntas; antes se aplica el límite propio de una clave si es menor). Espera lo que indique Retry-After y vuelve a intentarlo; un paquete de velocidad en la consola sube el límite.
503
No se pudo completar ahora. Cualquier cargo de la llamada vuelve automáticamente a tu saldo, y el recibo de facturación de la respuesta indica el resultado real, también cuando aún no se conoce. No reenvíes a ciegas.
200 vacío
La solicitud terminó sin datos y no se cobra (billing.reason = empty_result_refunded).

Referencias oficiales

Solo sirven para contrastar objetos y términos. No implican autorización ni respaldo de la plataforma a EveryInfra.

  • Yahoo Finance: sufijos de mercado y datos con demora ↗

    Yahoo Finance documenta sufijos de mercados y diferentes demoras según la bolsa, y presenta los datos con fines informativos. Una cotización no debe presentarse como dato ejecutable en tiempo real ni como recomendación financiera.

    Comprobado el 2026-09-05