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

 
Aleksey Vyazmikin:

No, l'articolo riguarda la gestione completa dell'ottimizzatore da EA attraverso il file ini, e l'ini, credo, si può prescrivere non solo l'ottimizzazione ma anche qualsiasi impostazione, sembra che vengano salvate dopo l'ultimo avvio del tester in qualsiasi modalità. Poi (nel codice dell'EA, puoi) salvare il modello e copiarlo in un altro terminale (da quello che ho capito si raccomanda di usare il terminale per il lavoro del tester e dell'EA). E dopo che questa procedura è finita chiama il modello, dove sarà tutto.

Non ho letto quell'articolo.

 
Ciao, sto imparando le basi, consigliare se c'è una funzione o qual è il modo più semplice per dire all'Expert Advisor di lavorare e controllare le condizioni dell'algoritmo su un timeframe specifico (diciamo 5 min), diciamo al momento di una nuova candela da 5 min, non ad ogni tick. Grazie
 
Ciao a tutti, chi può dirmi,
C'è un fibo con impostazioni di colore e l'aggiunta di linee fuori dal terminale manualmente o con autostretch, per MT4, MT5 se c'è uno si prega di ripristinare.
Molte grazie in anticipo.
 
webpred:
Ciao, sto imparando le basi, potresti suggerire una funzione o il modo più semplice per dire all'Expert Advisor di lavorare e controllare le condizioni dell'algoritmo ad un certo timeframe (diciamo 5 min), diciamo al momento di una nuova candela a 5 min, e non ad ogni tick. Grazie

c'è un Expert Advisor Moving Average.mq4 nel terminale, e ci sono linee in esso, provarle (anche se molti fanno diversamente)

//--- fare trading solo per i primi tik della nuova barra
if(Volume[0]>1) return;

 

Buon pomeriggio, ho bisogno di consigli sull'indicatore iAO. C'è una differenza nelle letture per iAO e i valori sul grafico C'è uno spostamento di 2 barre. Alla barra zero può essere assegnato un valore di 3, alla prima barra un valore di 4. Perché può succedere, ma non sempre.


doppio aoH1[],aoH4[],aoD[];
ArrayResize(aoH1,6);
ArrayResize(aoH4,6);
ArrayResize(aoD,6);
for(int i=0; i<6; i++)
{
aoH1[i]=iAO(Symbol(),PERIOD_H1,i);
aoH4[i]=iAO(Symbol(),PERIOD_H4,i);
aoD[i]=iAO(Symbol(),PERIOD_D1,i);
// Alert(Symbol(), " H1(",i,")=",aoH1[i]," H4(",i,")=",aoH4[i]," D(",i,")=",aoD[i]);
}

 
germes_88:

Buon pomeriggio, ho bisogno di consigli sull'indicatore iAO. C'è una differenza nelle letture per iAO e i valori sul grafico C'è uno spostamento di 2 barre. Alla barra zero può essere assegnato un valore di 3, alla prima può essere assegnato un valore di 4. Perché può succedere, ma non sempre.


doppio aoH1[],aoH4[],aoD[];
ArrayResize(aoH1,6);
ArrayResize(aoH4,6);
ArrayResize(aoD,6);
for(int i=0; i<6; i++)
{
aoH1[i]=iAO(Symbol(),PERIOD_H1,i);
aoH4[i]=iAO(Symbol(),PERIOD_H4,i);
aoD[i]=iAO(Symbol(),PERIOD_D1,i);
// Alert(Symbol(), " H1(",i,")=",aoH1[i]," H4(",i,")=",aoH4[i]," D(",i,")=",aoD[i]);
}

Perché stai controllando le barre dell'indicatore da un timeframe diverso dal timeframe del grafico corrente.

 
Konstantin Erin:

il terminale ha un Expert Advisor Moving Average.mq4, e ci sono delle linee in esso, provale (anche se molti fanno diversamente)

//--- fare trading solo per i primi tik del nuovo bar
se(Volume[0]>1) ritorno;

Questa è una variante sbagliata. Il volume all'apertura di una candela non sarà sempre uguale a 1, può essere uguale a 2.
Il modo giusto è usare il tempo della candela zero.

datetime time_bar;
void OnTick() {
   if(time_bar != Time[0]) {
      time_bar = Time[0];
      // анализируем что либо на открытии свечи (закрытии свечи)
      }
   }
 
Artyom Trishkin:

Perché stai controllando le barre dell'indicatore da un timeframe diverso da quello del grafico corrente.

Ma ho bisogno di tempi esattamente diversi. C'è un modo per aggirare questo problema?
 
germes_88:
Ma sono i tempi diversi che voglio. C'è un modo per evitarlo?

Bene, stai ricevendo i dati. E tu ci stai riuscendo. Solo la barra dei minuti #1 e la barra delle ore #1 avranno tempi di apertura completamente diversi. Beh, tranne una volta - quando il tempo di apertura di una barra dei minuti coincide con il tempo di apertura di una barra delle ore - una volta ogni ora.

 
Artyom Trishkin:

È possibile creare un file di testo ini da cui l'indicatore e l'EA leggeranno i dati e li useranno come parametri per l'impostazione dell'indicatore. Poi crea un modello con l'EA e l'indicatore e manualmente o con uno script per caricare questo modello sul grafico.
Possiamo semplicemente disegnare le linee dell'indicatore nell'Expert Advisor con oggetti grafici.
Si può anche inventare qualcos'altro.
Si può ... Puoi inserirlo manualmente o usare MT5 dove tutto è possibile :)


Artem, per favore consiglia il modo migliore per aggiungere o eliminare diversi indicatori su un grafico simultaneamente.

Ho provato a usare gli scriptChartIndicatorAdd/ChartIndicatorDelete come tasto di scelta rapida, ma non permettono di cambiare lo stile.

Ora c'è l'idea di scriverli come calchi in un file, ma forse c'è un'opzione migliore?

Motivazione: