CopyTicksRange

Récupère les ticks d'une structure MqlTick et les copie dans une matrice ou dans un vecteur dans la plage de dates spécifiée. Les éléments sont comptés du passé au présent, ce qui signifie que le tick d'index 0 est le plus ancien. Pour analyser un tick, vérifiez le champ flags qui montre exactement ce qui a changé dans le tick.

bool  matrix::CopyTicksRange(
   string           symbol,                // nom du symbole
   ulong            flags,                 // drapeau indiquant le type de ticks à recevoir
   ulong            from_msc,              // heure à partir de laquelle les ticks sont demandés
   ulong            to_msc                 // heure jusqu'à laquelle les ticks sont demandés
   );

Méthode retournant un vecteur

bool  vector::CopyTicksRange(
   string           symbol,                // nom du symbole
   ulong            flags,                 // drapeau indiquant le type de ticks à recevoir
   ulong            from_msc,              // heure à partir de laquelle les ticks sont demandés
   ulong            to_msc                 // heure jusqu'à laquelle les ticks sont demandés
   );

Paramètres

symbol

[in]  Symbole.

flags

[in]  Une combinaison de drapeaux de l'énumération ENUM_COPY_TICKS indiquant le contenu des données demandées. Lors de la copie vers un vecteur, vous ne pouvez spécifier qu'une seule valeur de l'énumération ENUM_COPY_TICKS, sinon une erreur sera retournée.

from_msc

[in]  Heure à partir de laquelle les ticks sont demandés. L'heure est spécifiée en millisecondes depuis le 01/01/1970. Si le paramètre 'from_msc' n'est pas spécifié, les ticks depuis le début de l'historique sont renvoyés. Les ticks avec une heure >= from_msc seront retournés.

to_msc

[in]  Heure jusqu'à laquelle les ticks sont demandés. L'heure est spécifiée en millisecondes depuis le 01/01/1970. Les ticks avec une heure <= to_msc sont retournés. Si le paramètre to_msc n'est pas spécifié, tous les ticks jusqu'à la fin de l'historique sont renvoyés.

Valeur de Retour

Retourne true en cas de succès, ou false si une erreur s'est produite. GetLastError() peut retourner les erreurs suivantes :

  • ERR_HISTORY_TIMEOUT – le délai d'attente pour la synchronisation des ticks a expiré, la fonction a renvoyé tout ce qu'elle avait.
  • ERR_HISTORY_SMALL_BUFFER – le tampon statique est trop petit. Seule la quantité que le tableau peut stocker a été renvoyée.
  • ERR_NOT_ENOUGH_MEMORY – mémoire insuffisante pour recevoir les données historiques de la plage spécifiée dans un tableau de ticks dynamique. Il n'avait pas asez de mémoire pouvant être allouée pour le tableau de ticks.

 

Analysez les indicateurs des ticks pour savoir quelles données ont changé :

  • TICK_FLAG_BID – le prix de l'Offre (Bid) du tick a changé
  • TICK_FLAG_ASK – le prix de la Demande (Ask) du tick a changé
  • TICK_FLAG_LAST – le prix de la dernière transaction du tick a changé
  • TICK_FLAG_VOLUME – le volume du tick a changé
  • TICK_FLAG_BUY – le tick est le résultat d'une opération d'achat
  • TICK_FLAG_SELL – le tick est le résultat d'une opération de vente

Note

La méthode CopyTicksRange() est utilisée pour demander les ticks d'un intervalle de temps spécifique. Par exemple, les ticks d'un jours spécifique de l'historique. CopyTicks() permet de spécifier uniquement la date de début, par exemple, pour recevoir tous les ticks depuis le début du mois jusqu'à maintenant.

Voir aussi

Accès aux séries chronologiques et aux indicateurs, CopyTicksRange