Domande dai principianti MQL4 MT4 MetaTrader 4 - pagina 75

 
Vitaly Muzichenko:
E se il profitto è +1, e gli swap e le commissioni sono -5, allora può ancora essere considerato redditizio?
Se il profitto è +1 e gli swap sono -5, allora può ancora essere considerato redditizio).
 
Nikolay Gaylis:
Se non mi sbaglio - non uso nemmeno questo tema...)

conta, ma la questione qui è che come programmatore, non si dovrebbe avere la stessa divisione di un tester o reale.

Il pezzo completo:

OrderProfit()+OrderSwap()+OrderCommission()
 
Nikolay Gaylis:
Se mi sbaglio... non uso nemmeno quel tema).

Siete stati subdolamente e maliziosamente ingannati, tutto conta ))))
 
Buon pomeriggio. Puoi dirmi come aggiungere un indicatore non standard in MT-4 per Android?
Sinceramente, Alexander.
 
Vitaly Muzichenko:
Qui c'è tutto sul tempo

Grazie! Si è rivelato così, si è rivelato semplice.
extern int     hbG = 18;                 // Часы начала
extern int     mb = 29;                  // Минуты начала
extern int     heG = 18;                 // Часы окончания
extern int     me = 50;                  // Минуты окончания

bool isTradeTimeInt()
{
 int hb = hbG + (TimeGMTOffset()/3600);
 int he = heG + (TimeGMTOffset()/3600);
 datetime db, de;        // Время начала и окончания работы
 int hc;                 // Часы текущего времени торгового сервера
 
 db=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+ IntegerToString(hb) +":"+IntegerToString(mb));
 de=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+IntegerToString(he)+":"+IntegerToString(me));
 hc=TimeHour(TimeCurrent());
 if(db >= de)
 {
  if(hc >= he)
   de+=24*60*60;
  else
   db-=24*60*60;
 }
 if(HOUR==true)
 {
  if(TimeCurrent()>=db && TimeCurrent()<=de)
   return(true);
  else
  {
   if(CountTrades()==0)
    return(false);
  }
 }
 return(true);
}
 
Vitalie Postolache:

Siete stati subdolamente e maliziosamente ingannati, conta tutto ))))

Grazie... lo terrò a mente, potrebbe tornarmi utile).
 

Aiuto, ragazzi, sto lottando per il secondo giorno, non riesco a capire qual è il problema.

Ho bisogno di programmare la ricerca di un picco sull'indicatore -

Io lo faccio in questo modo -

se ( ( (valore[1]) < (valore[2]) && (valore[2]) > (valore[3]) )

{

picco = 1;

}

altrimenti picco = 0;


In generale, confronto il valore sulla candela centrale e se è maggiore di quelle vicine, il picco è trovato.

Ma il problema è che funziona in qualche modo a metà - trova il picco ma quando i valori dell'indicatore continuano ad aumentare

per qualche motivo disegna un nuovo picco ogni volta, anche se non dovrebbe! Allo stesso tempo, quando l'indicatore scende costantemente, tutto va bene, non disegna nessun picco.

Non riesco a capire quale sia il problema.


Ecco uno screenshot. Se picco = 0, una linea verticale viene disegnata sulla candela successiva al picco. Tutto è corretto. Ma quando l'indicatore cresce, vengono anche disegnati per qualche motivo.


 
Vitalie Postolache:
Come si calcola il profitto?

Pensavo che sarebbe stato (Long(1) o Short(-1)) * (Prezzo di uscita - Prezzo di entrata)-SpreadTester.
E gli swap vengono pagati, se ho capito bene, quando la posizione viene spostata oltre la mezzanotte. E non tutti i broker, alcuni tengono gli swap solo il mercoledì.
In ogni caso, nel mio TS da testare probabilmente chiuderò forzatamente le posizioni tenute fino a mezzanotte.
Tuttavia, come calcolare correttamente il profitto in punti nei test? Non capisco cosa calcola il tester in dollari.
 
John Smith:

Aiuto, ragazzi, sto lottando per il secondo giorno, non riesco a capire qual è il problema.

Ho bisogno di programmare una ricerca di un picco sull'indicatore.

Non riesco a capire quale sia il problema.

Molto probabilmente hai un mix di valori di indicatori passati. Se avete un nuovo valore attuale con indice [0], allora per un confronto corretto tutti i valori passati dovrebbero aumentare di 1.
 
MikeZv:

Pensavo che sarebbe stato (Long(1) o Short(-1)) * (Prezzo esternoPrezzo interno)-SpreadTester.
E gli swap vengono pagati, se ho capito bene, quando la posizione viene spostata oltre la mezzanotte. E non tutti i broker, alcuni tengono gli swap solo il mercoledì.
In ogni caso, nel mio TS da testare probabilmente chiuderò forzatamente le posizioni tenute fino a mezzanotte.
Tuttavia, come calcolare correttamente il profitto in punti nei test? Non capisco cosa calcola il tester in dollari.


Quindi, se guardate da vicino i vostri trade, c'è solo un mismatch su quelli che sono stati trasportati durante la notte. Sarebbe logico contare anche lo scambio.

Tutti i broker tengono swap per il forex ogni notte, il mercoledì lo swap è raddoppiato.

Il profitto in punti non tiene conto dello swap, significa semplicemente (Exit-PriceInPrice)/Point e lo swap deve essere aggiunto in qualche modo, ma non sarà profitto in pip e qualcos'altro.

Motivazione: