Aiuto per la codifica - pagina 250

 
mladen:
sulaimoney Prova in questo modo (allegato il codice modificato)

Grazie Mladen, ora sta compilando.

 
mladen:
Zar Quello è semplicemente un macd con una linea di segnale in più aggiunta (l'istogramma è un normale osma - osma da un macd che usa ema per la linea di segnale non come il macd costruito in metatrader che usa sma come tutti sappiamo)

Grazie per la tua spiegazione. Ho apprezzato...

 

"Segnale di tendenza 2" è un indicatore interessante

Ma... Scrivo in EA:

double Arrow_Green = iCustom(0, 0, "Trend signal 2", 6, 1, 1, 1);

E una condizione "se Arrow_Green > 0" non funziona...

Non capisco come lavorare con i buffer dell'indicatore "Trend Signal 2" ...

File:
 
Igorrisimo:
"Segnale di tendenza 2" è un indicatore interessante

Ma... Scrivo in EA:

double Arrow_Green = iCustom(0, 0, "Trend signal 2", 6, 1, 1, 1);

E una condizione "se Arrow_Green > 0 " non funziona...

Non capisco come lavorare con i buffer dell'indicatore "Trend Signal 2" ...

Igorrisimo

Usa: if Arrow_Green != EMPTY_VALUE

 

Ciao,

Per favore, dove posso trovare un modello di Alert EA?

Grazie per l'aiuto.

Jo

 
Jovager:
Ciao,

Per favore, dove posso trovare un modello Alert EA?

Grazie per l'aiuto.

Jo

Jovager

Il codice per allertare da un ea è, più o meno, esattamente lo stesso che allertare da un indicatore. Il problema principale è quello di trovare le condizioni in cui avvisare ed è lo stesso

 

Qualcuno ha esperienza con il fallimento della funzione CopyRates?

Ho il seguente codice:

MqlRates newM1Candle[2];

// copy two of the most recent candles

if (CopyRates(symbol, PERIOD_M1, TimeCurrent(), 2, newM1Candle) < 2) {

...

Funziona bene su tutti i miei computer e broker. Ma ho alcuni clienti, che ottengono questa espressione ogni volta valutata a true, anche se hanno lo script collegato a M1.

La mia unica ipotesi è l'UAC (soprattutto perché non ho esperienza con esso), tuttavia sono senza indizi.

 
Ovo:
Qualcuno ha esperienza con il fallimento della funzione CopyRates?

Ho il seguente codice:

MqlRates newM1Candle[2];

// copy two of the most recent candles

if (CopyRates(symbol, PERIOD_M1, TimeCurrent(), 2, newM1Candle) < 2) {

...

Funziona bene su tutti i miei computer e broker. Ma ho alcuni clienti, che ottengono questa espressione ogni volta valutata a true, anche se hanno lo script collegato a M1.

La mia unica ipotesi è l'UAC (soprattutto perché non ho esperienza con esso), tuttavia sono senza indizi.

Solo un pensiero:

Hai provato a sostituire TimeCurrent() con iTime(NULL,PERIOD_M1,0)? Solo nel caso in cui il problema sia con il broker che ha ricevuto l'ultimo tick di aggiornamento del tempo

 
mladen:
Solo un'idea: hai provato a sostituire TimeCurrent() con iTime(NULL,PERIOD_M1,0)? Solo nel caso in cui il problema sia con il broker ultimo tick ricevuto aggiornamento del tempo

Beh, no. Ma ho provato a replicare il problema con il broker del cliente, e ha funzionato bene per me.

Una volta stavo aiutando un cliente che aveva qualche problema di UAC su W8 e il terminale si comportava in modo strano dopo il tentativo di impostare la modalità portatile - funzionava bene, ma non riusciva a salvare nulla nella cronologia o nei file ini. Quindi la mia ipotesi è che forse la cronologia non è stata salvata e forse il CopyRates dipende da questo, ma non ne sono sicuro.

 
Ovo:
Beh, no. Ma ho provato a replicare il problema con il broker del cliente, e ha funzionato bene per me. Una volta stavo aiutando un cliente che aveva qualche problema di UAC su W8 e il terminale si comportava in modo strano dopo il tentativo di impostare la modalità portatile - funzionava bene, ma non riusciva a salvare nulla nella cronologia o nei file ini. Quindi la mia ipotesi era che forse la cronologia non veniva salvata e forse il CopyRates dipende da questo, ma non ne sono sicuro.

Non sto usando windows 8 quindi non posso aiutarti riguardo a questo

Ti sei attaccato al suo PC per controllare (di solito uso teamviewer per questi casi - a volte solo quando vai al loro PC puoi scoprire esattamente cosa sta causando il problema)?