[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 300

 
a Reshetov^ Così: int start() { Comment("Posizioni aperte: ", OrdersTotal()); string smb=Symbol(); int tf=Period(); gsID=smb+IsDemo()+IsTesting()+IsOptimization()+"."+Magic; inf=""; INF(TTS(TimeCurrent()), true); main(Magic, smb, tf); Comment(inf); e dove e come sarà visualizzato il numero?
 
Perché la mia funzione "commento" e "modifica" è rotta? Non ci sono opzioni in alto - la parte superiore è completamente vuota - non si possono aggiungere immagini, per esempio. Cosa c'entra questo?
 
yosuf:
a Reshetov^ Così: int start() { Comment("Posizioni aperte: ", OrdersTotal()); string smb=Symbol(); int tf=Period(); gsID=smb+IsDemo()+IsTesting()+IsOptimization()+"."+Magic; inf=""; INF(TTS(TimeCurrent()), true); main(Magic, smb, tf); Comment(inf); e dove e come viene visualizzato il numero?
C'è una combinazione magica: Ctrl+Alt+M e un utile tasto "Enter", per non rovinare la visione degli interlocutori. Poiché la vista è più preziosa, non posso rispondere a nulla di specifico sul tuo code-washing.
 
Puoi dirmi come lavorare con ArrayMaximum nell'EA? Nell'indicatore funziona, ho segnato array e buffer, ma nell'EA non è chiaro.
 
Alexandr24:
Puoi dirmi come lavorare con ArrayMaximum nell'EA? Nell'indicatore funziona, ho segnato array e buffer, ma nell'EA non è chiaro.


Dovete prima preparare l'array. Provate lo script fornito nell'aiuto di MetaEditor:

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start(){
  double num_array[15]={4,1,6,3,9,4,1,6,3,9,4,1,6,3,9};
  int    maxValueIdx=ArrayMaximum(num_array);
  Alert("Max value = ", num_array[maxValueIdx]);
  
  return(0);
}
//+------------------------------------------------------------------+
 
drknn:


Dovete prima preparare l'array. Provate lo script dato nell'aiuto del meta-editor:

Nel mio indicatore appare così:

sm[i]=...........;

doppio IndexMaxValue=ArrayMaximum(sm,n,shift);

Non so come allegarlo al tuo script, come farlo nell'Expert Advisor?

Posso emettere sm[i] tramite iCustom, ma come posso mettere la variabile iCustom in ArrayMaximum?

 
Alexandr24:

ma come può la variabile iCustom essere messa in ArrayMaximum che non è un array?

Non ho citato la documentazione per niente. Esiste una descrizione dei parametri da passare agli ingressi delle funzioni. Se è scritto lì che il parametro deve essere un nome di array, infilare un'altra funzione (iCustom() al suo posto non servirà a nulla. Significa che prima di chiamare ArrayMaximum() dovremmo dichiarare l'array, poi riempire questo array con valori e solo dopo chiamare ArrayMaximum().
 
drknn:
Non ho citato la documentazione per niente. Esiste una descrizione dei parametri che devono essere dati in ingresso a una funzione. Se c'è scritto che il parametro deve essere un nome di array, infilare un'altra funzione (iCustom() in particolare) non porterà a nulla di buono. Significa che prima di chiamare ArrayMaximum() dovremmo dichiarare un array e poi riempire questo array di valori e solo dopo si può chiamare ArrayMaximum()
.
Ho provato a mettere il codice dell'indicatore in un EA, ma non funziona niente, il fatto è che IMHO l'indicatore ha bisogno di indicare dei buffer e non l'ho visto negli EA, ecco perché l'indicatore funziona e lo stesso codice non funziona in un EA. Ho un array riempito con ciclo sm[i] e l'indicatore lo vede ma l'EA con lo stesso codice no. Forse gli array negli EA dovrebbero essere dichiarati in modo diverso rispetto agli indicatori?
 
Alexandr24:
Ho provato a mettere il codice dell'indicatore stesso nell'EA, ma non funziona nulla, IMHO il punto è che l'indicatore ha bisogno di indicare i buffer e non l'ho visto da nessuna parte negli EA, ecco perché l'indicatore funziona, ma lo stesso codice non funziona negli EA. Ho un array riempito con ciclo sm[i] e l'indicatore lo vede ma l'EA con lo stesso codice no. Forse gli array negli EA dovrebbero essere dichiarati in modo diverso rispetto agli indicatori?

Risolvi il problema - senza fare domande: https://www.mql5.com/ru/articles/mt4
 
Quindi si tratta di scrivere un indicatore. C'è un indicatore e funziona, ma l'Expert Advisor con il codice di questo indicatore non vuole, non vede l'array sm[i].