[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Non potrei andare da nessuna parte senza di te - 2. - pagina 508
IgorM: Potrebbe essere una coincidenza, ma ieri ho avuto una build 229 al lavoro che si rifiutava di funzionare, ho installato una 402 - ha avuto successo SL, vorrei non averla installata :(
Ieri alle 19-03 gmt il 225° build ha stranamente smesso di funzionare. La comunicazione c'era, le quotazioni arrivavano, ma il grafico era fermo. L'ho scoperto solo la mattina, "General Error" lampeggiava sui triangoli di stato della connessione, i log da quel punto in poi sono pieni di errori di memoria. Riavviato al mattino, tutto è andato avanti. Andando a guardare tutti gli indicatori, probabilmente la causa come build è stabile.
Qualcuno ha un esempio di una funzione che chiude tutti i trade se superano una certa durata. Per esempio, per chiudere tutti i trade che sono aperti da più di un'ora.
nuan: Qualcuno ha un esempio di una funzione che chiude tutti i trade se superano una certa durata. Per esempio, per chiudere tutte le transazioni che sono aperte da più di un'ora.
Da parte mia, posso raccomandare quanto segue - quando aprite un ordine - ricordate le sue caratteristiche in qualche variabile di tipo (la loro validità...) - l'ora di apertura, poi confrontate l'ora attuale con questa (queste) variabili - se è più di un'ora - copritele tutte con la funzione f standard - tutto. Cioè in questo modo (fare un ciclo di tutti i vostri ordini nel mercato e usare la funzione OrderSelect per confrontare la condizione:
if (OrderOpenTime+1*60*60<TimeCurrent)
{
//то кроете их все "стандартной" ф-ией
}
nuan: Qualcuno ha un esempio di una funzione che chiude tutti i trade se superano una certa durata. Per esempio, per chiudere tutti i trade che sono aperti da più di un'ora.
Potrebbe essere una coincidenza, ma ieri ho avuto una build 229 al lavoro che si rifiutava di funzionare, ho installato una 402 - ha avuto successo SL, vorrei non averla installata :(
Qualcuno ha un esempio di una funzione che chiude tutti i trade se superano una certa durata. Per esempio, per chiudere tutte le transazioni che sono aperte da più di un'ora.
Da parte mia, posso raccomandare quanto segue - quando aprite un ordine - ricordate le sue caratteristiche in qualche variabile di tipo (la loro validità...) - l'ora di apertura, poi confrontate l'ora attuale con questa (queste) variabili - se è più di un'ora - copritele tutte con la funzione f standard - tutto. Cioè in questo modo (fare un ciclo di tutti i vostri ordini nel mercato e usare la funzione OrderSelect per confrontare la condizione:
Grazie
Qualcuno ha un esempio di una funzione che chiude tutti i trade se superano una certa durata. Per esempio, per chiudere tutti i trade che sono aperti da più di un'ora.
https://docs.mql4.com/ru/trading/OrderOpenTime
Confrontare con il tempo attuale e trarre conclusioni.
Per favore, ditemi cosa cambiare in questo codice per far sì che l'EA apra una vendita invece di un bai e viceversa...
int X=0;
doppio S = 0,0000;
extern double lot=0.1;
extern double koef=1.5;
extern int SL=10;
extern int TP=10;
doppio dl;
doppio a;
int init()
{
a=lotto;
ritorno(0);
}
int deinit()
{
ritorno(0);
}
int start()
{
S=Open[0];
Dormire(1000);
if(OrdiniTotali() == 0 && X==1)
{
if(Close[0]>dl){lot=a;}
X=0;
}
if(OrdiniTotali() == 0 && X==2)
{
if (Close[0]<dl){lot=a;}
X=0;
}
if(OrdersTotal() == 0 && Close[0]>S && Close[1]>Open[1])
{
dl=Close[0];
OrderSend(Symbol(),OP_BUY,lot,Ask,3,Ask-SL*0.0001,Ask+TP*0.0001,"",14774,0,Blue);
lotto=lotto*koef;
X=1;
}
if(OrdersTotal() == 0 && Close[0]<S && Close[1]<Open[1])
{
dl=Close[0];
OrderSend(Symbol(),OP_SELL,lot,Bid,3,Bid+SL*0.0001,Bid-TP*0.0001,"",14774,0,Red);
lotto=lotto*koef;
X=2;
}
ritorno(0);
}
Potete per favore dirmi cosa cambiare in questo codice per far sì che l'EA apra una vendita invece di un bai e viceversa...
Normalmente, metti il codice - te lo diciamo noi... via SRC - nell'editor.