Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 1343

 

Aggiunto al codice, non stampa la seconda e le successive copie degli indicatori

int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
  OnInit();
   for(int i = prev_calculated == 0 ? 0 : prev_calculated - 1; i < rates_total; i++)
   {
      Label1Buffer[i] = close[i];
   }
   return(rates_total);
}

---

Cosa è stato fatto:

Installato 3 copie dell'indicatore, compilato il file e ottenuto la stampa dalla prima copia

2021.09.12 18:30:40.975 Create_button (BTCUSD,M30)      INIT SUCCEEDED: 1
 
Vitaly Muzichenko #:

Ma se si cambiano i parametri di input - allora funziona.

ho visto tali messaggi sul forum, per quanto ho capito, il terminale non esegue due copie dell'indicatore con gli stessi parametri sullo stesso grafico

 
Igor Makanu #:

Ho visto tali messaggi sul forum, per quanto ho capito, il terminale non avvia due copie dell'indicatore con gli stessi parametri sullo stesso grafico

Come posso farlo funzionare senza cambiare i parametri di input?

È necessario installare diverse copie, è un tale compito, purtroppo

 
Vitaly Muzichenko #:

Come posso farlo funzionare senza cambiare i parametri di input, magari aggiungendo qualcosa da define?

Necessità di impostare più copie, questo è un tale compito, purtroppo.

Inserisci un parametro falso. E assegnare 1, 2, 3 ...

 
Vitaly Muzichenko #:

Come posso farlo funzionare senza cambiare i parametri di input, magari aggiungendo qualcosa da define?

Necessità di impostare più copie, questa è una tale sfida, purtroppo

hanno visto e provato come fare due sottofinestre modificando un modello - una sottofinestra in cima al grafico, la seconda nel seminterrato

prova a salvare un modello con il tuo indicatore, e se funziona così anche con i modelli - aggiungi una copia dell'indicatore al testo del modello

 
Igor Makanu #:

hanno visto e testato come fare due sottofinestre usando la modifica del modello - una sottofinestra in cima al grafico, la seconda nel seminterrato

prova a salvare un modello con il tuo indicatore e se funziona questo trucco anche con i modelli - aggiungi una copia dell'indicatore al testo del modello

Il problema è che devono essere lanciati in quantità diverse in modo casuale, quindi non funzionerà in modo fisso.

 
Igor Makanu #:

hanno visto e testato come fare due sottofinestre usando la modifica del modello - una sottofinestra in cima al grafico, la seconda nel seminterrato

prova a salvare un modello con il tuo indicatore, e se funziona lo stesso trucco con i modelli - aggiungi una copia dell'indicatore nel testo del modello

Ho scaricato 3 copie, OnInit ha funzionato una volta.

Cambiato il valore di ingresso - il secondo indicatore si è attivato

Ho cambiato il colore nel terzo - ha funzionato anche questo


Ma come posso automatizzarlo?

 

allora non so, vedo solo la soluzione di @Vladimir Karputov come accettabile

fare un parametro di input lungo e chiamare casualmente, e generare casualmente un grande, cioè lungo

 
Igor Makanu #:

allora non so, vedo solo la soluzione di @Vladimir Karputov come accettabile

fare un parametro di input lungo e chiamare casualmente, e generare casualmente un grande, cioè lungo

L'ho immaginato così, ma come implementarlo?

Per favore, mostratemi il codice!

 
Vitaly Muzichenko #:

Questo è più o meno quello che ho immaginato, ma come implementarlo?

Per favore, mostratemi il codice!

nessun modo

Se lo chiamate programmaticamente, potete generare un parametro in modo casuale

E dovete eseguirlo manualmente, dovete ancora cambiare il parametro d'ingresso.


prova a vedere cosa c'è nelle macrosostituzioni predefinite, c'era __COUNT___ e ora c'è qualcosa con random, non ho controllato come funziona __COUNT___- risulta statico, ha poco effetto, forse puoi usare random per il tuo compito