Documentation

Historique de mise à jour du contrat

TradingAuthentification requise

Obtenez l’historique des mises à jour d’un contrat, telles que les modifications de son Stop Loss et de son Take profit. Le paramètre loginid est supprimé ; la réponse reste inchangée.

Comparaison rapide

AspectLegacy APINew APIAction
Point de terminaisoncontract_update_historycontract_update_historyAucun
Authentification requiseOuiOuiAucun
loginid paramètreFacultatifSuppriméRetirer des requêtes

Modifications majeures

1. loginid paramètre supprimé

Dans l’API Legacy, loginid sélectionnait le compte dont lire l’historique des contrats lorsque vous aviez autorisé plusieurs comptes. La nouvelle API ne l’accepte pas.

Modification requise : Supprimez loginid de vos requêtes contract_update_history . Votre token sélectionne le compte.

Structure de la demande

Legacy APIexemple de demande
{
  "contract_update_history": 1,
  "contract_id": 123456789,
  "limit": 10,
  "loginid": "CR123456",
  "req_id": 1
}
New APIexemple de demande
{
  "contract_update_history": 1,
  "contract_id": 123456789,
  "limit": 10,
  "req_id": 1
}

Structure de réponse

Legacy APIexemple de réponse
{
  "contract_update_history": [
    {
      "display_name": "Take profit",
      "order_amount": "25.00",
      "order_date": 1760000000,
      "order_type": "take_profit",
      "value": "1256.78"
    },
    {
      "display_name": "Stop loss",
      "order_amount": "-15.00",
      "order_date": 1759990000,
      "order_type": "stop_loss",
      "value": null
    }
  ],
  "echo_req": {
    "contract_update_history": 1,
    "contract_id": 123456789,
    "limit": 10,
    "req_id": 1
  },
  "msg_type": "contract_update_history",
  "req_id": 1
}
New APIexemple de réponse
{
  "contract_update_history": [
    {
      "display_name": "Take profit",
      "order_amount": "25.00",
      "order_date": 1760000000,
      "order_type": "take_profit",
      "value": "1256.78"
    },
    {
      "display_name": "Stop loss",
      "order_amount": "-15.00",
      "order_date": 1759990000,
      "order_type": "stop_loss",
      "value": null
    }
  ],
  "echo_req": {
    "contract_update_history": 1,
    "contract_id": 123456789,
    "limit": 10,
    "req_id": 1
  },
  "msg_type": "contract_update_history",
  "req_id": 1
}

Exemples de code

function getUpdateHistory(contractId, loginId) {
  const request = { contract_update_history: 1, contract_id: contractId, limit: 10, req_id: 1 };
  // Needed only when you authorised several accounts
  if (loginId) request.loginid = loginId;
  ws.send(JSON.stringify(request));

  ws.onmessage = (event) => {
    const response = JSON.parse(event.data);
    if (response.msg_type !== "contract_update_history") return;
    if (response.error) {
      console.error(response.error.message);
      return;
    }
    response.contract_update_history?.forEach((update) => {
      console.log(update.display_name, update.order_amount, update.order_date);
    });
  };
}
Click to open live chat support. Get instant help from our support team.