[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 149

 
avatara:

Siempre utilizo un cierto +/-epsilon=Punto*0,01 cuando comparo los precios.

Multiplicar por 1.000.000 no hará nada, créeme.

No entiendo muy bien por qué debería haber un problema <- bug?

En la documentación:

digits   -   Precision format, number of digits after decimal point (0-8). 

Es decir, hay un máximo de 8 decimales, y la pregunta mencionaba 10. ¿Quizás ese sea el problema?

 
Elenn:

Al comparar dos variables de tipo double, a veces se obtiene un resultado incorrecto. Esto se debe probablemente a que una de las variables puede ser ligeramente mayor o menor que la otra (por ejemplo, por 10 dígitos). El uso de la función NormalizeDouble no ayuda en la mayoría de los casos. Algunos aconsejan restar una variable de otra, pero en ese caso, ¿cómo construir más correctamente una expresión if(a>=b), restando una variable de otra? ¿O tal vez haya alguna otra manera?

Me acordé de un problema que observé yo mismo hace mucho tiempo (quizá haya cambiado algo desde entonces, no lo sé):

a=5 y c=4,0.

Desde el punto de vista de MQ no es necesariamente cierto que a>c en este caso particular.

Sería cierto si a=5,0 y c=4,0, o a=5 y c=4.

 

¡Buenas tardes!

Supongamos que tenemos dos números 1,4451 y 1,4429.

¿Cómo sacar la última cifra de 1,445[1] y 1,442[9] de estos números?

 
TEXX:

¡Buenas tardes!

Supongamos que tenemos dos números 1,4451 y 1,4429.

¿Cómo sacar la última cifra de 1,445[1] y 1,442[9] de estos números?

x = (10000 * y) % 10
 
Zhunko:
x = (10000 * y) % 10


y se puede escribir con números para los idiotas...

¡¡¡Gracias de antemano!!!

 

¡Buenos días! ¿Puedo repetirme? Estoy utilizando el MACDAC como filtro de tendencia en mi EA, ¿es posible hacer que mi EA comience a analizar las señales sólo a partir de una determinada barra en un macdak y que luego, cuando la tendencia cambie, todo vuelva a cambiar? Por ejemplo MAKDAK>0 inicio de una tendencia, ¿empezar a analizar las señales sólo después de la 15ª barra de un Makdak que es mayor que cero?

¡GRACIAS!

 
TEXX:


¿Se puede escribir con números, para que para los idiotas...

¡¡¡Gracias de antemano!!!


1.Referencia MQL4 (MetaEditor)-->Bases del lenguaje-->Operaciones y expresiones-->Operaciones aritméticas
2.Tutorial -->https://book.mql4.com/ru/basics/expressions
x = (10000 * 1,4451) % 10, donde "%" es la operación aritmética "resto de la división" (en nuestro caso por "10"), " * "es la operación aritmética "multiplicación de valores".
 
SeALALex:

Hola, ¿puedo repetirme? Estoy utilizando el MACDAC como filtro de tendencia en mi EA, ¿es posible hacer que mi EA comience a analizar las señales sólo a partir de una determinada barra del macdak y, si la tendencia cambia, comience a analizar las señales de nuevo? Por ejemplo, MACD>0 iniciar una tendencia, empezar a analizar las señales sólo después de la 15 ª barra de la macdak que es superior a cero?

¡GRACIAS!

¿Cuál es el problema? Recuerde la Barra (tiempo) en la que el MACD cruza el 0, y para cada nueva Barra compare lo lejos que está de él. Si el Delta>15 => seguir adelante.

 

Por favor, indíqueme qué es lo que está mal.



avatar
1
smith 06.09.2011 13:08
He hecho un tipster, por estrategia debería colocar una orden por hora al precio de la barra libre (h1) en relación al precio de la barra libre. Cuando se prueba en la barra resultante todo está bien, pero cuando se prueba en todos los marcos de tiempo (sin embargo, como en el comercio real) todo el tiempo con cada cambio de precio pone una orden una tras otra! (¿Cómo puedo controlarlo! Lo he probado en mt4 y en mt4 terminal también. Por favor, sugiera una función para este tipo de problema, preferiblemente con un ejemplo.
 
sergeev:

Por favor, indíqueme qué es lo que está mal.



1
smith 06.09.2011 13:08
He hecho un tipster, por estrategia debería colocar una orden por hora al precio de la barra libre (h1) en relación al precio de la barra libre. Cuando se prueba en la barra resultante todo está bien, pero cuando se prueba en todos los marcos de tiempo (sin embargo, como en el comercio real) todo el tiempo con cada cambio de precio pone una orden una tras otra! (¿Cómo puedo controlarlo! Lo he probado en mt4 y en mt4 terminal también. Por favor, sugiera una función para este tipo de problema, preferiblemente con un ejemplo.

.. Cuando se realizan pruebas con el método "Todos los Ticks".

La variable global se establece al principio (antes de start() ):

datetime TimeHandle = 0;

start() {
   i = 0;                        // Для Советников
   if(TimeHandle!=Time[i]) {
      TimeHandle = Time[i];

   . . . 

   }
}
Razón de la queja: