Chiedete! - pagina 53

 

Allarme

Come scrivere un allarme per averlo solo 1 volta e non più volte?

Grazie per l'aiuto.

Jo

 

Molte funzioni sono qui https://www.mql5.com/en/forum/174329

E il thread di alert_once è qui https://www.mql5.com/en/forum/172885

 

Si prega di controllare questa dichiarazione - Ho bisogno di una conferma per favore!

iLow(NULL,0,Lowest(NULL,0,MODE_LOW,1,4)<=0)

Questo dice che il minimo del mio indicatore (4 barre indietro) deve essere inferiore o uguale a 0? Se no, come dovrebbe essere dichiarato?

Dave Grazie in anticipo!
 
iscuba11:
iLow(NULL,0,Lowest(NULL,0,MODE_LOW,1,4)<=0)

Questo dice che il minimo del mio indicatore (4 barre indietro) deve essere inferiore o uguale a 0? Se no, come dovrebbe essere indicato?

Dave Grazie in anticipo!

non è giusto, puoi guardare il post 516 a pagina 52

il modo in cui calcoli il minimo dell'indicatore non è corretto

 
asmdev:
non è corretto, puoi guardare il post 516 a pagina 52 il modo in cui calcoli il minimo dell'indicatore non è corretto
double lowestFG=9999, highestFG=-9999;//FG short for Forex_Grail, the name of my indicator histogram file.

int currentBar=0;

int endBar=4;

for(currentBar=0;currentBar<endBar; currentBar++)

lowestFG=MathMin(lowestFG, iForex_Grail(Symbol(),0,17,PRICE_CLOSE,currentBar)); //0 = anytime, 17 = maperiod of indicator.

if lowestFG <= 0 then go to next statement
Silegge bene? Dave

Quando metto questo nel mio programma EA, dice che la funzione iForex_Grail non è definita? Forex_Grail è il nome del mio indicatore personalizzato.

Forse è da indicare: lowestFG=MathMin(lowestFG, iCustom(NULL,0, "Forex-Grail Trade Indicator",period,PRICE_CLOSE,currentBar)); ?

 

Trovato il mio errore!

Dave

 

Troppi decimali! - Si prega di consigliare.

Come faccio a limitare il numero di cifre decimali che una dichiarazione di commento mostra sul grafico. In questo momento mostra un risultato variabile come .00347892, e voglio che mostri solo .0035 (arrotondato al numero successivo)?

Apprezzo il vostro contributo! Dave
 
double lowestFG=9999, highestFG=-9999;

int currentBar=0;

int lastBar=4;

for(currentBar=0;currentBar<lastBar; currentBar++)

lowestFG=MathMin(lowestFG, iCustom(NULL,0,"Forex-Grail Trade Indicator",period,PRICE_CLOSE,currentBar));

Print ("Low =",lowestFG);

Questo legge dal buffer '0 ' dell'indicatore[0,00 a positivo](funziona bene!). Come faccio a farlo leggere dal buffer'1' dell'indicatore [ 0,00 a negativo]?

Definizione dell'istruzione: double iCustom( string symbol, int timeframe, string name, ..., int mode, int shift) - Non c'è nessun punto in cui richiede un numero di buffer?????????????? PER FAVORE AIUTATEMI!!!! Sembra essere bloccato nel buffer '0'.

Per favore illuminatemi!

Dave

 

iCustom( string symbol, int timeframe, string name, ..., int mode, int shift)

'mode' è il vostro buffer

iCustom( ... ...parametri dell'indicatore qui ... , 0, currentBar) - leggerà dal buffer 0

iCustom( ... ...parametri dell'indicatore qui ... , 1, currentBar) - leggerà dal 1° buffer

alcune informazioni qui http://docs.mql4.com/indicators/iCustom

lowestFG=9999 dovrebbe essere OK ma per essere sicuri potete scrivere

lowestFG = iCustom(NULL,0, "Forex-Grail Trade Indicator",period,PRICE_CLOSE,1,currentBar) invece

La funzione DoubleToStr(http://docs.mql4.com/convert/DoubleToStr) limiterà il numero di cifre decimali, usata soprattutto per ottenere un bell'aspetto per la funzione Print o Alert. La funzione non arrotonda ma semplicemente taglia i decimali non necessari.

Se usate questo doppio # per confrontarlo con un altro # avete ancora un mucchio di # dopo il punto decimale

usa NormalizeDouble(http://docs.mql4.com/convert/NormalizeDouble) per limitare il numero di cifre decimali in modo permanente

secondo il tuo iCustom il tuo indicatore ha 2 parametri periodo e prezzo (PRICE_CLOSE), controlla se è corretto

 
iscuba11:
Questo legge dal buffer '0 ' dell'indicatore[0,00 a positivo](funziona bene!).

è una coincidenza che funziona bene, se il vostro indicatore FG ha 2 pametri (periodo & prezzo) dovete aggiungere 1 parametro in più nell'iCustom come in prev post, se il vostro indicatore FG ha 1 parametro (periodo) allora sostituite PRICE_CLOSE con il buffer #(0 o 1 o 2 o ...)