[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 225

 
granit77:
Echa un vistazo alos análogos. En particular Equity_simple.mq4


Gracias. El propio indicador funciona en una ventana separada...

Pero qué hacer si insertas #propiedad... en el EA estándar, pero el diario dice - 2011.03.09 18:04:58 El experto 'MACD Sample' es un indicador y no puede ser ejecutado

 
Vinin:


Hay que leer el historial de operaciones y leer el saldo en el momento en que se cerró la siguiente posición.

La equidad es un poco más complicada, pero se puede hacer exactamente lo mismo.

Puede llevar todos los cálculos a un lote estándar o contar en pips


Así que no tienes que leer ni contar nada y dejar que el indicador te lo muestre todo.

Entonces, ¿qué tal si intentamos que funcione?

--------------------------------------------------------------------------------------------------------------------

He estado fuera del proceso durante 3-4 horas.

 
doon:

Quiero que se muestre un mensaje después de cerrar en un stop loss, pero no pasa nada en mt4.

int init()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
string sy="NULL";
int op=-1;
int mn=-1;
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
datetime t;
double ocp, osl;
int dg, i, j=-1, k=OrdersHistoryTotal();

if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
osl=NormalizeDouble(OrderStopLoss(), dg);
if (ocp==osl) return(True);
}
return(False);
}
int start()
{
//----
bool stopl;
stopl = isCloseLastPosByStop(sy,op,mn);
if (stopl == true)
Alert ("последняя сделка закрылась по s/l");
//----
return(0);
}

 
kulon:


Para que no tengas que leer ni contar nada, deja que el indicador lo muestre todo por sí mismo.

Entonces, ¿qué tal si intentamos que funcione?

--------------------------------------------------------------------------------------------------------------------

He estado fuera del proceso durante 3-4 horas.


Estos indicadores ya existen
 
doon:


Ya se le han dado consejos en la página anterior.
 
kulon:

Para que no tengas que leer ni contar nada, deja que el indicador lo muestre todo por sí mismo.

significaba "leer por el indicador"
 

Aquí está el código en forma simplificada

Archivos adjuntos:
33.ex4  3 kb
 
Vinin:

Indicadores como este existen tal cual

Nunca he visto uno. ¿Puedes verlos?
 
kulon:

Nunca he visto uno antes. ¿Puedo verlo?

Mira aquí https://www.mql5.com/ru/forum/103774
 

¿Cómo puedo hacer que un EA compre o venda a una hora determinada(dormir para no usar)?