Documentation

Ticks

DonnéesPas d'authentification

Diffusez en temps réel les ticks pour un ou plusieurs symboles. Inchangé dans la nouvelle API.

Comparaison rapide

AspectLegacy APINew APIAction
Point de terminaisonticksticksAucun
Authentification requiseNonNonAucun
Modèle de symbole^\w{2,30}$^\w{2,30}$Aucun
Valeurs d'abonnement1 uniquement1 uniquementAucun
Objet tickFacultatifFacultatifAucun
pip_sizeObligatoireObligatoireAucun

Champs de requête et de réponse

Requête

  • ticks (requis) : un symbole correspondant à ^\w{2,30}$, ou un tableau de symboles.
  • subscribe (optionnel) : accepte uniquement 1. Envoie une mise à jour à chaque nouveau tick.
  • passthrough (optionnel) : données renvoyées dans echo_req.
  • req_id (optionnel) : un ID qui associe la réponse à votre requête.

Réponse

  • echo_req et msg_type (tick) : toujours retournés.
  • tick : seul pip_size est garanti. ask, bid, epoch, id, quote et symbol sont optionnels.
  • subscription.id : renvoyé lorsque vous vous abonnez. Transmettez-le à forget pour arrêter le flux.
  • req_id : retourné lorsque vous en envoyez un.

Structure de la demande

Legacy APIexemple de demande
{
  "ticks": "frxEURUSD",
  "subscribe": 1
}
New APIexemple de demande
{
  "ticks": "frxEURUSD",
  "subscribe": 1
}

Structure de réponse

Legacy APIexemple de réponse
{
  "echo_req": {
    "ticks": "frxEURUSD",
    "subscribe": 1
  },
  "msg_type": "tick",
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  },
  "tick": {
    "ask": 1.08501,
    "bid": 1.08499,
    "epoch": 1760000000,
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "pip_size": 5,
    "quote": 1.085,
    "symbol": "frxEURUSD"
  }
}
New APIexemple de réponse
{
  "echo_req": {
    "ticks": "frxEURUSD",
    "subscribe": 1
  },
  "msg_type": "tick",
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  },
  "tick": {
    "ask": 1.08501,
    "bid": 1.08499,
    "epoch": 1760000000,
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3",
    "pip_size": 5,
    "quote": 1.085,
    "symbol": "frxEURUSD"
  }
}

Exemples de code

let streamId;

function subscribeTicks(symbol) {
  ws.send(JSON.stringify({ ticks: symbol, subscribe: 1 }));
}

ws.onmessage = (event) => {
  const response = JSON.parse(event.data);
  if (response.error) {
    console.error(response.error.message);
    return;
  }
  if (response.msg_type !== 'tick' || !response.tick) return;

  const { tick, subscription } = response;
  if (subscription) streamId = subscription.id; // pass to forget to stop the stream

  // pip_size is the only tick field the schema guarantees
  if (tick.symbol !== undefined && tick.quote !== undefined) {
    console.log(tick.symbol, tick.quote.toFixed(tick.pip_size));
  }
};
Click to open live chat support. Get instant help from our support team.