[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 289

 
artmedia70:

¿Has probado a hacer una función independiente para buscar la presencia/ausencia de elementos?

Por ejemplo:

Mágico - número mágico del EA (establecido en la configuración, o generado por el EA automáticamente). A continuación, para comprobar la ausencia de posición Comprar por símbolo actual debe ser escrito:

Nota - no sólo un comando para abrir una orden de compra, sino una función completa con el manejo de todos los parámetros de apertura de la orden y los errores devueltos por el servidor.

Sin embargo, el probador puede prescindir de la comprobación de valores válidos de los parámetros introducidos...



¿Podría mostrar esta función en su totalidad como código de trabajo listo para usar con la función de inicio y todas las descripciones? Y mejor aún, la Magia es generada por el EA de forma automática, es decir, según tengo entendido, este es el caso en el fondo.

bool ExistPositions(string sy="", int op=-1, int mn=-1) {
   if (sy=="") sy=Symbol();
   for (int i=0; i<OrdersTotal(); i++) {
      if (OrderSelect(i, SELECT_BY_POS)) {
         if (OrderMagicNumber()!=mn)   continue;
         if (OrderSymbol()!=sy)        continue;
         if (OrderType()>1)            continue;
         if (op<0 || OrderType()==op)  
            return(True);
         }
      }
   return(False);
}

if (!ExistPositions(Symbol(), OP_BUY, Magic)) {
   // ... Тут код для вызова функции открытия позиций ... 
   }
 
kolyango:


¿Podría mostrar esta función en su totalidad como código de trabajo listo para usar con la función de inicio y todas las descripciones? Y mejor aún, la Magia es generada por el EA de forma automática, es decir, según tengo entendido, este es el caso en el fondo.


No se pueden generar magias, si su ordenador se cuelga (fallo de alimentación, pasos de gato en el teclado, ...), en un nuevo arranque el EA perderá el control del orden (si no escribe magias en un archivo).
 
icas:

No puedes generar un magik, si tu ordenador se cuelga (pierde la energía, el gato pisa el teclado, ...) al reiniciar, el EA perderá el control de la orden (si no escribe magiks en un archivo).
Depende de cómo se genere. Mi EA se genera usando el símbolo, tf y no va a ninguna parte, pero normalmente se recoge en el reinicio. Lo cogí una vez en algún sitio y lo he estado usando desde entonces.
 
snail09:
Depende de cómo se genere. Los míos se generan con un símbolo, tf, y no van a ninguna parte sino que se recogen normalmente al reiniciar. Lo cogí una vez en algún sitio y lo he estado usando desde entonces.

¿Puedo ver un ejemplo de cómo...
 
snail09:
Depende de cómo se genere. Los míos se generan con un símbolo, tf, y no van a ninguna parte sino que se recogen normalmente al reiniciar. Lo cogí una vez en algún sitio y lo he estado usando desde entonces.

Interesante, cite el código por favor.
 

Hola a todos, de nuevo...)

¿Cómo puedo hacer que los objetos (cualquier objeto) aparezcan en el gráfico en primer plano y NO detrás de las velas?

 
OvA:

Hola a todos, de nuevo...)

¿Cómo puedo hacer que los objetos (cualquier objeto) aparezcan en el gráfico en primer plano y NO detrás de las velas?


No hay capas en el gráfico (imho), cambio para mostrar barras pero no velas, se puede acostumbrar con el tiempo.
 
icas:

No hay capas en el gráfico (imho), cambio a mostrar barras pero no velas, se puede acostumbrar con el tiempo.

Ya veo, gracias...

 
Además, ¿cómo puedo eliminar el script del gráfico?
 

Bueno, aquí hay una aproximación. Lo tomé del asesor de ikatsko. Tal vez sea el autor, tal vez no, el estilo se parece a KimIV... No lo sé, pero me gusta, lo estoy usando ahora.

MagicNumber=1000+func_Symbol2Val(Symbol())*100+func_TimeFrame_Const2Val(Period());

//+------------------------------------------------------------------+
//| Numeric value for symbol name
//+------------------------------------------------------------------+
int func_Symbol2Val(string symbol) {
     if(symbol=="AUDCAD") {
        return(1);
     } else if(symbol=="AUDJPY") {
        return(2);
     } else if(symbol=="AUDNZD") {
        return(3);
     } else if(symbol=="AUDUSD") {
        return(4);
     } else if(symbol=="CHFJPY") {
        return(5);
     } else if(symbol=="EURAUD") {
        return(6);
     } else if(symbol=="EURCAD") {
        return(7);
     } else if(symbol=="EURCHF") {
        return(8);
     } else if(symbol=="EURGBP") {
        return(9);
     } else if(symbol=="EURJPY") {
        return(10);
     } else if(symbol=="EURUSD") {
        return(11);
     } else if(symbol=="GBPCHF") {
        return(12);
     } else if(symbol=="GBPJPY") {
        return(13);
     } else if(symbol=="GBPUSD") {
        return(14);
     } else if(symbol=="NZDUSD") {
        return(15);
     } else if(symbol=="USDCAD") {
        return(16);
     } else if(symbol=="USDCHF") {
        return(17);
     } else if(symbol=="USDJPY") {
        return(18);
     } else if(symbol=="XAUUSD") {
        return(19);
     } else if(symbol=="XAGUSD") {
        return(20);
     } else if(symbol=="XAUEUR") {
        return(21);
     } else if(symbol=="XAGEUR") {
        return(22);
     } else {
        Comment("unexpected Symbol");
        return(0);
     }
}

//+------------------------------------------------------------------+
//| Time frame interval appropriation function                      |
//+------------------------------------------------------------------+
int func_TimeFrame_Const2Val(int Constant) {
     switch(Constant) {
         case     1: return(1);
         case     5: return(2);
         case    15: return(3);
         case    30: return(4);
         case    60: return(5);
         case   240: return(6);
         case  1440: return(7);
         case 10080: return(8);
         case 43200: return(9);
     }
}