Errores, fallos, preguntas - página 1591

 
Sergey Kruglov:
El problema es que cuando descargo una versión de prueba de algún EA en mt4, se abre un terminal que no funciona, y luego lo borré y ahora no se abre ningún terminal, aunque tengo tres más instalados. ¿Hay alguna forma de especificar que los programas se descarguen en un terminal concreto?
Buscar directamente desde el terminal deseado - hay un campo de búsqueda en la esquina superior derecha de MetaTrader 5.
 

Pregunta para los entendidos.

Necesito averiguar cuánta memoria puedo utilizar para la consulta CopyTicks para no quedarme "sin memoria".

Desgraciadamente no puedo averiguar a través del terminal cuánta memoria disponible tengo actualmente.

Estoy usando un simple script para obtener la información:

void OnStart()
  {
   int memory_physical=TerminalInfoInteger(TERMINAL_MEMORY_PHYSICAL);
   printf("Physical memory in the system: %d MB",memory_physical);

   int memory_total=TerminalInfoInteger(TERMINAL_MEMORY_TOTAL);
   printf("Memory available to the process of the terminal (agent): %d MB",memory_total);

   int memory_available=TerminalInfoInteger(TERMINAL_MEMORY_AVAILABLE);
   printf("Free memory of the terminal (agent) process: %d MB",memory_available);

   int memory_used=TerminalInfoInteger(TERMINAL_MEMORY_USED);
   printf("Memory used by the terminal (agent): %d MB",memory_used);
  }

2016.05.29 09:50:50.642    MemoryTest (EURUSD,H1)    Memory used by the terminal (agent): 319 MB
2016.05.29 09:50:50.632    MemoryTest (EURUSD,H1)    Free memory of the terminal (agent) process: 23963 MB
2016.05.29 09:50:50.621    MemoryTest (EURUSD,H1)    Memory available to the process of the terminal (agent): 24282 MB
2016.05.29 09:50:50.611    MemoryTest (EURUSD,H1)    Physical memory in the system: 12141 MB

Por alguna razón la memoria disponible es el doble de la memoria física. No es el intercambio, es pequeño (400 MB). Esperaba que el valor fuera como en el administrador de tareas, la memoria disponible es de unos 7000 MB.

¿Quién puede decirme qué son estos extraños números?

 

Buenas noches, por favor, aconsejen cómo eliminar el error 4059 en el probador. Realmente quiero obtener los precios de otro instrumento, por ejemplo LTCUSD, de un Asesor Experto que trabaja con un instrumento, por ejemplo LTCBTC.

void OnTick()
  {
//---
   {if(One)
   { 
      ResetLastError();
      Print("1. LTCBTC >>",MarketInfo("LTCBTC",MODE_BID));
      Print(" Error=",GetLastError());
      ResetLastError();
      Print("2. LTCUSD >>",MarketInfo("LTCUSD",MODE_BID));
      Print(" Error=",GetLastError());
      ResetLastError();
      Print("3. BTCUSD >>",MarketInfo("BTCUSD",MODE_BID));
      Print(" Error=",GetLastError());
      One=false;
   }}

  }
 
Natalja Romancheva:

Buenas noches, por favor, aconsejen cómo eliminar el error 4059 en el probador. Realmente quiero obtener los precios de otro instrumento, por ejemplo LTCUSD, de un Asesor Experto que trabaja con un instrumento, por ejemplo LTCBTC.

No en MT4.
 
Andrey Voytenko:

Pregunta para los entendidos.

Necesito averiguar cuánta memoria puedo utilizar para la consulta CopyTicks para no quedarme "sin memoria".

Lamentablemente, no puedo averiguar a través del terminal cuánta memoria disponible tengo en este momento.

Estoy usando un simple script para obtener la información:


Por alguna razón la memoria disponible es el doble de la memoria física. No es el intercambio, es pequeño (400 MB). Esperaba que el valor fuera como en el administrador de tareas, la memoria disponible es de unos 7000 MB.

¿Quién puede decirme qué son estos extraños números?

Es la memoria virtual. Windows puede aumentar el tamaño del archivo de intercambio si es necesario.
 
admoon:
En mi opinión, if()debería funcionar sólo una vez, cuando la condición entre paréntesis es verdadera. Pero en realidad se dispara en cada comprobación y todas las expresiones en {} se ejecutan en cada paso y mastican el tiempo de la máquina. ¿Qué tiene que ver esto con la globalidad de W? Es más fácil cambiar el paso desde el terminal que desde el editor.

Parece que tienes un error de imprenta en tu código y has querido escribirlo así:

int i;
//---
   int co=0;
   for(i=0;i<=w;i++)
     {
      if(i==10)
        {
         co++; 
         Alert(co);
        }
     }
//--- return value of prev_calculated for next call
   return(rates_total);
 
Natalja Romancheva:

iClose + iBarShift. El probador en MT4 supervisa la exactitud del precio actual del instrumento que se está probando, la exactitud de los datos de otros instrumentos debe asegurarse usted mismo

Y es poco probable que puedas arbitrar efectivamente en MT4

 
Evgeniy Ilin:
¿Hay algún moderador por aquí? Envié una solicitud al vendedor, ha estado colgada durante 3-4 días. ¿Cuánto tiempo tengo que esperar?
¿Y bien? Tengo una respuesta. El mío también se cuelga, aunque durante menos tiempo.
 
Alexey Navoykov:

Debería haber sido así:

¿Pueden dividirse las clases de plantilla en una declaración y una implementación? MetaQuotes, cuando introdujo las clases de plantilla, explicó esta limitación.
 

Error variable

Construir 1340 MT5.

Si se pone en las variables:

input bool test=false;

extern bool test=false;

entonces el compilador no dará un error, pero en los parámetros del EA en el gráfico - estos parámetros desaparecerán.


Así que son como dos variables diferentes, aunque sean la misma.