Historia de la garrapata - página 2

 
Oleg Tsarkov:
No puede esperar que los corredores le proporcionen un historial profundo y regular. Han aprendido a convertir los minutos en horas en un cinco y si te quejas de esto, dicen que no pueden permitirse cargar el servidor con gigabytes de datos históricos. ¿Qué tipo de garrapatas hay...
Hasta que no haya soporte para el historial personalizado no tiene sentido hablar de ticks y citas en general. Por cierto, también se ha anunciado la posibilidad de descargar el propio historial en el futuro.
 
Renat Fatkhullin:

La novedad de los ticks es que están totalmente incorporados a los protocolos comunes de entrega de datos a los terminales de los clientes. Es decir, acceso completo y sincronización del historial de ticks profundos. A continuación, utilizaremos este historial de ticks en el comprobador de estrategias.

La lista de cambios y mejoras es larga, la publicaremos pronto. El lanzamiento será el próximo viernes.

De la referencia:

CopyTicks

La función obtiene el ticks_array de los ticks, acumulados por el terminal cliente durante la sesión de trabajo actual.

Entonces, ¿la función CopyTicks() ahora puede devolver los ticks de las sesiones de trabajo anteriores?

 

El historial de ticks en los servidores de MT5 se acumula siempre desde el principio y no se desactiva.

También hemos añadido potentes funciones para importar y sincronizar los datos del historial de ticks en los servidores. Por supuesto, tendremos que trabajar para que los corredores hagan su parte del trabajo con calidad. Sobre todo porque esta labor se ve muy facilitada por la funcionalidad existente.

 
Tapochun:

De la ayuda:

¿Así que la función CopyTicks() puede ahora devolver los ticks de las sesiones de trabajo anteriores?

Sí, por supuesto.
 
Renat Fatkhullin:
Sí, por supuesto.
Eso es muy interesante... Vamos a probarlo...
 
Tapochun:

De la ayuda:

¿Así que la función CopyTicks() puede ahora devolver los ticks de las sesiones de trabajo anteriores?

También puedes pedir 200.000 ticks.

//+------------------------------------------------------------------+
//|                                                    CopyTicks.mq5 |
//|                        Copyright 2014, MetaQuotes Software Corp. |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, MetaQuotes Software Corp."
#property link      "http://www.mql5.com"
#property version   "1.00"
//--- input parameters
input int      ticks=200000;  // количество запрашиваемых тиков
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//--- массив для приема тиков
   MqlTick tick_array[];
//--- запросим тики
   int copied=CopyTicks(_Symbol,tick_array,COPY_TICKS_ALL,0,ticks);
//--- если тики получены, то выведем на график значения Bid и Ask  
   if(copied>0)
     {
      string comment="#  Time       Bid        Ask        copied\r\n";
      //--- сформируем содержимое комментария      
      for(int i=0;i<24;i++)
        {
         MqlTick tick=tick_array[i];
         string tick_string=StringFormat("%d: %s  %G  %G  %d:",
                                         i,
                                         TimeToString(tick.time,TIME_DATE|TIME_MINUTES|TIME_SECONDS),
                                         tick.bid,
                                         tick.ask,copied);
         comment=comment+tick_string+"\r\n";
        }
      //--- выводим комментарий на график        
      Comment(comment);
     }
   else // сообщим об ошибке при получении тиков
     {
      Comment("Не удалось загрузить тики. GetLastError()=",GetLastError());
     }
  }
//+------------------------------------------------------------------+
 
Renat Fatkhullin:

... Por supuesto, tendremos que trabajar para que los corredores hagan bien su parte del trabajo. Sobre todo porque esta labor se ve muy facilitada por la funcionalidad existente.

A menos que los obligues a hacerlo. A los corredores no les interesa el historial de calidad, porque la mayoría de los clicks tampoco lo necesitan. Incluso si haces un botón de "obtener un historial de calidad", seguirán sin hacer clic en él.
 
Sugerencia a los desarrolladores: introducir un formato de tiempo más preciso en la estructura MqlTick, de manera que cada tick tenga un número de milisegundos.
 
Karputov Vladimir:

¡Puedes pedir 200.000 ticks!

Podrías, pero es mejor no hacerlo en cada tic:).
 
Karputov Vladimir:

¡Puedes pedir 200.000 ticks!

¿Los datos llegan realmente?