Probando 'CopyTicks'

 

Empecemos por uno sencillo: el volumen. A continuación se muestra una imagen del fallo detectado. De vez en cuando aparecen "dobles" en los volúmenes.


Win7-64

MT5-1085

Broker "Otkritie", servidor real.

El ciclo del indicador principal tiene el siguiente aspecto:

//---------------------------------------------------------------------
//      Внешние задаваемые параметры:
//---------------------------------------------------------------------
input int                               TickCount = 2000;
input ENUM_TICK_TYPE                    TickType = ENUM_COPY_TICKS_ALL;
//---------------------------------------------------------------------
//---------------------------------------------------------------------
MqlTick         ticks_Arr[ ];
int             copied;
//---------------------------------------------------------------------
int
OnCalculate( const int _rates_total, const int _prev_calculated, const int _begin, const double& _price[ ] )
{
        if( _prev_calculated <= 0 )
        {
                ArrayInitialize( VolumeBuffer, 0 );
        }

        copied = CopyTicks( _Symbol, ticks_Arr, TickType, 0, TickCount );
        if( copied > 0 )
        {
                for( int i = copied - 1; i >= 0; i-- )
                {
                        MqlTick tick = ticks_Arr[ i ];

                        VolumeBuffer[ _rates_total - copied + i ] = ( double )tick.volume;
//                      Print( tick.volume );
                }
        }

        return( _rates_total );
}

No he encontrado ninguna regularidad en la aparición de "gemelos". Espero que los desarrolladores lo arreglen rápidamente.

Se adjunta indicador con volumen de ticks (compilado en MT5-1100).

Archivos adjuntos:
 
Dima_S:

Empecemos por uno sencillo: el volumen. A continuación se muestra una imagen del fallo detectado. De vez en cuando aparecen "dobles" en los volúmenes.


Win7-64

MT5-1085

Broker "Otkritie", servidor real.

El ciclo del indicador principal tiene el siguiente aspecto:

No he encontrado ninguna regularidad en la aparición de "gemelos". Espero que los desarrolladores lo arreglen rápidamente.

Se adjunta el indicador con el volumen de ticks ( compilado en MT5-1100).

Me he puesto en contacto con el servicio de atención al cliente sobre CopyTicks() (había un error en esta función).

Aquí está la respuesta de SD:

Esta funcionalidad está todavía en desarrollo. Muchos componentes de la plataforma se están modificando para ofrecer un acceso completo al flujo de garrapatas. Tendremos que esperar algún tiempo más.

 
Mikalas:

He comprobado con servicedesk lo de CopyTicks() (había un error con esta función)

Esta es la respuesta de SD:

Esta funcionalidad está todavía en desarrollo. Muchos componentes de la plataforma se están modificando para proporcionar un acceso completo al flujo de garrapatas. Tendremos que esperar algún tiempo más.

Tienes suerte, todavía no he recibido respuesta de servicedesk sobre esta función...
 
Mikalas:

He comprobado con servicedesk lo de CopyTicks() (había un error con esta función)

Esta es la respuesta de SD:

Esta funcionalidad está todavía en desarrollo. Muchos componentes de la plataforma se están modificando para proporcionar un acceso completo al flujo de garrapatas. Tendremos que esperar algún tiempo más.

Ya veo. Así que por ahora es un producto a medio terminar. Esperaremos un poco más))

Otra cosa que no entiendo es por qué han roto algo que ya funcionaba: el modo avanzado de la secadora.

 

Mientras los desarrolladores se rascan la cabeza, voy a sugerir una variante de la estructura MqlTick.

struct MqlTick
{
  datetime   time;           // Время последнего обновления цен
  uint       time_count;     // микросекунды ( крайне желательно брать с биржи )
  double     bid;            // Текущая цена Bid
  double     ask;            // Текущая цена Ask
  double     last;           // Текущая цена последней сделки (Last)
  ulong      volume;         // Объем для текущей цены Last
  ulong      interest;       // Текущая величина ОИ, после исполнения последней сделки Last
  ulong      buy_orders;     // Текущее число ордеров покупателей, после исполнения последней сделки Last
  ulong      sell_orders;    // Текущее число ордеров продавцов, после исполнения последней сделки Last
  ulong      buy_orders_vol; // Текущий объем ордеров покупателей, после исполнения последней сделки Last
  ulong      sell_orders_vol;// Текущий объем ордеров продавцов, после исполнения последней сделки Last
  char       action;         // Действие ( 'B' - покупка, 'S' - продажа )
 };

Todo lo demás en la función se puede dejar como está.

 
Dima_S:

Mientras los desarrolladores se rascan la cabeza, voy a sugerir una variante de la estructura MqlTick.

Todo lo demás en la función se puede dejar como está.

¡Genial! ¡! De acuerdo.
 
Dima_S:

Mientras los desarrolladores se rascan la cabeza, voy a sugerir una variante de la estructura MqlTick.

Todo lo demás en la función se puede dejar como está.

Yo añadiría la dirección de la transacción. Quién fue el iniciador (vendedor o comprador)
 
Prival-2:
Yo añadiría la dirección de la transacción. Quién fue el iniciador (vendedor o comprador)
Sí, omitido - añadido.
 
Y preferiblemente no la última vez que se actualizaron los precios. Más exacto sería probablemente el tiempo de cambio de datos + añadir lo que el volumen está en el bidé y lo que está en el vidrio aska (probablemente mejor todo a la vez).
 
Sí. Y la posibilidad de obtener el historial más profundo acumulado por el servidor para todos estos datos a través dehttps://www.mql5.com/ru/docs/series/copyticks y probar estrategias utilizándolas en el probador. Entonces los scalpers tendrán un Paraíso en MT5) Y si acumulamos datos de cadaBookEvent- entonces saldrá el enorme tamaño del archivo que no cabrá en el servidor)
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
  • www.mql5.com
Доступ к таймсериям и индикаторам / CopyTicks - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Por qué guardar toda la historia del rey de los guisantes en el servidor. Puedes limitar la profundidad a una cantidad razonable, por ejemplo una semana. Y se puede disponer de un historial más profundo si se solicita (desde el servidor de archivos). Quien quiera la historia de la copa del año 2010, no hay problema, descárgala y luego deja que la prueben hasta que se pongan completamente azules.

Al mismo tiempo, ponerla (la historia) a disposición de los demás a través de la tecnología torrent. Hay muchas soluciones. Esta es sólo una de las opciones.

Razón de la queja: