Comunidad de expertos - página 7

 
Se trata de una comprobación para el caso especial en que la diferencia == 0
Este bucle recorre la serie hacia atrás hasta encontrar una diferencia distinta de cero.

Esto se puede omitir, pero entonces existe la posibilidad de perder la intersección si accidentalmente golpeamos una barra cuando M1 == M2.

Podemos sustituir < por <=, entonces este caso de intersección será capturado,
pero la condición también producirá una intersección cuando dos filas se toquen sin cruzarse.

En general, es más correcto utilizar el texto que está escrito en
(pero tengo que comprobarlo en el trabajo - no lo he comprobado).

En cuanto a la velocidad, será la misma.
Este bucle se activará muy raramente,
y prácticamente siempre no más de 1 control adicional.
 
Pregunta para los desarrolladores: ¿habrá un depurador para el meta-editor?

Pregunta a los compañeros de la lucha contra el caos: ¿soportará MQL4 el acceso a cualquier base de datos?
 
¿Alguien ha probado a coser velas japonesas en un EA?
(En teoría, no hay ningún problema para ello).
 
Pregunta a los desarrolladores: ¿habrá un depurador para el meta-editor?

Sí, lo habrá, está previsto. Lo más probable es que sea junto con la nueva versión del compilador MQL4.
 
Pregunta para los que puedan saber:

¿Cuál es el tiempo de ejecución del código compilado en MQL4 en comparación con otros lenguajes de programación? Por ejemplo, C++ es el más rápido, Java es mucho más lento...
 
Tengo que buscar en los archivos, en un momento dado Renat se jactó, y tengo que decir, no por nada. Los expertos son muy rápidos
 
Una función (método) integrada es muy necesaria

Todos los momentos de venta cuentan como momentos de compra

Todos los momentos de compra cuentan como momentos de venta

¿Existe algo así o no? Y si no es así, como me parece (tal vez me equivoque), sería bueno que los desarrolladores incluyeran esa función incorporada.

¿O tal vez haya uno después de todo?
 
Pregunta para alguien que pueda saber:<br / translate="no">
¿Cuál es el tiempo de ejecución del código compilado en MQL4 en comparación con otros lenguajes de programación? Por ejemplo, C++ es el más rápido, Java es mucho más lento...

"MQL4, MQL2, EasyLanguage, Wealth-Lab 3.0 y VC++: Comparación de velocidad".
 
Ya te he dado este código.
Es sólo a modo de ejemplo, sólo hay que tirar lo que sobra :))

Antes de cerrar una posición, cerramos todas las posiciones contrarias.
¡int _OrderCloseAll(int _type = EMPTY, int Slippage = 5) { int count = 1; int limit = 5; while(count > 0 && limit > 0) { int n = OrdersTotal(); count = 0; limit--; for(int i = 0; i < n; i++) { if (OrderSelect(i, SELECT_BY_POS) == false) continue; if (OrderSymbol() != Symbol()) continue; if (_Magic != 0 && OrderMagicNumber() != _Magic) continue; if (OrderType() == OP_BUY && (_type == EMPTY || _type == OP_BUY)) { WaitOrderTimeOut(); if (OrderSelect(i, SELECT_BY_POS)) OrderClose(OrderTicket(), OrderLots(), Bid, Slippage); count++;
         } else if (OrderType() == OP_SELL && (_type == EMPTY || _type == OP_SELL)) { WaitOrderTimeOut(); if (OrderSelect(i, SELECT_BY_POS)) OrderClose(OrderTicket(), OrderLots(), Ask, Slippage); count++; } } return (0); }
 
Ya te he dado este código. <br / translate="no"> Esto es sólo como un ejemplo, sólo tirar el exceso :))

Cierre todas las posiciones opuestas antes de abrirlas.
int _OrderCloseAll(int _type = EMPTY, int Slippage = 5)
{
   int count = 1;
   int limit = 5;

   while(count > 0 && limit > 0)
   {
      int n = OrdersTotal();

      count = 0;
      limit--;

      for(int i = 0; i < n; i++)
      {
      }
   }
   return (0);
}


Ya le di un enlace a nuestro foro en inglés sobre el cierre de todas las posiciones. al parecer, nadie ha leído todo el hilo. el ciclo inverso sería más correcto.
      for(int i = n-1; i >= 0; i--)


Se borra una posición y se elimina de la lista. La siguiente posición ocupa su lugar y el contador se incrementa y esta misma posición se salta.