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

 
DanilaMactep:

non si può cambiare il valore di una variabile esterna all'interno di un programma mql4

F1 aiuta

 
Iurii Tokman:

non si può cambiare il valore di una variabile esterna all'interno di un programma mql4

F1 in aiuto

Iurii Tokman:

non si può cambiare il valore di una variabile esterna all'interno di un programma mql4

Aiuto F1

Ho visto molti video tutorial dove tali variabili venivano cambiate senza problemi. Quindi non è decente dirmi di F1;)))))). Quindi, per favore, datemi un consiglio davvero chiaro e sensato su come far funzionare questa macchina del graal)))))))))))))))))))

 
DanilaMactep:

Più di una volta ho visto in video tutorial come tali variabili sono state cambiate senza problemi. Quindi mandarmi in F1 è in qualche modo non decente o qualcosa del genere;)))))) Quindi, per favore, date dei consigli veramente chiari e pratici su come far funzionare questa macchina del graal)))))))))))))))))))

se pensate che youtube sia più autorevole dell'aiuto degli sviluppatori, non farete funzionare nulla
è facile - dovete solo seguire le regole

 
DanilaMactep:

Più di una volta ho visto in video tutorial come tali variabili sono state cambiate senza problemi. Quindi mandarmi in F1 è in qualche modo non decente o qualcosa del genere;)))))) Quindi, per favore, date un vero consiglio chiaro e pratico su come far funzionare questa macchina del graal)))))))))))))))))))

Fallo in questo modo:

 extern   ENUM_TIMEFRAMES   PeriodForWork_sl        =  PERIOD_H4;           // ТФ РАСЧЁТА ЗНАЧЕНИЙ СТОП ЛОСА ПО АТР
 extern int per= 14; // ПЕРИОД АТR СТОП ЛОССА


//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
double sl=iATR( NULL,PeriodForWork_sl,per,1);// ПОЛУЧЕНИЕ ЗНАЧЕНИЙ АТР ДЛЯ ВЫСТАВЛЕНИЯ СТОПЛОССА

Comment("  sl = ",DoubleToString(sl,_Digits));
   
  }
//+------------------------------------------------------------------+

E controlla più spesso l'aiuto.

 
Iurii Tokman:

Se pensate che YouTube sia più autorevole dell'aiuto degli sviluppatori, non farete funzionare nulla
è semplice - dovete seguire le regole

Normalmente per uno stop loss devo creare una variabile locale nell'on tick e assegnargli un valore atr?
 
DanilaMactep:
Normalmente per uno stop loss devo creare una variabile locale nell'on tick e assegnargli un valore atr?

sì, come nell'esempio sopra
+ i prezzi devono essere normalizzati

 
Iurii Tokman:

non si può cambiare il valore di una variabile esterna all'interno di un programma mql4

F1 è un aiuto.

Non si possono cambiare le variabili di input, ma le variabili esterne che applica sì.

 
DanilaMactep:

Pomeriggio. Sto cercando di allegare uno stop loss letto dall'indicatore atr al mio EA. Le variabili di input sono le seguenti.

Sto aggiungendo i valori atr a una variabile per uno stop loss.

Poi cerco di aprire ordini come questo.


Ma niente funziona. Stampo il valore della variabile Stop Loss ma dice che il suo valore è 0. Cosa sto sbagliando e dove dovrei correggere le mie impostazioni per farlo funzionare?

Nei parametri di ingresso, si imposta il periodo ATR nella variabile sl, non la dimensione dello stop. Poi si imposta la dimensione dello stop in questa variabile. E poi inizia il casino. Creare variabili separate per il periodo ATR di tipo int e per il valore dell'indicatore di tipo double.

Un altro errore è che dopo aver ottenuto il valore dell'indicatore, si moltiplica nuovamente questo valore per _Point

 
Alexey Viktorov:

Creare variabili separate per il tipo int del periodo ATR


doppio


 
Iurii Tokman:

doppio


double è il valore dell'indicatore e il periodo dell'indicatore è di tipo int
Motivazione: