Deriv API
Documentation

Vendre

TradingAuthentification requise

Vendre un contrat actif avant expiration pour réaliser un profit ou minimiser une perte. Le paramètre loginid supprimé, validation du prix ajoutée, et champs de réponse désormais garantis.

Comparaison rapide

AspectLegacy APINew APIAction
Point de terminaisonsellsellAucun
Authentification requiseOuiOuiAucun
Paramètre loginidFacultatifSuppriméRetirer des requêtes
Validation du prixPas de minimumminimum : 0Garantir une valeur non-négative
Objet sell de réponseFacultatifObligatoireRetirer les vérifications de valeur nulle

Modifications majeures

1. Paramètre loginid supprimé

Le paramètre loginid qui était utilisé pour les scénarios multi-comptes a été supprimé dans la v4. Le contexte de compte doit maintenant être établi via le flux d'autorisation.

2. Validation du paramètre price ajoutée

Le paramètre price a désormais une contrainte de validation minimum: 0. Les valeurs négatives seront rejetées.

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

3. Objet sell désormais requis dans la réponse

Dans l'ancienne version, l'objet sell était optionnel dans la réponse. Dans la v4, il est toujours présent pour les opérations de vente réussies.

4. Tous les champs de l'objet sell désormais requis

Les 5 champs à l'intérieur de l'objet sell sont désormais garantis d'être présents : balance_after, contract_id, reference_id, sold_for, et transaction_id.

Structure de la demande

Legacy APIexemple de demande
{
  "sell": 11542203588,
  "price": 500,
  "loginid": "CR123456"
}
New APIexemple de demande
{
  "sell": 11542203588,
  "price": 500
}

Structure de réponse

Legacy APIexemple de réponse
{
  "sell": {
    "balance_after": 10500.50,
    "contract_id": 11542203588,
    "sold_for": 750.25
  },
  "msg_type": "sell"
}
New APIexemple de réponse
{
  "sell": {
    "balance_after": 10500.50,
    "contract_id": 11542203588,
    "reference_id": 11542203587,
    "sold_for": 750.25,
    "transaction_id": 98765432
  },
  "msg_type": "sell"
}

Exemples de code

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.