Errores, fallos, preguntas - página 1777

 
¿Pasará el producto las pruebas automáticas si (el examinador) tiene un bucle en el código?
 
Alexandr Bryzgalov:
¿Pasará el producto las pruebas automáticas si (el examinador) tiene un bucle en el código?

Por supuesto que no. En primer lugar, los ciclos no son necesarios ahora, hay un temporizador. En segundo lugar, siempre se puede descifrar para el probador.

 
Комбинатор:

Por supuesto que no. En primer lugar, no hay necesidad de ciclos ahora, hay un temporizador. En segundo lugar, siempre se puede descifrar para el probador.

El temporizador no se dispara más que una vez cada 1 segundo si no está en marcha.

es raro.

¿O ha habido un cambio?

 
Alexandr Bryzgalov:

el temporizador no se dispara más que una vez cada 1 segundo si se ha salido de la salida.

es raro.

¿o ha habido una innovación?

desde hace mucho tiempo hay un micro temporizador que se activa una vez cada 1ms

Pero ahora el temporizador en mt4 tiene problemas, deja de funcionar por alguna razón. Nadie sabe la respuesta"POR QUÉ"

 
Vladislav Andruschenko:

desde hace mucho tiempo existe un micro temporizador que se dispara una vez cada 1ms

Pero ahora el temporizador en mt4 tiene problemas, deja de funcionar por alguna razón. Nadie sabe la respuesta"por qué".

No funciona en general.
 
Alexandr Bryzgalov:
en general no funciona.

ahora básicamente cualquier temporizador - en algunos terminales no funciona, incluso la administración no sabe por qué.

Pero hay algunas especulaciones: el internet se cuelga y el propio temporizador se "cuelga".

 
Vladislav Andruschenko:

Pero ahora el tartamudeo en mt4 tiene problemas, deja de funcionar por alguna razón. Nadie sabe la respuesta"por qué".

Creo que reiniciar la terminal o volver a compilar podría ayudar, pero el fallo está rompiendo.
 
Комбинатор:
Parece que reiniciar el terminal o recompilar puede ayudar.

Sí, pero eso no se puede explicar a los clientes, ¿verdad?

Imagina que el experto está trabajando, funciona, te vas a dormir, te despiertas y el experto no funciona, ¿por qué?

 
Vladislav Andruschenko:

Sí, pero no puedes explicárselo a los clientes, ¿verdad?
Esa es la cuestión.
 
Alexey Kozitsyn:

Gracias, compruebe el número de la primera barra visible en el gráfico: ChartGetInteger( 0, CHART_FIRST_VISIBLE_BAR );

La cuestión es que si se desactiva el desplazamiento del gráfico y se controla la última barra visible, en el momento de una nueva vela su número cambia por alguna razón, ¡aunque el gráfico no se mueve! El TF es M1 para poder comprobarlo más rápidamente. Huyendo del indicador:

#property indicator_chart_window
#property indicator_plots 0
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
   {
    //--- Подписываемся на событие движения мыши
         ChartSetInteger( 0, CHART_EVENT_MOUSE_MOVE, true );
         //---
    return(INIT_SUCCEEDED);
   }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
   {

    return(rates_total);
   }
//+------------------------------------------------------------------+
//| Обработка события графика                                        |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long& lparam,const double& dparam,const string& sparam)
   {
    switch( id )        
        {
         case CHARTEVENT_MOUSE_MOVE:
                 Print( __FUNCTION__," "+TimeToString( TimeCurrent(), TIME_DATE|TIME_SECONDS )+": sparam = "+sparam+", ",(int)ChartGetInteger( 0, CHART_FIRST_VISIBLE_BAR ));
                 break;
        }
   }


¡Buenas tardes!

Este es un comportamiento estándar. La cuenta atrás comienza a partir de la barra actual que está en construcción. Así, cuando aparece una nueva barra, si no hay autodesplazamiento, su número se incrementa en uno.
Razón de la queja: