Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 125
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
unas 25 personas. Por ejemplo: 14.02.2017 EURUSD 1.0630
Lamentablemente, tampoco veo una solución a este problema puramente con mql.
Sólo hay que crear una plantilla de carta con los nombres de todos los amigos y enviarla por correo
unas 25 personas. Por ejemplo: 14.02.2017 EURUSD 1.0630
Hola.
He matado toda la noche, pero no podía entender la razón, por favor ayuda. El indicador debería mostrar los datos en la pantalla como una marca de texto, pero cuando arranco el terminal no ocurre, la marca sólo aparece cuando cambio el marco temporal, luego funciona bien en los ticks.
El ejemplo se ha simplificado al máximo, pero la esencia no cambia:
int a=AccountInfoInteger(ACCOUNT_LEVERAGE);
intb=1000/a; // entonces imprime b en la pantalla
Utilizando el método de eliminación, he llegado a la conclusión de que esto sólo funciona si sustituyo la división por cualquier otra operación, o asigno cualquier constante a la variable "a".
Intenté usar ChartRedraw(), jugué con tipos enteros y dobles, probé MathRound() y mucho más, nada funcionó.
Todo es extraño.
Hola.
He matado toda la noche, pero no podía entender la razón, por favor ayuda. El indicador debería mostrar los datos en la pantalla como una marca de texto, pero cuando arranco el terminal no ocurre, la marca sólo aparece cuando cambio el marco temporal, luego funciona bien en los ticks.
El ejemplo se ha simplificado al máximo, pero la esencia no cambia:
int a=AccountInfoInteger(ACCOUNT_LEVERAGE);
intb=1000/a; // entonces imprime b en la pantalla
Utilizando el método de eliminación, he llegado a la conclusión de que esto sólo funciona si sustituyo la división por cualquier otra operación, o asigno cualquier constante a la variable "a".
Intenté usar ChartRedraw(), jugué con tipos enteros y dobles, probé MathRound() y mucho más, nada funcionó.
Todo es extraño.
Entonces, ¿cuál es el problema de multiplicar en lugar de dividir?
intb=a*0,001;
Y también es importante en qué lugar exacto del código se hacen los cálculos. Espero que no sea en el inite o a nivel global. Si no, también se podría dividir por cero ;)
Hola.
He matado toda la noche, pero no podía entender la razón, por favor ayuda. El indicador debería mostrar los datos en la pantalla como una marca de texto, pero cuando arranco el terminal no ocurre, la marca sólo aparece cuando cambio el marco temporal, luego funciona bien en los ticks.
El ejemplo se ha simplificado al máximo, pero la esencia no cambia:
int a=AccountInfoInteger(ACCOUNT_LEVERAGE);
intb=1000/a; // entonces imprime b en la pantalla
Utilizando el método de eliminación, he llegado a la conclusión de que esto sólo funciona si sustituyo la división por cualquier otra operación, o asigno cualquier constante a la variable "a".
Intenté usar ChartRedraw(), jugué con tipos enteros y dobles, probé MathRound() y mucho más, nada funcionó.
Todo es extraño.
Entonces, ¿cuál es el problema de rehacer la multiplicación en lugar de la división?
intb=a*0,001;
Y también es importante el lugar exacto del código en el que se realizan los cálculos. Espero que no sea en el inite o en el global. También puedes dividir por cero ;)
¿Hay que transmitir exactamente los niveles? ¿No sería mejor crear una señal y emitirla?
Y si miras en el registro, puedes encontrar un error crítico "división por 0" allí
En el cuaderno de bitácora es realmente: cero dividir. Voy a comprobarlo ahora.
No entiendo de dónde viene el 0. ¿No hay datos deAccountInfoInteger(ACCOUNT_LEVERAGE) durante la inicialización? ¿Y por qué no aparece la marca en los siguientes ticks?
También los envío por Whatsapp al grupo. Sólo quería facilitarles la vida... abrir el gráfico y mi nivel ya está ahí. ¿Puede decirme más sobre la señal, es de MT o de un tercero?
En el cuaderno de bitácora es realmente: cero dividir. Voy a comprobarlo ahora.
No entiendo de dónde sale el 0. ¿No hay datos deAccountInfoInteger(ACCOUNT_LEVERAGE) durante la inicialización? ¿Y por qué no aparece la marca en los siguientes ticks?
Porque el programa ha recibido un error crítico y no se ejecuta más.
Tal vez, algunas empresas de corretaje no pasan el apalancamiento? Aunque, no lo he visto en forex...