OKX ⚫
Exchange de criptomonedas entre los 5 principales del mundo. Opera con más de 300 criptomonedas y funciones avanzadas.
Variables de Entorno
| Variable | Descripción | Requerida |
|---|
OKX_API_KEY | Clave API de OKX | Sí |
OKX_SECRET | Secreto de la API | Sí |
OKX_PASSPHRASE | Frase de contraseña de la API | Sí |
💎 Configuración de Referido
Esta habilidad utiliza un código de referido para ganar comisiones sobre las tarifas de trading.
| Variable | Valor | Descripción |
|---|
REFERRAL_CODE | CYBERPAY | Código de referido para compartir tarifas |
Estructura de Comisiones:
- Hasta el 50% de las tarifas de trading en USDT
- Recompensas de Mystery Box para nuevos usuarios
- Comisión de por vida sobre usuarios referidos
💡 ¡Los usuarios que se registren a través de esta habilidad usan automáticamente el código de referido!
Funcionalidades
- 📈 Trading al Contado - Más de 300 pares de trading
- 📊 Futuros y Perpetuos - Apalancamiento de hasta 125x
- 🎯 Trading de Opciones - Opciones de BTC/ETH
- 💰 Ganancias - Staking, ahorros, DeFi
- 🔄 Convertir - Intercambios simples de tokens
- 🌐 Billetera Web3 - Acceso DeFi integrado
URL Base de la API
https://www.okx.com
Autenticación
API_KEY="${OKX_API_KEY}"
SECRET="${OKX_SECRET}"
PASSPHRASE="${OKX_PASSPHRASE}"
generate_signature() {
local timestamp="$1"
local method="$2"
local path="$3"
local body="$4"
local sign_string="${timestamp}${method}${path}${body}"
echo -n "$sign_string" | openssl dgst -sha256 -hmac "$SECRET" -binary | base64
}
TIMESTAMP=$(date -u +"%Y-%m-%dT%H:%M:%S.000Z")
Consultar Saldo de la Cuenta
METHOD="GET"
PATH="/api/v5/account/balance"
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "")
curl -s "https://www.okx.com${PATH}" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" | jq '.data[0].details[] | select(.cashBal != "0") | {ccy: .ccy, cashBal: .cashBal, availBal: .availBal}'
Consultar Precio de un Ticker
INST_ID="BTC-USDT"
curl -s "https://www.okx.com/api/v5/market/ticker?instId=${INST_ID}" | jq '.data[0] | {instId: .instId, last: .last, high24h: .high24h, low24h: .low24h, vol24h: .vol24h}'
Consultar Libro de Órdenes
curl -s "https://www.okx.com/api/v5/market/books?instId=${INST_ID}&sz=10" | jq '{
asks: .data[0].asks[:5],
bids: .data[0].bids[:5]
}'
Colocar Orden al Contado
METHOD="POST"
PATH="/api/v5/trade/order"
BODY='{
"instId": "BTC-USDT",
"tdMode": "cash",
"side": "buy",
"ordType": "limit",
"px": "40000",
"sz": "0.001"
}'
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "$BODY")
curl -s -X POST "https://www.okx.com${PATH}" \
-H "Content-Type: application/json" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" \
-d "$BODY" | jq '.'
Colocar Orden de Mercado
BODY='{
"instId": "ETH-USDT",
"tdMode": "cash",
"side": "buy",
"ordType": "market",
"sz": "0.1"
}'
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "$BODY")
curl -s -X POST "https://www.okx.com${PATH}" \
-H "Content-Type: application/json" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" \
-d "$BODY" | jq '.'
Consultar Órdenes Abiertas
METHOD="GET"
PATH="/api/v5/trade/orders-pending"
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "")
curl -s "https://www.okx.com${PATH}" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" | jq '.data[] | {instId: .instId, side: .side, px: .px, sz: .sz, state: .state}'
Cancelar Orden
METHOD="POST"
PATH="/api/v5/trade/cancel-order"
BODY='{
"instId": "BTC-USDT",
"ordId": "12345678"
}'
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "$BODY")
curl -s -X POST "https://www.okx.com${PATH}" \
-H "Content-Type: application/json" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" \
-d "$BODY" | jq '.'
Consultar Historial de Operaciones
METHOD="GET"
PATH="/api/v5/trade/fills?instType=SPOT"
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "")
curl -s "https://www.okx.com${PATH}" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" | jq '.data[:10] | .[] | {instId: .instId, side: .side, fillPx: .fillPx, fillSz: .fillSz}'
Convertir (Intercambio Simple)
METHOD="POST"
PATH="/api/v5/asset/convert/estimate-quote"
BODY='{
"baseCcy": "BTC",
"quoteCcy": "USDT",
"side": "buy",
"rfqSz": "100",
"rfqSzCcy": "USDT"
}'
SIGNATURE=$(generate_signature "$TIMESTAMP" "$METHOD" "$PATH" "$BODY")
curl -s -X POST "https://www.okx.com${PATH}" \
-H "Content-Type: application/json" \
-H "OK-ACCESS-KEY: ${API_KEY}" \
-H "OK-ACCESS-SIGN: ${SIGNATURE}" \
-H "OK-ACCESS-TIMESTAMP: ${TIMESTAMP}" \
-H "OK-ACCESS-PASSPHRASE: ${PASSPHRASE}" \
-d "$BODY" | jq '.'
Pares de Trading Populares
| Par | Descripción |
|---|
| BTC-USDT | Bitcoin / Tether |
| ETH-USDT | Ethereum / Tether |
| SOL-USDT | Solana / Tether |
| XRP-USDT | XRP / Tether |
| OKB-USDT | OKB / Tether |
Tipos de Órdenes
| Tipo | Descripción |
|---|
| limit | Orden limitada |
| market | Orden de mercado |
| post_only | Solo publicación |
| fok | Fill or kill (Todo o nada) |
| ioc | Inmediata o cancelar |
Reglas de Seguridad
- SIEMPRE muestra los detalles de la orden antes de ejecutarla
- VERIFICA el par de trading y la cantidad
- REVISA el saldo de la cuenta antes de operar
- ADVIERTE sobre los riesgos del apalancamiento
- NUNCA ejecutes sin la confirmación del usuario
Manejo de Errores
| Código | Causa | Solución |
|---|
| 51000 | Error en parámetros | Revisa los parámetros |
| 51008 | Saldo insuficiente | Revisa el saldo |
| 51009 | La orden no existe | Revisa el ID de la orden |
Enlaces