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

 
ANDREY:

Por favor, dime qué significa EA en el contexto de lo que has escrito en tu post. Quiero encontrar y leer más sobre ello.....
Gracias.

EA = Asesor Experto

EA

Es la primera vez que veo a alguien en este foro que no entiende la abreviatura

No he intentado colocar una orden en MT5 rellenando toda la estructura de la solicitud, hay una SB, si se entiende, es una línea para abrir una orden

trade.Buy(0.1);

https://www.mql5.com/ru/articles/481

 
MakarFX:

Imprimir


No está claro por qué cambia a M5

¿Son los bylots y sellots globales o locales?
 
Alexey Viktorov:

¿Qué es mejor?

(0 == 0 y 1 == 0) - no se cumple la condición

(0 + 1 == 0) - la condición tampoco se cumple.

¿Cuál es la diferencia entre Y y suma en este ejemplo concreto?

El código es más legible.
 
Alexey Viktorov:

Cuando se cambia el TF, el EA se reinicia.

La cuestión se resuelve de la siguiente manera

int    CountOrder(int Order_Type) 
 {
  int Orders=0;
  for(int a=OrdersTotal()-1;a>=0;a--)
   {
    if(OrderSelect(a, SELECT_BY_POS, MODE_TRADES)==false) continue;
    if(OrderSymbol()!=_Symbol) continue;
    if(Order_Type == OrderType() || Order_Type == -1) Orders++;
   }
  return Orders;
 }
int    OrOfSy;
//+------------------------------------------------------------------+
void OnTimer(void)
  {
//----
   OrOfSy=CountOrder(-1);
  if(OrOfSy!=0)
   if(ChartPeriod()!=PERIOD_M15)
    if(ChartSetSymbolPeriod(0,Symbol(),PERIOD_M15))
     {Print(ChartPeriod());}
  if(OrOfSy==0)
   if(ChartPeriod()!=PERIOD_M5)
    if(ChartSetSymbolPeriod(0,Symbol(),PERIOD_M5))
     {Print(ChartPeriod());}
//----
  }
Todo funciona)
 
MakarFX:

El asunto se resolvió de la siguiente manera

Todo funciona)
OrofSys está en la zona global.
 
Igor Makanu:

EA = Asesor Experto

EA

Es la primera vez que veo a alguien en este foro que no ha entendido la abreviatura

sobre lo que se discutió - no he tratado de colocar órdenes en MT5 llenando la estructura de solicitud completa, hay un SB, si se entiende, se abre una orden en una línea

https://www.mql5.com/ru/articles/481

Lo tengo. Gracias.

 
SanAlex:

error - esta línea debe ser eliminada ( double const = 0; )

y todo funcionará



¡Hola SanAlex ! 2020.10.29_06:54 GMT+3. Gracias por sus sugerencias. El indicador BrainTrend1Sig.mq4 será útil. Yo mismo no he conseguido convertir el código de .mq5 a .mq4. Intentaré hacer un Asesor Experto rentable basado en este indicador.

 
Valeriy Yastremskiy:
El código es más legible.

Depende...

 

¿Me puede decir cómo bloquear el botón

   //--- обработка кнопки Создать трендовую линию Buy
   if(sparam=="Button 3")
      {
      if(trigger_greateB==true)
         {
         Sleep(100);
         trigger_greateB=false;
         ObjectSetInteger(0,"Button 3",OBJPROP_STATE,true);
         //--- Определяем координаты
         ChartXYToTimePrice(0,xn,yn+20,window,dt_1,price_1);
         ChartXYToTimePrice(0,xn+100,yn-20,window,dt_2,price_2);
         //--- Создаем трендовую линию Buy
         TrendCreate(0,("OrderBuy: "+Symbol()),0,dt_1,price_1,dt_2,price_2,ColorUP,0,1,false,true,false,false,0);
         return;
         }
      }

es necesario bloquear la prensa si

if(ObjectGet("OrderBuy: "+Symbol(),OBJPROP_PRICE1)!=0)
 
MakarFX:

¿Me pueden decir cómo bloquear el botón

Hay que bloquear la prensa si

Así de fácil, añádelo a la condición.

if(sparam=="Button 3" && ObjectGet("OrderBuy: "+Symbol(),OBJPROP_PRICE1)!=0)

O == 0, más probablemente. O mejor utilizar la búsqueda del objeto por su nombre, si no existe tal objeto entonces crear uno. Y no importa si el botón está pulsado o no.