Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1236
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Saludos. ¿Podría decirme algo, por favor?
¿Es posible obtener el nombre de una variable en lugar de su valor? Por ejemplo, imprimir el nombre de una variable.
#define PRINTVAR(x) Print(" " ##x); Print(x)
void OnStart()
{
long anyvar=(long)TimeLocal();
PRINTVAR(anyvar);
}
resultado:
2020.08.24 14:46:05.394 test (USDCHF,H1) anyvar
2020.08.24 14:46:05.394 test (USDCHF,H1) 1598280365
Posiblemente una característica de los inéditos :-) similar a la "C", pero aún no utilizable
Es necesario obtener el nombre de la propia variable.
Sin conocer el nombre, y sin ningún rasgo distintivo, esto no puede hacerse. Puede, por ejemplo, obtener los nombres de todas las variables iguales a 5 e imprimir sus nombres, encontrados, impresos. O los nombres de todas las variables de cadena. Pero en cualquier caso se trata de una enumeración variable.
Maxim Kuznetsov Gracias
Sí, también se trata de seleccionar una variable por su nombre.
Por ejemplo, hay variables a1, a2, a3, a4, a5, etc. También tienes que buscar entre estas variables, elegir cuál tiene "a" y 5, y utilizarla.
entonces casi no hay manera. Los nombres de las variables sólo son accesibles desde el preprocesador (#macros).
Debemos cambiar la lógica interna, por ejemplo, utilizar un array de nombres en lugar de variables. Entonces, tanto la clave como el valor están disponibles a la vez. O utilizar SQLite en caso de almacenamiento a largo plazo. O combinarlos :-)
Pero es así, sin conocimiento de algoritmo, consejo en vano.
Sí, también se trata de seleccionar una variable por su nombre.
Por ejemplo, hay variables a1, a2, a3, a4, a5, etc. Tenemos que enumerar también estas variables, elegir cuál tiene "a" y 5, y utilizarla.
Escribe los nombres en una matriz y recorre la matriz.
Buenos días a todos! Mi pregunta es sobre el probador de MT4, lenguaje mql4
Por favor, dígame cuál es mi error al inicializar una matriz. He creado un array unidimensional con 750 elementos. He inicializado los 750 elementos con el valor 50,0.
Significa que en el primer tic y en los siguientes, el primer elemento del array con el índice 0 debe tener el valor 50.0 y el último elemento del array con el índice 749 debe tener el valor 50.0.
De hecho, resulta que el último elemento del array tiene valor 0. Y el primero, como debe ser, es el 50,0.
La pregunta. Cómo hacer que todos los valores del array (incluido el último) tengan el valor 50.0 después de la inicialización
Este es mi código
Print("00749======= ",S_L[749]," =0= ",S_L[0]);
}
En la parte inferior del valor de Print() del diario
2020.08.24 17:43:55.427 GBPUSD,M1: 52255 eventos de tick (1440 barras, 53256 estados de barra) procesados en 0:00:00.047 (tiempo total 0:00:02.422)
2020.08.24 17:43:55.407 2010.01.04 00:00:53 TESTER(B.ORG) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:52 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:50 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:47 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:45 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:43 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:41 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:40 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:37 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:35 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:32 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:30 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:28 TESTER(B.ORDERS) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:26 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:25 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:22 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:20 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:17 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:15 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:13 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:11 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:10 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:07 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00:05 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:02 TESTER(B.ORD) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.407 2010.01.04 00:00 TESTER(B.ORDERS) GBPUSD,M1: =========================749======= 0 = 0= 50
2020.08.24 17:43:55.385 2010.01.01 00:00:00 Prueba de comprobación(B.ORD.) iniciada
Gracias por la ayuda
Aquí está la mía.
¿Dónde?)
¿Dónde?))
En la parte superior en mi post editado. Gracias por la respuesta.
ANDREY:
Pregunta. ¿Cómo puedo hacer que todos los valores de mi matriz (incluido el último) tengan un valor de 50,0 después de la inicialización?
Gracias por el consejo. Por cierto, quería aclarar..... En el tutorial de Kovalev dice que el array puede ser inicializado simultáneamente con su declaración (como hice yo), sin ninguna función especial. Sé que el tutorial de Kovalev está algo desfasado. P. ¿Entiendo correctamente que ahora en mql4 los arrays deben ser inicializados sólo con una función?
Gracias.