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

 
Alexander Layzerevich:

¿Pueden decirme cómo reemplazarlo en MQL5?

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // переменная типа структуры
   );


Y luego leer el contenido de la estructura. Funciona igual en mql5 y en mql4

struct MqlDateTime
  {
   int year;           // год
   int mon;            // месяц
   int day;            // день
   int hour;           // час
   int min;            // минуты
   int sec;            // секунды
   int day_of_week;    // день недели (0-воскресенье, 1-понедельник, ... ,6-суббота)
   int day_of_year;    // порядковый номер в году (1 января имеет номер 0)
  };
 
Igor Makanu:

este artículo le ayudaráhttps://www.mql5.com/ru/articles/81

Gracias.

 

Debido a la limitación del número de posiciones abiertas en el broker, tuve que dividir la cartera en 2 cuentas para poder abrir toda la cartera. ¿Podría aconsejarme cómo organizar un rastreo de la posición agregada de las dos cuentas?

Gracias de antemano.

 
Pueden aconsejar a un novato... he descargado un indicador gratuito.... de Market... lo he adjuntado a un gráfico... cuando paso de un periodo de tiempo a otro, el indicador se muestra con un gran retraso (es decir, se ralentiza)... ¿cuál podría ser el problema? Gracias...
 
net150:
Por favor, aconseja a un principiante... he descargado el indicador gratuito .... de Market... cuando cambio de un marco temporal a otro, el indicador se muestra con un gran retraso (es decir, se ralentiza)... ¿cuál podría ser el problema? Gracias...

Demasiados datos para calcular, o el indicador no está escrito de forma óptima. Eso sucede.

 
Cómo escribir una función para que el robot se vuelque en caso de pérdida. Por ejemplo entró en menos 20 puntos y volteó y si de nuevo en menos, entonces de nuevo voltear. Por favor, ayuda.
 
Ivan Kopchuk:
Cómo escribir una función para que el robot se vuelque en caso de pérdida. Por ejemplo ha entrado en menos 20 puntos y ha dado la vuelta y otra vez en menos vuelve a dar la vuelta. Por favor, ayúdame.

Se cierra una posición en cuanto se alcanza -algo y se abre inmediatamente en sentido contrario al cerrado.

0 Se toman todas las órdenes (OrdersTotal), se revisan (OrderSelect), para ver si ya hay una posición abierta en este TS
1.1 Si ya hay una posición abierta, anote el ticket de la orden (OrderTicket)
1.2 Si no es así - abre una posición (OrderSend), guarda la entrada de esta posición en una variable, establece los puntos de toma y parada si es necesario (OrderModify)
2 Compruebe el beneficio actual (diferencia entre OrderOpenPrice y Bid o Ask), hasta que se cumpla una de las siguientes condiciones
2.1 Si el beneficio ha alcanzado la pérdida fijada - cierre la posición (OrderClose) y abra una nueva en la otra dirección, memorice el ticket, continúe con el punto 2
2.2 Si el beneficio alcanza el valor requerido, cierre la posición, restablezca el ticket, abra una nueva posición según las reglas de introducción de TS, guarde el ticket de esta posición en la variable, y pase al punto 2

https://docs.mql4.com/ru/trading

 
Ilya Prozumentov:

Se cierra la posición en cuanto se pone en -algo y se abre inmediatamente en sentido contrario a la posición cerrada.

0 Se toman todas las órdenes (OrdersTotal), se revisan (OrderSelect), para ver si ya hay una posición abierta para este TS
1.1 Si ya hay una posición abierta, anote el ticket de la orden (OrderTicket)
1.2 Si no es así - abre una posición (OrderSend), guarda la entrada de esta posición en una variable, establece los puntos de toma y parada si es necesario (OrderModify)
2 Compruebe el beneficio actual (diferencia entre OrderOpenPrice y Bid o Ask), hasta que se cumpla una de las siguientes condiciones
2.1 Si el beneficio ha alcanzado la pérdida fijada - cierre la posición (OrderClose) y abra una nueva en la otra dirección, recuerde el ticket, luego continúe con el punto 2
2.2 Si el beneficio alcanza el valor requerido, cierre la posición, restablezca el ticket, abra una nueva posición según las reglas de introducción de TS, guarde el ticket de esta posición en la variable, y pase al punto 2

https://docs.mql4.com/ru/trading

Gracias.

 

Saludos. ¿Podría darme una pista?

¿Cómo se cumple la condición cuando una variable con valor negativo(suma)>= una variable(beneficio) igual a cero?

summ=(double)(H_SellMinProfit()+BuyProfit()-SpreadCost());
      if(summ>=profit)
         CloseOll();st=1;max_level=level;min_level=level;  Print("st=1", "  H_SellMinProfit() ", H_SellMinProfit(), "  BuyProfit() ", BuyProfit(), "  SpreadCost() ", SpreadCost(), "  ++- ", H_SellMinProfit()+BuyProfit()-SpreadCost(), "  summ ", summ, "  profit ", profit);


Código entero,

Archivos adjuntos:
Ivanov4.mq4  20 kb
 
Andrey Sokolov:

Saludos. ¿Podría darme una pista?

¿Cómo se cumple la condición cuando una variable con valor negativo(suma)>= una variable(beneficio) igual a cero?

Código entero,

summ=(double)(H_SellMinProfit()+BuyProfit()-SpreadCost());
  if(summ>=profit) {
    CloseOll();
    st=1;max_level=level;min_level=level;
    Print("st=1", "  H_SellMinProfit() ", H_SellMinProfit(), "  BuyProfit() ", BuyProfit(), "  SpreadCost() ", SpreadCost(), "  ++- ", H_SellMinProfit()+BuyProfit()-SpreadCost(), "  summ ", summ, "  profit ", profit);
  }
Razón de la queja: