Errores, fallos, preguntas - página 2240

 
A100:
Además, usted no es un usuario corriente, sino que sus obras son utilizadas por muchísimas personas.

Yo lo diría así:

Al leer un archivo, este error puede producirse 1 vez de cada 100 lecturas (leyendo un archivo, por ejemplo, a 10 veces por segundo)

Además, dicho error se produce, luego desaparece y el Asesor Experto sigue funcionando.

 
Vladislav Andruschenko:

Yo lo diría así:

Al leer un archivo, este error puede producirse 1 vez de cada 100 lecturas (leyendo un archivo, por ejemplo, a 10 veces por segundo)

Y este error ocurre, luego desaparece y el Asesor Experto sigue funcionando.

En este sentido, hay una propuesta sencilla y honesta a los desarrolladores: tomar un ordenador en esa configuración(*), que se especifica como los requisitos mínimos del sistema para MetaTrader, y utilizarlo para las pruebas (incluyendo ServiceDesk)

(*) En comparación con esta configuración mi tableta es un meteoro y no hay nada cargado excepto MetaTrader

 
A100:

En este sentido hay una propuesta simple y honesta a los desarrolladores: tomar un ordenador en esa configuración(*), que se especifica como los requisitos mínimos para MetaTrader y realizar pruebas en él (incluyendo en ServiceDesk)

(*) mi tableta es un meteorito comparada con esta configuración


tal vez llega a los frenos (incluso mi no débil ya es 90% cargado) y luego se produce este error? como usted mostró en la explicación anterior?

Gracias por la recomendación, intentaré averiguarlo.

 
A100:

Así que en la solicitud #1530548 ServiceDesk no puede reproducir el error https://www.mql5.com/ru/forum/1111/page1628#comment_2702870 aunque tengo una reproducción constante incluso ahora (en la build 1881). Tras pensarlo un poco, me di cuenta de por qué. La respuesta es: porque tengo un ordenador lento (tableta)

Una situación similar se dio en la solicitud #1952509 en este problema https://www.mql5.com/ru/forum/1111/page2124#comment_6518537

ServiceDesk también informó al principio que no podía reproducir el error. Me costó mucho esfuerzo convencerme de que había un error después de todo... al final:

Equipo de apoyo 2018.02.10 22:35
Parece haber reproducido tu problema el viernes en una máquina débil con 39 gráficos.
Estaremos atentos. Pedirá datos adicionales si es necesario. Gracias.

Esto plantea la siguiente pregunta: ¿es necesario preocuparse por estos errores? O simplemente dejar que vivan su vida en paz ... tal vez no vuelvan a aparecer - es suficiente con tener un ordenador rápido, ¿no?

Estas preguntas surgen en el contexto de que una docena de otros gráficos con varios EAs/indicadores pueden convertir un ordenador rápido en uno lento (y un comerciante promedio utiliza exactamente una gran cantidad de EAs - por ejemplo https://www.mql5.com/ru/forum/267154/page5#comment_8164924 - 82 EAs se están ejecutando)... O incluso un ordenador lento puede volverse lento durante un corto periodo de tiempo debido a otras circunstancias (antivirus... otros programas... o el propio sistema ha asumido temporalmente casi todos los recursos).

Y entonces ocurrirá exactamente ese inexplicable fallo de 1 de cada 100 (y por las leyes de la naturaleza ocurre naturalmente en el momento más inoportuno).

¿Cuál es el problema con la transferencia de la estrategia de trabajo fuera de MT5 dejando MT5 como el conector? creo que para pasar el tiempo en tales bailes está bien, si la estrategia es buena, y no como de costumbre ))

 
Konstantin:

¿Cuál es el problema de mover la estrategia de trabajo fuera de MT5 dejando a MT5 como conector? Creo que está bien gastar tiempo en este tipo de baile si la estrategia vale la pena y no como siempre ))

El problema es la organización de una retroalimentación completa... e incluso los conectores a veces necesitan abrir los archivos ellos mismos
 

¿Puede alguien explicar por qué en MQL5 la serie temporal time[] no se corresponde con la hora del servidor?

Este es el indicador que calcula el desplazamiento de los precios de cierre con respecto al inicio del día:

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_plots   1
//--- plot Label1
#property indicator_label1  "Label1"
#property indicator_type1   DRAW_LINE
#property indicator_color1  clrRed
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2
//--- indicator buffers
double         DB[];

static int lastdayclose=-1;
static double F0=1.0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
   SetIndexBuffer(0,DB,INDICATOR_DATA);
   lastdayclose=-1;
   F0=1;
   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[])
  {
   int i,limit;
   MqlDateTime tmpdate;
   if(prev_calculated==0)
     {
      limit=rates_total-1;
      lastdayclose=-1;
      F0=1;
     }
   else limit=rates_total-prev_calculated;
   ArraySetAsSeries(time,true);
   ArraySetAsSeries(close,true);
   for(i=limit;i>=0;i--)
     {
      TimeToStruct(time[i],tmpdate);
      if(tmpdate.day!=lastdayclose)
        {
         F0=close[i];
         lastdayclose=tmpdate.day;
        }
      DB[i]=F0-close[i];
     }
   return(rates_total);
  }
//+------------------------------------------------------------------+

el indicador se dibuja:

https://www.mql5.com/ru/charts/8940511/eurusd-m5-alpari-international-limited

puede ver que la hora del comienzo del día se desplaza hacia la izquierda en 2 horas

 
Igor Makanu:

puede ver que el inicio del día se desplaza a la izquierda 2 horas

¿Puedes ver dónde?

 
Alexey Viktorov:

¿Ves dónde?

¿ves las líneas de separación de puntos? - es el comienzo del día, corresponde a la hora del servidor 0:00

¿está clara la lógica del indicador? - las salpicaduras verticales de la línea roja es el precio de cierre de la primera barra al comienzo del día, lo memorizamos y luego dibujamos el incremento de los precios de cierre en relación con el precio de cierre de la primera barra en la apertura del día - este "pico rojo" debe estar en la línea separadora del período, es decir, al comienzo del día

 
A100:
El problema es organizar una retroalimentación completa... e incluso los conectores a veces necesitan abrir los archivos ellos mismos

Por qué los conectores necesitan abrir los archivos por sí mismos, si toda la lógica está fuera, llamar a la funcionalidad requerida desde OnInit en un programa externo para inicializar

 
Igor Makanu:

¿ves las líneas de separación de puntos? - es el comienzo del día, corresponde a la hora del servidor 0:00

¿está clara la lógica del indicador? - las salpicaduras verticales de la línea roja es el precio de cierre de la primera barra al principio del día, lo memorizamos y luego dibujamos los incrementos de los precios de cierre en relación con el precio de cierre de la primera barra en la apertura del día - este "pico rojo" debe estar en la línea de separación, es decir, al principio del día

¿Cree que es posible hablar de algo basado en eso? Sí...