Ratio largos/cortos de una moneda
Capa de datos propia: ratio largos/cortos de una moneda
/api/sd/lsSolicitud
Parámetros de consulta
| Nombre | Tipo | Obligatorio | Valor por defecto | Valores admitidos | Descripción |
|---|---|---|---|---|---|
| coin | string | Obligatorio | — | — | Símbolo de la moneda; 400 cuando falta. Alias: `base`. Ejemplo: BTC |
Solicitud de ejemplo
curl -s "https://www.coinboss.com/api/sd/ls?coin=BTC"Campos de la respuesta
La tabla de campos se genera a partir de respuestas reales, por lo que recoge exactamente lo que devuelve el endpoint. Las rutas usan a[] para los elementos de un array y {*} para los objetos cuya clave es un nombre dinámico, como una moneda o un exchange.
| Campo | Tipo | Unidad | Descripción |
|---|---|---|---|
| success | boolean | — | true cuando la solicitud se completó correctamente. En caso de fallo, el cuerpo es `{ success: false, code, error, request_id }`. |
| coin | string | — | Símbolo de la moneda, en mayúsculas (por ejemplo BTC). |
| now | number | ms | Hora del servidor en el momento de generar la respuesta. |
| account | object | — | Proporción de todas las cuentas que están netamente largas frente a netamente cortas. |
| account.long_pct | number | % | Cuota de largos. |
| account.short_pct | number | % | Cuota de cortos. |
| account.ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| account.n_exchanges | number | — | Número de exchanges que aportan datos. |
| account.by_exchange | array | — | Desglose por exchange. |
| account.by_exchange[] | object | — | Desglose por exchange. |
| account.by_exchange[].exchange | string | — | Id del exchange, en minúsculas (por ejemplo `binance`). |
| account.by_exchange[].symbol | string | — | Símbolo del instrumento tal como lo normaliza CoinBoss (por ejemplo BTCUSDT). |
| account.by_exchange[].long_pct | number | % | Cuota de largos. |
| account.by_exchange[].short_pct | number | % | Cuota de cortos. |
| account.by_exchange[].ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| account.by_exchange[].updated_at | number | ms | Momento de la última actualización de esta fila. |
| account.by_exchange[].age_s | number | s | Segundos transcurridos desde la última actualización de esta fila. |
| account.by_exchange[].is_stale | boolean | — | true cuando la fila es más antigua que la ventana de frescura; las filas desactualizadas no se usan en los totales. |
| account.by_exchange[].source | string | — | Estadística del exchange de la que procede la fila. |
| account.by_exchange[].period | string | — | Periodo de muestreo de la estadística del exchange (por ejemplo `5m`). |
| top_account | object | — | Lo mismo, restringido a los top traders definidos por el exchange. |
| top_account.long_pct | number|null | % | Cuota de largos. |
| top_account.short_pct | number|null | % | Cuota de cortos. |
| top_account.ratio | number|null | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| top_account.n_exchanges | number | — | Número de exchanges que aportan datos. |
| top_account.by_exchange | array | — | Desglose por exchange. |
| top_account.by_exchange[] | object | — | Desglose por exchange. |
| top_account.by_exchange[].exchange | string | — | Id del exchange, en minúsculas (por ejemplo `binance`). |
| top_account.by_exchange[].symbol | string | — | Símbolo del instrumento tal como lo normaliza CoinBoss (por ejemplo BTCUSDT). |
| top_account.by_exchange[].long_pct | number | % | Cuota de largos. |
| top_account.by_exchange[].short_pct | number | % | Cuota de cortos. |
| top_account.by_exchange[].ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| top_account.by_exchange[].updated_at | number | ms | Momento de la última actualización de esta fila. |
| top_account.by_exchange[].age_s | number | s | Segundos transcurridos desde la última actualización de esta fila. |
| top_account.by_exchange[].is_stale | boolean | — | true cuando la fila es más antigua que la ventana de frescura; las filas desactualizadas no se usan en los totales. |
| top_account.by_exchange[].source | string | — | Estadística del exchange de la que procede la fila. |
| top_account.by_exchange[].period | string | — | Periodo de muestreo de la estadística del exchange (por ejemplo `5m`). |
| top_position | object | — | Cuota de largos frente a cortos de las posiciones mantenidas por los top traders. |
| top_position.long_pct | number|null | % | Cuota de largos. |
| top_position.short_pct | number|null | % | Cuota de cortos. |
| top_position.ratio | number|null | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| top_position.n_exchanges | number | — | Número de exchanges que aportan datos. |
| top_position.by_exchange | array | — | Desglose por exchange. |
| top_position.by_exchange[] | object | — | Desglose por exchange. |
| top_position.by_exchange[].exchange | string | — | Id del exchange, en minúsculas (por ejemplo `binance`). |
| top_position.by_exchange[].symbol | string | — | Símbolo del instrumento tal como lo normaliza CoinBoss (por ejemplo BTCUSDT). |
| top_position.by_exchange[].long_pct | number | % | Cuota de largos. |
| top_position.by_exchange[].short_pct | number | % | Cuota de cortos. |
| top_position.by_exchange[].ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| top_position.by_exchange[].updated_at | number | ms | Momento de la última actualización de esta fila. |
| top_position.by_exchange[].age_s | number | s | Segundos transcurridos desde la última actualización de esta fila. |
| top_position.by_exchange[].is_stale | boolean | — | true cuando la fila es más antigua que la ventana de frescura; las filas desactualizadas no se usan en los totales. |
| top_position.by_exchange[].source | string | — | Estadística del exchange de la que procede la fila. |
| top_position.by_exchange[].period | string | — | Periodo de muestreo de la estadística del exchange (por ejemplo `5m`). |
| position_all | object | — | Cuota de largos frente a cortos de todas las posiciones (plataformas que la publican). |
| position_all.long_pct | number|null | % | Cuota de largos. |
| position_all.short_pct | number|null | % | Cuota de cortos. |
| position_all.ratio | number|null | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| position_all.n_exchanges | number | — | Número de exchanges que aportan datos. |
| position_all.by_exchange | array | — | Desglose por exchange. |
| position_all.by_exchange[] | object | — | Desglose por exchange. |
| position_all.by_exchange[].exchange | string | — | Id del exchange, en minúsculas (por ejemplo `binance`). |
| position_all.by_exchange[].symbol | string | — | Símbolo del instrumento tal como lo normaliza CoinBoss (por ejemplo BTCUSDT). |
| position_all.by_exchange[].long_pct | number | % | Cuota de largos. |
| position_all.by_exchange[].short_pct | number | % | Cuota de cortos. |
| position_all.by_exchange[].ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| position_all.by_exchange[].updated_at | number | ms | Momento de la última actualización de esta fila. |
| position_all.by_exchange[].age_s | number | s | Segundos transcurridos desde la última actualización de esta fila. |
| position_all.by_exchange[].is_stale | boolean | — | true cuando la fila es más antigua que la ventana de frescura; las filas desactualizadas no se usan en los totales. |
| position_all.by_exchange[].source | string | — | Estadística del exchange de la que procede la fila. |
| position_all.by_exchange[].period | string | — | Periodo de muestreo de la estadística del exchange (por ejemplo `5m`). |
| taker | object | — | Cuota del volumen de compra taker frente al de venta taker. |
| taker.long_pct | number|null | % | Cuota de largos. |
| taker.short_pct | number|null | % | Cuota de cortos. |
| taker.ratio | number|null | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| taker.n_exchanges | number | — | Número de exchanges que aportan datos. |
| taker.by_exchange | array | — | Desglose por exchange. |
| taker.by_exchange[] | object | — | Desglose por exchange. |
| taker.by_exchange[].exchange | string | — | Id del exchange, en minúsculas (por ejemplo `binance`). |
| taker.by_exchange[].symbol | string | — | Símbolo del instrumento tal como lo normaliza CoinBoss (por ejemplo BTCUSDT). |
| taker.by_exchange[].long_pct | number | % | Cuota de largos. |
| taker.by_exchange[].short_pct | number | % | Cuota de cortos. |
| taker.by_exchange[].ratio | number | — | Cuota de largos dividida entre la cuota de cortos (1 = equilibrado). |
| taker.by_exchange[].updated_at | number | ms | Momento de la última actualización de esta fila. |
| taker.by_exchange[].age_s | number | s | Segundos transcurridos desde la última actualización de esta fila. |
| taker.by_exchange[].is_stale | boolean | — | true cuando la fila es más antigua que la ventana de frescura; las filas desactualizadas no se usan en los totales. |
| taker.by_exchange[].source | string | — | Estadística del exchange de la que procede la fila. |
| taker.by_exchange[].period | string | — | Periodo de muestreo de la estadística del exchange (por ejemplo `5m`). |
| definitions | object | — | Definición de cada medida. Las cinco medidas responden a preguntas distintas y nunca se mezclan. |
| definitions.account | string | — | Medida basada en cuentas. |
| definitions.top_account | string | — | Medida por cuentas de top traders. |
| definitions.top_position | string | — | Medida por posiciones de top traders. |
| definitions.position_all | string | — | Medida de todas las posiciones. |
| definitions.taker | string | — | Medida de compra / venta taker. |
| method | object | — | Enunciado en texto plano de las fórmulas utilizadas en esta respuesta. |
| method.normalize | string | — | Nota en texto plano sobre la normalización: el valor de cada exchange se reescala para que % de largos + % de cortos = 100, y ratio = % de largos ÷ % de cortos. |
| method.aggregate | string | — | Agregado entre exchanges. |
| method.freshness | string | — | Regla de frescura en texto plano: se muestran las filas actualizadas en las últimas 24 horas e `is_stale` marca las filas con más de 2 horas de antigüedad. |
Generada 2026-11-11 23:00 UTC a partir de 4 respuestas reales.
Respuesta de ejemplo
/api/sd/ls?coin=BTC · Respuesta real capturada 2026-11-13 03:57:48 UTC. Los arrays y mapas largos se abrevian para su visualización: taker.by_exchange tenía 4 elementos; account.by_exchange tenía 6 elementos; top_position.by_exchange tenía 4 elementos.
- "success"true
- "coin""BTC"
- "now"1794542268813
- "account"
- "long_pct"73.52
- "short_pct"26.48
- "ratio"2.7764
- "n_exchanges"6
- "by_exchange"
- "top_account"
- "long_pct"66.89
- "short_pct"33.11
- "ratio"2.0198
- "n_exchanges"2
- "by_exchange"
- "top_position"
- "long_pct"49.7
- "short_pct"50.3
- "ratio"0.9881
- "n_exchanges"4
- "by_exchange"
- "position_all"
- "long_pct"49.43
- "short_pct"50.57
- "ratio"0.9775
- "n_exchanges"1
- "by_exchange"
- "taker"
- "long_pct"43.47
- "short_pct"56.54
- "ratio"0.7688
- "n_exchanges"4
- "by_exchange"
- "definitions"
- "account""all accounts: share of accounts that are net long vs net short (headcount, not size)"
- "top_account""top traders only: share of top-trader accounts net long vs net short"
- "top_position""top traders only: long position size vs short position size"
- "position_all""all traders: long position size vs short position size (Bitget only; kept separate from top-trader figures)"
- "taker""taker buy volume vs taker sell volume in the period (aggressor flow; not positions)"
- "method"
- "normalize""each exchange value converted to long% + short% = 100; ratio = long% / short%"
- "aggregate""simple mean of long% across exchanges within the same definition; different definitions are never mixed"
- "freshness""rows updated within 24h are shown; is_stale marks rows older than 2h"
Muestras verificadas
Además del ejemplo anterior, la sonda llama a este endpoint con estos parámetros y comprueba el esquema en cada ocasión.
| Parámetros | HTTP | Latencia | Resultado |
|---|---|---|---|
| coin=ETH | 200 | 11 ms | Correcto |
| coin=SOL | 200 | 5 ms | Correcto |
| coin=ARKM | 200 | 4 ms | Correcto |
| — | 400 | 1 ms | Correcto devuelve el error esperado |
Comprobado 2026-11-13 03:57:48 UTC
Detalles
- Autenticación
- Ninguna. Endpoint público.
- Límite de solicitudes
- 1200 solicitudes por minuto por IP
- Caché del servidor
- 30s
- Microcaché de borde
- 10s
- Frecuencia de actualización
- cada 5 min (ratio por cuentas de top traders de binance y ratios taker / por posiciones de top traders de okx cada hora; símbolos menos negociados cada 30 min)
- Ventana
- última instantánea (filas de las últimas 24 h; indicador is_stale a partir de 2 h)
- Fuentes de datos
- Ratios largos/cortos consultados por los recolectores internos en los endpoints públicos de estadísticas de 7 exchanges (binance, okx, bybit, bitget, gate, htx, kraken).
- Cobertura de exchanges
- ratio por cuentas: binance, okx, bybit, bitget, gate, kraken; ratio por cuentas de top traders: binance, htx; ratio por posiciones: binance, okx, gate, htx, bitget; ratio de compra/venta taker: binance, okx, bitget, gate; los periodos de muestreo de origen difieren (de 5 min a 1 h); la cobertura de símbolos es una lista móvil de los de mayor volumen (unas 280 monedas en el ratio por cuentas de binance, unas 20-60 monedas en otras plataformas / tipos); la respuesta lista cada endpoint de origen y su periodo de muestreo
- Unidades
- long / short as percentages of 100; ratio = long / short
- Método
- per group (account, top_account, top_position, position_all, taker): simple mean of long% across exchanges; groups are never mixed
- Marcas de tiempo
- Milisegundos de época Unix (UTC), salvo que la descripción del campo indique otra cosa
- Formato de respuesta
- json
- Estabilidad
- Estable
- Disponible desde
- 2026-11-11
Estado en vivo
Disponibilidad, últimos 30 días
100% de 410 comprobaciones superadas
Errores
Las llamadas fallidas tienen la misma estructura en todos los endpoints. La lista completa está en la página de errores. Errores y límites de solicitudes →
| Código | HTTP | Significado | Qué hacer |
|---|---|---|---|
| INVALID_PARAM | 400 | Falta un parámetro obligatorio o un valor no se acepta. `param` indica el nombre del parámetro cuando se conoce. | No reintente sin cambios; corrija la solicitud. |
| UNAUTHORIZED | 401 | Se envió la cabecera `CB-API-KEY`, pero la clave es desconocida o está revocada. Los datos públicos no necesitan clave: elimine la cabecera o use una clave válida. | No reintente sin cambios. |
| FORBIDDEN | 403 | La ruta no forma parte de la API pública (interna o solo para cuentas). | No reintente. |
| NOT_FOUND | 404 | Ruta desconocida, o la moneda / el exchange / el fondo solicitado no existe. | No reintente; compruebe la ruta y los identificadores en el catálogo. |
| RATE_LIMITED | 429 | Más solicitudes que el límite por minuto. `Retry-After` indica los segundos de espera. | Espere el tiempo de `Retry-After` y después reintente con espera progresiva. |
| INTERNAL | 500 | Error inesperado del servidor. El mensaje es genérico por diseño; cite `request_id` al informar del error. | Reintente una vez tras unos segundos; si persiste, infórmelo con el ID de solicitud. |
| UPSTREAM_FAILED | 503 | La fuente de datos de este endpoint no respondió a tiempo. No se devuelven cifras desactualizadas ni sustitutas en su lugar. | Reintente con espera progresiva; consulte la página de estado. |
| UNAVAILABLE | 501 / 503 | El conjunto de datos no está listo temporalmente (calentamiento de la caché) o el endpoint aún no tiene una fuente pública lícita. | Reintente más tarde; el catálogo marca los endpoints que no están disponibles por diseño. |
| REQUEST_FAILED | 200 | Algunos endpoints antiguos responden HTTP 200 con `success: false`. Compruebe siempre `success`, no solo el estado HTTP. | Depende del mensaje; trátelo como una solicitud fallida. |
Pruébelo
/api/sd/lsDisponiblestring — Coin symbol; 400 when missing. Alias: `base`.
https://www.coinboss.com/api/sd/ls?coin=BTCMás en esta categoría
- Ratio largos/cortos de una moneda /api/sd/ls
- Tarjetas de largos/cortos de la página de moneda /api/currency/ls-cards
- Historial del ratio largos/cortos de una moneda en un exchange /api/exchanges/ls-history
- Tarjetas de largos/cortos por exchange de una moneda /api/ls/cards
- Series del gráfico del ratio largos/cortos de una moneda /api/ls/chart
- Ratios largos/cortos de una moneda por exchange y variante /api/ls/coin
- Historial del ratio largos/cortos de una moneda en un exchange /api/ls/history
- Matriz del ratio largos/cortos /api/ls/matrix
- Lista de ratios largos/cortos v2 /api/market/long-short-v2
- Lista de ratios largos/cortos /api/market/long-short