Errores, fallos, preguntas - página 1168
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
Ta maaa...
Tienes que poner un doble de la larga antes de la transferencia. Para la variable global. No es cero, es un doble aleatorio, puede ser 1,34*e-307 o 4,29*e+120, porque tiene bits logarítmicos.
Después de transferir unzip de dub a long.
Eso es todo.
Vale, lo has conseguido ;)
Vale, lo has conseguido ;)
Pues no entiendo qué es lo que no está claro.
El doble trunca los datos, por lo que no se puede transferir directamente el largo al doble. Pero ambos son de 8 bytes cada uno, por lo que se puede transferir sin pérdidas simplemente usando el doble como contenedor, que es lo que hice en el ejemplo.
Pues no entiendo qué es lo que no está claro.
El doble trunca los datos, por lo que no se puede transferir directamente el largo al doble. Pero ambos son de 8 bytes cada uno, por lo que se puede transferir sin pérdidas simplemente usando el doble como contenedor, que es lo que hice en el ejemplo.
Andrey, no he entendido el formato de almacenamiento y visualización en el GV del terminal. Parecía mostrar el ID del gráfico, pero muestra 0.
GV mostrará algo parecido a la basura en apariencia, esta "basura" se convertirá en el ID del gráfico después de la conversión inversa.
El duble tiene su propio formato de datos, al meter el largo, ponemos el formato duble y lo usamos solo como 8 bytes de memoria.
GV mostrará algo parecido a la basura en apariencia, esta "basura" se convertirá en el ID del gráfico después de la conversión inversa.
El duble tiene su propio formato de datos, al meter el duble ponemos el formato del duble y lo usamos simplemente como 8 bytes de memoria.
Es más bien una pregunta:
Buscando un GV existente de la terminal por su nombre. A través de él se pasa al indicador el ID del gráfico en el que se está ejecutando el EA. El indicador cuelga de otro símbolo. Es decir, quiero pasar al indicador el ID del gráfico en el que se está ejecutando el Asesor Experto. Lo busco así:
Esto es lo que dice el terminal:
Intenté leer la variable. Lo puse directamente en la cadena y lo puse en el diario, así como en variables de diferentes tipos - todo lo mismo. Hay dos diferencias.
¿Qué hay de malo en eso?
Lea aquí https://www.mql5.com/ru/docs/basis/types/casting párrafo "Conversión de datos de estructuras simples".
Exactamente su caso. Los dobletes tienen una precisión mucho menor en _número_ de caracteres que los largos. Por eso se obtiene este resultado con la asignación simple.
Pero puedes usar completamente los 64 bits de una variable global para almacenar _cualquier_ información de 64 bits de longitud (como cadenas cortas de 8 bytes de longitud. Sin mencionar los longs)
El Asesor Experto está en M2, los datos del indicador se toman de M3.
1) Hay un reinicio de la terminal a las 14:40:
MD 0 14:40:06.009 Terminal MetaTrader 5 Alfa-Forex x64 build 930 iniciado
II 0 14:40:06.586 Terminal No se ha encontrado OpenCL, instale el último controlador OpenCL para mejorar el rendimiento
JO 0 14:40:07.257 Expertos experto FX_Money_Flow_v1_06 (EURUSD,M2) cargado con éxito
RO 0 19:55:28.399 Terminal MetaTrader 5 Alfa-Forex x64 build 930 iniciado
OP 0 19:55:28.992 Terminal No se ha encontrado OpenCL, instale el último controlador OpenCL para mejorar el rendimiento
RD 0 19:55:29.507 expertos experto FX_Money_Flow_v1_07 (EURUSD,M2) cargado con éxito
Pero no empieza a funcionar correctamente todo el tiempo:
KF 0 23:59:51.987 FX_Money_Flow_v1_07 (EURUSD,M2) Valor del factor TF1 indicador: -1.#QNAN -1.#QNAN
El gráfico M3 está abierto en este momento y hay un indicador en él que muestra todo correctamente:
(la diferencia de tiempo entre el terminal y los registros es de 5 horas, la captura de pantalla se refiere al segundo reinicio)
Lea aquí https://www.mql5.com/ru/docs/basis/types/casting párrafo "Conversión de datos de tipos de estructuras simples".
Este es exactamente su caso. Los dobletes tienen una precisión mucho menor en _número_ de caracteres que los largos. Por eso se obtiene este resultado con la asignación simple.
Pero puedes utilizar completamente los 64 bits de la variable global para almacenar _cualquier_ información de 64 bits de longitud (como cadenas cortas de 8 bytes de longitud. Sin mencionar los longs)