Domande dai principianti MQL5 MT5 MetaTrader 5 - pagina 783

 
Vitaly Muzichenko:

Grazie per la vostra attenzione.

La vista generale dell'indicatore è così, e come farlo senzaiEnvelopesOnArray eiBandsOnArray non è assolutamente chiaro


Perché dovrebbe essere fatto senza di loro? Bene, fate il vostro calcolo in base ai dati del buffer. Ma il calcolo dovrebbe poi ripetere lo stesso calcolo di quelli che vuoi scartare.

 
Artyom Trishkin:

Perché no? Beh, fate il vostro calcolo in base ai dati del buffer. Ma il calcolo deve poi ripetere lo stesso calcolo di quelli che si vogliono scartare.

Nessuno rifiuterebbe da loro, ma prendono solo maniglie, non array arbitrari come in mql4

 
Alexey Viktorov:

Nessuno li rifiuterebbe, ma accettano solo handle, non array arbitrari come in mql4

Capisco, mi sono confuso. Pensavo fosse una domanda su mql4.
 
Artyom Trishkin:
Capisco, ero confuso. Pensavo fossero circa quattro.

La domanda riguarda la traduzione a cinque, e l'obiettivo è quello di ottenere una visualizzazione simile a quella attuale su quattro

Ecco un codice più completo, i simboli sono sostituiti nell'indicatore premendo i pulsanti sul grafico, cioè, Inite non è sufficiente

  for(int i=0; i<limit; i++) {
    Last[i] = Symbol1_Vol*Vol1*iClose(Symbol1_Name,0,iBarShift(Symbol1_Name,0,Time[i])) - 
              Symbol2_Vol*Vol2*iClose(Symbol2_Name,0,iBarShift(Symbol2_Name,0,Time[i]));
  }

 for(int i=0; i<limit; i++) {
    if(ButtonSt) { // кнопка выбора, отображать Bands, или Envelopes
     MA[i]=iMAOnArray(Last,0,Env_Period,0,MODE_SMA,i);
     LineUp[i]=iEnvelopesOnArray(Last,0,Env_Period,MODE_SMA,0,Env_Dev,MODE_UPPER,i);
     LineDn[i]=iEnvelopesOnArray(Last,0,Env_Period,MODE_SMA,0,Env_Dev,MODE_LOWER,i);
    } else {
     MA[i]=iMAOnArray(Last,0,BB_Period,0,MODE_SMA,i);
     LineUp[i]=iBandsOnArray(Last,0,BB_Period,BB_Dev,0,MODE_UPPER,i);
     LineDn[i]=iBandsOnArray(Last,0,BB_Period,BB_Dev,0,MODE_LOWER,i);
    }
  }

Come si traduce questo in cinque? O è impossibile a causa della mancanza di funzionalità in esso?

 
Vitaly Muzichenko:

La domanda riguarda la traduzione a cinque, e l'obiettivo è quello di ottenere una visualizzazione simile a quella attuale su quattro

Ecco un codice più completo, i simboli sono sostituiti nell'indicatore premendo i pulsanti sul grafico, cioè, Inite non è sufficiente

Come si traduce questo in cinque? O è impossibile a causa della mancanza di funzionalità in esso?

Quindi nessuno sta imponendo di prendere la maniglia in inite...

 
Alexey Viktorov:

Quindi nessuno sta imponendo di prendere la maniglia in inite...

Non mi dispiace)

Non riesco a capire come sostituireiEnvelopesOnArrayeiBandsOnArray, perché non è in Five, e non ho idea da dove cominciare. Ho bisogno di ottenere una mappatura completamente identica in MT5

 
Vitaly Muzichenko:

Non mi dispiace)

Non riesco a capire come sostituireiEnvelopesOnArrayeiBandsOnArray, perché non è in Five, e non ho idea da dove cominciare. Ho bisogno di ottenere una mappatura completamente identica in MT5

Perché non è la prima volta che lo ignori.

Forum sul trading, sistemi di trading automatico e test di strategia

FAQ da principianti MQL5 MT5 MetaTrader 5

Alexey Viktorov, 2017.09.21 20:06

C'è MovingAverages.mqh nella root di include ma non ho cercato BB, forse no. Ma l'opzione migliore è quella di attaccare il manico dell'indicatore di origine dati come prezzo nella funzione iMA.

Ho un esempio con solo iMA lisciato

int haMa8, haFastMa, haMa21, haSlowMa;

int OnInit()
 {
   haMa8  = iMA(_Symbol, PERIOD_CURRENT, perFastMa, 0, metodFastMa, priceFastMa);
   haFastMa = iMA(_Symbol, PERIOD_CURRENT, perFastMa, 0, metodFastMa, haMa8);
   
   haMa21 = iMA(_Symbol, PERIOD_CURRENT, perSlowMa, 0, metodSlowMa, priceSlowMa);
   haSlowMa = iMA(_Symbol, PERIOD_CURRENT, perSlowMa, 0, metodSlowMa, haMa21);

//Продолжение догадаешься

Lo stesso per BB.

Se la fonte è un indicatore personalizzato, allora dovete

  • Fallo separatamente.
  • Creare un nuovo indicatore.
  • Allega il primo come risorsa.
  • E dopo aver ricevuto il suo manico per inserirlo in iMA e altre funzioni.

Che pasticcio...


 
Alexey Viktorov:

Perché non è la prima volta che ignori ciò che hai scritto

C'è MovingAverages.mqh nella root di include, ma non ho cercato BB, forse no.
C'è: \MQL5\Include\Indicators\Trend.mqh
 
Artyom Trishkin:
Capito: \MQL5\Include\Indicators\Trend.mqh

Grazie, ora l'ho trovato.

Ho dovuto applicare iTEMA all'indicatore personalizzato, ma non ho pensato di guardare lì... Ho fatto come descritto sopra, tutto funziona senza problemi.

 

Per favore, aiutatemi a creare una funzione.

Ho un TF corrente e un TF stimato, la funzione dovrebbe restituire la differenza tra i due TF in qualsiasi combinazione, se la misura fosse in barre

Calcolo TF 15 15 15 60 60 60 240 240 240
Corrente TF 15 5 1 15 5 1 60 15 5
Differenza in Nbar 1 3 15 4 12 60 4 16 48

Come implementare questo correttamente?