Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 89

 
¿No es hora de fusionar todos los hilos de ayuda de MT4 en uno solo?
 
Renat Akhtyamov:
¿No es hora de fusionar todos los hilos sobre MT4 en uno solo?

Cada autor tiene su propia rama. Es que un autor lo dirige y el otro no lo hace ni lo hará. Es un lugar para los que quieren ayudar. ¿Por qué querría meter mi rama en una rama de un autor que no me va a ayudar con mql4?

 
Artyom Trishkin:
y yo también lo creo.
 

Hola.

¿Dónde puedo encontrar la descripción del idioma para MT4?

 
DVlad:

Hola.

¿Dónde puedo encontrar la descripción del idioma para MT4?

En el MetaEditor en F1. O aquí, lo mismo, pero en línea. También puedes buscar en Google libros sobre C++.
Справочник MQL4
Справочник MQL4
  • docs.mql4.com
Справочник MQL4
 

Hola.

Ayúdame a encontrar el precio del último pedido.

Esta función encuentra el precio del pedido más antiguo y necesito el más joven.

¿Qué hay que cambiar?


double GetOrderOpenPrice(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=0;
  int      i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()>1 && OrderType()<6) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) {
                t=OrderOpenTime();
                r=OrderOpenPrice();
              }
            }
          }
        }
      }
    }
  }
  return(r);
}
 
Marina Korotkih:

Hola.

Ayúdame a encontrar el precio del último pedido.

Esta función encuentra el precio del pedido más antiguo y necesito el más joven.

¿Qué hay que cambiar?


double GetOrderOpenPrice(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=0;
  int      i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()>1 && OrderType()<6) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) {
                t=OrderOpenTime();
                r=OrderOpenPrice();
              }
            }
          }
        }
      }
    }
  }
  return(r);
}
Bueno, eso es lo último, es decir, lo más nuevo
 
Marina Korotkih:

Hola.

Ayúdame a encontrar el precio del último pedido.

Esta función encuentra el precio del pedido más antiguo y necesito el más joven.

¿Qué hay que cambiar?


double GetOrderOpenPrice(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   r=0;
  int      i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()>1 && OrderType()<6) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderOpenTime()) {
                t=OrderOpenTime();
                r=OrderOpenPrice();
              }
            }
          }
        }
      }
    }
  }
  return(r);
}
Así se determina el precio del último pedido.
 
Alekseu Fedotov:
Así se determina el precio del último pedido.
Vitaly Muzichenko:
Bueno, es el más reciente, es decir, el más nuevo

No, la función devuelve el precio del sellstop 1.07057 y necesito el precio de la decimocuarta orden de sellstop 1.06637


precio
 
Marina Korotkih:

No, la función devuelve el precio del sellstop 1.07057 y necesito el precio de la decimocuarta orden de sellstop 1.06637

double GetOrderOpenPrice(string sy="", int op=-1, int mn=-1) {
 double r=-1;
 if (sy=="0") sy=Symbol();
  for (int i=0; i<OrdersTotal(); i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()>1 && OrderType()<6) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (r>OrderOpenPrice() || r==-1) {
                r=OrderOpenPrice();
  }}}}}}}
  return(r);
}
Razón de la queja: