Preguntas de los principiantes MQL4 MT4 MetaTrader 4 - página 3

 
mila.com:

¿Cómo hacer esta comprobación en un bucle?

Puedes hacerlo así

   for(BarCount=3; BarCount>0; BarCount--)
     {
      if(BufferPointUp[i+BarCount]!= EMPTY_VALUE)
         break;
     }
   if(BarCount==0) BufferPointUp[i]=high[i];
 
Taras Slobodyanik:

puedes hacer esto

Gracias.

 
¡¡¡Buenas tardes!!! ¿Puedes decirme cómo hacer una selección aleatoria de un número en un rango determinado? ¿Hay alguna función para esto?
 
bobrush:
¡¡¡Buenas tardes!!! ¿Puedes decirme cómo hacer una selección aleatoria de un número en un rango determinado? ¿Hay alguna función para esto?
El estándar es MathRand(), o simplemente rand().
 

Esto es una mierda. Ya tengo el código en este estado:

{
   Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
   if(OrdersTotal()!=0)
   {
    for (int i = 0; i < OrdersTotal(); i++)
    {
     if(OrderSelect(i,SELECT_BY_POS)==true)
     {
      TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
      bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0);
     }
    }
     return;
   }

Todavía no hay AT.

 
Nickolay72:

La AT todavía no se ha puesto en marcha.

...al modificar unstoploss incorrecto- el registro debería escribir un error "stoploss desactivado".
 
Nickolay72:

Esto es una mierda. Ya tengo el código en este estado:

Todavía no hay AT.

¿Por qué es tan complicado cuando hay un billete?

Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
//не забываем проверить код ошибки
if(Ticket<0Print("Ой, ошибочка: "_LastError);
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);

bool modify=OrderModify(Ticket,OrderOpenPrice(),OrderStopLoss(),TP,0);

//не забываем проверить код ошибки

if(!modify) Print("OOPS! Modify error: "_LastError);

 

Hola, aconsejar como hacer un EA utilizando el marco de tiempo de 15 minutos para comprobar el valor cada 20 minutos, digamos en 9-20, 9-40 seguido de RSI cruzado y si el nivel se cruza en veinte minutos, comprobar el valor del precio. Esto es lo que tengo que arreglar:

if (Hour()==9 && (Minute() == 20) && (RSI<50))
Price2==Bid;
     {
      if (Hour()==9 && (Minute() == 40) && (Bid<Price2))
  
         {
          ticket=OrderSend(Symbol(),OP_SELL, Lts, Bid, SP,0,0, NULL, Magic, 0, Blue);
          return(0);
         }
    
     }    
 
strongflex:

Hola, ¿cómo puedo hacer que mi EA compruebe los valores cada 20 minutos utilizando un marco temporal de 15 minutos?

...puedes comprobar el resto de la división, si los minutos se dividen por 20 sin resto, entonces son los siguientes 20 minutos

if (Minute()%20==0)
 
Taras Slobodyanik:

...puedes comprobar el resto de la división, si los minutos se dividen por 20 sin resto, entonces son los siguientes 20 minutos

if (Minute()%20==0)
Como hago para que el EA recuerde el precio que había en la ejecución de la condición de que a los 9-20 el RSI cruzó el nivel y 20 minutos después comprueba el precio. Y necesito comparar el precio de hace 20 minutos y el de ahora
Razón de la queja: