Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 1071

 
Igor Makanu:

Quería repartir las clases en 2 inludes, pero no puedo deshacerme del problema de usarenum en ambos archivos .mqh

hay un archivo 1.mqh:

y el archivo 2.mqh:

Cuando lo adjunto al código principal, obtengo un error

enumeración ya definida 2.mqh

véase la declaración anterior de"ENUM_DEAL_TYPE

Por lo que tengo entendido se necesita la directiva "Compilación condicional (#ifdef, #ifndef, #else, #endif)" - nunca he tenido experiencia en esto, va duro ((.

Puedes poner todos los enums en un .mqh separado y conectarlo con todos los inludes necesarios y otro código.

 
Alexey Viktorov:

Puedes poner todos los enums en un .mqh separado y conectarlo con todos los inludes necesarios y otro código.

Lo sé, no quiero incluir todo el archivo por un enum, y en las variables de entrada uso el mismo enum, en general, no es conveniente todavía

Debe haber algo similar en la biblioteca estándar - cómo utilizar la compilación condicional, no quiero mirar a través de todos los archivos, así que espero ayuda

 
Igor Makanu:

Lo sé, no quiero incluir todo el archivo por un enum, y en las variables de entrada uso el mismo enum, en general, no es conveniente todavía

Lo más probable es que debería haber algo similar en la biblioteca estándar - cómo utilizar la compilación condicional, no quiero mirar a través de todos los archivos, así que espero ayuda

La lógica es sencilla: si no se fija, se fija. Pero tendrás que escribirlo en cada archivo.
 
Artyom Trishkin:
La lógica es sencilla: si no se especifica, se especifica. Pero tendremos que prescribirlo en cada expediente.

Funciona con #define, sin problemas:

#ifndef  EA_Slippage 
   #define  EA_Slippage  30 
#endif

pero con los tipos no quiere funcionar, como opción escribir algo con define - #ifndef en el cuerpo del cual algo definir ... No sé cómo, nunca lo he usado por eso pregunto cómo

 
Igor Makanu:

Lo sé, no quiero incluir todo el archivo por un enum, y en las variables de entrada uso el mismo enum, en general, no es conveniente todavía

Probablemente debería haber algo similar en la biblioteca estándar - cómo utilizar la compilación condicional, no quiero mirar a través de todos los archivos, así que espero ayuda

No es que lleve sacos.

 
Alexey Viktorov:

Bueno, no es como llevar sacos.

si todo se midiera en bolsas....

Ya lo he hecho, necesito escribir dicha expresión al principio de cada inluder y en el programa principal:

#ifndef  ENUMDEALTYPE 
   #define  ENUMDEALTYPE
   enum        ENUM_DEALTYPE{NONE,BUY,SELL};
#endif

entonces el orden de los archivos no importa y todo compila sin problemas.

 
Igor Makanu:

si todo se midiera en bolsas....

Ya lo he hecho, necesito escribir dicha expresión al principio de cada inluder y en el programa principal:

entonces el orden de los archivos es irrelevante y todo compila sin problemas

A eso me refiero.
 

¡Hola !

Los 12 gráficos de MT5 no reflejan (no visualizan) los objetos de la operación en la negociación automática normal,

Con las operaciones reflejadas en la sección "Comercio". Me gustaría entender la razón de estos gráficos, por favor, ilumíneme.

ME GUSTARÍA PEDIRLE QUE POR FAVOR ME ACLARE...

 
akarustam:

¡Hola !

Los 12 gráficos de MT5 no reflejan (no visualizan) los objetos de la operación en la negociación automática normal,

Con las operaciones reflejadas en la sección "Comercio". Me gustaría entender la razón de estos gráficos, por favor, ilumíneme.

GRACIAS.

Compruebe los ajustes en el terminal: Ajustes - Comercio
  • Mostrar las operaciones en el gráfico en tiempo real: si esta opción está activada, todas las operaciones realizadas por el operador se marcarán automáticamente en el gráfico con los iconosComprar(operación de compra) ySe vende(operación de venta). Al situar el cursor del ratón sobre un icono de este tipo, se mostrará un tooltip con información sobre la operación: ticket, tipo de operación, volumen, símbolo, precio de apertura y precio en el punto del cursor.

 
Vladimir Karputov:
Compruebe los ajustes en el terminal: Ajustes - Comercio
  • Mostrar las operaciones en el gráfico en tiempo real: si esta opción está activada, todas las operaciones realizadas por el operador se marcarán automáticamente en el gráfico con un icono apropiado (operación de compra) y (operación de venta). Si coloca el cursor del ratón sobre un icono de este tipo, aparecerá una información sobre la operación: billete, tipo de operación, volumen, símbolo, precio de apertura y precio en el punto del cursor.

GRACIAS.

He comprobado y manipulado de forma diferente, he visto todos los objetos de las operaciones, pero en los 12 pares de divisas, excepto en el EURUSD, siguen sin aparecer las líneas discontinuas horizontales de las operaciones con indicación del tipo y número de la operación, mientras que en el EURUSD todos los objetos y líneas están claramente marcados, incluida la colocación manual de órdenes. La culpa la tiene la actualización de Windows 10, porque antes de la actualización puse órdenes en el gráfico del EURUSD. No sé qué hacer ahora, por supuesto que puedo cambiar mi hábito de visión de MT4, pero ¿hay algún botón que me permita marcar líneas por fin?