Documentation

Ticks history

DonnéesPas d'authentification

Obtenez les données de tick historiques d’un symbole. Seule la valeur par défaut du paramètre count a changé.

Comparaison rapide

AspectLegacy APINew APIAction
Point de terminaisonticks_historyticks_historyAucun
Authentification requiseNonNonAucun
Par défaut count50001000Définissez count explicitement

Modifications majeures

1. Valeur par défaut de count modifiée

Le paramètre count est inchangé, mais sa valeur par défaut lorsque vous ne l'envoyez pas est plus basse dans la New API.

  • Legacy : count est défini par défaut sur 5000 ticks par demande.
  • New : count est défini par défaut sur 1000 ticks par demande.

Modification requise : Si vous avez besoin de plus de 1000 ticks et n'envoyez pas count, envoyez-le explicitement.

Structure de la demande

Legacy APIexemple de demande
{
  "ticks_history": "frxEURUSD",
  "end": "latest",
  "start": 1234567890,
  "style": "ticks",
  "count": 100,
  "adjust_start_time": 1,
  "subscribe": 1
}
New APIexemple de demande
{
  "ticks_history": "frxEURUSD",
  "end": "latest",
  "start": 1234567890,
  "style": "ticks",
  "count": 100,
  "adjust_start_time": 1,
  "subscribe": 1
}

Structure de réponse

Legacy APIexemple de réponse
{
  "echo_req": {
    "ticks_history": "frxEURUSD",
    "end": "latest",
    "start": 1234567890,
    "style": "ticks",
    "count": 100,
    "adjust_start_time": 1,
    "subscribe": 1
  },
  "history": {
    "prices": [
      1.085,
      1.0851
    ],
    "times": [
      1234567890,
      1234567891
    ]
  },
  "msg_type": "history",
  "pip_size": 5,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  }
}
New APIexemple de réponse
{
  "echo_req": {
    "ticks_history": "frxEURUSD",
    "end": "latest",
    "start": 1234567890,
    "style": "ticks",
    "count": 100,
    "adjust_start_time": 1,
    "subscribe": 1
  },
  "history": {
    "prices": [
      1.085,
      1.0851
    ],
    "times": [
      1234567890,
      1234567891
    ]
  },
  "msg_type": "history",
  "pip_size": 5,
  "subscription": {
    "id": "c84a793b-8a87-7999-ce10-9b22f7ceead3"
  }
}

Exemples de code

async function getTicksHistory(symbol) {
  const request = {
    ticks_history: symbol,
    end: "latest",
    start: Date.now() / 1000 - 86400,
    style: "ticks",
    count: 100,  // Defaults to 5000 when omitted
    adjust_start_time: 1,
    subscribe: 1
  };

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

  ws.onmessage = (event) => {
    const response = JSON.parse(event.data);

    // echo_req is guaranteed
    console.log('Request:', response.echo_req);

    if (response.msg_type === 'history') {
      // history.prices and history.times are optional
      if (response.history) {
        if (response.history.prices) {
          console.log('Prices:', response.history.prices);
        }
        if (response.history.times) {
          console.log('Times:', response.history.times);
        }
      }
    }

    if (response.msg_type === 'candles') {
      // Each candle property is optional
      response.candles?.forEach(candle => {
        const close = candle.close ?? null;
        const open = candle.open ?? null;
        const high = candle.high ?? null;
        const low = candle.low ?? null;
        console.log({ open, high, low, close });
      });
    }
  };
}
Click to open live chat support. Get instant help from our support team.