Deriv API
Documentación

Vender

TradingRequiere autenticación

Venda un contrato activo antes del vencimiento para obtener ganancias o minimizar pérdidas. El parámetro loginid eliminado, validación de precio agregada, y campos de respuesta ahora garantizados.

Comparación rápida

AspectoLegacy APINew APIAcción
EndpointsellsellNinguno
Requiere autenticaciónNinguno
Parámetro loginidOpcionalEliminadoEliminar de las solicitudes
Validación de precioSin mínimomínimo: 0Asegurar no negativo
Objeto sell de RespuestaOpcionalObligatorioEliminar verificaciones nulas

Cambios importantes

1. Parámetro loginid eliminado

El parámetro loginid que se usaba para escenarios de múltiples cuentas ha sido eliminado en v4. El contexto de la cuenta ahora debe establecerse a través del flujo de autorización.

2. Validación del parámetro price agregada

El parámetro price ahora tiene una restricción de validación mínimo: 0. Los valores negativos serán rechazados.

Cambio requerido: Ensure you always pass a non-negative value for price. Use 0 for selling at market.

3. objeto sell ahora requerido en la respuesta

En legacy, el objeto sell era opcional en la respuesta. En v4, siempre está presente para operaciones de venta exitosas.

4. Todos los campos del objeto sell ahora obligatorios

Los 5 campos dentro del objeto sell ahora están garantizados de estar presentes: balance_after, contract_id, reference_id, sold_for, y transaction_id.

Estructura de solicitud

Legacy APIejemplo de solicitud
{
  "sell": 11542203588,
  "price": 500,
  "loginid": "CR123456"
}
New APIejemplo de solicitud
{
  "sell": 11542203588,
  "price": 500
}

Estructura de respuesta

Legacy APIejemplo de respuesta
{
  "sell": {
    "balance_after": 10500.50,
    "contract_id": 11542203588,
    "sold_for": 750.25
  },
  "msg_type": "sell"
}
New APIejemplo de respuesta
{
  "sell": {
    "balance_after": 10500.50,
    "contract_id": 11542203588,
    "reference_id": 11542203587,
    "sold_for": 750.25,
    "transaction_id": 98765432
  },
  "msg_type": "sell"
}

Ejemplos de código

async function sellContract(contractId, minimumPrice, loginId) {
  const request = {
    sell: contractId,
    price: minimumPrice,
    loginid: loginId
  };

  ws.send(JSON.stringify(request));

  ws.onmessage = (msg) => {
    const response = JSON.parse(msg.data);
    if (response.msg_type === "sell") {
      if (response.sell) {
        const soldFor = response.sell.sold_for ?? 0;
        console.log("Sold for: " + soldFor);
      }
    }
  };
}
Click to open live chat support. Get instant help from our support team.