Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1485

 
Vladislav Andruschenko:


controllato.

In MT4 - OnStart funziona nell'indicatore!


l'indicatore non è scaricato


In MT5 - OnStart non viene eseguito nell' indicatore!



Quindi è più un'omissione che non sia vietato in mt4.

Tutto viene eseguito lì... prima di dire qualcosa, lo ricontrollo. Perché le nuove uscite portano molte sorprese :-)

--

"creare un indicatore" ... bla, bla, bla... Lasciare la funzione OnStart()

 
Maxim Kuznetsov:

Tutto si compie lì... prima di dire qualcosa, ricontrollo. Perché le nuove uscite portano molte sorprese :-)

--

"creare un indicatore" ... bla, bla, bla... Lasciare la funzione OnStart()


lasciar perdere e basta?


Beh, ho appena controllato. non è eseguibile in mt5. build flatt 2940

O avete rimosso OnCalculate?



aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa :-) creato uno script e messo nella cartella indicators

#property copyright "Copyright 2021, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"

//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
void OnStart()
  {
   Print ("GG OnStart");
  }

Unico.

Più che altro un'eccezione, hai semplicemente infilato lo script nella cartella degli indicatori e il terminale l'ha trangugiato.

 

Buon pomeriggio a tutti!

Sto scrivendo il codice per il tester su 1 minuto TF in mql4, il modello è tutto ticks.

Potreste dirmi come salvare il minimo della candela dell'ultima ora in una variabile il più velocemente possibile per il seguente codice

datetime some_time;
void OnTick()
{
if (Bid - iLow( NULL ,PERIOD_H1,1)>=0.0030)
some_time = (время образования iLow( NULL ,PERIOD_H1,1))
}


Grazie.

 
ANDREY:

Buon pomeriggio a tutti!

Sto scrivendo il codice per il tester su 1 minuto TF in mql4, il modello è tutto ticks.

Potreste dirmi come salvare il minimo della candela dell'ultima ora in una variabile il più velocemente possibile per il seguente codice


Grazie.

some_time = iTime( NULL ,PERIOD_H1,1);
 
ANDREY:

Buon pomeriggio a tutti!

Sto scrivendo il codice per il tester su 1 minuto TF in mql4, il modello è tutto ticks.

Potreste dirmi come salvare il minimo della candela dell'ultima ora in una variabile il più velocemente possibile per il seguente codice


Grazie.

datetime some_time;
void OnTick()
{
   if (Bid - iLow( NULL ,PERIOD_H1,1)>=0.0030)
      some_time = TimeCurrent();
}
 
PapaYozh:
Sbagliato, ha bisogno del tempo della candela precedente
 

Sì, sono stato disattento.

Ma il tempo minimo di formazione può essere ottenuto solo seguendo le quotazioni in arrivo in tempo reale.

Cioè devi ancora tenere traccia del tempo di formazione del minimo della 0a candela e, quando diventa la 1a, usarlo nel codice.

Quello che hai suggerito restituirà il tempo di inizio della candela, non il tempo del minimo.

PS.

Sembra che inizialmente ci sia un errore nel fatto che il Bid sia confrontato con il Low della 1a candela. L'offerta non ha niente a che vedere con la 1a candela.

Credo che dovrebbe essere così:

datetime some_time;
void OnTick()
{
   if (Bid - iLow( NULL ,PERIOD_H1,0)>=0.0030)
      some_time = TimeCurrent();
}
 
PapaYozh:

Sì, sono stato disattento.

Ma il tempo del minimo può essere ottenuto solo tracciando le quotazioni in arrivo in tempo reale.

Cioè dobbiamo ancora tenere traccia del tempo minimo della 0a candela e usarlo nel codice quando diventa la 1a.

Quello che suggerisci restituirà l'ora di inizio della candela, non l'ora del suo minimo.

È di questo che sto parlando, se vuoi il tempo di formazione del minimo, allora dovresti fare così

datetime some_time;
void OnTick()
{
   if (Bid - iLow( NULL ,PERIOD_H1,0)>=0.0030)
      some_time = TimeCurrent();
}
 
MakarFX:

È quello che sto dicendo, se hai bisogno di un tempo minimo di educazione, è così

Grazie.

 
ANDREY:

Grazie. Penso che la risposta più corretta sia quelladi PapaYozh"..... Ma il tempo del minimo può essere ottenuto solo monitorando le quotazioni in arrivo in tempo reale.

Quindi devi tenere traccia del tempo in cui si forma il minimo della 0a candela e usarlo in code...... quando diventa la 1a"
Sapevo quello che ha detto, ma ho pensato che c'è un modo per ottenere il minimo della candela oraria N1 senza tracciare ogni quotazione in entrata, e ogni minimo di una candela al minuto.

In questo caso some_time sarà uguale al tempo di apertura della candela corrente... PapaYozh confermerà.