Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 900

 
Sile Si:

Sin duda, el asesor vinculado a si modifica vtbr

Si adjuntas un EA a vtbr no modifica si, sólo funciona en su propio instrumento


¿Tiene alguna explicación para esto?

No hay ninguna modificación en el código excepto esta:

Adjunte las líneas de registro que muestren la modificación (no escatime líneas - tome + 3 de la parte superior e inferior)


Añadido.

Y mostrar OnInit().

 
Vladimir Karputov:

Adjunte las líneas de registro que muestren la modificación (no escatime las líneas - tome + 3 en la parte superior e inferior)


Añadido.

Y mostrar OnInit().

Situación: borro el T/R manualmente, el EA lo pone de nuevo.

NDP

int OnInit()
  {
   if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
     {
      //Alert("Automated trading is forbidden in the program settings for ",__FILE__);
      return(false);
     }
   входить=входить_;
   handle_iCustom=iATR(Symbol(),ATRtimeframe,ATRper);
   if(handle_iCustom==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d",
                  m_symbol.Name(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }

//
   handle_iCustom_2=iATR(Symbol(),ATRtimeframeStep,ATRperStep);

   if(handle_iCustom_2==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iCustom indicator for the symbol %s/%s, error code %d",
                  m_symbol.Name(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }
//

   handle_iMA=iMA(Symbol(),Time_Frame_MA,Period_MA,0,MODE_SMA,PRICE_CLOSE);
//--- if the handle is not created 
   if(handle_iMA==INVALID_HANDLE)
     {
      //--- tell about the failure and output the error code 
      PrintFormat("Failed to create handle of the iMA indicator for the symbol %s/%s, error code %d",
                  Symbol(),
                  EnumToString(Period()),
                  GetLastError());
      //--- the indicator is stopped early 
      return(INIT_FAILED);
     }

   m_hline_name_buy=Symbol()+" "+m_hline_name_buy;
// m_hline_name_sell=Symbol()+" "+m_hline_name_sell;

   HLineCreate(0,m_hline_name_buy,0,0.0,clrLime,2);
//---
//---
   if(InpLot<=0.0)
     {
      Print("The \"Lot\" can't be smaller or equal to zero");
      return(INIT_PARAMETERS_INCORRECT);
     }
//---
   if(!m_symbol.Name(Symbol())) // sets symbol name
      return(INIT_FAILED);
   RefreshRates();

   string err_text="";
   if(!CheckVolumeValue(InpLot,err_text))
     {
      Print(err_text);
      return(INIT_PARAMETERS_INCORRECT);
     }
//---
   m_trade.SetExpertMagicNumber(m_magic);
//---
   if(IsFillingTypeAllowed(SYMBOL_FILLING_FOK))
      m_trade.SetTypeFilling(ORDER_FILLING_FOK);
   else if(IsFillingTypeAllowed(SYMBOL_FILLING_IOC))
      m_trade.SetTypeFilling(ORDER_FILLING_IOC);
   else
      m_trade.SetTypeFilling(ORDER_FILLING_RETURN);
//---
   m_trade.SetDeviationInPoints(m_slippage);
//--- tuning for 3 or 5 digits
   int digits_adjust=1;
   if(m_symbol.Digits()==3 || m_symbol.Digits()==5)
      digits_adjust=10;
   m_adjusted_point=m_symbol.Point()*digits_adjust;
   ExtZeroLevel=InpZeroLevel*m_adjusted_point;
   ExtTrailingStop=InpTrailingStop*m_adjusted_point;
   ExtTrailingStep=InpTrailingStep*m_adjusted_point;
//-
   ExtTakeProfit=TakeProfit*m_adjusted_point;
   ExtSL=StopLoss*m_adjusted_point;
   ExtStep=InpStep*m_symbol.Point();
//---
   return(INIT_SUCCEEDED);
  }
 
Sile Si:

Situación: borro el T/P manualmente, el EA se vuelve a poner.

Por favor, da información: texto completo de EA, en qué servidor te conectas, cuánto saldo, qué build de terminal. Me gustaría comprobarlo.

Sólo una cosa: si usted prueba NO en MetaQuotes-Demo, pero en el servidor de intercambio - aquí sin mí.

 
Vladimir Karputov:

Por favor, dame algo de información: el texto completo del EA, a qué servidor te conectas, cuánto es el saldo, qué build del terminal. Me gustaría comprobarlo.

Sólo una cosa: si usted está probando NO en MetaQuotes-Demo, pero en un servidor de intercambio - aquí sin mí.

Esto es FORTS. Y si el problema se produce sólo en un lugar y con un futuro específico, tal vez sea más fácil pasar por el depurador? Lo siento, me confundí. Parece que el depurador no funciona en los Asesores Expertos.

 
Sergey Savinkin:

Esto es FORTS. Y si el problema se produce sólo en un lugar y con unos futuros concretos, ¿quizás sea más fácil pasar por el depurador?

 
Sile Si:

Situación: borro la T/P manualmente, el asesor la vuelve a poner.

Por favor, ejecute este código:ListPositions.

Compruebe que el tipo de posición (COMPRA o VENTA) y el nombre del símbolo coinciden. También hay que especificar el NOMBRE del servidor de comercio y el BILD del terminal.

 
Vladimir Karputov:

Por favor, ejecute este código:ListPositions.

Compruebe que el tipo de posición (COMPRA o VENTA) y el nombre del símbolo coinciden. También es necesario especificar el nombre del servidor de comercio y el BILD del terminal.

Resultado:

rn

construcción delcorredor abierto por última vez, 1881. En vtbr pone T/R=0 y en el instrumento de otro si, pone T/R que debería estar en vtbr.

Vladimir Karputov:. En el servidor de intercambio - aquí sin mí.

¿A quién dirigirse?

 
Sile Si:

Resultado:

La construcción delcorredor abierto es la última.

¿A quién debo dirigirme?

Tengo una cuenta en FORTS bx. ¿Puedes enviarme el EA y su configuración? Si no quieres "iluminar" la lógica del EA, puedes enviarme cualquier versión recortada, siempre que puedas simular un error. Y los fuertes cerrarán en dos horas.

Y una descripción detallada de cómo simular un error.
 
Sergey Savinkin:

Tengo una cuenta de FORTS bx. Puedes enviarme el EA y la configuración. Si no quieres que la lógica de la EA sea "ligera", puedes lanzar cualquier versión de corte, siempre que puedas simular un error. Y Forts cerrará en dos horas.

Qué ocultar, entrada por MA, promediando) Mira el PM, por favor.

Hay un montón de cosas extras dentro que sobran por trabajar en una cuenta de cobertura.

 
Sile Si:

Resultado:

construcción delcorredor abierto por última vez, 1881. En vtbr pone T/P=0 y en la herramienta de otro, si, pone T/P que debería estar en vtbr.

¿A quién debo dirigirme?

Gracias por la aclaración.

Si usted utiliza un código muy similar a mis ejemplos, por favor envíeme su EA. Ahora estoy registrando las operaciones con más detalle. Lo miraré y arreglaré el código. Lo comprobaré más tarde.

Razón de la queja: