[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 889

 

¿Puedes decirme más sobre esto, porque estoy confundido:

ticketSell = OpenPendingOrderSell(1, iLotsSell, Bid, slip, Ask, 0, 0, EAName + "-" + NumOfTradesSell, MagicNumberSell, 0, HotPink);

dónde debo ponerlo: "EURUSD, Period_H1,

Esto es lo que necesito entender si puedo hacerlo de esta manera:

extern int MagicNumber = 312;
int ticket;
bool intersectionX = FALSE,
     intersectionY = FALSE;
int start()

  { 
if  (Ask-iCustom ("EURUSD", Period_H1, "Indicator",0,0) == 0)  {
intersectionX = TRUE;
intersectionY = FALSE;
}
if  (iCustom ("EURUSD", Period_H1, "Indicator",1,0)-Bid == 0) {
intersectionY = TRUE;
intersectionX = FALSE;
}
if(intersectionY){
ticket = OpenPendingOrder("EURUSD", Period_H1, iLots, OP_BUY, 3, Ask,  0, 0, MagicNumber);
}
}
 
belck:

Puedes decirme más sobre esto, porque estoy confundido:

dónde quieres ponerlo: "EURUSD, Period_H1,

Esto es lo que necesito entender si puedo hacerlo de esta manera:

Vaya aquí y aprenda de las funciones de trabajo. Cuando lo entiendas todo, podrás escribir tu propio...
 
artmedia70:
Vaya aquí, aprenda las funciones de trabajo. Cuando lo entiendas todo, podrás escribir fácilmente tu propio...

Gracias.

Me he encontrado con un fenómeno extraño: una señal real en el gráfico para que el EA abra una operación, pero no se inicia y no da ningún error. ¿qué puede ser?

 

He estado leyendo y leyendo y no consigo entenderlo.

в

ticket=OrderSend(sy, op, ll, pp, Slippage, sl, tp, "", mn, ex, clOpen);

¿Es un gráfico de divisas? Si es así, ¿cómo puedo hacerlo bien?

¿Así?

ticket=OrderSend("EURUSD", op, ll, pp, Slippage, sl, tp, "", mn, ex, clOpen);

o

ticket=OrderSend(sy"EURUSD", op, ll, pp, Slippage, sl, tp, "", mn, ex, clOpen);
 

El caso es que actualmente estoy haciendo un EA que se puede colocar en cualquier gráfico y sólo funciona con los pares de divisas y periodos que se especifica en el propio código.

Así que no entiendo cómo hacerlo correctamente.

Lo tengo así:

double one = iCustom ("EURUSD", RERIOD_H1, "indicator",14,0,0);

Buy = (one < 80);

if (Buy){
ticket = // тут указывать валютную пару или нет?? вот этого я не до пойму. если да то так как я вверху из вариантов привел или как то по другому?
}
 
belck:

Sigo leyendo y leyendo y no consigo entenderlo.

в

¿Es un gráfico de divisas? Si es así, ¿cómo puedo hacerlo bien?

¿Así?

o

Si esto es para la función de Igor Kim, él da una secuencia de comandos o una descripción de cómo llamarlo para cada una de sus funciones.
En este caso, sy es una variable que se pasa a la función al llamarla. Se comprueba en la propia función y si se pasa NULL o "", sy=símbolo();
El resto es lo mismo.
 
belck:

El caso es que actualmente estoy haciendo un EA que se puede colocar en cualquier gráfico y sólo funciona con los pares de divisas y periodos que se especifica en el propio código.

Así que no entiendo cómo hacerlo correctamente.

Lo tengo así:

¿Es esto lo que es?
Buy = (one < 80);
¿Qué es eso?
 

He encontrado

int start()                               // Спец. функция start
  {                                       // Открытие BUY
   OrderSend("GBPUSD",OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
   return;                                // Выход из start()
  }

Ahora como entiendo correctamente la situación, en que periodo se abrirá la posición. Necesito que cuando aparezca una nueva vela en PERIOD_H1 se abra la orden:

ouble one = iCustom ("EURUSD", RERIOD_H1, "indicator",14,0,0);

Buy = (one < 80);

if (Buy){

OrderSend("GBPUSD",OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
}

¿o es esta la única opción?

ouble one = iCustom ("EURUSD", RERIOD_H1, "indicator",14,0,0);

Buy = (one < 80);

      PrevClBuy = iClose("EURUSD", RERIOD_H1, 2);
      CurrClBuy = iClose("EURUSD", RERIOD_H1, 1);
if (PrevClBuy > CurrClBuy)
if (Buy){

OrderSend("GBPUSD",OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
}
 
belck:

El caso es que actualmente estoy haciendo un EA que se puede colocar en cualquier gráfico y sólo funciona con los pares de divisas y periodos que se especifica en el propio código.

Así que no entiendo cómo hacerlo correctamente.

Lo tengo así:

Probablemente lo necesite así (he puesto un ejemplo de una llamada a la función kim con una comprobación de tiempo después de abrir la pose anterior, bueno, y algunas variables fuera de mi cabeza...):
double pa = MarketInfo(Symbol(),MODE_ASK);
double pb = MarketInfo(Symbol(),MODE_BID);
double po = MarketInfo(Symbol(),MODE_POINT);
double sl, tp;


double one = iCustom ("EURUSD", RERIOD_H1, "indicator",14,0,0);

if (one < 80) Buy=true;

if (Buy)
   {
      MagicB=51;                                         // Задаём магик... 5 и 1; 5 = пять минут, 1 = стратегия 1
      New_Comm="Expert";                                // Задаём комментарий для позиции
      sl = pb-StopLoss*po;
      tp = 0;
         
      if (SecondsAfterOpenLastPos(NULL, OP_BUY, MagicB)>=7*60)
          OpenPosition(NULL,OP_BUY,Lots,sl,tp,MagicB,New_Comm);
   }
 
belck:

He encontrado

Ahora como entiendo correctamente la situación, en que periodo se abrirá la posición. Necesito que cuando aparezca una nueva vela en PERIOD_H1 se abra la orden:

¿o es esta la única opción?

Todo está mal. Si el reto es la función de Igor Kim, he dado un ejemplo más arriba.