Cómo armo mi asesor por ensayo y error - página 27

 
Алексей Тарабанов:

¿Te ha gustado?

Necesito verlo en acción

no para mí, para él

 

Creo que no hay suficiente separación, límite de parada y beneficio para las líneas horizontales, que se establecen automáticamente.

eso es más 4 líneas más - ¡y no! 8

Foto de

 
Aleksandr Klapatyuk:

Creo que no hay suficiente separación, límite de parada y beneficio para las líneas horizontales, que se establecen automáticamente.

eso es más 4 líneas más - ¡y no! 8


#versión de la propiedad "1.11"

establece una línea horizontal de StopLoss y si el precio se mueve en la dirección correcta se cierra la posición

las líneas amarillas son StopLoss y arrastre al mismo tiempo

trall

input string   t1="------ TakeProfit    ----------";    // TakeProfit
input double   InTakeProfit            = 54;            // Take Profit, in pips (1.00045-1.00055=1 pips)

no puede ser cero - se cerrará inmediatamente. tienes que establecer cuántos pips quieres que se cierre la posición.

Foto de

Instantánea1

tienes que establecer cuántos pips quieres que se cierre la posición.

Archivos adjuntos:
 
2019.10.28 10:21:58.667 Your intelligence (USDJPY,H1)   zero divide in 'Your intelligence.mq5' (1481,14)

Me da este error y el Asesor Experto se borra cuando abro una posición. la cuenta es 500 GLD.

Todavía no puedo entenderlo.

 
Aleksandr Klapatyuk:

Me da este error y el Asesor Experto se borra cuando abro una posición. la cuenta es 500 GLD.

Todavía no puedo entenderlo.

Maldita sea! y no hay información en la búsqueda . ¿alguien puede decirme cuál es el error?

2019.10.28 10:21:58.667 Tu inteligencia (USDJPY,H1) división a cero en 'Tu inteligencia.mq5' (1481,14)

Foto de

 
Aleksandr Klapatyuk:

Me da este error y el Asesor Experto se borra cuando abro una posición. la cuenta es 500 GLD.

Pero en la cuenta del rublo - todo funciona.

En el código, línea 1481, posición 14 - busque un error.

 
Vladimir Karputov:

En el código, línea 1481, posición 14 - busque un error.

Muchas gracias, creo que he descubierto el motivo. ¡¡¡Gracias por el consejo !!!

 
Vladimir Karputov:

En el código en la línea 1481, posición del cursor 14 - busque un error.

Aquí... lo he estropeado.

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if((PositionGetDouble(POSITION_PROFIT)/PositionGetDouble(POSITION_VOLUME)/
             SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE))/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

lo he corregido a esto - todavía no he comprobado esta función - pero se supone que funciona

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if(m_position.Commission()+m_position.Swap()+m_position.Profit()/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

Una vez más, ¡muchas gracias! Salud ! y todo lo mejor !

 

ahora notado - en el terminal donde - cuenta GLD

el beneficio no cambia después de abrir una posición - ya que muestra 8 pips y no cambia

el precio se mueve en el gráfico - tal vez por eso tengo un error

Área de negocio de tinta MT5_LI

 

aquí - lo he estropeado.

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if((PositionGetDouble(POSITION_PROFIT)/PositionGetDouble(POSITION_VOLUME)/
             SymbolInfoDouble(Symbol(),SYMBOL_TRADE_TICK_VALUE))/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

Lo he arreglado así -aún no lo he comprobado- pero se supone que funciona.

  {
//---
   for(int i=PositionsTotal()-1; i>=0; i--) // returns the number of current positions
      if(m_position.SelectByIndex(i)) // selects the position by index for further access to its properties
        {
         if(m_position.Commission()+m_position.Swap()+m_position.Profit()/n<-InStopLoss)
            ClosePosition(m_position.Symbol());  // close a position by the specified symbo
        }
  }

Debería dejarlo... donde lo he estropeado. - funciona! y como quería corregir, no funciona y /n y borrado y con ello. no funciona .

la razón es la propia cuenta GLD. abrió una cuenta en USD en el mismo terminal y todo funciona

Razón de la queja: