Histoire d'un tic-tac - page 11

 
Maxim Dmitrievsky:
Veuillez expliquer à nouveau. Quelle est la profondeur de l'histoire de la tique disponible maintenant ? L'historique est téléchargé depuis le serveur, il n'est donc pas nécessaire de le sauvegarder ?

J'ai joint le script. Faites-le tourner plusieurs fois. L'histoire sera lentement téléchargée depuis le serveur. Et oui, vous n'avez pas besoin de sauvegarder l'histoire maintenant.


Maxim Dmitrievsky:
... Comment le testeur fonctionne-t-il ? Utilise-t-il la simulation de ticks ou l'historique de ticks ?
En 1190, les ticks du testeur ne sont pas encore téléchargés, mais ils le seront très bientôt.
Dossiers :
CopyTicks.mq5  2 kb
 
Karputov Vladimir:

J'ai joint le script. Faites-le tourner plusieurs fois. L'histoire sera lentement téléchargée depuis le serveur. Et oui, vous n'avez pas besoin de sauvegarder l'histoire maintenant.


En 1190 comme les ticks dans le testeur n'est pas encore pompé, mais bientôt, très bientôt sera.
Merci. Ainsi, le testeur se basera sur l'historique des tics disponibles et s'il n'est pas disponible, il modélisera sur le type des plus petites échéances ?
 
Maxim Dmitrievsky:
Merci. Ainsi, le testeur se basera sur l'historique des tics disponibles et s'il n'est pas disponible, il simulera, par exemple, les plus petites périodes de temps ?
Pas encore dans la version 1190. Mais c'est sur le chemin que le testeur va bientôt tester sur de vrais historiques de tiques.
 
Maxim Dmitrievsky:
Merci. Ainsi, le testeur utilisera l'historique des tics disponibles et s'il n'est pas disponible, il le simulera en se basant sur le type de la plus petite période ?

D'après ce que j'ai compris des propos de Renat, l'historique des tics sera entièrement disponible dans la prochaine version. Pour l'instant, l'historique des ticks n'est disponible que dans le terminal (ce qui est d'ailleurs étrange, car au début ils ont annoncé l'historique des ticks pour le testeur, mais pour le terminal ils ont dit qu'il ne sera pas disponible).

Quant à la quantité disponible. J'ai téléchargé plus de 20 millions de ticks. Ce n'est pas la limite.

 

Passez à la version 1191, s'il vous plaît.

Voici les résultats d'un script simple en 1191 :

MqlTick ExTicks[];
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- запросим тики
   int copied=CopyTicks(_Symbol,ExTicks,COPY_TICKS_ALL,0,200000000);
//--- если тики получены, то выведем на график значения Bid и Ask  
   Print("Получено тиков: ",copied," код ошибки: ",GetLastError());
   if(copied>1)
     {
      Print("Тик: ",ExTicks[0].time," bid: ",ExTicks[0].bid," ask: ",ExTicks[0].ask," last: ",ExTicks[0].last," [0]");
      Print("Тик: ",ExTicks[copied-1].time," bid: ",ExTicks[copied-1].bid," ask: ",ExTicks[copied-1].ask," last: ",ExTicks[copied-1].last," [",copied-1,"]");
     }
   Print("Size ",((long)copied*sizeof(MqlTick))>>20, " Mb");
  }

Requête de 200.000.000 ticks :

2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Size 2876 Mb
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Тик: 2015.10.16 23:59:10 bid: 0.0 ask: 0.0 last: 0.0 [75392920]
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Тик: 2011.12.19 00:00:08 bid: 1.30328 ask: 1.30342 last: 0.0 [0]
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Получено тиков: 75392921 код ошибки: 0

La taille des données émises est de presque 3 gb pour 75 millions de ticks. Et la dernière cotation avec bid=0/ask=0/last=0 indique la clôture de la session de trading.


Dans la version du 22 octobre, un champ de temps en millisecondes sera ajouté à MqlTick.

ps : stockez de la RAM

 
Tapochun:

L'historique des ticks n'est maintenant disponible que dans le terminal (ce qui est étrange, d'ailleurs, car ils ont d'abord annoncé l'historique des ticks pour le testeur, mais ont dit qu'il ne serait pas disponible pour le terminal).

Rien d'étrange à cela.

Tout d'abord, nous devons mettre en œuvre tous les protocoles de réseau, les mécanismes de livraison et de synchronisation correcte pour stocker les données de tick dans le terminal lui-même, et seulement ensuite transférer ces données au testeur de stratégie et au MQL5 Cloud Network. Un testeur est un programme distinct avec ses propres flux de données. Le réseau de nuages MQL5 est un système encore plus complexe.

 
Renat Fatkhullin:

Passez à la version 1191, s'il vous plaît.

Voici les résultats d'un script simple :

pour 200.000.000 ticks :

La taille des données distribuées est de presque 3 Go. Et la dernière cotation avec bid=0/ask=0/last=0 montre la clôture de la session de négociation de la pile de prix.


Le champ temps en millisecondes sera ajouté à MqlTick dans la version du 22 octobre.

Je comprends bien que maintenant et en mode ALL les ticks alternent, c'est-à-dire #1 - bid != 0, ask != 0, flipper = 0, #2 - bid = 0, ask = 0 et flipper != 0 etc. Et en mode INFO, chaque tick a un bid et un ask != 0 ?
 
Renat Fatkhullin:

Il n'y a rien d'étrange à cela.

Vous devez d'abord mettre en œuvre tous les protocoles de réseau, les mécanismes de livraison et de synchronisation correcte et le stockage des données de coche dans le terminal lui-même et seulement ensuite transférer ces données au testeur de stratégie et au réseau cloud MQL5. Un testeur est un programme distinct avec ses propres flux de données. Le réseau de nuages MQL5 est un système encore plus complexe.

Merci pour la clarification, je me souviens juste d'une conversation (j'y ai participé) dans laquelle vous avez dit qu'il n'y aurait qu'une histoire de tique dans le testeur. Mais, c'est indéniablement mieux !

Pour ne pas être sans fondement :

Veuillez lire attentivement l'ensemble de la branche.

Personne n'a jamais mentionné les données tick dans les graphiques et il n'est pas prévu de les mettre en œuvre. Il n'y a que dans le testeur qu'il est prévu de générer automatiquement un flux de tics s'il est présent sur le serveur.


 
Tapochun:
Je comprends bien que maintenant et dans le mode ALL les ticks alternent, c'est-à-dire #1 - bid != 0, asc != 0, flipper = 0, #2 - bid = 0, asc = 0 et flipper != 0, etc. Et en mode INFO, chaque tick a un bid et un ask != 0 ?
Il n'y a pas de règles d'alternance ou de remplissage - les tics arrivent de façon chaotique.
 
Ajout d'un script dans le premier message. Celui qui n'a plus de RAM n'est pas à blâmer :) .
Raison: